Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
What are the best languages for aspiring programmers in 2014?
2 points by err4nt on Sept 23, 2013 | hide | past | favorite | 9 comments
Hello HN, I'm a front-end web developer and I write HTML, CSS, and work with with PHP and JavaScript. My girlfriend tinkers with a little HTML, a little CSS, and learned Java in university but has since forgotten most of it (just remembers the thrill of solving problems through code).

She's interested in picking up programming again as a hobby and I'd love to join in on the fun too! She thinks building simple Android apps would be a good goal/reward to work toward, so here's my question: Which language(s) would be good for non-programmers to ease into that could eventually lead to hobby Android apps, or make it easier to learn further languages?

PHP - seems like it has passed peak relevance

JavaScript - seem useful but limited (but getting more powerful slowly)

Ruby - seems easy to get into but hard to perfect

Python - seems solid but with a steep learning curve

Java - saying Java is great because it works on all OS's is like saying...

What would be some good options for us to tackle, are any of the above languages ideal, or there are other languages (like Go or others) that would suit us better? Any insight you could offer would be a big help to both of us!

Thanks so much, and happy hacking :)



> PHP - seems like it has passed peak relevance

You're joking, right? If you hang around HN and /r/php for too long then maybe you might not be joking.

PHP is becoming better and better for each release.

VentureBeats says PHP powers 75% of the web[0], although they don't give an exact source for that number.

Python is extremely simple to learn. Heck, there's a book for 8 year old children to learn it[1].

If you're a pure front-end guy that doesn't have much experience with server-side languages, why not learn something that utilizes Javascript? I've heard good things about Node, for example.

Go and Java may be a little too different to what you know to serve well as a starting point, imho.

[0] http://venturebeat.com/2013/05/17/google-app-engine-finally-...

[1] http://briggs.net.nz/snake-wrangling-for-kids.html


Don't get me wrong, I don't think PHP is going anywhere, and it certainly won't decrease in usefulness - but since I first started dealing with PHP around a decade ago I have seen it blossom and grow, but lately it doesn't feel like it's such a good choice to jump onto.

Mind you, I just finally started releasing my own PHP code on Github this year, but I just can't see how diving deep into PHP in 2013/2014 to be the most useful exercise. It seems to me like many of the newer languages are solving problems PHP has to work around, and I'd hate to introduce more headaches to this than necessary.

I've done stuff with CMS's like Wordpress, Joomla, and others, and worked on a variety of PHP-based web apps, but none of those seem to be a great spot to jump on the bandwagon.

I do have a private server, which means I can set my PHP options however I like (full access). If you know more about PHP than me and think it's still a great time to hop on board, what are some resources or things we could do with it that would fit the type of learning we want to achieve?


Wordpress, Joomla and Drupal are not good examples of "good" PHP code. They work, and are used extensively, but experienced developers who care about code quality blow a gasket when they look at the source code.

To do proper PHP development you should have a local VM. I created something to help in that regard[0]. It's been fairly well received.

There's also websites like PHP The Right Way [1] that act like a collection of best practices. If you're not using Composer[2] you should start doing so. I wish Javascript had a package manager as robust and useful as Composer (I know of Bower, but imo it's not nearly as good!). PHP Developer[3] is a source of good daily blog posts. The ones I read on a regular basis are ircmaxell [4], fabpot[5], lornajane[6], philsturgeon[7], richardmiller[8], and phparch[9]. I also sometimes write some things[10].

[0] https://puphpet.com

[1] http://phptherightway.com

[2] http://getcomposer.org

[3] http://phpdeveloper.org

[4] http://blog.ircmaxell.com

[5] http://fabien.potencier.org

[6] http://lornajane.net

[7] http://philsturgeon.co.uk/blog

[8] http://richardmiller.co.uk

[9] http://phparch.com

[10] https://jtreminio.com


Oh dear, thank you for these! I've finally moved from the 'I can edit existing code' category to authoring my own simple scripts so these will definitely come in handy. I've got some reading to do!


Did you say Android Apps? Those are programmed in Java (natively).


Yeah, Android apps are a goal/idea here, but I think what she's wanting is something that she can make, that runs, that another person might actually find useful. I know you probably shudder and cringe at the thought of Phone-gapped apps, but I think for our purposes learning a little server-side programming (where I already know how to do all the front-end stuff) could be a viable way we 'see' our code on a mobile device. It could just be a web app with a mobile interface too. I have my own VPS so custom language support on a web server is no problem :D


The web designer crowd appears to favor ruby.


My take on Ruby was that it's easy to get into and very malleable into whatever you want, but because of that people can get set in their ways and write code in a way that other rubyists may not be able to decipher (where Python was described to me as there only being ONE valid way to do it: the Python way).

I'm leery of Ruby on Rails because of the average quality of apps I see being produced by it, I don't want to start down a path that can't lead to polished great product in the end.

Are there more valuable approaches to Ruby than picking up RoR that we could go after - or maybe I'm just way off base here and have been hearing biased things. I'd love to hear why Ruby is a good fit as it seems like it can get pretty messy pretty fast...


English is probably the best language.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: