This is a guest article by Stephen Ward. He writes for DailyBits.com, a blog focused on web development, software and online marketing.
So you're interested in a career in web development. You already know a thing or two about HTML and CSS. Maybe you've created a few static websites. You're interested in learning more, but there are so many different directions you could take. What's the next step to really get your web development career off the ground?
If this sounds like you, or if you're just interested in improving your existing job prospects, here are 10 web development skills that you can learn to boost your marketability. They apply both to corporate environments and web startups. Update: a note that these skills are listed in alphabetical order.
What are they? ASP is a server-side script processor developed by Microsoft. VBScript is the programming language most often used to power it.
Why are they important? When it comes to server-side programming, ASP enjoys popularity comparable to PHP due to Microsoft's heavy market share. VBScript, in addition to its use with ASP, can also be used client-side in much the same way as JavaScript, although support for this is spotty outside of Internet Explorer. Additionally, VBScript can be used to create desktop applications for Windows. Because of these varied uses on Microsoft products, VBScript is very handy for developers who work in Microsoft-centric environments and large corporations.
Where can I learn more?
What are they? C# and VB.Net are general-purpose programming languages. Both were developed by Microsoft as part of its .Net initiative.
Why are they important? As part of the .Net framework, C# and VB.Net are often used for code-intensive projects that simpler runtime languages aren't well-equipped to handle. In usage and syntax, C# is very similar to Java, whereas VB.Net strongly resembles Visual Basic. Learning either is a good path to heavy back-end development and software houses that focus on web development.
Where can I learn more?
What are they? Adobe Flash is a development environment that allows you to create dynamic visual presentations for the web. ActionScript is a scripting language used to add interactivity to those presentations.
Why are they important? With the ability to make truly beautiful web applications that are deeply and uniquely interactive, Flash enjoys heavy market demand. Nowadays, entire websites are built as stand-alone Flash applications, while other websites make use of simpler Flash animations to add the same cutting-edge feel to an otherwise static page. Knowing Flash is enough to build the latter, but you'll need to pick up some ActionScript to accomplish the former. Especially when combined with other design skills ( i.e., CSS, PhotoShop, etc.), knowing Flash and ActionScript is a great way to find work in the front-end development arena and on design studios.
Where can I learn more?
What is it? Java is a widely portable programming language that can be used for both client-side and server-side web applications.
Why is it important? Unlike more specialized languages, Java is versatile enough to be used in many different development contexts. For example, Java applets allow a programmer to create client-side applications, while Java Server Pages (JSP) produce dynamic, server-side content in much the same way as PHP or ASP. Because you can take it with you into different environments, learning Java is particularly worthwhile if you anticipate changing to another programming career in the future.
Where can I learn more?
What is it? JavaScript is a popular client-side scripting language. AJAX is a web development technique that combines Asynchronous JavaScript and XML. It became popular in 2005 thanks to Google's support.
Why is it important? Between JavaScript, JScript, VBScript, and the like, JavaScript is arguably the most popular. It enjoys wide browser support and is integral to prevailing web methodologies like DHTML and AJAX. Along with HTML and CSS, it is considered a standard of web development that few professionals in the industry can do without. AJAX, on the other hand, enables web developers to create better, faster and more interactive web pages and applications. Basically it makes possible for the Javascript to communicate directly with the server, so specific data can be exchanged without reloading the page.
Where can I learn more?
What is it? Perl is a general programming language that is often used for CGI applications and server-based scripting. It is used by Google on many applications, which makes it very marketable.
Why is it important? Perl can be described as the Swiss army knife of web programming languages; with the right modules, it can do pretty much anything. Although not strictly built for web development, it is a favorite for server scripting tasks and can be used to pass information to and from external applications. Mastering Perl is especially useful for those looking to get into server administration.
Where can I learn more?
What is it? PHP is a popular server-side programming language. Considering it is an open source language, many web startups use as a backbone for applications and server-side scripting.
Why is it important? PHP is one of the most popular and widely-used server-side programming languages. It forms the backbone for popular web frameworks like WordPress, PHPbb, osCommerce, and MediaWiki and has a large community of open source developers behind it. PHP is an excellent path to general web development work, particularly in Linux and other non-Windows server environments.
Where can I learn more?
What is it? Python is a high-level general programming language.
Why is it important? Python is often praised for its simplicity. It is described as easy to learn, easy to read, and easy to implement, making it ideal for rapid web development. Mastering it is a good way to find work in a web design studio or indie web development.
Where can I learn more?
What is it? Ruby is an open source programming language. Ruby on Rails is a web development framework that utilizes Ruby.
Why is it important? Although Ruby doesn't enjoy as much widespread popularity as some other programming languages, it forms the backbone for Ruby on Rails, a web development framework that has gained momentum in recent years. This combination is particularly well-known for rapid, intuitive web programming in much the same way as Python, and is often used for the same sort of projects.
Where can I learn more?
What is it? SQL is a language used to interact with relational databases.
Why is it important? Most dynamic websites make at least some use of databases, and many do so extensively. Although it's not technically a programming language, SQL is nonetheless vital to any serious web programmer's skill set. Popular database management systems that use SQL include MySQL and MSSQL.
Where can I learn more?
Comments
Subscribe to comments for this post OR Subscribe to comments for all ReadWriteWeb posts
Great, I'm horrible with PHP and I don't know any other the rest at all :'(
Mhh... funny, beside perl and phyton I use all the others but I never worked for money on these stuff. Anybody out there who needs a developer :)
Good overview.
I'd be interested in your thoughts on trends in these skills, too.
It seems like open tools like AJAX, PERL & PHP are either growing in importance or at least holding their own, while proprietary tools, especially .asp, are decreasing in importance. Do you think that's accurate, or do you see companies continuing to invest heavily in proprietary tools?
This article really isn't that useful and is probably more confusing to the target audience that it should be. These aren't really "web development skills", they're all programming languages (plus SQL). By calling it "skills" you give the impression that you must learn them all to become a "master web developer." You can build an entire career off of just one of these languages.
What are "skills"? How about project management? Time management? Keeping up with new technologies?
I love these lists, because it causes a flood of interest into these skills. This causes an over abundance of "experienced" people, thus reducing costs of hiring someone :)
Diana
The costs are never reduced. If i know what im doing... i'll be charging you 50 to 100 an hour. good luck in finding an experienced developer that can do what you need for less than that. It takes years to fully grasp hardware, networking, web development and application building, and if you think that im going to give up my dream of living in the suburbs with a 40,000 SUV... think again. And if you do find someone for 20 an hour, good for you. You've just found a diamond in the rough.
I'm honestly surprised to still see ASP/VBScript in this list... I know it still has uses, but I didn't think it was that widespread these days. Perhaps I should edit my resume. :)
Can you please make it clear that this list is alphabetical? Remove the numbers as they are useless and misleading.
This is really stupid. ASP is not even officially supported by Microsoft anymore, not to mention that it's crap. It shouldn't be a marketable skill because any programmer still using it isn't very good. For the upteenth time, Ajax is NOT A LANGUAGE, it just means using a little part of javascript to pass data back and forth from the client to the server asynchronously and is hardly dependent on XML.
Thanks for the list. I needed something to study during the Christmas break.
Ah, this list is sure to bring out the language snobs.
X sucks! No, Y sucks, and you are dumb! No, you are dumb, and Y is the best thing ever!
I've been a web developer for years and have fairly successful one man show going and I don't have any of those skills. Yes, I can hack my way through scripts, manage web servers, design, build, etc., etc. but couldn't program my way out of a paper bag though I think I can write something that says "Hello World".
I'd like to learn but I'm too busy. I agree with #4. These aren't web development skills per se as much as programming skills.
Handy article however for the links it provides.
I'd say something about usability, accessability, interaction design, web standards and some things like that....
@Brian Daley
"This article really isn't that useful and is probably more confusing to the target audience that it should be. These aren't really "web development skills", they're all programming languages"
Technically ASP, SQL, Flash and AJAX are not programming languages. I don't get your point.
How could ASP/VBScript be on this list and there be no mention of ColdFusion?
Of all the dynamic scripting languages out there, ColdFusion is easily in the top three where as Java, Ruby, Python and Perl are much less commonplace particularly outside of the enterprise environment. And if we are to mention all these programming languages, shouldn't there be an inclusion of database i.e. SQL (MS SQL Server, MySQL), Oracle, DB2 etc.
I have to agree with others that these are not really skills but programming languages. Successful web development skills include project management, information architecture, SEO/SEM strategy, multi-tasking, interpersonal skills, sales skills, design and creative abilities, and understanding of usability and work flow.
And if you mention Flash, you should probably include Flex and Video skills as well.
Just my 2-cents.
Great article..
Anyone looking for a diamond in rough as #6 has mentioned, it will be us. Contact : motionrocks at yahoo dot com
C# - $25 per hour (bring all you can)
PHP - $20 per hour (only small sites)
Is ColdFusion #11? Just checking.
How about graphic design and the web or shall we just stare at text?
Error on the AJAC Matters link ... You have hhttp:// instead of http://.
Really awesome article though, 2 thumbs up!
I agree with #7 ASP/VBScript is way too high...In my experience Java should be #1.
What utter rot.
Everything you need to know about your development platform- regardless of language/server/ice cream flavor- can be learned in a few days. And will still make you a crappy web developer.
How to use a language and how to program are two completely seperate functions. Knowing the principles of developing effecient, secure code is a heck of a lot more important than learning flavor-of-the-month languages. And being able to create a robust, extensible architecture has nothing to do with languages.
Learn to program and languages become irrelavent.
is there anything else besides all those technologies??
Oh yeah - there's ColdFusion.. :-]
I am glad this Stephen guy writes for DailyBits.com and NOT Read/Write Web Here's hoping this is the 1st and last I hear from him here. This article is so misleading especially to people new to the industry that I cannot help but feel compelled to comment here.
Nobody in the business employs someone who "knows" a particular tech or not. You will probably not be surprised at how many self-proclaimed web programmers who "knows Perl and Python", but just hasn't used them in building a simple dynamic website and hence needs time to learn this... Or those who have built "dynamic websites" with ASP.Net but have not used backend database to power a website before...
Hirers look for people who understand how to use various technologies together to provide value-added service via a smooth user experience. The specific technologies appear, change and develop so fast that in the 1st place, this list can only pass off (barely) as the basics in web development skills. Most marketable skills my foot!
Possible exceptions to this is when hiring for temporary, entry-level, or code monkey positions. Because at this level generally you are told clearly what to do and you just execute. And trust me, those with this level of "skill" include almost all your acquaintances, relatives, all your neighbors and their dogs. In fact, programmers in India and China can probably do such work at 3x your productivity at 1/5 your salary.
This list shows and tells nothing in terms of actual content as hinted at by the title. However it does tell me that the author doesn't really know much concerning web development and the web business in general.
You seemed to have forgotten the most sought after web development skill these days ... content development. ;-)
More or less nothing seems worth doing, but oh well.
I just don't have anything to say now.
adipex
http://adipexadipexonl.blog.ijijiji.com
# 22
is there anything else besides all those technologies??
Oh yeah - there's ColdFusion.. :-]
lolz.
Java should be number one. Do a search with each Web technology at http://craigslist.org/ in your city, and you'll find that Java returns the most results. Actually, HTML returns the most.
This article is definitely biased towards ASP and VBScript. VBScript is not in demand. It's a joke, really.
Out of the programming languages, Java and C# are the highest in demand. Choose one to learn. I suggest Java because there's a higher demand for it than C#, and Java is platform-independent.
Out of the scripting languages, PHP is the highest in demand. Then, Ruby because of Rails. Then, Python.
Forget about ColdFusion. I just finished a nine-month contract that was a ColdFusion-to-Java conversion. ColdFusion is a joke too. Whenever I meet a ColdFusion developer, I smirk with a little sympathy.
Avi - The author never states that AJAX is a programming language. He/she clearly writes: "AJAX is a web development technique that combines Asynchronous JavaScript and XML."
Read . . .
Neat, clean, elegant and simple presentation and formatting and a plethora of useful information. My gratitude to you, sir. Thank you.
My problem with this list is the proprietary nature of many of the entries. I wouldn't want to bet several years of my life on the whims of a particular software vendor. C/C++, Java, Python, PHP and Javascript are safer bets.
I'd also suggest you *must* know HTTP and should know HTML, XML, RDF, SQL.
Flexibility across environments is good to have too - be able to work just as well on Linux, OS X & MS Win etc.
If you're looking longer term, you're time's probably better spent on languages like Lisp and Haskell, to give you a better understanding of how it all works.
The article is not biased towards ASP and VBScript, it is just displayed in alphabetical order. The number are just a matter of styling to make the content more scannable.
No one would be crazy to adventure himself in what is the most important programming language.
Happy to find Ruby on Rails in the list. Let me re-stress on few things:
Ruby - Object Oriented language
Rails - 1) MVC architecture,
2) Entirely developed using single language - Ruby
Being a developer who migrated to Ruby from PHP, I felt very comfortable and ease working with the tools, conventions... that RoR (Ruby on Rails) offers.
I welcome all the developers just to give a try and feel the difference!
Sumanth Krishna
Happy to find Ruby on Rails in the list. Let me re-stress on few things:
Ruby - Object Oriented language
Rails - 1) MVC architecture,
2) Entirely developed using single language - Ruby
Being a developer who migrated to Ruby from PHP, I felt very comfortable and ease working with the tools, conventions... that RoR (Ruby on Rails) offers.
I welcome all the developers just to give a try and feel the difference!
@RoR gathering
Sumanth Krishna
ASP at #1? You just de-legitimized your whole list.
Hello everyone. I was the author of this article. Thanks very much for the discussion. I'll try to respond to as many of your comments as I can.
First and foremost, I agree that ASP should not top the list. I put it in alphabetical order to avoid fruitless attempts at ranking the languages against each other. I'll be sending a request to the Read/Write Web administrators to have the numbering removed and a note added to that effect in order to avoid any further confusion.
Re: James Lewin (#3), I agree with your observation. It's anecdotal, but I believe I've noticed an increase in AJAX and PHP, while usage of languages like ASP and ColdFusion has diminished. Considering the preponderance of the .Net framework, though, I doubt it has much to do with the proprietary nature (or lack thereof) of any particular programming language.
Re: Brian Dailey (#4), Glenn (#12), and Chris Jangelov (#13), I agree with you. The skills you noted are all very useful within web development. The original title of this article actually did use "programming languages" rather than "web development skills," and was changed to avoid confusion when I included items like Flash, SQL, and AJAX.
Re: Webonics (#15), Jason Bartholme (#18), and Herval (#22), if I were to add one more item to the list, ColdFusion would have been it. This is just my opinion (as is the whole article, really), but I've seen a marked decline in the demand for and usage of ColdFusion in recent years. Chock it up the inherent limitation of any "Top 10" list. ;)
Re: #19, in order to keep the list in check, I tried to draw a distinction between web development and web design. I do agree with you, though; design is just as important as development when it comes to the finished product.
Re: Avi (#9), Matt (#21), and Joshua (#23), due to the nature of your comments, I have neither fully read them, nor do I intend to respond to them. I've never found it productive to argue with flamers. I'll be happy to address your criticisms if you'll be so kind as to phrase them more politely. As it stands, you'll receive no further response from me by being belligerent.
To everyone else who has praised the article, thank you for the compliment. I'm glad that so many have found it to be a useful resource.
Yeh! There's no way ASP should be #1!
Personally, I'd put Ruby on Rails at the top of the list if you want a forward-looking, rather than backward-looking, view. How many languages is someone realistically going to learn?
Check out LearningRails.com for my Rails tutorial podcast.
Michael
ASP is useless unless you want to be working on naf legacy websites for the rest of your career.
PHP is becoming more commericially acceptable (I work in the UK market by the way) but is far less well paid than C# and Java (which effectively work the same way, to all you who don't know).
The points made about skills not working seperately, and as a web dev you need to combine several are dead on. If you're building a quality website I'd expect you to use C#/PHP, take your pick basically, as well as SQL, AJAX perhaps some perl on the server itself and to meld these seamlessly is where the real skill lies.
Just my two cents.
Very useful
Great Post! I noted your post on my blog today!
http://www.nicolechardinonline.com/careerthoughts.htm?blogentryid=2619319
These are great vocational skills, but is not the most important skill the ability to think critically?
Pause for a moment and reflect on any web dev project that involved "rightshoring." It might be nice to be an expert in any of the skills in this list, but lacking critical thought is the express lane to failed dev IMHO.
@Stephen Ward (#36)
CF 8 was released this year and can integrate easily with most every language and technique on your list.
The usage of ColdFusion has risen in the last two years. It's to the point of there being too many CF jobs and not enough experienced CF developers out there.
That's good information, Adrian. Honestly, if I had known that when I was writing this article, I probably would've bumped ASP for ColdFusion. I'll be interested to see how the new release affects its usage in the coming months.
This article and thread are great
another issue is -- how do you land more business
i have written and article on our blog
http://alphasoftware.blogspot.com/
entitled 8 way for software developers to win more business
http://alphasoftware.blogspot.com/2007/11/ok-now-that-i-am-alpha-five-expert-how.html
i would love to get your comments
Richard Rabins
Co Chairman
www.alphafive.com
Great article. I can put it into my 'To-Learn' list and put some effort to improve myself. Thanks.
Good article, I enjoyed the read. I do agree with some of the commenters that ASP/VBScript should be removed from the list. This aging technology shouldn't be learned by anyone looking for a job in the sector, unless they are moving specifically into a company that uses ASP/VBScript legacy code, and in that case the only reason to understand it is for maintenance patches and porting the features to a more modern platform.
These aren't marketable skills, they are all programming languages and therefore market-dependent. It is very misleading to people that may not know the difference (and I'm sure overwhelming as well). Perl is only useful when it comes to bash scripts in Linux (mostly server management when it comes to the web field) other then that Perl and CGI are useless.
The title of the article might have been more appropriately named "Programming languages that can be used on the internet." If it was more appropriately titled and directed this would have been a great article with lots of wonderful information on programming languages. Perhaps some statistics for use would make it even more useful (like mentioning 20% of the world use Perl* for web applications and they were all hacked yesterday**).
*According to combined search data from http://langpop.com/
**i made that up, you're welcome
There is one thing (ok two) that you forgot. HTML and CSS. Without that all your cool server side work is going to look just plain ugly.