Web development sucks

As I have been working on my new design, I have realized something:  Doing web development sucks.  Flat out, sucks.  I have deep compassion for those of you who actually decided to do this for a living.  As much of a perfectionist as I am, I could not do this job on a daily basis.  I closed the doors of my web design business years ago for this reason, and this reason alone.  If you thought dealing with your own tastes and perfectionist ways was difficult, try dealing with someone else’s.

He must be doing design work.

He must be doing design work.

Most people who design sites, who are not professionals, design it to look nice in whatever browser they are using at the time, with whatever settings they have turned on or off, at the time (see MySpace).  This is a perfect example of the old saying ignorance is bliss.  If I could develop websites all day to work on a Mac running Safari, design would be so much fun.  This is the case for many professionals, at least those designing applications for in-house use, who only need their designs to work in whatever browser their company has deemed the standard.  Most of us, though, are not so lucky.  Us being the people, professional and amateur, who develop public facing websites where there is no remote way to predict what your audience will be using to view your website with.  Us being those who are anal enough to care about how our website looks in almost every possible scenario.

What are these scenarios one must consider, well, here is how I usually think about it:

Will my site still look/work okay if…

  • The user is using a non-mainstream browser (there are dozens)
    • I try my best to consider all the ones I can.
  • The user is using Internet Explorer older than version 7.0
    • Usually relatively easy to contend with, avoid translucent png’s, deal with odd css bugs.
  • The user has images turned off
  • The user has style sheets turned off
    • Make use of conventional html tags as much as possible.
  • The user has Javascript turned off
    • Do not rely on Javascript to do anything your page cannot live without having.
  • The user has a very large/small screen resolution.
    • Optimize your site for the lowest popular resolution, screw everyone else.
  • The user is browsing from a cell phone or mobile device
  • The user wants to print something on my site
  • The user is on an operating system with different base fonts
  • The user has their screen color settings low
  • The user has their font size increased/decreased in their browser
  • The user is on a slow connection
    • Try to keep your images, css, and javascript files as small as you can.
  • The user does not have something installed
    • Such as Flash, Java, Shockwave, etc.
  • A billion people hit it all at once because I’m just that popular.
    • Minimize database hits, cache, have a good server.

As you can see, if you want your site to work well, across the board, it is no easy feat.  In fact, it is very difficult.  What you usually wind up with at the end, feels like some sort of hack.  In the case of the new design I am working on, I made a couple of fundamental choices which have made the design incredibly more difficult to implement.  Although, they shouldn’t be, as they were quite simple choices.  Nothing too fancy:  A fixed position footer, and the use of one translucent png image.  Neither of these features are supported by any means in Internet Explorer 6 or below, without hacks.

Javascript in itself, is very nice.  I can write snippets of code to do very nice things with it, if the user has Javascript turned off, it appears as if those features never existed.  This is perfect.  The problem arises, for me, when your page relies on Javascript to even work at all.  This is the case of my new site when being viewed in Internet Explorer 6.  Javascript needs to constantly put the footer in the correct place, and it needs to make IE display translucent PNG’s correctly.  I don’t like this.  I had two conversations earlier with two different web design professionals on this exact topic, and I got two very different answers.  To paraphrase:

Designer 1: Javascript is there as a tool for you to use to accomplish what you need to accomplish.  Why should it be considered a hack?  If your site works, it works.

Designer 2: I find it is best to not fight the web.  If you find yourself coming up with all sorts of tricks to make your site behave the way you want, it is usually best to just change it around a bit to make it work the way the web wants it to work.

I agree with both of these points.  I have not yet decided which of the two I will listen to though, when it comes to my own design.  I realize that the amount of people who will come to my site in IE6 with a screen resolution of 1024×768, and Javascript turned off, is a very, very, small number.  For some reason though, I still feel compelled to support it.  Perhaps I should just let go and stop supporting IE6.  That decision would be much easier if the last 3 corporations I worked at did not use Windows 2000 with IE6 as their default setups, thus making me realize that the user base of this highly outdated browser might still be much larger then it should be.

So what am I left with?  A design which mostly works due to a system of hacks which I am quite uncomfortable with.  It is as if the internets does not want you to be creative, because if you try to be, you will be punished by having to spend countless hours working on one tiny detail of your site.  Which you can only hope will pay off when that one person who stumbles across your site on a 15 year old computer can actually enjoy reading it.  The best part is, you are so good at what you do, that person wont even appreciate the hard work you did, because they have no concept of just how much work it took to make your site simply work as they expected it to under their very specific set of circumstances.

Users do not appreciate the amount of work it takes to make something work, the simply love to bitch about it when it doesn’t.  I should just develop for the web on a highly standardized, proprietary, platform like Flash or Java.  At least you know what your end result will look like, every time.

Posted in Hobbies, Work Tagged with: ,
  • http://www.caseyburk.com Casey

    With all due respect, you misunderstand the differentiation between “web design” and “web development”.

    My time is short to post this, but it needs to be understood that “web design” is the primary emphasis of your article, post or whatever. “Web Development”, however, is concentrated towards making your website “do things”. I know I may be acting like an elitist here, but it is an important thing to understand.

    Web design pertains to making your website look pretty while web development pertains to the mechanics of it (and no, this has nothing to do with the browser stuff). Take the saturation of PHP / MySQL developers out there… Do you think they spend most of their time screwing around with how a website looks in Opera versus Internet Explorer 6? No, as a matter of fact, they instead worry about adding new facilities such as search engines, archival and posting capabilities, user roles, etc. This, in turn, is actual web development.

    …Just for the record, though–your article covers many aspects of frustrations in which I share with you. I hate almost anything web design (and especially, web development) because it just tends to wind up being “too much”. All the crap with web standards, programming paradigms and information architecture… Oh my! What a waste of time for anyone wanting a social life or decent body image.

  • Federico

    “It is as if the internets does not want you to be creative, because if you try to be, you will be punished by having to spend countless hours working on one tiny detail of your site”

    NICE !!!

    Web development+Web design = SUCKSSSSSSSSSS

  • Mixhael

    I couldn’t agree more. I’ve been designing websites and web applications for 10 years and even have 2 patents and I flat out hate it. Programming has paid nicely and I love my Porsche but browser compatibility, constantly changing standards and people that just don’t seem to get how time consuming and nit picky crating a professional website can be. I’m trying to phase it out of my business but can’t seem to get away from it. It’s to the point now that I almost would rather work in fast food then write another piece of code.

  • vijay sign

    Exactly! Web programming (and design) both sucks ass. Infact they both can suck my balls. It a very screwed up development. Stupid annoying mofoing post backs…bhan chode dulay keh bachay nay yeh web development bunai hay.

    Panchode bund phar doon ga may is dulay keh bachay ko. Mader chode bhan chode ki aulad. Tui may lun ghusa ghusa keh us ki bund phar don ga.

    mader bhan choda…dulla…gandoo…kutay ki maut maray ga tu sala BHAN CHODE….

  • ForumAdict

    Im a software programmer(c/++,c#,vb,…etc) that started a few mouths ago a website project for help and fun. but..

    Dealing with all those browser compatibility issue is really a PAIN. Website desing suck. There should be a law to support completly those oppen standard (like css) and not introduce bug (ie ;-().

    I dont count the hours lost, trying to make the website look the same in every browser.

  • funkydog

    Cant agree more..been a web designer / developer for years and all I can say is that it is starting to become a total joke with so called standards worth hardly talking about and a plethora of platforms / languages all trying to behave in a similar manner.
    A bit of extra advice to anyone who wants a social life..stay away from this career its a waste of a life!

  • Dman

    Been doing this for a few years now and can say it does truly suck. You have no life because you worry to much about the latest designs and technologies designing and building for others. At this point I really don’t care anymore, not possible. I am ready to develop and maintain my own site at this point to try and generate some real money. Why waste time building this stuff for little to no money. I would enjoy cutting grass at a golf course or doing just a regular 9-5 type of job. By the way this is a great venting site for programmers.

  • CaptainReality

    You’re missing the real problem. It’s nerds. Nerdy nerds who WANT to spend their lives in front of a computer. Who think it’s great and noble to obsess about tech and never ever do anything else.

    We need to tease them, pummel them, and put them in their place. The nerd is a disease that must be destroyed.

    DESTROY ALL NERDS!

  • http://www.pdvictor.com Peter Drinnan

    I felt this way for a long time but right now I am doing high level strategy and really missing hands on development. There is nothing more frustrating than dealing with a bunch of nerdy and arrogant developers telling you something can’t be done when you know it can be done because you have done it yourself. Sometimes I just want to reach across the boardroom table and throttle someone. I guess my point it that the grass is always greener although I must admit doing strategy pays a lot better even if it feels like a bunch of BS.

  • http://www.diegosendra.com Diego Sendra

    Hi. Well, I couldn’t agree more on what you wrote and which two other users wrote. – “It’s to the point now that I almost would rather work in fast food then write another piece of code.” – This is incredible true, I am coding since 1989, I was doing Basic, Pascal, C and Assembler back in the day, text-mode programming. Those were the real days when coding had any sense to me; everything came into a living hell when Windows came out in 1995 and you had to throw your knowledge into the WC in order to re-adapt to “the new”

    What’s happening today is too much for me, I am still thinking going out from this business forever because the constant change. Changing is NO FUN, who the hell said that changing feels good? Specially for perfectionist people like ALL OF US, who hate changes. It’s even worse than “the change” itself, is that the so called standards are wrong in most cases, standards developed by a bunch of enlightned coders that feel superior enough and have corporate backup behind them to push his “vision”. CSS is a pile of crap in terms of layout, tables are still far way too logical to conceive a layout. Nevertheless, CSS is a standard, tables are deprecated. Now you have the responsive web design, the multiple device widths, designing for mouse but also for touchscreen. Too much, this is neverending.

    A Hell-on-earth for programmers. For all the new audience this is the advise of an old 37 yr. old Dad: DO NOT GO into programming ever, your life will be miserable

    “A bit of extra advice to anyone who wants a social life..stay away from this career its a waste of a life!” -> Brilliant dude. Brilliant

    Regards
    Diego