Wednesday, July 08, 2009

Thursday, July 02, 2009

5 key skills of a successful web application developer

Most probably you will be knowing about all these skills already, it is common sense, still I have found so many developers who just know just one server side language(usually java or .net) and then they think themselves as superman/superwoman.

In web application development, that is just one thing. You need to know about lot more things before you can consider yourself successful.

So, if you know them already that’s good, you don’t need to read any further otherwise continue reading to know why each of these skills are important for you(the web developer).

Here are the skills

1.the structure : HTML
2.the presentation: CSS
3.the behavior: JavaScript
With these three skill you have ability to become the super cool static website developer or a front end developer

1.the database: SQL
2.the server-side language : PHP( other options are JSP/ASP/PERL/RUBY choice is yours, as all the fight for best happens here)
These two skill will make you a web developer.

All five of these skills will make you a most prized web developer, in your organization.


HTML
You think you know HTML, think again. I have been interviewing lot of people, they have all rated themselves nearing 7-8 out of 10, whenever I asked them to rate their knowledge of html. Every time I tried to verify their claim, they came down to 2-3, reason is simple, HTML is very simple and everyone thinks they can bluff their way through, After all what is HTML, just tables and forms isn’t?

Well you are wrong, HTML is the one of the most important skill that you should have, you should know HTML better then you know your server side language, why?

Simply because your server side language is optional, but HTML is must, even when you dream about a web page. It gives your website a structure and layout. This is what an end user see’s and care about. You don’t know HTML, you can’t fix the strange behaviors that you see in you website.

Without proper layout, you site/application is nothing. With proper use of HTML you can not only create most accessible websites, you can also create a website which will look good in absence of css and will work without javascript.

So go and revise you HTML again, and remember just know is not enough, you have to understand where to use what.

CSS
CSS is used to give the look and feel to your website. You as a web developer need to know and understand how it works, and how you can simplify the html layout’s so that it becomes manageable. Design is what your users/client sees.

On the basis of your sites design, your ability is judged initially.

CSS is easy to learn, but it’s application is another story, all thanks to browser incompatibilities. So to make your website look good in all the browser you need CSS. Just knowing CSS is not enough, you have to understand it’s application also.

JavaScript
JavaScript is not just for validations as many of you think, it is what gives you ability to do some nifty things with your webpage(like lightbox, rating’s , ajax).

It adds behavior to your website, makes it interesting and improves the users experience. If you have still not chosen any framework, do it now. jQuery, prototype, YUI, Dojo are some of the interesting frameworks that make developers life easier.

If have master all the three skills above you can already consider your self above average web developer even if that person has 10 years of experience. Remember we are in IT industry. IT is Information Technology, where Information aka Knowledge is important.

SQL
The most neglected in the bunch, when this is the second most important skill that a web developer should have.

Why? what a question, we are building web applications that almost always relay on database, If you don’t understand the SQL how do you propose to get the data fast enough from your database? Almost all the websites can be distilled down to simple SELECT,INSERT, UPDATE operations. If you can master them, you can dictate your terms.

When I say SQL I don’t just mean queries but also the database schema and intricacies of database itself.

PHP
Before you get up in arms against me for suggesting PHP and not your favorite language, understand this, I am talking about web applications only, and their is no other scripting language which is so easy to learn and program with. At the same time, it provides functions for everything you can think off that is required in a web application development environment.

Please spare me the talk about java and .net they are platforms and/or programming language. If you understand “you should not use sword to do the job of needle and vice versa” then you know what I mean.

Their are many frameworks that you can use. Also their are many ready to use open source packages that you can use and adapt to your needs, you don’t need to start from scratch all the time.

If you have read till here, then I would love to know your views on these skills and others that you think are important for a successful web development career.

===========================================================
Must Read Article from

http://amiworks.co.in/talk/5-key-skills-of-a-successful-web-application-developer/

I agree with author

- Amit Patil