Website Development is Too Complicated in the 21st Century

Tangled mass of wires

Entanglement by Simon Brass

Call me a Luddite, call me hopelessly nostalgic, call me an old bloke who’s still stuck in the 90’s, but I think web site development has become too complicated in the 21st century. Ah that feels better, I’ve said it now, it’s out there. Bite me!

How it was

Back In The Day (the 90s, let’s call it BITD), all you needed to make a website was a text editor, some free webspace, a link to an HTML primer and some free FTP software off a magazine CD ROM. Add in a few cat pictures and pretty soon you had a “homepage” and very likely a job doing the same for others. Apart from the cat pictures, everything has changed beyond recognition since then.

While it’s true you could still get a website up and running using pretty much the same techniques mentioned above, you would not, in today’s world be considered a “web developer”, nor be able to get a job as one.

How it is

The modern web developer is expected to have a good handle on tech such as (and not limited to): JavaScript, including frameworks/libraries such as jQuery, node and npm
CSS, SASS, version control such as GIT, build tools like Gulp or Grunt, throw in a good dollop of PHP or any number of other of HTML pre-processors, and that’s all before you get working with some kind of CMS such as WordPress or Drupal that utilise all of those technologies in their own peculiar ways.

Added to this you’ll need a solid understanding of image types and display techniques and SVGs. Then there’s all the stuff around fonts, debugging tools and coding standards. And of course good ‘ole HTML5. Oh, and you’ll be expected to know your way round a database as well. Gosh, I’m exhausted thinking about it all!

There’s just too much for one person to get and keep their head around, and there’s less demarcation now like there was BITD, where there’d be different people looking after the front, middle and back ends and other people looking after versioning and deployment. Now it seems everyone has to know everything. And so everything suffers because no one knows everything about everything.

But OK, this is progress, things move on, I get that, so what’s my problem? I think the issue I have is that web tech changes and continues to change far too quickly and with little regard to the needs of its users, be they end users or people that use it to build stuff. And anyone who complains is considered backward looking and not cool.

Who’s to blame?

So, who’s to blame for all this? Well, of course there is the influence of the big evil corporations pushing their wares for profit, but much of the new tech comes via the open source route – so I’m going to lay most of the blame on… DEVELOPERS!

Of course we have developers to thank for all the wonderful “developments” we see around us, BUT, we have to understand the developer mindset.

Developers are never happy unless they are solving something, even if it’s something that doesn’t need to be solved. Developers endlessly tinker and try to improve things, make them faster, lighter, easier to use etc. etc. Then, when they consider their work done, they get bored and move onto the the next thing, not interested in the boring stuff like documentation and user testing. I should know I used to consider myself one, BITD.

If you spend any time with developers, you’d be forgiven for thinking that they are in pursuit of a world where everything is fixed and working smoothly and efficiently with a little “ping” at the end. Nothing could be further from the truth. Such a world would be HELL for developers, with nothing to fix and tinker with, they’d start finding ways to break it all and start again. It’s like imagining the police force long for a world free of criminals – if it were they’d be out of a job.

Thus developers find fault with things and build new things to fix them and hope to impress other developers and get applauded at conferences and such. Peer admiration is far more valuable to developers than cash, thus they give their stuff away and we get new stuff for free which is great, but then we have to start using it.

An cautionary tale from history

This page has been archived and is no longer updated

I nailed many of these to the front of a BBC website…

BITD when I was a “client side developer” with the BBC, the big brains decided that some of our sites had become huge and unwieldy with content being locked inside HTML tags. A solution was needed, it was thought, and so a desktop CMS called FLiP was developed. It was written in Perl and used XLST to convert XML documents into HTML web pages. This meant that teams who previously edited static HTML, now edited XML files and pressed a button to see the result.

It was a noble effort but took considerable resources in terms of upskilling and tooling to essentially do what we used to do using Find & Replace inside the Homesite editor. The system frequently broke, not because it was bad but there was just a lot more to go wrong, XSLT/XML is a lot less forgiving than HTML.

But on the plus side, we now had content that was separate from it’s presentation. It could be used in many different ways and redesigned at the touch of a button. The world was ours to repurpose and redesign as we saw fit.

Which would have been great if Erik Huggers, ex of Microsoft hadn’t joined the BBC as Director of BBC Future Media & Technology and at a stroke swept everything away that wasn’t in the top five of our audience figures (pretty much everything that wasn’t news, sport, weather or iPlayer).

So it was all junked, or left mouldering on a hard drive somewhere. What was deemed fit to remain had an archive sign like the one above nailed to the front of it. New technologies were wheeled in, and yes some of us had picked up some new skills but who’s using XML/XSLT now for a CMS?

I know it’s easy to have 20-20 vision with hindsight, but nobody ever asked the question “Is this new thing better than what we’re already doing?” or “How will we measure if it is any better than what we’re already doing?”.

I remember once being exasperated trying to make a small change to a site using FLiP and asking a manager if there were any evidence that we were saving time with this new tech. He answered that he believed a report was going to be produced sometime soon on this very question. I never saw it, and my Google search has thus far proved fruitless đŸ˜‰ .

My point is that no one evaluated whether the new tech was better or whether it was really needed, it was just assumed that it’s new, its the future and so must be done. And the consequences of putting too much trust in technology without sufficient research, testing, aforethought or documentation can be disastrous as seen with the recent Boeing 737 MCAS system air disaster.

The inefficiency curve

efficiency curve

A curve I made up…

I think we need to regard new tech with deep suspicion, and if it is to be integrated into our process it needs to be fully tested, and those extolling it need to be questioned mercilessly about it, how it will perform and what will happen when they leave or it breaks or it’s no longer supported.

I have a theory that the thing you know is at least twice as efficient as the thing you don’t know, no matter how slick that new thing is. This is just my own anecdotal theory, but I reckon in truth there may be an even wider gap.

Even further BITD when I was an IT teacher I remember having a class of women, office workers/secretaries and the like, mostly in their fifties who were coming in for training on swanky new Microsoft word processing software (Word). They were complaining that they didn’t like this new fangled WYSIWYG drag and drop thing, as they’d been used to software with “Reveal Codes“, a kind of markup for formatting text documents.

These ladies were doing command-line before it was fashionable! Of course WYSIWYG has now largely taken over for end users, for good or bad, but my point is that it would have taken time for these women to be as efficient with the new tech, even if it was better. If you magnify this across a whole team, my guess is that any new system can take up to a year to fully bed-in amongst team members so as to reach peak efficiency.

STABILITY! STABILITY! STABILITY!

stability

It’s over there! Not here.

So how do we fix it, how do we tame the developer beast? Lock them up and allow them out only at weekends under strict supervision? Joking aside we need to understand the developer mentality, and in so doing, allow them their creativity to do what they do, but they should not be the only voice in developing a new process or system.

ALL stakeholders including the “non techy” folks need to have a say and speak up when it comes the potential ramifications of new development. The less techy folks should not simply remain silent because they feel they don’t have enough technical knowledge, they need to speak up. If there is something that some team members are struggling with, it may be indicative that something is too complex, or not documented enough.

It’s no good having god-like developers doling out their wares from from on high to the lowly user scrabbling around in the dirt below. We all need to be part of the process.

More importantly what I think we need more than anything in today’s world is STABILITY. It’s a word that’s perhaps not as sexy as “innovation” or “disruption”, but it is a word we need more than ever, and in the wider world not just the tech world – but that’s another story. I think we need to slow the relentless and dizzying “progress” of web tech somewhat and have a more “make do and mend” mentality.

Instead of embracing every flavour of the month as it comes along, we need to ask tough questions, like what is the end result of what we’re trying to achieve, what is its life cycle, and do we really need this new tech to get to that destination?

When there’s a new tech, idea or process on the horizon, I suggest we all ask the following questions:

    • What exactly is this new tech all about, what does it do, why is it better?
    • What does this new tech give us that we don’t already have?
    • What is the cost of this new tech in terms of upskilling and hard cash?
    • What is the cost of not using this new tech?
    • Will this new tech be around/supported in five years time?
    • Do we already have something that does the same job that we’re not making use of?
    • Who will be responsible for this new tech?
    • Does it make pictures of cats?

Another approach I’d suggest to try is Documentation Driven Development. One the managers at the Beeb championed this BITD, though it doesn’t seem to have taken off. The principle is simple, you write all the documentation for the new tech or product you’re developing BEFORE you write a line of code. This may seem backwards, but it forces you to really think about what you’re making and how users will interact with it before you start building. Added to which, because the documentation is usually the boring part of the job, there’s more chance you’ll stick to what’s really necessary so as to keep it short and not start adding things nobody needs. Might be worth a try.

Of course nobody wants to get left behind in the tech race, and we need to keep up with developments, but we need to think hard about the how, why and when. At the end of the day, we’re mostly just building new ways of making pictures of cats.

 

So This is Fifty…

spain_traffic_signal_r301-50-svg…and what have I done. Not a lot it seems. So it seemed a good opportunity to revisit my blog, my last post was in 2012 after all.

So here I am, me at fifty. Fifty!! How did that happen. One minute I was, well.. thirty, OK thirty-five maybe, and the next…”Howay 5-0!”.

I’m sure it didn’t just happen, I have, after all had 49 years and 364 days to prepare for it. But it feels that way. This is probably because one puts such traumatic ideas such as ageing, out of one’s mind, it is something that happens to other people.

Don’t get me wrong, I’m not wholly opposed to ageing, as Dave Allen said:

I don’t mind ageing, not when you consider the alternative

But the thing about fifty – is that it is really starting to sound old. Proper old. In my youth, fifty was another country – so far away and distant and hard to get to, and populated by people who dribbled and rode round on mobility scooters. Even forty has a certain glamour, the age at which life apparently “begins”. But what has fifty to recommend it? It is only ten years away from the decade of the free bus pass and Tenaâ„¢ pads.

And this generation doesn’t do old. Maybe they never did and I was just too young to notice, but the older you get, the more you notice how everyone is so… young. In jobs for example. That’s if you’re lucky enough to have one post-fifty. Walk into any office, certainly in London, and 90% of the staff will be younger than you. Including your boss. And policemen. And policewomen.

And media, music, YouTube, TV, Twitter – everyone who has anything to say, sing, blog, tweet or dance about seems now to be younger than you.

Which means your world is becoming that bit colder, harder and lonelier. In the world of the young, you start to stand out like a sore thumb.

You realise, at fifty, that many of those dreams you had as a youth, are now sliding, irrevocably and finally out of view. The dream of writing a hit song, of being an acting superstar, of appearing on Top of the Pops (if it even existed) of just even being vaguely recognised in your field of expertise… well son, if it hasn’t happened by now, it probably never will.

What’s more death is closer.

It seems this last year (2016) surprised a lot of people because people were dying. I think we had perhaps forgotten that people die, but certainly there seemed to be a lot of it about, particularly amongst the rich and famous. As William Shatner (who perhaps surprisingly, hasn’t to date, died) pointed out, we’re gonna die:

Of all the celebrity deaths in 2016, the most shocking to me personally was the last, that of George Michael. I wasn’t the biggest GM fan in the world, I never much liked Wham! but I own the albums Faith and Listen Without Prejudice and totally respected him as an artist and singer.

But his death really affected me, more so than any of the others, and I think it was partly because it was so close to home. At 53, his death was only three years away from my latest birthday. It was a shock. I wanted to go back in time and put my arms round him and tell him to get well, that everything would be OK. I felt an inexplicable affection for someone I’d never met. I cried floods of tears over the laptop listening to this:

I don’t think we should necessarily think of the deaths of these people as a tragedy though. These people have had the privilege of unimaginable success in their chosen trajectory. These people have had the oxygen of attention, sometimes unwelcome but nonetheless something most of us can only dream of, particularly in today’s world of nanosecond attention span. These people have had a chance to live. To live a life as it should be and not merely surviving in order to exist. We know that’s not always a bed of roses but nothing is.

The real tragedy, I think, is with the rest of us. The rest of us whose lives they made better. The rest of us in the daily grind, plodding, plonkering, struggling, shit-shovelling, arse-kissing, grovelling, waiting, watching, commuting, sucking up to the highfalutin. It’s us, whose deaths will go largely unnoticed and whose lives will not amount to a hill of beans that are the tragedy here.

But enough already with all this doom and gloom! ‘Tis a new year and as such there should be hope afresh and such (OK it is now February, but I did start this awhile ago). So how shall this post resolve and what emotional climax shall it end on?

I don’t know, but in the spirit of Dylan Thomas:

Do not go gentle into that good night,
Old age should burn and rave at close of day;
Rage, rage against the dying of the light.

Of course that’s all very if you can remember who you are at “close of day”.

So on that note I am going to resolve to… well, carry on, carry doing stuff. Doing stuff that will be largely ignored, but hey, hasn’t that always been the way.

I think I’ll restart blogging, if nothing else it will be practice for that novel I intend to write. Maybe I’ll write some more music. Oh, and I should get a job.

But I’m not going to make any promises or set myself any goals, I can really do without the pressure, and I don’t want to get too ahead of myself… if 2016 has taught me anything, it’s that “none knoweth the hour”.

As Motorhead’s matchless Lemmy, who incidentally missed the 2016 celeb death-fest by mere days, said “If you think you are too old to rock ‘n roll, then you are.”.

So think young. And keep rockin’.

Job Post: Front End Web Developer. Employer: God.

This position is based in Heaven, although working from home is also an option. But you’ll probably prefer to work from the office due to the great views, floating on clouds and being served hot buttered toast and coffee from beautiful angel beings.

The role: HTML4 Developer, God’s new homepage

 

Skills required: HTML4, CompuServe animated GIFs, a bit of PaintShop Pro or similar.

Righto, I’m God. First up, I don’t have a beard and I’m not a woman. I’m not a man either, I am a supernatural being and as such defy all earthly description, so get with the program and listen up. I’ve decided to catch up with the 21st century and get me a web site. I’m getting a bit tired of all the know-it-all clever dick atheists out there who think I don’t exist, so I’ve decided I need to do a spot of PR and networking. But I’m definitely not using that stupid Twitter thing, I’ll barely get one Bible verse published on that and I’m a very busy being.

So I’m opting for a good ‘ole fashioned homepage. Thus I need a developer. You’ll need to know HTML, version 4 is fine, to my mind it hasn’t got any better since then. And you can forget all that testing business, by the time it’s all been tested and what-not I’d have decided to scrap it and start again, and besides that I’d have fallen asleep. And I don’t want any of that poncey JavaScript stuff either, that really makes my foot itch with all that fancy stuff going on, I can barely tell the page has changed. No, I like to see a nice big white screen before the next page appears otherwise I don’t know where I am. But animated GIFs are fine, so please bring them to the party, and if you’re good with the <blink> tag that’ll be grand – I need to make it at least a little visually appealing.

Right I think that’s about it. Send your CV by reciting it in the form of a prayer, starting with the words “God’s New Homepage”, it’ll get to me. The successful applicant will get an early hours visitation, probably from my Son, so don’t alarmed, he’ll just want a quick chat.

Anyways, good luck, and no arguments – I’m God and if I kick you in the nuts you’ll know about it.