Stephen Cook

@stephencookdev

About

Who Am I?

I’m Stephen. I gave up a promising Mario Kart career in 2014, to instead focus on software engineering full-time.

I’m a full-stack engineer, with most of my recent experience working on projects using React and Node.js, Rails or Django. Feel free to check out my LinkedIn if you want some more words about projects and stacks.

Where Do I Work?

I currently work at Let’s Do This as a senior engineer.

Let’s Do This is a digital marketplace for sporting and mass participation events, inspiring users to take part in races, from local 5k Runs to Double Ironman Triathlons. It is a pretty cool company, if you were looking…

Find Me

You can find me on the internet in these places:

Talks

You can view my Notist here.

100% CSS Mario Kart

CSS allows us to select elements in the DOM, and style them.

But how much more can it do — can we use it to make a fully interactive game, without touching JavaScript at all?

This talk explores some cool CSS features, and applies them in such a way that brings the CSS Working Group to tears.

video slides slides source

SVGs So Good, You Dodge the Blueshell

Icons on the web are everywhere, but sometimes it feels like just using normal img tags with PNGs is the easiest way.

This talks looks at some common icon use-cases, and how using SVGs can make your life easier, and your website shinier.

video slides slides source

Native-Like Animations with React-Router

React-router makes linking between parts of React applications a breeze.

However, pages suddenly loading can look a bit janky, especially when compared to the swish animations that have become more the norm in native applications.

This talk takes a look at how to achieve native-like transitions on the web, still using react-router, and without making your codebase unreadable.

video slides slides source

Open Source

You can view my GitHub page here.

I do this and that with Open Source, but my main focuses are:

Speed Measure Plugin

Speed Measure Plugin is a webpack plugin I created to help measure your build times.

See how fast (or not) your plugins and loaders are, so you can optimise your builds.

Tmux Workspace Groupings

Tmux Workspace Groupings is a tmux plugin I made to make it easy to create “groupings” of windows between sessions, for projects in your workspace.

If you use tmux, and use different sessions to separate e.g. “build” work from “version control” work, then check it out.

React Static Render Plugin

React Static Render Plugin is a webpack plugin I helped create at Thread to make statically rendering a React application embedded in a legacy site easier.

It generates HTML fragments, that can then be included in your server templates.

Strict CSS Modules Loader

Strict CSS Modules Loader is a webpack plugin I helped create at Thread to help you detect bugs in your code, when accessing styling information.

Wrap your CSS Modules objects in a proxy object, to warn if you attempt to access a non-existent style-name.