floating indicator next to menu
floating indicator of scroll progress
0%

Refactoring CSS Without Losing Your Mind – Harry Roberts

This was originally posted on medium.com.

Ladies and gentleman, let’s give a welcome to a bona fide magician. Front-end architect and full-time CSS consulting wizard, Harry Roberts!


You might have a scar by your eye, be named Harry, and be a rising star on the web conference scene worldwide. But only Harry Roberts can truly state that people Google him using the phrase, “CSS wizardry”. You see, he possesses real magic, which he is able to pass on to large teams of developers in companies and organizations like Google, Financial Times, BBC, and OSN. Harry isn’t an illusionist: his spells are working.

After several years of gradual preparations, while working full-time as a Senior UI Developer at the British company Sky, he started his own project CSS Wizardry in 2013. He was sharing snippets of code, publishing useful articles and attending conferences — and basically doing what we would now call “content marketing”—for some time before and on top of his day job. It is also important to add that Harry isn’t a freelancer who would wander from one project to another. He offers consulting services and trainings as front-end architect. The main difference?

“Clients wouldn’t hire me for three months to work on their actual code for them, like they would a freelancer; clients would more likely hire me for a couple of weeks in order to guide strategic and architectural decisions that their own developers (or a freelancer) might then implement.”

Giving trainings and sharing advice has literally led him on a trip around the world, and he shows up in his hometown of Leeds after tours lasting several weeks. What has traveling taught him? The final destination might not always be great, but the people are brilliant. The worst part is the traveling itself. This is probably something we still needs to work on. However, Harry is ever the optimist:

I see my life as a constant vacation punctuated with work that I love.

You can take this at face value. Harry once mentioned in a podcast that he never picked up the results for his A-levels. He simply didn’t want to lose even one day at his job at the time in a web development company. It’s probably not even necessary to add that he didn’t go for a degree — some people simply don’t need to. Perhaps it’s related to the fact that university life is sometimes unnecessarily limited to exclusive research, which stands in stark contrast to the entire Open Source movement.

Harry’s openness and willingness to share makes an impression: “Sharing has always been a vital part of what I do. It was other people sharing their knowledge that allowed me to become a web developer at such a young age — even at 15 I was able to learn and research so much for free.” He reportedly relies on the open developer community more than the standards in programming and all the ones and zeros together. He’s been a long time contributor to his Github profile. As a team, we recommend checking out the very popular CSS Guidelines (3600 ★) and his CSS framework inuitcss, which is now being worked on pretty actively.

And what makes a true framework? “CSS library that provides you with buttons and navs is not a framework.“ It’s what Harry calls a UI Toolkit.

A true CSS framework — like my inuitcss, or SUIT — actually requires that developers do a lot of their own work. The framework doesn’t tell you what your buttons will look like, it just tells you how you should go about building your own.

We asked Harry what current trend in CSS could be important in the near future: “Layout. Definitely layout. Having been a developer for about ten years now, I’ve found that I’ve become almost forgetful of the fact that layout on the web has always been a hack: tables, then floats, clearfixes … you name it. You just get used to how things are, and you begin to forget how much we actually need new and dedicated layout mechanisms. Rachel Andrew is the one to watch if you want to know more.”

This Site Uses Cookies

For processing purposes, your consent is required, which you express by selecting "Allow all." You can also customise your settings.