tags:

views:

349

answers:

10

By no means I'm an expert yet on any, but I have an urge to learn something new that migh help me construct better web apps.

What's your take? Should I calm down instead and get better at what I already know?

I've always learned by myself, so maybe I should focus on philosophy and stuff.

+2  A: 

Learn either Python and Django or Ruby and Rails. They are both widely respected web development frameworks, and will broaden your horizons and be incredibly useful to you as a web developer.

Benson
+4  A: 

I'd recommend creating some more complex project using the stuff that you already know. Thats the best way how to learn new things. But if you want to try something new, .NET or J2EE would be nice way to go, since there is a LOT of things to learn.

If you want to work only with Windows, then go for .NET, otherwise if you need multiplatform solution, go for J2EE.

Also Ruby on Rails could give you some new insight into web app development.

Another really great thing to learn is jQuery. It's probably the thing to learn if you want to make your JavaScript development effective. I really recommend learning jQuery as it would save you loads of time, and it is easily extensible by jQuery plugins

Darth
I recommend against J2EE, as it's widely regarded as a bad move by all the developers I know (web and otherwise). I'm prejudiced against .NET simply because it's a windows-only platform, but I'll leave it at that. :-)
Benson
If you're interested in J2EE at all, you should consider JavaServer Faces (http://java.sun.com/javaee/javaserverfaces/).
Grant Wagner
Yup, not very interested in .net since I work on a Mac, but the idea of creating more complex projects really seems enticing.
Rob
+1  A: 

I really recommend REST

geowa4
+2  A: 

From where you are, I'd go for a strongly typed language to give you a sense of the rigor that's possible outside of scripting environments.

Pete Michaud
+2  A: 

Sounds like you've got pretty decent coverage of web-development technologies. From that point I'd consider learning jQuery instead of writing all your Javascript by hand (assuming that's what you currently do). If you want to stay in the PHP world, check out some of the common frameworks such as CakePHP, CodeIgniter or symfony.

If you really want to branch out, look into similar technologies outside of the "MP" (MySQL/PHP) part of the stack. For example, try picking up PostgreSQL to have as an alternative to MySQL, and Python / Django as an alternative to PHP.

Chad Birch
A: 

It really depends what you're doing and what you want to do but besides learning python or ruby you could also just perfectionise your PHP knowledge, learn Zend Framework for example! If you know PHP already fairly well, you will build good web apps with Zend Framework... You might not very soon do the same with Ruby or Python.

Of course also other areas can be enhandec. Learning jQuery for the js, get to know another DBMS, etc.

tharkun
A: 

Something really new and rewarding would be a look into the Smalltalk web frameworks like Aida/Web and Seaside. Pure object orientation, married with the web, for really complex web applications, yet maintainable for years.

Another plus is that you will mostly program just in smalltalk and not in so many languages as you do now. This is easier long-term, but from time to time you still need to know basic web technologies like HTML and specially CSS. JavaScript is mostly hidden until you want to do something more special.

Janko Mivšek
+1  A: 

I had a friend of mine that had the same dilemma some time ago. He came to me and asked me the same thing; inmediatly I replied : learn c#, asp.net, ajax and jQuery, because, that's what I do, that's what I love to do.

He tried for a couple of weeks and he came back to me. I asked how things were going with .NET and he said that he really liked the technology but that he was so used to do things one way that he didn't have the time to get used to another way of doing stuff.

So that got me thinking.. it doesn't really matter what technology you really want to learn. It's the time you're willing to spend learning it. There's a market for almost everything (I'd say even COBOL ;) ), so as long as your willing to spend time in something new, it's really up to you.

But I'd say ASP.NET and jQuery if you ask me :)

oz
A: 

I would definitely recommend ASP.NET. Website development in C# is fun and powerful, and with an ORM like NHibernate your data storage is simple. Further, with NHibernate, you don't have to rewrite your DA layer when moving to a new database! Also check out the ASP.NET MVC framework too to get a taste of some real powerful webdesign.

splatto
A: 

Well, unless you're looking to branch out into non-web programming, I'd say get a framework or two under your belt. There's the Zend Framework or CakePHP ( among others ) for PHP. Or pick up a toolkit, like jQuery or Dojo for Javascript. If it's a new language you're looking for, I'd recommend Ruby ( hooray for MVC! ).

Sean Hagen