This is my personal opinion about android programming in general. I've been using Java for as long as I can remember. Both of my college theses were development based on Android. I have nationwide Java programming certificate and was quite proud of my Java programming skill. Then I went abroad for Graduate School, to Japan. And then I realized how 'useless' my skill it was. Nobody's using Java anymore, I almost believe it's the least favorite programming language, it's never even been taught in my new graduate school. Here I need to use C++, of course it also a powerful programming language, but along the way I keep messing up C++ with my Java knowledge, when I caught error coding friend keep remind me "this is not Java".
Well, poor me.. now I'm still learning C++ from beginning and at the same time almost losing all my Java skill since I never use it since I got here. But I'm still following Java, I followed Daniel Shiffman channel on Youtube, The Coding Train. He's a great teacher ! He said something quite interesting in one of his video, something like "Java isn't the best at anything, but it can do everything". I was pretty impressed when I heard that, also the fact that someone as massive as him is still using Java. Later when I get back to my country, since Java is still very big there.. skillfull Java programmer will be asked all over the place. But now that we have Kotlin, which has its own advantage over Java and also Java has it's own advantage over Kotlin, do you thing Kotlin will be a game changer, like in bigger scale ? Or will it encounter the same fate as Java ?
Luckily, programming languages *generally* keep improving with time because we learn more about good language design (although there are enough bad languages being created as well).
I do hope and think that Kotlin will be a game changer in terms of gaining a lot more traction than it already has and being adopted more heavily on all platforms.
But (hopefully) it'll be challenged a few decades later by the next even better programming language. Who knows what software development and programming languages will look like then...
True. We, programmers and programming language are both keep improving, and at the same time some of the programming language need to retire as well. (I remember Pascal during middle school, it did retire for good.). As a student, I do believe small changes can bring big impact. For example one professor is using a specific programming language, then the whole class : "OMG LET'S USE THAT TOO!!". If Kotlin is really our next game changer, I hope academia will move fast to take and adapt it as well. Best wishes for all of us and Kotlin !!
I think programmers using languages professionally that they learned in college is a relatively new trend -- and I don't believe it's a good one. Very few seasoned programmers that I know are using the languages they learned in college. Colleges should be teaching foundational thinking around programming. A great course is University of Washington's CS304 which teaches the principles of programming languages using Standard ML, Racket, and Ruby -- so you learn about (both static and dynamic) type systems and functional programming and a fairly pure form of object-oriented programming and metaprogramming...
My college taught a little BASIC, a little assembler, and a lot of Pascal. But I also taught myself about a dozen other languages while I was at college and my first paid work was in COBOL and assembler, followed by C, then C++, then Java (starting in '97). Since then I've used ColdFusion (CFML), Groovy, Scala, and now Clojure in production. "The Pragmatic Programmer" recommends trying to learn a new programming language every year if you can -- there are certainly enough of them out there! -- and it's a lofty goal but it's good advice. Over the last several years, I've learned Elm, Go, Rust, and Kotlin. Of those, only Go was a disappointment to me.
Academics generally don't do a good job of teaching a programming language because they don't work it in day-in, day-out, so they don't know the pitfalls and the idioms. They are much better at teaching the principles of programming and that is what colleges should be teaching, in my opinion.
I spent the morning putting in a comma and the afternoon removing it.
-- Gustave Flaubert, French realist novelist (1821-1880)