Ask HN: What web based language should we learn nowadays?
Hey,
I am currently studying applied computer science (B.Sc.). Before this I've done a school job training which was in a very similiar field, but broader and obviously not as deep.
During my job training and also now at university we're getting taught about web programming. Both times with PHP as the server side scripting language.
Now, the other day I've got an invite from koding.com (I've signed up for their beta when it was posted on HN a while ago) and in the feed for latest messages I found a commenter saying that PHP is old and should be abandoned.
I will have to get deeper into PHP now anyway, as I obviously want to pass the semester with a good grade, but:
Should PHP actually be replaced entirely? Also, which language would be useful to learn for the future?
15 comments
[ 3.4 ms ] story [ 46.9 ms ] threadPersonally I wouldn't worry much about which language you should learn. A lot of skill in programming and development is being able to conceptualize abstract problems, and learn new things on the go. I actually promote learning languages like haskell because, although you'll rarely use it professionally, it gets you thinking about things in different ways and, in turn, makes you a better programmer.
Just learn what you want for now (php?), and when you need or want to expand in the future, do so :).
You can get a job as a php coder. Plenty of companies use it.
People like to give their first languages love, and lots of people learned to program in something like ruby or python, so they keep programming in them. But that doesn't mean that older languages or legacy code go away.
That doesn't mean you should stop learning. Learning more than one language or framework can help you become a better programmer. But don't let people tell you php is over.
There are languages that are pretty much gone, except for legacy code. Practically nobody learns pascal anymore, from what I can tell.
Php, however has held up surprisingly well, compared to a lot of languages/frameworks. You might try picking up another language, like java script.
For me, the most interesting thing about programming are language agnostic principles and design. Learning the fundamentals will translate to any language.
So if you really want to learn a web-based language Javascript is the one. If you decide to go for Python or Ruby (good choices) or even PHP or PERL (bad choices) you still can't escape from learning and using Javascript.
Personally, I think that you should pick Python or Ruby, whichever seems to suit you, since both are solid languages that are widely used to build web apps and lots of other stuff. PHP and PERL are yesterday's languages and are fading away slowly but surely.
According to most replies on here it rather seems that it's very useful and recommended to still know that language as it's still widely used.
I will, however, take a look into JavaScript (already started with codecademy) and later on at the other suggested languages.
Rhino is so far the only one I haven't previously heard about.
Thanks for your replies.
If you do look into Perl, start on this site: http://perl-tutorial.org It will show you the most up-to-date learning resources for Perl.
About PHP, give this blog post a read: http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de... It makes the point that while you can develop and deploy very quickly with PHP, you will make trade-offs and will have to sacrifice consistency and predictability.
Lastly, as a general advice: Look at all the languages, figure out which ones are fun for you and learn those. I say those because you will need to learn more than one. :)
As such, i would like to ask you to hold off on commenting on it until you've actually acquired a measure of intimacy.
Also, you might want to watch this: http://youtu.be/oZ5xTI1QRTA