i hadn't even considered python. what are its selling points?
i hadn't even considered python. what are its selling points?
After/during school I played in Ruby, Perl, PHP and most recently Python. I love Python and find it making sense where the other languages and frameworks seemed unnecessarily confounded at times. After a week in Python, I felt like I absorbed more than a month in any of the others (although PHP is 'easy' to pick up, its peculiarities are a bit cumbersome to work around).
After forming a fondness for Python, I decided to start on Django and love it. I am currently working on a couple of small apps based on the framework and feel the rate of progress concerning both my learning and development to be extremely rapid - far more so than was the case in reading through the various rails tutorials (just for contrast - no flaming please. I admit my complete and total ignorance in advance to any fanboys currently mumbling "idiot" as they read this).
I personally recommend checking out http://www.webmonkey.com/tutorial/Install_Django_and_Build_Y... 1st to wet your appetite - its quick and allows you to see the power of the framework in no time flat. When you finish there, head to http://www.djangobook.com and start working through - I am and am having a blast doing it.
I know it is a bit cliché, but Python + Django has been a pleasure to program in. Although I may not be able to etch out a living doing it right now, I think this is where I will be spending my recreation time for a while.
In addition, Python has solid support for object oriented programming which I can't really say for PHP (PHP's object 'support' is slowly improving but it's still a crappy patch). This is represented at it's core by the fact that EVERYTHING is an object - if you say:
foo = 5
foo is an object of type int. It's still loosely typed, in that you don't have to declare that foo is an int, but the contents being objects gives you a lot of power for dealing with them.
There are a lot of great tools for Python as well - Pylons (which Reddit is based upon), Django and TurboGears are pretty well entrenched and established. They are easy to learn and work with (Django has an incredibly low barrier to entry/learning curve) and powerful.
Mark Pilgrim wrote a great book called "Dive into Python" which is available for free on his website: http://diveintopython.org/
It gets things moving pretty quickly if you're looking to get a taste of what Python offers.
Python is a pretty multipurpose tool that happens to have the ability to build web applications. (And Ruby as well)