views:

184

answers:

6

My focus is on html,PHP,mysql, javascript, css, ajax because that's what many websites need. I am still new to the web developing scene(only 5months) so I am busy learning all those topics.

My question is whether or not to add a general purpose language, such as Python or Java, to the list. I only played a little with Python so I don't know much about it. But is there anything that Python offers that would help me in terms of web development? (besides django and those frameworks). Examples would be great!

+6  A: 

If you're only five months into web development, concentrate on web development. Study frameworks, MVC, OOP, patterns, etc. This will help you the most. In another six months, look into some other languages - Python or Java - to compare how those languages/environments handle the same issues that PHP does.

Scott Saunders
+9  A: 

You should learn a new language under two circumstances:

1 - When there's a need for it (i.e. you have a great idea for a product, but it can only be done in language XYZ)

2 - You're bored and have plenty of free time ;)

PHP is a very, VERY versatile language. It's as popular and widespread as it is for a good reason. I wouldn't worry about trying to learn as many languages as possible, instead you should focus on mastering the ones you already know.

Arms
Often learning a new programming language makes you a lot better in the programming languages you already know.
Alix Axel
A: 

The only reason for learning a general purpose language would be when you are doing some server side work that is computationally intensive, in which case, using a general purpose language can lead to, sometimes huge, performance benefits.

tathagata
You can get a good chunk of the way there performance-wise by compiling and optimizing your PHP. There are much better reasons to learn another language.
amccausl
Some of the concepts that he would learn while learning the general purpose language will be quite helpful understanding why things are the way they are in the higher level languages.
jamone
I was assuming that he already is learning PHP, and it is a general purpose language, no? For getting started with web-development, how many general purpose languages does one need to know? I understand that this forum is full of geeks :) but if one language solves a customer's problem as well as another, you might as well learn at least one well. No doubt though, that learning a new language has its own charm.
tathagata
+2  A: 

You may not like this answer...

If you truly have the time, go the opposite direction -- learn a language that puts you as close to the fundamentals as possible (that is, without crossing into full blown assembler).

Having a high-level understanding of memory allocation/management, string operations, etc, will help you understand why A + B is fast, and why A + B + C is the string concatenation from hell.

Sorry dude, no shortcuts.

oo
+2  A: 

If your still learning PHP, JavaScript (AJAX) and mysql you should stick with it for now. If you think you are relatively fit in using this combination. I would take a look into the different frameworks that are exiting for PHP (ZendFramework, CodeIgniter, CakePHP, Symfony and a lot more) and Javascript (jQuery, Prototype+script.aculo.us, ExtJS, MooTools and a lot more).

If you're getting more and more familiar with the different, but often similar frameworks you really should learn other languages, too. And not only Python. I would take a look at Ruby it is a general purpose language as well and there are a lot of Web-Frameworks too. (Ruby on Rails, Merb (soon to be merged in Rails 3), Sinatra, Camping and a lot more).

If you take a look at Java I would also suggest taking a look at other languages that can be run in the JavaVirtualMachine like Groovy, Scala, JRuby and again a lot more.

It is always good to know other things. So you can get some different approaches to on problem.

jigfox
+1  A: 

I don't think anyone else has mentioned this, but you may want to learn Python or Lua or a powerful scripting language just as a tool. I script in python when I want to automate boring or repetitive tasks, and I think it's worth it. Your Mileage May Vary.

Jeremy Kemball