Chainsaws at the Dinner Table

08-27-14 Marshall Norman

One div. Two divs. Small site. Large site. Among the myriad types of web projects out there, it can be a challenge to find the right balance in coding. Marshall shares some lessons learned.

While working recently, I was moved from working with a team on a very large website with loads of different types of content to working solo on a very small, laser-focused marketing site.

While starting the new site, I tried to approach it the same way we started the larger site from before. After a little while I realized that I had brought too much power to the table. All I needed to do was cut some bread, spread some butter. But I came with the tools to cut down a tree.

I approached this project with a toolbox that contained, but was not limited to, Atomic Design and SMACSS. Two super handy instruments, but they each hold their place in the world of development.

What didn’t work?

On a high level, atomic design was working. But with such a small site that wouldn’t be hooked up to a CMS or really ever change, it didn’t make sense for me to be breaking everything down into atoms–not because it would be bad practice, but because my time would have been better spent elsewhere. It was just too much.

What worked?

The principles of SMACSS were still super handy–mostly for spacing and layout purposes.

On the larger project we used very generic CSS classes almost like inline styles, adding them to any and all elements throughout the site to make things look the way we wanted.

Pretty much like this all over the place.

In this smaller project I pulled back a bit on that and used the layout classes mostly around my handlebars partials.

{{> _partial-with-module-specific-styles }}

What did I learn?

I wasn’t ready for the switch between a team effort on a large site to flying solo on a little one. All of a sudden I went from bouncing most of my decisions off other people before committing to making all the choices myself. This was a little scary! But in the end it caused me to find some balance in my development process between new techniques and the tried and true standbys.