4 ms·
Learn Core Python in a Week – My Way
- artursapek 15y agoIt's interesting what he said about choosing Python over Ruby. I made the same choice this past week. My friends and I are trying to start creating a web service off an idea we had months ago and while they were all talked into learning RoR, watching them struggle to even install Rails on their machines as well as horror stories about Ruby's constant version updates made me choose to learn Python instead. Zed Shaw's famous rant/article played a role in my decision too, and this article seems to support what Zed said a couple years ago about the community being "arrogant" and difficult. (Now my friends and I are learning separate languages and planning to work on the same product, and I'm actually curious how/if this will resolve itself...)
- neduma 15y agoahhh.. he said, she said. i really love to read very good illustrations of how ruby developers being arrogant for noobies.
- pyre 15y agoI find it telling that even though the entire article focuses on outlining a way to spend ~1 week to learn 'core python,' the only two comments so far focus on his choice of Python over Ruby, which is ~2-3 sentences in the entire article (and said in a very 'this is my opinion, ymmv' way).
- michaelschade 15y agoGreat write-up, and nice to see another's experiences. Obviously these are all just tips and don't all have to be followed, so I do want to point out that I disagree with the idea of paying for an instructor–at least initially. One of the nice things about the open-source community and having a great ecosystem around <insert language> is that you can hop on IRC (http://www.python.org/community/irc/ http://www.python.org/community/irc/) or find your way to the mailing lists and there will be at least a few very smart people overjoyed to help you learn–as long as you put in the initial effort, try the problem yourself first, and then ask for help (and be willing to listen to their advice). Then, if you go through all of that and try really, really hard, be patient, ask for help, and still find yourself lost, maybe seeking an instructor is a good idea. I'm just saying to beginners that I wouldn't jump to that right away. Overall, nice writeup, and thanks Mark for sharing your experiences and being willing to push your own boundaries and learn more! Yay for not falling into the abyss of managerial stagnation!
- dimmuborgir 15y agoThe problem with Python community is, when comparing Python with Ruby, Pythonistas give almost no objective reasons to prefer Python but give many highly subjective (provoking) opinions, like the following: 1. Zen of Python. (since Ruby doesn't adhere to it, it's bad) 2. Python community is less arrogant compared to Ruby community. (painting millions of Ruby programmers with the same brush based on an IRC chat they had) 3. Google loves Python. (is that even a reason?) 4. Zed Shaw said so-and-so against Ruby/Rails which I want to believe/agree. (fan mentality)
- true_religion 15y agoRuby and Python are very very close. When I initially chose Python to me it was a like a choice between chocolate ice cream and raspberry---one can't really critique something so subjective. However as time has passed by and I have become competent at Python, I see some clear wins for Python where Ruby lags: 1. Machine Learning with PyML, et al. Python has some of the best tools for scientific programming by far. 2. Two order of magnitude improvements for numeric code using either: - NumPy - Cython - PyPy 3. I prefer Cython to integrate C/C++ code to using any form of FFI. Yes, the cultures are different but that rarely affects beginners.
- dimmuborgir 15y agoAll fair points. I was talking about opinionated/troll/FUD blog posts.
- sp332 15y agoAh, then I think you shouldn't have used the term pythonista because this refers to serious Python people, not trolls.
- espeed 15y agoHere are the reasons I recommend Python over Ruby: * Python is easier to learn (not much syntax) * Easier to read (explicit vs implicit) * Has a bigger ecosystem (more packages/libraries) * Taught at universities so it's easier to find good programmers to help * More research/resources going into to its development (e.g. PyPy) * Used by more websites/companies so its easier to find jobs And these are the online Python tutorials I recommend http://www.quora.com/How-can-I-learn-to-program-in-Python/answer/James-Thornton http://www.quora.com/How-can-I-learn-to-program-in-Python/an...
- gary4gar 15y agoWhy is everyone making this Ruby vs Python? which is unproductive discussion. I think the article has some good tips for people learning any new language(it can be python,ruby or anything). The tips most useful according me are: 1. Dedicate fixed time for learning 2. Find Good mentor. 3. Use recommended development practices from Day1 4. Learn Core Language first, then try frameworks 5. Write Code(that's the only way!)
- StavrosK 15y agoI think that Ruby vs Python is the most useless debate ever. They're similar enough in design and capabilities as to not matter which one picks, so arguing about it is moot. Just pick one and go with it, and if you want to learn another, try a lisp.
- sukhbir 15y agoI really wonder why no one mentions the official Python tutorial (http://docs.python.org/tutorial/ http://docs.python.org/tutorial/). That is by far, the most concise and easiest to understand Python tutorial I have ever come across. For those who run after multiple sources and 400 pages books, give the official tutorial a read. You will not even feel at looking at another Python introductory book again. I speak from personal experience and based on the feedback from the people I recommended this -- they simply love it. As talk is cheap, don't listen to me and go ahead and give it the first few pages a read. You won't regret it.
- homofaber 15y agoThis was true for me too, it was just called 'Learn Python In One Afternoon' and it was true. There is need for other short begginer tutorials, simply because we are all different, but for majority of people official tutorial will really be the best place to start.
- myegorov 15y ago...is the tutorial any shorter than 400 page books?
- sukhbir 15y agoWith the tutorial, you just need to read till Chapter 9 as the continuing chapters handle the stdlib which serves more of a reference once you know the language. Point being, you start writing Python with the official tutorial much earlier as compared to any introductory book because the tutorial teaches you what you _just_ what you need to know.
- wyclif 15y agoDon't use an IDE if you're learning, that seems like a mistake to me. Just use a text editor of your choice and the shell.
- mikeocool 15y agoStop debating whether Ruby or Python is better and learn both. They're both great languages and they're super similar, so once you've used an in-depth technique like the one outlined in the article to learn one, you can learn the other super easily in a lot less time. If you know both, you can make an informed decision and choose the right tool. Even if you're using Django to write your webapp, you'll be able to use Chef for configuration management. If you're about to embark on writing a new project, you can choose the language that has the most mature libraries for your problem domain. You also won't have to rely on all of the apparently subjective things people say in comment threads about which language is better when choosing one. While you're at stop saying how bad C/C++/Java/Scheme/PHP/javascript/haskell/C#/Cobol and learn those too (ok, maybe not Cobol). Remember a few years ago when everyone was all hating on javascript? Now, all of sudden it's the awesome lingua franca of programmers and the language hasn't changed a bit. The perception changed because some smart people learned its strengths and wrote good libraries and runtimes based on those.
- civilian 15y agoI took the UW course that Brian Dorsey taught, the professor helping the author out. He's a fantastic professor, the Think Python textbook is phenomenal, and I'm sure he'll do fine.