Its been here for a while now and developers have loved it so far. I speak to a lot of mobile app developers and all of them have the best regards for ‘KOTLIN’. As mentioned in an earlier post ,It’s developed by JetBrains, and the fact that these are the people behind a suite of IDEs, such as IntelliJ and ReSharper, really shines through in Kotlin.It’s pragmatic and concise, and makes coding a satisfying and efficient experience.Kotlin is even more statically typed than Java, which makes it ideal for your very large projects.
We wanted to know more about this new love for kotlin by another talented Android Developer , In conversation with Srijith Narayanan.
The latest lingo in town?
Last year, before Google announced, I started learning Kotlin and after the announcement actively started using it in some demo apps. It is really an awesome language which very much helps developers write more understandable code and reduce the risk of errors/bugs in code. Any Android developers can start using Kotlin as it is easy to learn. Even they can easily convert existing Java code to Kotlin using built-in Android Studio converter. And since Google officially announced Kotlin as a first class language for Android, more people have confidently started using Kotlin.
Some of Kotlin’s advantages include concise code, null-safety and interoperability with Java. I literally forgot about NullpointerException after starting to use Kotlin. Most developers are loving it already
India and App Development
India is rapidly growing as a technology hub and many youngsters are actively involved in software development. Many youngsters are starting to work on open source projects from their college days, and that by itself gives them more exposure. In terms of Android development, since India is one of the largest user base for Android, naturally there will be more need for apps to be produced for Android. So there is an increasing potential for app development. Moreover, as technologies and platforms like AR, Machine Learning, IoT can be done using Android,
The need for Android developers are still increasing.
Many big companies are stressing the need to perform code testing to produce better quality software. Development patterns like TDD are also becoming popular. I wish all development companies also take up testing more importantly so that they can ship out better quality apps with greater user adoption.
Your Journey in the App World
In 2013, during my 3rd year of Engineering, my brother introduced me to MOOC courses – Edx and Coursera.
I was surprised to see how much information is available online for free. I wanted to learn something from it which is related to software. Since I knew basic Java (at least I was able to understand the syntax). I searched for courses and found a course on Android. Since Android apps are programmed in Java I enrolled in a course on basic Android app development from Coursera.I somehow managed to complete a few assignments and got a certification. And I was able to understand some basics of app development.
After my final year, I joined Niyati Technologies Pvt. Ltd. as an intern. There I was exposed to practical app development, which was very different from what a beginner will learn theoretically. The first couple of months I struggled, but eventually, I learned several things thanks to StackOverflow and several blog posts. I joined Niyati as a full-time developer following my internship. From there it took off and there was no looking back.
In 2016, Google announced the AAD certification programme. I prepared for it and wrote the exam on December 31 and January 1, 2017. Only I would have done that without enjoying the New Year. I eventually got my certification as well. It immensely boosted my confidence. Now I am also helping other developers in my office by teaching them new skills and technologies like React Native.
At this point I want to thank the COO of my company who took me as intern and my then team lead under whom I worked for the first 8 months.
Tell us more about the Google AAD CERTIFICATION
AAD certification is a way to project ourselves as a recognized and certified Android developer with all the basic skill set needed for developing an Android app including testing. I would recommend it to students or fresh passed outs to try
Tools to be used by Freelance Developers
- For development, I recommend using Kotlin, Architecture Components, Retrofit, Firebase.
- For Testing, I recommend Junit and Espresso, Crashlytics for catching bugs, APK Analyzer in Android Studio, Profiling tools in Android Studio, Firebase Test Lab.
- For versioning, version control tools like BitBucket, Github or Gitlab.
Developer Role models
I like and admire the works of people who dedicate themselves immensely and contributed to the community. In that regard, I love the works of Dan Abramov and Jake Wharton.