To be a web developer
Is to know all of these <insert evil and sinister laugh here> languages. This post serves as a starting place for all who wants to be a web developer. You might not need to understand in depth on any of these, but the least is the basic. My choices of framework serves as a suggestion only, the real choice is yours.
1. HTML
Back to when internet was born and introduced to the naked world… Back to when the internet was young and needing a serious developer….Tim Berners-Lee said “let there be HTML”… and there was HTML, and it was good. The proof of its goodness stays ever since then until today. Yeah, every serious web developer use HTML. Easy to learn, easy to misuse. With great powers come great responsibility. So code well, and follow the standards.
2. CSS
HTML always comes with CSS. It helps you refrain from misusing those font and colors tag by having a separate CSS file. This serve as a way for you to separate content and display components. Also, helps you to hate tables and loves divs and spans. Though many would say otherwise…
3. Server Side scripting
When you have master your way of representing your thoughts on pretty html/css compliant documents, it’s time to deliver dynamic content. One problem though, is to choose which server side scripting you would go for. Unlike HTML/CSS where only 1 thing is required to learn and to have it beaten to your head. There are choices.
My Choice: PHP. Other choices: Ruby, Python, Java, ASP.NET
4. SQL
One choice again. SQL have become a parent of all database language. There are many database engine, most of them are built ontop of SQL or understand SQL anyway. So why bother learning a language that you might not be using. SQL is the way to go.
5. Javascript / Client Side Scripting
User interactivity is the heart of the website, make sure people enjoys reading your website. Javacsript has matured into a great way of delivering dynamic content by using AJAX interactivity. Facebook does it, most new website nowadays does it. Why don’t you?
6. Frameworks
Web developers have been reinventing the wheel so many times that they come up with a whole sort of different type of wheels. These framework give you the wheel and tell you how to use it properly with examples and screencasts… Save you tons and tons of time trying to imagine how the wheel would look like and how it will work.
There is no one type of wheel that helps all web applications. So there are a lot. Choose wisely for a server side scripting framework and a javascript framework.
my choices: PHP Framework: Codeigniter, CSS Framework: 960.gs, Javascript framework: Jquery or Mootools
7. Knowing your web server.
Tricks and tricks. Understand how to give your website optimum experience by deliver the webpage to them as fast as it could be. When you have become a master and reach new ceiling, it’s time to differentiate yourself.
October 19, 2009 - 1:18 pm
I agree totally. Also I think the list should contain a item 8 which could be ‘Basic Graphic Design’ which is always needed to accomplish most UI and job requirements. Thanks
October 19, 2009 - 3:02 pm
yeh a good path for a new learner ……but i think javadcript/client side server should be xplained a little more….because all depends upon it how beutiful ur site is going to be…
October 19, 2009 - 3:25 pm
Thanks for all of your kind comments. What I do think is:
Basic Graphic, yes, is very essential, but there is more to it than meets the eye. Graphics got a lot of complexity level that cannot be described in short.
About javascript, maybe just the minimum basic is needed (for basic understanding). Further development should be done based on an existing framework, or else it would be horrible to read and to implement.
October 19, 2009 - 4:40 pm
I would argue too that a javascript framework such as Dojo or Jquery is more focused that javascript.
Also knowing *your* Sql database is more useful than using standard Sql, for instance to choose column types.
October 19, 2009 - 5:23 pm
I disagree with CSS – I know the basics of CSS, but not beyond that. For example, I cannot slice photoshop templates, I know almost nothing about css positioning and so on…
Alghough I claim, I am above average web developer.
While I agree with the other 6 technology points, in my opinion the CSS is designer’s work, especially the browser quirks.
October 19, 2009 - 6:24 pm
About the CSS. I was thinking in the same department. It’s for the designer to worry about. But when I think about the trouble the designer have to go through to “CSS” our design.
Of course while developing apps, we will have some styles (may that be embedded fonts or colour tags) that would provide immediate feedback…
The designer would have A LOT of trouble reading our badly designed HTML files and try to squeeze their CSS in to style them.
I’m just thinking on the “standardize” way of web developing
October 19, 2009 - 6:55 pm
I do not think the developer should design HTML files at all. The developer could prototype the templates:
….
….
The designer should decorate them:
….
Of course, we cannot separate the things 100%, as the heavy javascript is also developer’s work. And the javascript depends (in many cases) on the html structure…
October 19, 2009 - 7:13 pm
From what I have experienced (would might be wrong or inconsistent with others experience). It’s used to be that the web developer would work in parallel with the web designer.
The web developer produce the HTML/basic CSS to get things running (maybe just a list of divs and spans with correct ordering) and PHP code that generate basic stuff.
The designer then spice it up with fancy-full CSS and images, flash or videos…. (this is often called templating)
The developer then work with the designer for the UI – Mainly javascripting…
Somehow I feel it’s much better that the Web Developer should also have (maybe a little bit) of designing skill, and the Web Designer should also have a bit of coding skill -> So that they can understand each other better, or even replacing each other in some situation
October 19, 2009 - 7:18 pm
Nice article.
Thanks
Prashant
October 19, 2009 - 8:47 pm
I wrote about it some time ago…
maybe you could be interested:
http://blog.karolzielinski.com/charasterics-of-good-web-developer