This post is the ‘note to self’ I wish I had read 5–10 years ago. If I could give you one takeaway it’s this; when you read and listen to experts remember that they don’t know everything. No-one does.
Surely there is a better way?
For many years I, no doubt like you, have toiled away building this Internet thing one web property at a time. The only thing that has been a constant is this: just when you start to feel like you know what you are doing, something will come along and challenge that idea. I’d long been under the illusion that I was doing something wrong. That ‘someone’ knew how to do all this the right way. I’m now more confident than ever that no-one does.
There are doubtless exceptions that prove the rule; the odd savant who really does know it all but for 99.9% of the time guess what? That’s right, that person you think knows everything doesn’t. No one does.
Advice is subjective
The thing is, all advice is subjective. It’s given based on personal experience and advice relating to web design and development is no different. People who publish their thoughts tend to experience or learn something and then document it. If enough of this is relevant and popular they gain traction and garner a following. That’s not a bad thing. I don’t think I’ve had an original thought when it comes to design/development so I like to read others experiences too. The trouble is, with enough momentum people get put on pedestals (magazines are extremely guilty in this respect, ‘10 developers you must follow’, ‘Designer of the year’ etc) and then they become, often through no fault of their own, ‘oracles’ where many then consider their writings/talks/slides as gospel. They don’t know everything. No one does.
Sadly, the upshot of this phenomenon is that web community can feel like a bunch of lemmings at times, shifting mindlessly from one trend to another regardless of whether ‘this months’ hot shit is actually useful to them. Question what you read. Apply your experience to it. Will it actually help you? Is it relevant? They are all just techniques and tools. Your skill as a craftsman isn’t exposed by the tools your have at your disposal, it’s your choice and application of the tools.
A while back I wrote an opinion piece for Web Designer magazine. What’s applicable here is this part:
Just as our techniques should adapt and change, acknowledge that the things we build are temporary. People often liken building websites to architecture. The notion being that they are attempting to build something that will last. It’s a noble notion. But how many sites you built five years ago are still in the same form? Would you build them the same if you had to rebuild them now? Would you build them the same way in even two years time?
We’re not architects. The things we build won’t last: accept that. We build sand castles. They are here for mere moments, marvelled at and enjoyed if we are very lucky, then washed away. That doesn’t mean we shouldn’t strive to build things more beautifully and functionally than those that have gone before, and employ the best practice ways in which to do so. But do it because doing so makes it easier for you to build what you need, easier for fellow developers to extend your work, and ultimately because it makes the user experience better. Don’t labour under the illusion that what you build and how you built it will stand the test of time: it won’t. So just use the tools available to you to get the job done.
Turns out they build up their JS much like I would of. One little piece at a time, testing things as they go and then refining the function at the end when everything was functional. The difference between us was not necessarily the application of grey matter or the approach, it was more the depth of experience they had with the language. In this instance, whilst I could conceptually relate what the function needed to do, they knew what tools and techniques to call upon to make it happen.
The saddest part for me is that now, having written a book (and another a fair way along), others may be under the illusion I know everything about the subject matter I write about. I don’t know everything about the subjects I write about. No one does! I’m merely relating what I know to be true based upon my experience – hopefully in a manner that helps. There’s already plenty of things I’d do differently. In two years time, I’ll no doubt do them differently again.
The broken fence post and the expert advice
Last week my garden fence broke in the wind. One of the posts snapped at the base with the remainder wedged in the ground. I bought a new fence post and sought the advice of a good friend of mine who is builder (of real things, not namby pamby digital stuff). The advice was basically to get out the old post as cleanly as possible so that there was a marker of where to put the new post in. Then I should position the new post, ensuring it’s 18–24 inches into the ground, add post mix (magical concrete stuff that sets in 10 minutes) and then shove all removed dirt back on top. With the advice of an expert, I was surely ready?
Reality had other plans. The remainder of the post was set in concrete. I garnered further expert advice and was told to ‘just drill it out’. After 3–4 hours doing a poor impression of Bruce Willis in Armageddon, I was about 12 inches into the ground and still hadn’t got all of the wooden post out.
Remember, expert advice was “the post needs to be about 18–24 inches in the ground”. I also checked this advice online – there was consensus – this was the way fence posts were done. So with failing light I abandoned hopes of getting a manly badge that day.
When I related this complication to my expert friend he simply said, “don’t bother with the last bit, just stick it in 12 inches and cut the top off, it’ll be fine!”
The relevance here is that expert advice is all well and good until it doesn’t work. At that point we must improvise, adapt and if all else fails find a really big hammer. Turns out that’s what ‘experts’ do!