views:

1265

answers:

10

As the title asks, what coding languages should a web developer know? I know xHTML, CSS, PHP, and mySQL but I know that isn't enough. What else do you suggest?

Thanks, -Marcus

+9  A: 

javascript.

sledgebox
A: 

There are no languages that you "should" know, but give a try to Python and/or Ruby.

I'd imagine that it is more important for you to keep up with the frameworks and the various libraries within your chosen language.

Also, did you account for JavaScript? Pretty hard to get anywhere without it. Should also try different databases.

Swati
+10  A: 

html, css and javascript. Other than that it totally depends on what you're building your sites in, i.e. Python, Ruby etc.

Max Stewart
+2  A: 

Do people really consider HTML and CSS a programming language? I guess typesetters are coders now :)

My personal belief is that if you want to improve, you should forget about the "web developer" mindset and focus on something slightly lower level.

For example, in the .NET world, someone can throw together an ASP.NET site and be considered a web developer, but that same person could learn for months about the concepts of good application architecture and design.

These concepts scale across languages and platforms, and are far more useful than learning another set of syntaxs ever will be.

FlySwat
+2  A: 

Add to your list at least:

  1. JSON, it's a sort of object notation for JS, but you should be aware;
  2. Xml for REST/WS-* service consuming;
paulosuzart
JavaScript Object Notation is a "sort of" object notation for JavaScript?
David Dorward
I wasn´t translating JSON, but saying that it is on of the possible object notations for java script like: http://swik.net/jxon Think better!
paulosuzart
A: 

JSON and Javascript on the front end. They will work with any backend you choose.

Kevin Conner
+3  A: 

Depends... are you doing it for fun, or do you want a job?

Checking Monster.com really quickly (admittedly not the best place to look for a programming job, but it's there):

  • "Java programmer" - 1023 listings
  • "Python programmer" - 80 listings
  • "Groovy programmer" - 2 listings (that's just sad).
  • "PHP programmer" - 260 listings
  • "Ruby programmer" - 52 listings
  • "C# programmer" - 654 listings

To be fair... I could break Java up into some frameworks (as Groovy and Ruby really only have 1 to choose from); all of these require Java:

  • JSF Programmer - 59 listings
  • Struts Programmer - 119 listings
  • Spring Programmer - 104 listings

I don't know who said this, but I keep hearing it... "80% of the web is in PHP... but if you want a job, learn an Enterprise language like Java or C#"

Bill James
What is your search criteria? I'm getting 1014 for .NET, which is basically 99% C# these days :)
FlySwat
no criteria.. just a pure text search for "C# programmer"... I totally can understand getting different numbers for .NET (which I understand has some language independence, though that wouldn't explain the big jump). I was picking languages more than frameworks, as you can see.
Bill James
A: 

I guess in a modern web programming you can't work without at least basic JavaScript skills. You need to know some web framework as well and here you have at least 2 modern choices; Django (which means Python) or RubyOnRails (Ruby...). More commercial choices would be C# ASP.NET, web java or Flash / Flex.

Nazgob
So all the php frameworks don't count?
Pselus
+2  A: 

Key languages include:

  1. JavaScript (Includes Ajax, DOM manipulation, libraries such as jQuery, Prototype etc, JSON)
  2. CSS
  3. HTML
  4. A back-end language of your choosing. This could include ASP.Net, PHP, Rails etc
Shaun
A: 

Hey Marcus,

Speaking as another owner of another web development firm (because there's only a handful of us, right?), I have struggled with this question for many years.

The truth is, most languages will help you get the job done. For a web developer there are four main spaces we work in: The Server, Data Storage, The backend, the front end (or client side).

There are multiple good choices in each of these four areas and all the above answers are correct. What should be guiding you, as I'm sure this is related to growing your business, is what is the market or your clients demanding of you? What direction is your business heading in?

I personally work with MySQL/MSSQL + PHP + Actioscript + XML/KML + Javascript, but I'm sure we'll get a project that deals with Python, or perl, or .Net or something.

Find a language that makes sense for the direction you're heading in that also has a strong community and strong supporters. I took a risk on PHP years ago and lucked out.

But for my two cents, I'd add XML, Actionscript, AIR, Web Services, Cloud Hosting, Shell Scripting and large-scale database planning to my portfolio.

Check out http://www.highscalability.com for some great ideas of what the big boys are doing.

jerebear