3 ms·
FAQ: What programming language should I learn first?
- dr_ 16y agoThe amazon link to python programming says Python 3 on the cover. If that is in fact what it's referring to, not sure if that's really what's best to learn right now. I started with 3 then realized I had to quickly downgrade to 2.6.
- acangiano 16y agoI think that for learning programming, Python 3 is perfectly fine. Python really is one of the closest languages to algorithm pseudocode, be it 2.x or 3.x. Furthermore, downgrading to 2.7 is not that hard, if the newcomer decides that they want to start messing with Django or other 2.x libraries.
- cbo 16y agoWhich programming language do you learn first? The one your friends use. If your friends don't program (or you don't have any friends), learn Python.
- presidentender 16y agoAgreed. I learned Java first, and it's a hugely non-optimal choice... but I was playing the hell out of Steve Yegge's game, Wyvern (http://www.cabochon.com http://www.cabochon.com), and it was 100% Java/Jython. As such, I had competent developers to talk to. I work 0% in Java now, of course.
- misterbwong 16y agoI'd extend this to "The one where you can easily get the most help." The first language is the hardest so learning a language that you can easily get help with is crucial.
- kenjackson 16y agoI found the whitespace rules on Python frustrating when first beginning. I'd be inclined to do Javascript/HTML first. It's fun, easy, and very visual.
- tjr 16y agoWas Python your first language? After using other languages, I too found the significant whitespace to be frustrating at first, but I wonder if someone for whom Python was their first programming language would be similarly frustrated or not?
- kenjackson 16y agoIt wasn't my first language. And I should note that I wrote my last real Python program before most here probably started (1998) -- so things may be sufficiently different now so its less of an issue. But I do find Javascript/HTML to be so pleasant and easy for beginners that I find it hard to suggest anything else. Your "hello world" program is just: "Hello world" In an html file. ;-)
- baddox 16y agoPython was my second language, after Java. I found the whitespace "rules" (I can only think of one) a non-issue, since I always properly indented by Java code anyway. Python just took the indentation that was already there and used it as information. I'm always surprised to see even seasoned programmers attack Python for its whitespace being confusing. The only confusion or problem I can imagine encountering with Python is the spaces vs. tabs debate, and even that is only an issue if you're working with developers who disagree with you on the debate. In a job environment, hopefully there will be a style guide that's accepted and enforced by the developers. Of course, PEP 8 technically settles it for the Python community.
- kenjackson 16y agoAs someone who was experienced I did find it frustrating -- I can recall almost wanting to write a new editor because doing things like I used to (cutting and pasting loads of buffers and refactoring code) just didn't work very well. Again this is pre-1998, so I'm sure now this works just fine, but then it was just frustration. Or at least that's how I recall it.
- leon_ 16y agoC++ - after that learning every other language is a matter of hours.
- Legion 16y agoProblem is, you die before ever getting there.
- catilac 16y agoDepending on your disposition, I would actually recommend learning with Processing. Java based, and you get visual results.
- protomyth 16y agoI wonder when I see this type of question, if the person is really going to learn the language or just do a survey to get a feel for programming. If your trying to get a feel, then maybe something simple with good tutorials like Small Basic http://smallbasic.com/ http://smallbasic.com/ wouldn't be such a bad thing. Weirdly, I would say Postscript and work your way through Adobe's cookbook ( http://partners.adobe.com/public/developer/ps/sdk/sample/index_psbooks.html http://partners.adobe.com/public/developer/ps/sdk/sample/ind... ).
- bostonpete 16y agoWhat about Logo?!?
- jcfrei 16y agoI'd suggest PHP. It gives you the ability to create something for the web and you're able to share it with your friends by simply sending them a link. plus there's a lot you can do with it (eg. start facebook) and the documentation (esp. for beginners) is abundant.
- Legion 16y agoMy response always is: 1) Pick one. It doesn't matter. 2) If you're still asking me after I've given Answer #1, then Ruby or Python. But really, it still doesn't matter.
- Kilimanjaro 16y agoBefore learning programming, you better learn how to express your thoughts on paper using a formula, a condition, a repetition. For that, Python is the best "editor" out there, whatever you write is easily understood as pseudo-code. Then when you are ready to make the jump, use Python, you already know how to, just continue using it, you are now a programmer.