Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialJonathon Pennewell
2,305 PointsWhat's a good starter programming language?
So I'm undecided on the path I want to take. I have been learning HTML and CSS and have become pretty fluent. Going to learn Bootstrap eventually as well. But I want to start learning an actual programming language. I've read so many forums I don't know where to start. I was thinking maybe Python or Java. I heard C, C#, and C++ are harder languages to learn at first, since they are a lower level language. I know Python is one of the easiest, but some people say it hides some of the stuff that's going on behind the scenes. And then some people suggest well it depends on what you want to do, like Android Development, IOS etc. But I don't know what I want to do. I just want to learn a language and eventually find a job in the IT world. I heard Java is the most in demand. Any suggestions? It would be greatly appreciated.
3 Answers
Alexander Davison
65,469 PointsI recommend (for a starter language I find these the best languages):
- Python
- Ruby
- JavaScript
Those are probably the highest level programming languages, but if you want even higher level programming languages (these aren't taught on Treehouse sadly):
- Go (by Google)
- Closure
- And a couple more :)
However, Go and Closure are a little more advanced, although it is higher-level, I recommend learning Python, Ruby or JavaScript before Go or Closure :)
Good luck! ~Alex
andren
28,558 PointsIf you already know HTML and CSS then i'd recommend learning Javascript, it is only scripting language natively supported by all modern web browsers so if you intend to do web development in the future then that's your best bet.
As for programming languages in general Python tends to be the go to as far as easy languages go, it has gotten incredibly popular and has a large community built around it.
If you want something slightly more powerful but don't quite want to go with a complex low level language like C or C++ then I would recommend Java or C#, despite the name C# is not actually a low level language like C/C++, it is in fact very similar to Java, to the point that a lot of basic code examples look almost identical in both languages.
I am personally a big fan of Java and C#, they definitively have a tougher learning curve at the start than something like Python, but once you start to understand the underlying concepts they are actually pretty simple in my opinion, and programming in them can be quite pleasant.
I think that whether you'll enjoy Java/C# or Python style programming languages is somewhat of a personal preference thing, so I'd recommend first taking the basic Python course found here on Treehouse and then the basic Java or C# Course or vice versa, from that you should get an idea of how these languages work and how they are fundamentally different, from there you can make a decision on what language seems to resonate best with you and start to focus more on learning that one.
Ultimately if you intend to be a professional programmer you'll likely end up learning multiple programming languages anyway, which luckily isn't as hard as it might sound. Once you learn one programming language and start to understand the underlying concepts you'll find that a lot of languages share enough fundamentals with each other that learning a second, a third, a fourth, etc language is significantly easier than fully learning your first language.
Jonathon Pennewell
2,305 PointsThank you everyone for your informative advice.
Simon Coates
28,694 PointsSimon Coates
28,694 PointsJavaScript or python are decent starting points, I think. Don't think they have than much syntax to learn and in demand. Java, by comparison, in my experience has a rep for being difficult to learn (so many classes). JavaScript has a very low barrier to entry (some app development requires specific machines, or uses software that really needs a chunk of RAM)and you get results pretty immediately. You just need a browser and a text editor.