6 ms·
Ask HN: Most practical programming language to learn?
I want to learn programming... where should I start? I already have a basic understanding of CSS, what else is used most frequently by start ups these days? Python/ruby?
- zura 15y agoI'd recommend "How to Think Like a Computer Scientist: Learning with Python" - http://www.greenteapress.com/thinkpython/thinkCSpy/thinkCSpy.pdf http://www.greenteapress.com/thinkpython/thinkCSpy/thinkCSpy... MIT introductory course that uses this book: http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008/index.htm http://ocw.mit.edu/courses/electrical-engineering-and-comput...
- axitkhurana 15y agoFor python vs ruby: Why Python over ruby: http://news.ycombinator.com/item?id=682101 http://news.ycombinator.com/item?id=682101 Django vs Ruby on Rails: http://news.ycombinator.com/item?id=195423 http://news.ycombinator.com/item?id=195423 Python vs ruby in depth: http://news.ycombinator.com/item?id=741257 http://news.ycombinator.com/item?id=741257 I use Python, Some resources for learning Python in no particular order: The Official Python Tutorial - docs.python.org/tutorial/ "Dive Into Python", by Mark Pilgrim - http://diveintopython.org/toc/index.html http://diveintopython.org/toc/index.html "A Byte of Python" - swaroopch.com/notes/Python Google's Intro to Python Class (online) - http://code.google.com/edu/languages/google-python-class/ http://code.google.com/edu/languages/google-python-class/ "The New Boston" Programming Python Tutorials - http://youtube.com/user/thenewboston#g/c/EA1FEF17E1E5C0DA http://youtube.com/user/thenewboston#g/c/EA1FEF17E1E5C0DA "Building Skills in Python", by Steven F. Lott - http://homepage.mac.com/s_lott/books/python/html/index.html http://homepage.mac.com/s_lott/books/python/html/index.html "Think Python: How to Think Like a Computer Scientist" - http://greenteapress.com/thinkpython/thinkpython.html http://greenteapress.com/thinkpython/thinkpython.html "Code Like a Pythonista: Idiomatic Python" - http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html http://python.net/~goodger/projects/pycon/2007/idiomatic/han... OpenCourseWare: MIT 6.00 Introduction to Computer Science and Programming - http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008/video-lectures http://ocw.mit.edu/courses/electrical-engineering-and-comput... "Learn Python the Hard Way" by Zed Shaw - http://learnpythonthehardway.com http://learnpythonthehardway.com Practice Questions at PySchools - http://pyschools.com http://pyschools.com Begin Python - http://beginpython.com http://beginpython.com More Tutorials - http://awaretek.com/tutorials.html http://awaretek.com/tutorials.html source: http://www.quora.com/How-can-I-learn-to-program-in-Python http://www.quora.com/How-can-I-learn-to-program-in-Python
- SkyMarshal 15y agoMost practical? Python.
- abbasmehdi 15y agoYou learn one, you can mess around in all. Go with either Ruby or Python, and you will be fine. I'd go with Ruby, because if you decide to do anything for the web then Rails (Ruby's web framework) is more beginner friendly than Django (Python's web framework).
- mcrittenden 15y agoJust as an anecdote, I found Django much easier to get started with than Rails.
- nahname 15y agoWhat is your background, if you don't mind me asking.
- mcrittenden 15y agoPHP mostly, I'm a Drupal developer by day. I had no prior experience in Python or Ruby when I tried looking at Django and Rails.
- drallison 15y agoDon't confuse programming languages with programming. You probably will want to learn a number of different programming languages: Python, C, Lisp, Haskell, and a few Assembly languages. Programming is the art of using one or more languages to do something useful. It's about algorithms, the way problems are approached, and how solutions are decomposed and represented.
- drallison 15y agoStrange that my comment would be down-voted. Language wars are fun and grist for many a comment, but there is more to programming than languages.
- latch 15y ago11 hours in and no one suggested JavaScript...I think you guys are all biased. The rapid growth of MVC client-side frameworks (backbone), the push on the backend (node.js) and its inclusion in a growing number of technologies (MongoDB, CouchDB, ...) would seem to make it, at the very least, worth mentioning.
- richardjortega 15y agoRepped. Same situation here, our entire backend is setup with this setup (backbone, node, d3, mongoDB). We are looking for developers in these areas, since I'm not a programmer - do you have any good ideas that I can check?
- pettinato 15y agoI have never met a programmer who couldn't write C++. Python is definitely a good place to start as you can quickly code up something cool.
- tjgillies 15y agobeing able to write hello world in c++ and knowing c++ like a master are two different things. I wrote a nodejs c-lucene extension in c++ and i still feel like a little baby in c++
- vonstark 15y agogo for ruby and pick it up in 10 mins.
- thoughtsimple 15y agoStart with C. When you understand why it is portable across different hardware you can move on to C++. It isn't important to become highly proficient in C++ but it will give you a basic understanding of Object Oriented programming. From there choose JavaScript,python or Ruby to get an understanding of more dynamic languages. Too many programmers start out with high level languages and never learn what a CPU actually does. If you can't understand basic computer architecture, you will never be competent at optimizing and scaling applications.