How to be a web developer

It's a funny old world

In which I ruminate on the mysterious process by which I arrived at today just using a simple and free text editor

A younger friend of mine recently asked me if I could furnish him and others with a kind of ten point guide to being a better web developer. I am not sure why he thought I might be a suitable person to ask. And I am not sure that being a web developer can be reduced to bullet points. All I can offer, humbly - are some personal reflections on my own web journey - beginning perhaps with the page that changed my life and some of the resources like Max Design where I first began to understand many of the things I know today.

Although I did not really get into them at the time I was exposed to computers very early in their development. I learned BASIC straight away. Unfortunately we then had to give it to a typist who converted it into a punch tape thingy. Our *code* was then inserted into a *computer* the size of a house. And in a flash our code either ran or crashed. And that was it. LOL. A while later I started fiddling on a Radio Shack Computer. Although I can scarcely justify the title of *programmer* from that time my love for computers has stemmed from the ability to code things. That is a different starting place than a GUI. From that time on I have never really liked GUI at all. Nor Windows. Nor indeed many applications. The joys of Access, Excel and Powerpoint have passed me by completely.

But during all this time I was working in a field which did not use computers at all. Some years later, just as the internet got started, I got into it. Within minutes of getting my Netscape 1 browser working I was reading up on the html spec. I wanted to be a web publisher. Not a web user. Up came my first html *hello world* page. Great Joy.

A very short time later a friend and I had the great fortune to land a huge commercial site for a very big and very prominent local company. The experience nearly broke me completely. Two facts drove that first dire experience. One was that the two major browsers were poles apart - deliberately so - in terms of their interpretation of the html specification. The second was the exceptionally tedious necessity of using inline styling. On a site of any size these two things combined turned what might have been a joyous experience into a nightmare of hackery, voodoo and fiddling. After my first experience of declaring font sizes in table cells I quit. I have never used tables for positioning since.

I simply did not have the patience for it. Nor am I a *designer*. In those early years the web industry was dominated by graphics designers who were then - and still are - using code generators. That was not an industry which I either wanted, or was capable of being in. Beside which - even with my rudimentary early experiences of programming I could not believe how screwed up a simple mark up language like html had become.

To compound my misery I was already using CSS. I started within days of the spec being published. I knew immediately what it meant, and what was coming in the future. But due to Bill flaming Gates and his absolutely shocking browsers we couldn't use it.

Then came Front Page. What a monstrosity. HTML can be produced in any text editor. I did not understand then - and I do not understand now - why so many folk distance themselves from that simple, elegant and satisfying process. Why do people need bloated, expensive, licensed, and fiendishly complicated software? Returning to my earlier theme of not being an instinctive adopter of many widely used applications - I guess that partly I just simply can not be bothered to learn how they all work. Even now I am surprisingly maladroit. I am just not interested in applications at all really. I have put my energy - over many years - into trying to learn how web pages and web servers should work - not in learning how to use fancy proprietary client side software. But put me on my text editors like kate and vim and I can be pretty nifty. I am just getting into emacs too.

As a sideline - and to keep myself entertained I became absolutely fascinated by Search Engines. I was invited to go to a very fancy development agency in London and do a SEO presentation before the word SEO had even been invented. One of their clients was / is one of the UK's big banks. I mean mega. In the ten days prior to my presentation I built and published a web page around key words like *British Banks* *UK Banks* *Bank Loans* and the like. During my presentation I logged on live. And there was my page. At No 1 on three major engines out of about 6 million pages returned for many of their two word search terms / keywords.

I never heard from the agency again. From that day on I simply refuse to either get involved in sales, or to travel to corporate clients premises at all. Some time after I used my SEO template for South Africa's leading bank. Then I helped a book publisher. But they were bought out by Amazon :)

Throughout that time a different strand in my relationship with computers was beginning to take hold. I began to realise that we had all been shafted. Windows sucks. As the default desktop for billions of people, governments, hospitals, charities - just about everybody - as an OS it is utterly lamentable. The very idea that something so important in our lives as an OS should be driven by corporate greed fills me with absolute horror at the very concept. At the practical level I am utterly fed up with the Windows bloat, pathetic security, 1984 like surveillance of the user, hardware upgrades, software conflicts - the costs - the media and licensing arrangements, the hype and the crap.

And do not get me started on their browsers. IE 6 seems to have a mind of its own and is the most malignant piece of software ever developed. People have got absolutely no idea how much of the OS it controls, how it updates itself from HQ without informing the user, and how much information it sends to MS. But I reserve my special visceral hatred for Windows Networks both LAN and Web Servers both of which are absolutely hideous. Really. I just can not bear to be anywhere near them now.

But my switch to linux was not driven by dislike for Windows. It was driven by a desire to return to the intimacy of the command line and to use some of the exceptionally powerful tools available therein. Until you have used cURL and added your own header request to hack Google you simply haven't lived.

Then finally came the great day that changed my life. I heard Jeffrey Zeldman's call to arms. When he published his seminal work Designing with Web Standards the tectonic plates shifted. That was it. That was the day I began my journey as a web developer. With my earlier disillusion caused by the browser wars I was an immediate and ready convert to the Web Standards cause. I had been praying for it ever since I first used CSS. Just occasionally Standards advocates can be accused of being over zealous. But perhaps folk could remember that we were forged in the fire of the browser wars, and we were tempered by the long and bitter years in the wilderness. We have done it your way long ago. And we didn't like it.

Two other events occurred which shaped my journey and the journeys of a very great number of other people. One was that the Mozilla Foundation produced Firefox the worlds first decent browser which puts standards at the heart of it's architecture. And the other thing was that Web Standards devotees discovered the semantic publishing platform of WordPress very early. I was one of the first thousand users of WP and by the time I was up and running and registering in the forum I was user two thousand and change. WordPress - and God knows I have serious issues with some aspects of the culture - has been a wonderful introduction to social media, to php programming, to interface development and to the great value of forum support as a learning vehicle. In a period of just a few months I fixed hundreds of broken WordPress templates and that experience at reading other peoples mess is probably the most valuable asset in my tool box of experience. I also released - pro bono - a series of WordPress templates which were adopted by designers and end users alike; and are still widely used today. They have also been ported to many other platfroms including Expression Engine and TextPattern.

So drawing all these strands together what can I say?

  • I like coding not designing
  • I am a Web Standards developer
  • Developing content, applying the markup, and styling it are 3 completely different activities. The content might be digital. The markup and CSS are simple text.
  • Without a really good understanding of html I wouldn't be able to build integrated interfaces for Content Management Systems
  • I made no progress at all until I got my head around CSS positioning (layouts)
  • If I used a code generator I would never have learnt html as I need to know it today
  • Separating style and content is not achieved simply by using CSS. It needs semantic markup hand in hand to unlock the power.
  • You can't be a web developer without knowing some php
  • Graphic design is best contracted out to experts
  • Good web pages are built on well understood scientific principles. There is nothing arty about usability or accessibility. These are the future.
  • Avoid people carrying photoshop mockups who *just* want them coding
  • Learn to love your text editor
  • Keep away from IIS.
  • Follow the Open Source movement
  • Choose a forum and become a teacher / student. Be good at both roles
  • Read the experts. Follow their work. Open dialogue
  • Learn to love the validators. Use them early. Use them throughout your build
  • Reuse your code
  • Follow consistent nomenclature eg: I now always call my outer container #page my menu is #sidebar and so on
  • Think about how to best uses classes. I use a few that I reuse. Other than that go with descendant selectors
  • Understand the global reset
  • After layouts the next most important thing is understanding text resizing in different browsers and what to do about it
  • Buy good books. Get paid in books when you start.
  • Since I started sectioning my CSS my life got a whole lot simpler.
  • Keep away from CMS until you know what you are doing
  • Build your bookmarks. Throw out the junk. Find the very best solution to each and every challenge in web construction and use it consistently.
  • Challenge yourself. Learn new stuff every day. Move outside your comfort zone
  • Give and you shall receive
  • Do not use hacks
  • Do not use Conditional CSS. It is the road to madness
  • Avoid defining the width of anything if it can be avoided. Ditto for height.
  • For internal widths use %
  • For internal heights use em not px
  • Learn how to use and clear floats
  • Learn the Golden Ratios
  • Understand Richard Rutter's on vertical spacing for fonts
  • Reduce the colors
  • Understand the use of emphasis to direct the eye on the page by the use of shape and / or color
  • Spend time thinking about the Zen Garden. What can we learn?
  • Do not use WordPress
  • Be a blogger
  • Finally - use social media to move among the community that you aspire to join. This is the most priceless facility the internet has given us. We can learn directly from our industry leaders.

P.S. If you discover b0rkage on the site of a world class web developer - like Eric Meyer for example - he won't thank you for leaving a comment on his blog mentioning it. :)

P.P.S. Have I mentioned fancy software and code generators? No I did not. Learn to code. Not to use proprietary software

Comment

  1. great list there, sir.

    Comment by adam Apr 27, 03:59 PM #

  2. This is an excellent list so thanks for creating it. I really enjoyed reading the post and from time to time I found myself chuckling. But, what made me laugh out load was when you described IE 6 as “the most malignant piece of software ever developed”. Amen. :)

    Comment by timethief Apr 27, 06:23 PM #

  3. Nice Information.

    http://omsoftware.co.in/

    Comment by Abhay Pandey Apr 28, 07:16 PM #

  4. Actually, he might, depending on how ones defines “b0rkage” and how it’s brought to attention. Did I miss something?

    Comment by Eric Meyer Apr 29, 05:35 PM #

  5. Eric: Thanks for popping by. You may not remember the question of how the WP calendar resizes at different text sizes. It was a comfort to know we were not the only ones struggling with it :). Thanks for changing my life. Everything I do now, everything I earn, and everything I love in my working life started with your work.
    Sounds a bit OTT. But its true. I have gone from home hacker to posh agency in 4 years. Just please don’t read my CSS :)

    Comment by root Apr 30, 10:39 AM #

Add your two cents









Textile Help

Last Post:
Next Post:

How to be a web developer

It's a funny old world

In which I ruminate on the mysterious process by which I arrived at today just using a simple and free text editor

A younger friend of mine recently asked me if I could furnish him and others with a kind of ten point guide to being a better web developer. I am not sure why he thought I might be a suitable person to ask. And I am not sure that being a web developer can be reduced to bullet points. All I can offer, humbly - are some personal reflections on my own web journey - beginning perhaps with the page that changed my life and some of the resources like Max Design where I first began to understand many of the things I know today.

Although I did not really get into them at the time I was exposed to computers very early in their development. I learned BASIC straight away. Unfortunately we then had to give it to a typist who converted it into a punch tape thingy. Our *code* was then inserted into a *computer* the size of a house. And in a flash our code either ran or crashed. And that was it. LOL. A while later I started fiddling on a Radio Shack Computer. Although I can scarcely justify the title of *programmer* from that time my love for computers has stemmed from the ability to code things. That is a different starting place than a GUI. From that time on I have never really liked GUI at all. Nor Windows. Nor indeed many applications. The joys of Access, Excel and Powerpoint have passed me by completely.

But during all this time I was working in a field which did not use computers at all. Some years later, just as the internet got started, I got into it. Within minutes of getting my Netscape 1 browser working I was reading up on the html spec. I wanted to be a web publisher. Not a web user. Up came my first html *hello world* page. Great Joy.

A very short time later a friend and I had the great fortune to land a huge commercial site for a very big and very prominent local company. The experience nearly broke me completely. Two facts drove that first dire experience. One was that the two major browsers were poles apart - deliberately so - in terms of their interpretation of the html specification. The second was the exceptionally tedious necessity of using inline styling. On a site of any size these two things combined turned what might have been a joyous experience into a nightmare of hackery, voodoo and fiddling. After my first experience of declaring font sizes in table cells I quit. I have never used tables for positioning since.

I simply did not have the patience for it. Nor am I a *designer*. In those early years the web industry was dominated by graphics designers who were then - and still are - using code generators. That was not an industry which I either wanted, or was capable of being in. Beside which - even with my rudimentary early experiences of programming I could not believe how screwed up a simple mark up language like html had become.

To compound my misery I was already using CSS. I started within days of the spec being published. I knew immediately what it meant, and what was coming in the future. But due to Bill flaming Gates and his absolutely shocking browsers we couldn't use it.

Then came Front Page. What a monstrosity. HTML can be produced in any text editor. I did not understand then - and I do not understand now - why so many folk distance themselves from that simple, elegant and satisfying process. Why do people need bloated, expensive, licensed, and fiendishly complicated software? Returning to my earlier theme of not being an instinctive adopter of many widely used applications - I guess that partly I just simply can not be bothered to learn how they all work. Even now I am surprisingly maladroit. I am just not interested in applications at all really. I have put my energy - over many years - into trying to learn how web pages and web servers should work - not in learning how to use fancy proprietary client side software. But put me on my text editors like kate and vim and I can be pretty nifty. I am just getting into emacs too.

As a sideline - and to keep myself entertained I became absolutely fascinated by Search Engines. I was invited to go to a very fancy development agency in London and do a SEO presentation before the word SEO had even been invented. One of their clients was / is one of the UK's big banks. I mean mega. In the ten days prior to my presentation I built and published a web page around key words like *British Banks* *UK Banks* *Bank Loans* and the like. During my presentation I logged on live. And there was my page. At No 1 on three major engines out of about 6 million pages returned for many of their two word search terms / keywords.

I never heard from the agency again. From that day on I simply refuse to either get involved in sales, or to travel to corporate clients premises at all. Some time after I used my SEO template for South Africa's leading bank. Then I helped a book publisher. But they were bought out by Amazon :)

Throughout that time a different strand in my relationship with computers was beginning to take hold. I began to realise that we had all been shafted. Windows sucks. As the default desktop for billions of people, governments, hospitals, charities - just about everybody - as an OS it is utterly lamentable. The very idea that something so important in our lives as an OS should be driven by corporate greed fills me with absolute horror at the very concept. At the practical level I am utterly fed up with the Windows bloat, pathetic security, 1984 like surveillance of the user, hardware upgrades, software conflicts - the costs - the media and licensing arrangements, the hype and the crap.

And do not get me started on their browsers. IE 6 seems to have a mind of its own and is the most malignant piece of software ever developed. People have got absolutely no idea how much of the OS it controls, how it updates itself from HQ without informing the user, and how much information it sends to MS. But I reserve my special visceral hatred for Windows Networks both LAN and Web Servers both of which are absolutely hideous. Really. I just can not bear to be anywhere near them now.

But my switch to linux was not driven by dislike for Windows. It was driven by a desire to return to the intimacy of the command line and to use some of the exceptionally powerful tools available therein. Until you have used cURL and added your own header request to hack Google you simply haven't lived.

Then finally came the great day that changed my life. I heard Jeffrey Zeldman's call to arms. When he published his seminal work Designing with Web Standards the tectonic plates shifted. That was it. That was the day I began my journey as a web developer. With my earlier disillusion caused by the browser wars I was an immediate and ready convert to the Web Standards cause. I had been praying for it ever since I first used CSS. Just occasionally Standards advocates can be accused of being over zealous. But perhaps folk could remember that we were forged in the fire of the browser wars, and we were tempered by the long and bitter years in the wilderness. We have done it your way long ago. And we didn't like it.

Two other events occurred which shaped my journey and the journeys of a very great number of other people. One was that the Mozilla Foundation produced Firefox the worlds first decent browser which puts standards at the heart of it's architecture. And the other thing was that Web Standards devotees discovered the semantic publishing platform of WordPress very early. I was one of the first thousand users of WP and by the time I was up and running and registering in the forum I was user two thousand and change. WordPress - and God knows I have serious issues with some aspects of the culture - has been a wonderful introduction to social media, to php programming, to interface development and to the great value of forum support as a learning vehicle. In a period of just a few months I fixed hundreds of broken WordPress templates and that experience at reading other peoples mess is probably the most valuable asset in my tool box of experience. I also released - pro bono - a series of WordPress templates which were adopted by designers and end users alike; and are still widely used today. They have also been ported to many other platfroms including Expression Engine and TextPattern.

So drawing all these strands together what can I say?

  • I like coding not designing
  • I am a Web Standards developer
  • Developing content, applying the markup, and styling it are 3 completely different activities. The content might be digital. The markup and CSS are simple text.
  • Without a really good understanding of html I wouldn't be able to build integrated interfaces for Content Management Systems
  • I made no progress at all until I got my head around CSS positioning (layouts)
  • If I used a code generator I would never have learnt html as I need to know it today
  • Separating style and content is not achieved simply by using CSS. It needs semantic markup hand in hand to unlock the power.
  • You can't be a web developer without knowing some php
  • Graphic design is best contracted out to experts
  • Good web pages are built on well understood scientific principles. There is nothing arty about usability or accessibility. These are the future.
  • Avoid people carrying photoshop mockups who *just* want them coding
  • Learn to love your text editor
  • Keep away from IIS.
  • Follow the Open Source movement
  • Choose a forum and become a teacher / student. Be good at both roles
  • Read the experts. Follow their work. Open dialogue
  • Learn to love the validators. Use them early. Use them throughout your build
  • Reuse your code
  • Follow consistent nomenclature eg: I now always call my outer container #page my menu is #sidebar and so on
  • Think about how to best uses classes. I use a few that I reuse. Other than that go with descendant selectors
  • Understand the global reset
  • After layouts the next most important thing is understanding text resizing in different browsers and what to do about it
  • Buy good books. Get paid in books when you start.
  • Since I started sectioning my CSS my life got a whole lot simpler.
  • Keep away from CMS until you know what you are doing
  • Build your bookmarks. Throw out the junk. Find the very best solution to each and every challenge in web construction and use it consistently.
  • Challenge yourself. Learn new stuff every day. Move outside your comfort zone
  • Give and you shall receive
  • Do not use hacks
  • Do not use Conditional CSS. It is the road to madness
  • Avoid defining the width of anything if it can be avoided. Ditto for height.
  • For internal widths use %
  • For internal heights use em not px
  • Learn how to use and clear floats
  • Learn the Golden Ratios
  • Understand Richard Rutter's on vertical spacing for fonts
  • Reduce the colors
  • Understand the use of emphasis to direct the eye on the page by the use of shape and / or color
  • Spend time thinking about the Zen Garden. What can we learn?
  • Do not use WordPress
  • Be a blogger
  • Finally - use social media to move among the community that you aspire to join. This is the most priceless facility the internet has given us. We can learn directly from our industry leaders.

P.S. If you discover b0rkage on the site of a world class web developer - like Eric Meyer for example - he won't thank you for leaving a comment on his blog mentioning it. :)

P.P.S. Have I mentioned fancy software and code generators? No I did not. Learn to code. Not to use proprietary software

Comment

  1. great list there, sir.

    Comment by adam Apr 27, 03:59 PM #

  2. This is an excellent list so thanks for creating it. I really enjoyed reading the post and from time to time I found myself chuckling. But, what made me laugh out load was when you described IE 6 as “the most malignant piece of software ever developed”. Amen. :)

    Comment by timethief Apr 27, 06:23 PM #

  3. Nice Information.

    http://omsoftware.co.in/

    Comment by Abhay Pandey Apr 28, 07:16 PM #

  4. Actually, he might, depending on how ones defines “b0rkage” and how it’s brought to attention. Did I miss something?

    Comment by Eric Meyer Apr 29, 05:35 PM #

  5. Eric: Thanks for popping by. You may not remember the question of how the WP calendar resizes at different text sizes. It was a comfort to know we were not the only ones struggling with it :). Thanks for changing my life. Everything I do now, everything I earn, and everything I love in my working life started with your work.
    Sounds a bit OTT. But its true. I have gone from home hacker to posh agency in 4 years. Just please don’t read my CSS :)

    Comment by root Apr 30, 10:39 AM #

Add your two cents









Textile Help

How to be a web developer

It's a funny old world

In which I ruminate on the mysterious process by which I arrived at today just using a simple and free text editor

A younger friend of mine recently asked me if I could furnish him and others with a kind of ten point guide to being a better web developer. I am not sure why he thought I might be a suitable person to ask. And I am not sure that being a web developer can be reduced to bullet points. All I can offer, humbly - are some personal reflections on my own web journey - beginning perhaps with the page that changed my life and some of the resources like Max Design where I first began to understand many of the things I know today.

Although I did not really get into them at the time I was exposed to computers very early in their development. I learned BASIC straight away. Unfortunately we then had to give it to a typist who converted it into a punch tape thingy. Our *code* was then inserted into a *computer* the size of a house. And in a flash our code either ran or crashed. And that was it. LOL. A while later I started fiddling on a Radio Shack Computer. Although I can scarcely justify the title of *programmer* from that time my love for computers has stemmed from the ability to code things. That is a different starting place than a GUI. From that time on I have never really liked GUI at all. Nor Windows. Nor indeed many applications. The joys of Access, Excel and Powerpoint have passed me by completely.

But during all this time I was working in a field which did not use computers at all. Some years later, just as the internet got started, I got into it. Within minutes of getting my Netscape 1 browser working I was reading up on the html spec. I wanted to be a web publisher. Not a web user. Up came my first html *hello world* page. Great Joy.

A very short time later a friend and I had the great fortune to land a huge commercial site for a very big and very prominent local company. The experience nearly broke me completely. Two facts drove that first dire experience. One was that the two major browsers were poles apart - deliberately so - in terms of their interpretation of the html specification. The second was the exceptionally tedious necessity of using inline styling. On a site of any size these two things combined turned what might have been a joyous experience into a nightmare of hackery, voodoo and fiddling. After my first experience of declaring font sizes in table cells I quit. I have never used tables for positioning since.

I simply did not have the patience for it. Nor am I a *designer*. In those early years the web industry was dominated by graphics designers who were then - and still are - using code generators. That was not an industry which I either wanted, or was capable of being in. Beside which - even with my rudimentary early experiences of programming I could not believe how screwed up a simple mark up language like html had become.

To compound my misery I was already using CSS. I started within days of the spec being published. I knew immediately what it meant, and what was coming in the future. But due to Bill flaming Gates and his absolutely shocking browsers we couldn't use it.

Then came Front Page. What a monstrosity. HTML can be produced in any text editor. I did not understand then - and I do not understand now - why so many folk distance themselves from that simple, elegant and satisfying process. Why do people need bloated, expensive, licensed, and fiendishly complicated software? Returning to my earlier theme of not being an instinctive adopter of many widely used applications - I guess that partly I just simply can not be bothered to learn how they all work. Even now I am surprisingly maladroit. I am just not interested in applications at all really. I have put my energy - over many years - into trying to learn how web pages and web servers should work - not in learning how to use fancy proprietary client side software. But put me on my text editors like kate and vim and I can be pretty nifty. I am just getting into emacs too.

As a sideline - and to keep myself entertained I became absolutely fascinated by Search Engines. I was invited to go to a very fancy development agency in London and do a SEO presentation before the word SEO had even been invented. One of their clients was / is one of the UK's big banks. I mean mega. In the ten days prior to my presentation I built and published a web page around key words like *British Banks* *UK Banks* *Bank Loans* and the like. During my presentation I logged on live. And there was my page. At No 1 on three major engines out of about 6 million pages returned for many of their two word search terms / keywords.

I never heard from the agency again. From that day on I simply refuse to either get involved in sales, or to travel to corporate clients premises at all. Some time after I used my SEO template for South Africa's leading bank. Then I helped a book publisher. But they were bought out by Amazon :)

Throughout that time a different strand in my relationship with computers was beginning to take hold. I began to realise that we had all been shafted. Windows sucks. As the default desktop for billions of people, governments, hospitals, charities - just about everybody - as an OS it is utterly lamentable. The very idea that something so important in our lives as an OS should be driven by corporate greed fills me with absolute horror at the very concept. At the practical level I am utterly fed up with the Windows bloat, pathetic security, 1984 like surveillance of the user, hardware upgrades, software conflicts - the costs - the media and licensing arrangements, the hype and the crap.

And do not get me started on their browsers. IE 6 seems to have a mind of its own and is the most malignant piece of software ever developed. People have got absolutely no idea how much of the OS it controls, how it updates itself from HQ without informing the user, and how much information it sends to MS. But I reserve my special visceral hatred for Windows Networks both LAN and Web Servers both of which are absolutely hideous. Really. I just can not bear to be anywhere near them now.

But my switch to linux was not driven by dislike for Windows. It was driven by a desire to return to the intimacy of the command line and to use some of the exceptionally powerful tools available therein. Until you have used cURL and added your own header request to hack Google you simply haven't lived.

Then finally came the great day that changed my life. I heard Jeffrey Zeldman's call to arms. When he published his seminal work Designing with Web Standards the tectonic plates shifted. That was it. That was the day I began my journey as a web developer. With my earlier disillusion caused by the browser wars I was an immediate and ready convert to the Web Standards cause. I had been praying for it ever since I first used CSS. Just occasionally Standards advocates can be accused of being over zealous. But perhaps folk could remember that we were forged in the fire of the browser wars, and we were tempered by the long and bitter years in the wilderness. We have done it your way long ago. And we didn't like it.

Two other events occurred which shaped my journey and the journeys of a very great number of other people. One was that the Mozilla Foundation produced Firefox the worlds first decent browser which puts standards at the heart of it's architecture. And the other thing was that Web Standards devotees discovered the semantic publishing platform of WordPress very early. I was one of the first thousand users of WP and by the time I was up and running and registering in the forum I was user two thousand and change. WordPress - and God knows I have serious issues with some aspects of the culture - has been a wonderful introduction to social media, to php programming, to interface development and to the great value of forum support as a learning vehicle. In a period of just a few months I fixed hundreds of broken WordPress templates and that experience at reading other peoples mess is probably the most valuable asset in my tool box of experience. I also released - pro bono - a series of WordPress templates which were adopted by designers and end users alike; and are still widely used today. They have also been ported to many other platfroms including Expression Engine and TextPattern.

So drawing all these strands together what can I say?

  • I like coding not designing
  • I am a Web Standards developer
  • Developing content, applying the markup, and styling it are 3 completely different activities. The content might be digital. The markup and CSS are simple text.
  • Without a really good understanding of html I wouldn't be able to build integrated interfaces for Content Management Systems
  • I made no progress at all until I got my head around CSS positioning (layouts)
  • If I used a code generator I would never have learnt html as I need to know it today
  • Separating style and content is not achieved simply by using CSS. It needs semantic markup hand in hand to unlock the power.
  • You can't be a web developer without knowing some php
  • Graphic design is best contracted out to experts
  • Good web pages are built on well understood scientific principles. There is nothing arty about usability or accessibility. These are the future.
  • Avoid people carrying photoshop mockups who *just* want them coding
  • Learn to love your text editor
  • Keep away from IIS.
  • Follow the Open Source movement
  • Choose a forum and become a teacher / student. Be good at both roles
  • Read the experts. Follow their work. Open dialogue
  • Learn to love the validators. Use them early. Use them throughout your build
  • Reuse your code
  • Follow consistent nomenclature eg: I now always call my outer container #page my menu is #sidebar and so on
  • Think about how to best uses classes. I use a few that I reuse. Other than that go with descendant selectors
  • Understand the global reset
  • After layouts the next most important thing is understanding text resizing in different browsers and what to do about it
  • Buy good books. Get paid in books when you start.
  • Since I started sectioning my CSS my life got a whole lot simpler.
  • Keep away from CMS until you know what you are doing
  • Build your bookmarks. Throw out the junk. Find the very best solution to each and every challenge in web construction and use it consistently.
  • Challenge yourself. Learn new stuff every day. Move outside your comfort zone
  • Give and you shall receive
  • Do not use hacks
  • Do not use Conditional CSS. It is the road to madness
  • Avoid defining the width of anything if it can be avoided. Ditto for height.
  • For internal widths use %
  • For internal heights use em not px
  • Learn how to use and clear floats
  • Learn the Golden Ratios
  • Understand Richard Rutter's on vertical spacing for fonts
  • Reduce the colors
  • Understand the use of emphasis to direct the eye on the page by the use of shape and / or color
  • Spend time thinking about the Zen Garden. What can we learn?
  • Do not use WordPress
  • Be a blogger
  • Finally - use social media to move among the community that you aspire to join. This is the most priceless facility the internet has given us. We can learn directly from our industry leaders.

P.S. If you discover b0rkage on the site of a world class web developer - like Eric Meyer for example - he won't thank you for leaving a comment on his blog mentioning it. :)

P.P.S. Have I mentioned fancy software and code generators? No I did not. Learn to code. Not to use proprietary software

Comment

  1. great list there, sir.

    Comment by adam Apr 27, 03:59 PM #

  2. This is an excellent list so thanks for creating it. I really enjoyed reading the post and from time to time I found myself chuckling. But, what made me laugh out load was when you described IE 6 as “the most malignant piece of software ever developed”. Amen. :)

    Comment by timethief Apr 27, 06:23 PM #

  3. Nice Information.

    http://omsoftware.co.in/

    Comment by Abhay Pandey Apr 28, 07:16 PM #

  4. Actually, he might, depending on how ones defines “b0rkage” and how it’s brought to attention. Did I miss something?

    Comment by Eric Meyer Apr 29, 05:35 PM #

  5. Eric: Thanks for popping by. You may not remember the question of how the WP calendar resizes at different text sizes. It was a comfort to know we were not the only ones struggling with it :). Thanks for changing my life. Everything I do now, everything I earn, and everything I love in my working life started with your work.
    Sounds a bit OTT. But its true. I have gone from home hacker to posh agency in 4 years. Just please don’t read my CSS :)

    Comment by root Apr 30, 10:39 AM #

Add your two cents









Textile Help

How to be a web developer

It's a funny old world

In which I ruminate on the mysterious process by which I arrived at today just using a simple and free text editor

A younger friend of mine recently asked me if I could furnish him and others with a kind of ten point guide to being a better web developer. I am not sure why he thought I might be a suitable person to ask. And I am not sure that being a web developer can be reduced to bullet points. All I can offer, humbly - are some personal reflections on my own web journey - beginning perhaps with the page that changed my life and some of the resources like Max Design where I first began to understand many of the things I know today.

Although I did not really get into them at the time I was exposed to computers very early in their development. I learned BASIC straight away. Unfortunately we then had to give it to a typist who converted it into a punch tape thingy. Our *code* was then inserted into a *computer* the size of a house. And in a flash our code either ran or crashed. And that was it. LOL. A while later I started fiddling on a Radio Shack Computer. Although I can scarcely justify the title of *programmer* from that time my love for computers has stemmed from the ability to code things. That is a different starting place than a GUI. From that time on I have never really liked GUI at all. Nor Windows. Nor indeed many applications. The joys of Access, Excel and Powerpoint have passed me by completely.

But during all this time I was working in a field which did not use computers at all. Some years later, just as the internet got started, I got into it. Within minutes of getting my Netscape 1 browser working I was reading up on the html spec. I wanted to be a web publisher. Not a web user. Up came my first html *hello world* page. Great Joy.

A very short time later a friend and I had the great fortune to land a huge commercial site for a very big and very prominent local company. The experience nearly broke me completely. Two facts drove that first dire experience. One was that the two major browsers were poles apart - deliberately so - in terms of their interpretation of the html specification. The second was the exceptionally tedious necessity of using inline styling. On a site of any size these two things combined turned what might have been a joyous experience into a nightmare of hackery, voodoo and fiddling. After my first experience of declaring font sizes in table cells I quit. I have never used tables for positioning since.

I simply did not have the patience for it. Nor am I a *designer*. In those early years the web industry was dominated by graphics designers who were then - and still are - using code generators. That was not an industry which I either wanted, or was capable of being in. Beside which - even with my rudimentary early experiences of programming I could not believe how screwed up a simple mark up language like html had become.

To compound my misery I was already using CSS. I started within days of the spec being published. I knew immediately what it meant, and what was coming in the future. But due to Bill flaming Gates and his absolutely shocking browsers we couldn't use it.

Then came Front Page. What a monstrosity. HTML can be produced in any text editor. I did not understand then - and I do not understand now - why so many folk distance themselves from that simple, elegant and satisfying process. Why do people need bloated, expensive, licensed, and fiendishly complicated software? Returning to my earlier theme of not being an instinctive adopter of many widely used applications - I guess that partly I just simply can not be bothered to learn how they all work. Even now I am surprisingly maladroit. I am just not interested in applications at all really. I have put my energy - over many years - into trying to learn how web pages and web servers should work - not in learning how to use fancy proprietary client side software. But put me on my text editors like kate and vim and I can be pretty nifty. I am just getting into emacs too.

As a sideline - and to keep myself entertained I became absolutely fascinated by Search Engines. I was invited to go to a very fancy development agency in London and do a SEO presentation before the word SEO had even been invented. One of their clients was / is one of the UK's big banks. I mean mega. In the ten days prior to my presentation I built and published a web page around key words like *British Banks* *UK Banks* *Bank Loans* and the like. During my presentation I logged on live. And there was my page. At No 1 on three major engines out of about 6 million pages returned for many of their two word search terms / keywords.

I never heard from the agency again. From that day on I simply refuse to either get involved in sales, or to travel to corporate clients premises at all. Some time after I used my SEO template for South Africa's leading bank. Then I helped a book publisher. But they were bought out by Amazon :)

Throughout that time a different strand in my relationship with computers was beginning to take hold. I began to realise that we had all been shafted. Windows sucks. As the default desktop for billions of people, governments, hospitals, charities - just about everybody - as an OS it is utterly lamentable. The very idea that something so important in our lives as an OS should be driven by corporate greed fills me with absolute horror at the very concept. At the practical level I am utterly fed up with the Windows bloat, pathetic security, 1984 like surveillance of the user, hardware upgrades, software conflicts - the costs - the media and licensing arrangements, the hype and the crap.

And do not get me started on their browsers. IE 6 seems to have a mind of its own and is the most malignant piece of software ever developed. People have got absolutely no idea how much of the OS it controls, how it updates itself from HQ without informing the user, and how much information it sends to MS. But I reserve my special visceral hatred for Windows Networks both LAN and Web Servers both of which are absolutely hideous. Really. I just can not bear to be anywhere near them now.

But my switch to linux was not driven by dislike for Windows. It was driven by a desire to return to the intimacy of the command line and to use some of the exceptionally powerful tools available therein. Until you have used cURL and added your own header request to hack Google you simply haven't lived.

Then finally came the great day that changed my life. I heard Jeffrey Zeldman's call to arms. When he published his seminal work Designing with Web Standards the tectonic plates shifted. That was it. That was the day I began my journey as a web developer. With my earlier disillusion caused by the browser wars I was an immediate and ready convert to the Web Standards cause. I had been praying for it ever since I first used CSS. Just occasionally Standards advocates can be accused of being over zealous. But perhaps folk could remember that we were forged in the fire of the browser wars, and we were tempered by the long and bitter years in the wilderness. We have done it your way long ago. And we didn't like it.

Two other events occurred which shaped my journey and the journeys of a very great number of other people. One was that the Mozilla Foundation produced Firefox the worlds first decent browser which puts standards at the heart of it's architecture. And the other thing was that Web Standards devotees discovered the semantic publishing platform of WordPress very early. I was one of the first thousand users of WP and by the time I was up and running and registering in the forum I was user two thousand and change. WordPress - and God knows I have serious issues with some aspects of the culture - has been a wonderful introduction to social media, to php programming, to interface development and to the great value of forum support as a learning vehicle. In a period of just a few months I fixed hundreds of broken WordPress templates and that experience at reading other peoples mess is probably the most valuable asset in my tool box of experience. I also released - pro bono - a series of WordPress templates which were adopted by designers and end users alike; and are still widely used today. They have also been ported to many other platfroms including Expression Engine and TextPattern.

So drawing all these strands together what can I say?

  • I like coding not designing
  • I am a Web Standards developer
  • Developing content, applying the markup, and styling it are 3 completely different activities. The content might be digital. The markup and CSS are simple text.
  • Without a really good understanding of html I wouldn't be able to build integrated interfaces for Content Management Systems
  • I made no progress at all until I got my head around CSS positioning (layouts)
  • If I used a code generator I would never have learnt html as I need to know it today
  • Separating style and content is not achieved simply by using CSS. It needs semantic markup hand in hand to unlock the power.
  • You can't be a web developer without knowing some php
  • Graphic design is best contracted out to experts
  • Good web pages are built on well understood scientific principles. There is nothing arty about usability or accessibility. These are the future.
  • Avoid people carrying photoshop mockups who *just* want them coding
  • Learn to love your text editor
  • Keep away from IIS.
  • Follow the Open Source movement
  • Choose a forum and become a teacher / student. Be good at both roles
  • Read the experts. Follow their work. Open dialogue
  • Learn to love the validators. Use them early. Use them throughout your build
  • Reuse your code
  • Follow consistent nomenclature eg: I now always call my outer container #page my menu is #sidebar and so on
  • Think about how to best uses classes. I use a few that I reuse. Other than that go with descendant selectors
  • Understand the global reset
  • After layouts the next most important thing is understanding text resizing in different browsers and what to do about it
  • Buy good books. Get paid in books when you start.
  • Since I started sectioning my CSS my life got a whole lot simpler.
  • Keep away from CMS until you know what you are doing
  • Build your bookmarks. Throw out the junk. Find the very best solution to each and every challenge in web construction and use it consistently.
  • Challenge yourself. Learn new stuff every day. Move outside your comfort zone
  • Give and you shall receive
  • Do not use hacks
  • Do not use Conditional CSS. It is the road to madness
  • Avoid defining the width of anything if it can be avoided. Ditto for height.
  • For internal widths use %
  • For internal heights use em not px
  • Learn how to use and clear floats
  • Learn the Golden Ratios
  • Understand Richard Rutter's on vertical spacing for fonts
  • Reduce the colors
  • Understand the use of emphasis to direct the eye on the page by the use of shape and / or color
  • Spend time thinking about the Zen Garden. What can we learn?
  • Do not use WordPress
  • Be a blogger
  • Finally - use social media to move among the community that you aspire to join. This is the most priceless facility the internet has given us. We can learn directly from our industry leaders.

P.S. If you discover b0rkage on the site of a world class web developer - like Eric Meyer for example - he won't thank you for leaving a comment on his blog mentioning it. :)

P.P.S. Have I mentioned fancy software and code generators? No I did not. Learn to code. Not to use proprietary software

Comment

  1. great list there, sir.

    Comment by adam Apr 27, 03:59 PM #

  2. This is an excellent list so thanks for creating it. I really enjoyed reading the post and from time to time I found myself chuckling. But, what made me laugh out load was when you described IE 6 as “the most malignant piece of software ever developed”. Amen. :)

    Comment by timethief Apr 27, 06:23 PM #

  3. Nice Information.

    http://omsoftware.co.in/

    Comment by Abhay Pandey Apr 28, 07:16 PM #

  4. Actually, he might, depending on how ones defines “b0rkage” and how it’s brought to attention. Did I miss something?

    Comment by Eric Meyer Apr 29, 05:35 PM #

  5. Eric: Thanks for popping by. You may not remember the question of how the WP calendar resizes at different text sizes. It was a comfort to know we were not the only ones struggling with it :). Thanks for changing my life. Everything I do now, everything I earn, and everything I love in my working life started with your work.
    Sounds a bit OTT. But its true. I have gone from home hacker to posh agency in 4 years. Just please don’t read my CSS :)

    Comment by root Apr 30, 10:39 AM #

Add your two cents









Textile Help