Why Kotlin is my next programming language after C# and JavaScript

My first contact with computers was through my older cousin, Mauro. I remember watching him type DOS commands and play 5¼-inch floppy disk games on a 286, then 386, then 486 machines, year after year. I have to thank him for my career choice and involvement in computers.

When I was old enough and computers were less expensive, my parents bought me a PC. It was a Pentium 75Mhz with MS-DOS 6.22, Windows 3.1 and an 800MB HD, a.k.a. Winchester (that’s how we called all hard-drives).

I would only ever see a Macintosh later in my life. They were either too expensive or unavailable at the time, so I had no choice but to go with a compatible IBM-PC.

I started playing around with Basic, FORTRAN, Pascal, and developed my first game/freeware on Windows 95 32-bit (with Visual Basic 6).

Going forward a few years, now in the University lab, my colleagues and I were learning general programming and OOP with languages like C and Java on Unix (Solaris) machines. At the same time, a new language from Microsoft had just come out of the oven, it was C#. Being a Windows developer since the times of Windows 95, I decided to take a look at it.

C# was my favorite language of all. Because it was more elegant, succinct and easier to read than Java and of course C/C++.

Although, I had to learn other languages to graduate, such as LISP and PHP, I never really worked with those languages much in a professional setting. C# was where I really shined.

2003 was when I started working with C# (.NET 1.1) on Windows desktop applications. After 5 years, now in Canada, I transitioned to Web development. While my fellow graduated colleagues in Brazil were all working with JSP, I was happy where I was, with ASP.NET and C#. So much so, that I read in depth over 900 pages of this book.

That same year, Apple launched the iPhone in Canada. It took me a year to adopt it and I bought the iPhone 3GS.

I wasn’t ready to transition to mobile development yet. I was in the process of becoming a Canadian permanent resident which meant that I had to stay on my current job and, like I said, I was happy where I was.

After a while however; That awful feeling we, developers, feel when technologies are leaving us behind was gaining more and more space in me. When Android phones finally became more popular, I felt a little regret for not taking Java serious.

After my immigration process was done, I finally decided to invest in mobile development but I still didn’t want to work with Java. Coming from C#, I felt that going to Java was a step backwards.

So I engaged in learning iOS development and landed my first contract, Chartright, which was perfect for me because it was meant to be released for iOS only, 100% done by me, it was launched in 2013.

From 2003 to 2012, I had followed the evolution of C# very closely. Along with database development and T-SQL, I have developed and deployed software on Desktop and Web Servers in many different business areas. When back-end, front-end and devops engineers were all the same thing.

In 2013, I got more involved with UI and the entertainment industry. Since then, I have applied the principles of software engineering to JavaScript to enable beautiful apps on Browsers, Mobiles, Desktops, Smart TVs, Game consoles and other devices.

Since then, I have been wanting badly to develop for Android as well, but never got to put my hands on it. Until now.

2017, Kotlin is a new programming language from JetBrains. I’m very excited to finally start developing for Android and soon have my first app released to Google Play.

About Xamarin, here is a great article that points out all my experience with it, and in summary:

  1. Xamarin had way too many bugs my patience could tolerate. I’m sure it was a frustrating experience to some.
  2. There is definitely an overhead to using Xamarin.
  3. There’s a learning curve. Leveraging what you know about .NET will only help you at some extent. So why not just use Java?
  4. If you want to develop a fantastic app for both iOS and Android with a great looking native UI, that it a big problem that Xamarin doesn’t help you with much.

Kotlin borrows a lot of features from C#. It will be interesting for any C# developer to experience in their own projects and take their own conclusions.

I will sure keep this updated in the near future.

Now where does JavaScript fall into this? Kotlin compiles to JavaScript (https://kotlinlang.org/docs/tutorials/javascript/kotlin-to-javascript/kotlin-to-javascript.html).

It doesn’t mean I will completely replace JavaScript, far from that. But it’s another compelling reason to learn the language, in my opinion.

Enough said for now.

Happy coding!


One thought on “Why Kotlin is my next programming language after C# and JavaScript

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s