views:

386

answers:

6

I'm a web developer proficient in HTML, CSS and Javascript, but to be able to develop my own web applications, I'd like to learn a programming language besides PHP.

I've been learning Python for a while now but it seems a general purpose language, a bit complex, and not suited for web-development I guess.

So if my focus is creating web applications ONLY, which should I learn: Python or Ruby?

Many thanks for your comments and advices.

A: 

RubyOnRails might be a better fit for Web Only development but the languages themselves are both General Purpose languages without a web framework.

Dean
a better fit than what?
jcdyer
+1  A: 

If you haven't looked into the libraries situation, you'll get exactly the same impression of Ruby as you do of Python: they both are general purpose languages, until you add a framework. For example, with Python that could be Django, whereas for Ruby it would most likely be Rails. Those aren't the only choices for either language, but you can't evaluate the languages without also evaluating the frameworks.

Andrew McGregor
+1  A: 

One idea would be to try both!

Test writing a simple blog page with both, and choose whichever you like best.

JRL
+3  A: 

I've been learning Python for a while now but it seems a general purpose language, a bit complex, and not suited for web-development I guess.

Python is very well suited for web development. There are a number of web frameworks available, like Django (others include TurboGears, Pylons, web.py, web2py, ...).

I guess your question has no real answer. Python programmers will say go with Python, Ruby programmers will say go with Ruby. As @JRL says, try both. I suggest you spend some time evaluating RoR and Django (go through tutorials, for instance).

codeape
A: 

If you plan to quickly build web applications, you can choose between Django (python) or RoR (ruby), they have similar functionality with Django being stricter but it mostly depends on your language preference.

But, talking from experience, if you would need to support that web application later, then Django is a preferred choice - it has much less magic than RoR going on, and it is much easier to figure out and fix bugs in after some time has passed - or if you are not the original developer.

kibitzer
+3  A: 

Python definitely can be used in web development. There are so many web sites are written in Python. For example:

and so on..

Also, there is so many great python web frameworks.

  • TurboGears
  • Django
  • Pylons
  • Web2py

I have wrote some web-applications in asp, perl and php before. And finally I wrote web-applications in Python. It is the best language for web development I have never seen.

Victor Lin
Those have some components written with Python; they aren't entirely written in Python.
Andrew