Jonathan Snook

Understanding the basics, with Jonathan Snook

Jonathan is the creator of the influential SMACSS methodology for writing scalable and modular C-S-S. He has worked his magic at Xero, Yahoo!, and Shopify, and has appeared on stage at conferences such as Generate, CSSConf, and the Smashing Conference. With 3 highly-acclaimed books, Jonathan has - a - knack for influencing devs around the world and earning the respect of the top people in the industry.

Time Stamped Show Notes

1:56 – Everything feels like an evolution of what came before. Jonathan loves the creativity and design of his work, rather than all the new things that will inevitably come out.

4:48 – Recognising when you’re not behaving ok is the beginning of how to create an environment where everyone can do the best work they can do.

6:04 – Jonathan loves Vim. He mentions that there are editors like Atom or Microsoft’s Visual Studio Code that bring a lot to the table, but Vim is his comfort zone. Likewise, when it comes to using Git, he is most comfortable with the command line.

7:20 – Jonathan likes the ease of use that tools like MAMP being, where running an installer will set up your environment, and there’s very little configuration after that.

8:02 – Procrastination or “busy work” gets in the way of getting work done. Blocking out social media using the Self Control app helps Jonathan to focus and get into a state of flow.

10:03 – Larry mentions that he uses a Chrome extension, Kill News Feed, that blocks his Facebook feed.

10:10 – Jonathan has started reading Deep Work by Cal Newport.

10:49 – Jonathan has written a blog post in which he describes his approach to learning.

  • First level: just take everything in

  • Second level: implement an idea that you’ve discovered during a project. If you don’t get the opportunity to try something out on a project, come up with your own project and test out your ideas

  • Last phase: teach people what you’ve learnt.

  • Check out the full post here

12:46 – To get to an implementation stage Jonathan will come up with his own projects that take a few hours that allow him to test out one idea and understand things better.

14:44 – Jonathan explains the importance of understanding the basics. Because of all the libraries and frameworks available, people tend to jump into things at a higher abstraction level. Because he learnt to code before those things existed, he was forced to learn the underlying concepts first. He believes he is a better developer for it.

15:05 – Jonathan contrasts his learning experience with devs who start with Rails and the built in ORM – he learned by writing SQL queries directly. Jonathan feels the need to understand datasets, joins, and the underlying concepts about how things are done.

16:09 – Having the underlying knowledge allows Jonathan to write better code

Quickfire Questions

17:16 – Best advice about programming
Understand the basics.

17:29 – Habits for writing better code
Good sleep and proper rest help you write better code.

17:52 – Book
Scalable and Modular Architecture for CSS
Design Patterns: Elements of Reusable Object-Oriented Software by The Gang of Four

18:52 – Inspiring devs
Chris Coyier. Not only is he a genuinely nice guy, but he also does a lot of great work and pumps out great content.

19:41 – How to learn code from scratch
Jonathan says that the best way for him to learn is to have a project. If he had to learn to program from scratch, he would pick up a project and start with the basics.

20:55 – How to work smart
Stay focused, whether it’s by blocking out social media or using time management tools like the Pomodoro technique.

Tools, Tips, and Books Mentioned

Contact Jonathan

Previous
Previous

Anjana Vakil

Next
Next

Harry Roberts