• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Tim Cooke
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Knute Snortum
  • paul wheaton
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Ron McLeod
  • Piet Souris
  • Ganesh Patekar
Bartenders:
  • Tim Holloway
  • Carey Brown
  • salvin francis

Kotlin or Java for new programmers

 
Ranch Hand
Posts: 574
VI Editor Chrome Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My 14 y/o grandson wants to learn to program and asked if I thought Java was a good choice.  Personally I think Python is best for a beginner, but it got me to wondering.  Would Kotlin or Java be best for a new programmer to learn?

His interest is making apps for Android, so Python is out in this case.  From my perspective Java is his best choice because he can ask me for help.  Also, Java is the worst choice because he can ask me for help
 
Rancher
Posts: 352
21
Mac OS X Monad Clojure Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What a great question! I'll be interested to hear Peter's take on this.

I agree that Python would normally be a good recommendation for a brand new programmer but given the interest in Android apps, I would be comfortable suggesting Kotlin. Java is a simple, straightforward language but it has a lot of boilerplate that is distracting for beginners and it's very verbose. When I learned Kotlin, I found the tutorials to be excellent (much better than anything I've seen for Java) and the community is very enthusiastic and helpful (the Kotlin Slack was where I asked a lot of my newbie questions). If I were just getting started and wanted to build Android apps, I think I would find the cleanliness of Kotlin much more approachable than Java!

If your grandson does go with Kotlin, please make sure to keep us posted on how he's doing with it.
 
Author
Posts: 28
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Jim,
Hi Sean,

I agree that Python would be a good first programming language but Kotlin is a good choice, too. A problem might be that there aren't many Kotlin resources for total beginners. @Sean: could you share which resources you meant? Were those suitable for programming beginners? Due to this lack of beginner-level tutorials, I created a Udemy course "Kotlin for Beginners" years ago so that might be a good starting point.

Personally, I think Kotlin is very much preferable to Java as a first language because you don't need as much confusing boilerplate. But in the end, I'm sure your grandson will do just fine with both. The most important thing are the concepts, and conceptually the two languages are very similar.

- Peter
 
Sean Corfield
Rancher
Posts: 352
21
Mac OS X Monad Clojure Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Peter Sommerhoff wrote:could you share which resources you meant? Were those suitable for programming beginners?


Unfortunately, I don't remember specifically what I read/used. It may well have been stuff recommended by folks in the Kotlin Slack. I do think the docs on the main Kotlin site are pretty good, as "new language" documentation goes.

As to suitability for complete beginners... that's really hard for me to judge these days, having been programming professionally for close to forty years (and five years "for fun" before that).
 
Rancher
Posts: 480
6
IntelliJ IDE Spring Fedora
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Probably java considering theres way more resources for him to use for learning.  Also the verbosity might might it clearer as to what is happening.  Less verbosity is a plus if things are obvious even if it isnt spelled out, which would be a plus only to somebody who already knows how to program.
 
I do some of my very best work in water. Like this tiny ad:
Enterprise-grade Excel API for Java
https://products.aspose.com/cells/java
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!