• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Endeavors ✌ Delve Into Development

What's up Everybody, I've been long familiar with android modding and rooting from the receiving end, testing and running all the work you wonderful developers put out... However I'm interested in getting into programming as a career, pretty much concerning any type of software development, it doesn't need to be specifically android, but since this is what grabs my interest the most currently and there's always a pretty solid group of Devs that know their stuff with android, I figure why not start here. I have one primary question, I've been doing a bit of research on what the best programming language to learn for 2018 would be and I've come across some issues. For one I read that Oracle is no longer going to support updates to Java whatsoever, basically it's being entirely discontinued! That's insane! It's practically the largest most popularly used language. So even if the language will still be around, things become outdated rather quickly in the tech world right? Why would I want to learn something entirely new that's just going to stop being used? I have also read that Android is now officially supported by the Kotlin language and it runs in Android studio and everything... The shift looks promising. I'm thinking Kotlin is a good place to start for learning an entirely new language, looks like it's got a good future. That's why I'm here though, anybody have any insight to offer on this?
 
That article only refers to Java 9. There will be other long term support releases. And it's not true to say that the language is being 'entirely discontinued', as the OP puts it. The article states -

"Every three years, the feature release will be a long-term support release, with the next long-term support release, to be called Java 18.9, arriving in September 2018".

Java is currently the most popular programming language. Add to that the massive body of code already developed, and we're not talking just Android - Java is used extensively in web applications. All this means that Java isn't going to die out any time soon. Kotlin is the newcomer on the block, pushed by Google, but it has nowhere near the usage of Java. If you're looking to maximise your job potential, then Java must be the favourite. Yes there are Kotlin jobs advertised, but nowhere near the number requiring Java on your CV.

So it depends what the OP intends to do, and what fields they wish to work in. If a newcomer to Android, or coding in general, then Kotlin is a good language to learn. However one thing to consider is that there are far more Android code examples on the web for Java, than Kotlin. So if you're looking to grab sample code, then Java may be a better option.

Having said all this, people tend to get too hung up on a particular programming language. The logical constructs are the same across virtually all languages, it's just a matter of different syntax. Once you've learned one language, it's fairly easy to get up to speed in another language.
 
OT: You make it sound so easy @LV426

I never learned to program my PC let alone a phone. I just bought disks and CDs. Someone else created the code.

It's a lot easier than it used to be. Modern development tools like Android Studio are a big help. Plus you've got the whole Internet to steal code from :)
 
Cool Thanks for the info guys, I particularly like what you said (LV426) about not getting too hung up on just one particular language to start with. I mean I don't think I see myself jumping all over the place from Java to C to C++ as it will probably just become very confusing, but I do see what you're saying from my current understanding obviously a lot more coding goes into actual programming than just Java. Like C and C++ seem to be more hardware side oriented and things like JavaScript, CSS, HTML are all more web oriented and things like Java, Python and Kotlin seem to be more software/end-user oriented. However it seems that Android makes use of all of those. I didn't want to get into something too high-level because I don't want to feel like I only know how to type a heavy weighted practically plain English language and I think an understanding of Low-level things is important to me.
 
Not so long ago, this is how programmers used to do things:

assembly.png


These days, we're spoiled with high level programming languages, interactive debugging tools, and virtually limitless RAM.
 
Back
Top Bottom