

Ask HN: What programming language/framework should I learn? - sixQuarks

I have over 10 years experience designing sites using HTML and CSS but never learned to program. I keep hearing about phyton, ruby on rails, etc.<p>I just realized that Ruby on Rails is a framework for Ruby. I thought they were the same thing, which shows you my ignorance.<p>I plan to create web applications, which language/framework would you suggest I learn and why?
======
eric_bullington
I spent ten years as a web developer, at first professionally, then as an
adjunct to my jobs as a health researcher. I knew some Javascript and PHP, but
I programmed in a cargo-cult fashion and never really understood the
fundamentals until I started learning Python about 3-4 years ago. Something
about Python resonated deeply, and since then I've gone on to learn quite a
bit of C, some Haskell, Lua, CoffeeScript, and yes, even finally understanding
what using a prototypal language like JavaScript really entails. If you don't
have a formal computer science background, I'd highly recommend Python as an
excellent route to understanding _programming_ , as opposed to just another
programming language. If not Python, then Lua, Ruby, or some other language
with good C interop, since with these languages you will almost inevitably end
up learning some C, and C is a very nice complement to higher-level dynamic
languages.

------
relaunched
What's your goal? If it's to get a job, check with companies in your area and
learn the stack they are using...unless you want to move.

If it's for the development of your own personal projects, pick whatever you
like. If you like developing website, check out each languages' frameworks and
see what moves you.

Personally, I code in PHP & Python. Python can say a lot with a little and
let's you command line script, with pretty good libraries. PHP is very
readable and there is SOOO much code out there, you probably will write very
little from scratch. Those are probably the only things relevant to someone
just testing the waters.

I've heard RoR is pretty :P Good Luck!

------
kjhughes
Focus on your application and its high-level design rather than an
implementation language or framework. (If you have startup aspirations, attend
to the even higher-level goal of identifying what you can build that people
would want.) Then find an open-source application that's similar to what you
want to build. Check that it has an active supporting community. See what
language/framework they use. Get the application to build on your own. Then
make a very minor but visible change and rebuild. Repeat with increasingly
advanced changes, features of your own, bug fixes, features requested by
others, and eventually your major design plans.

------
ecubed
You're going to get 10 different answers from 10 different people on this one.
They've all got their positives and their drawbacks. My personal background is
in PHP, which I've been doing non-professionally for years now, but I've
recently made the switch to Ruby on Rails out of curiosity. If you have no
programming background at all, then I reccommend doing a ruby on rails
tutorial, a php tutorial with a framework like yii or code igniter, and a
python tutorial and see which language makes the most sense to you, and then
from there go deeper into studying one language or another.

------
swlkr
Ruby and Sinatra, it will help you understand the fundamentals. Once you get
that down then you can appreciate something like ruby on rails.

------
ericingram
I've found the most business value in PHP over the last ~12 years. I still use
it for that reason primarily and really like it. Also interested in Python and
Ruby, I just haven't had the chance to build production web apps with those
yet (not that I've been looking for it).

Check out those 3 first and pick one to start.

------
TazeTSchnitzel
If you're thinking ahead, maybe try Dart, it's quite nice.

