Skip to content

Colin Webb

Why I'm Writing

Why am I writing?

To practice communication.

Written analysis, documentation, and thought are powerful ways to communicate. Writing forces me to think, and to structure my thoughts. A clear structure enables clear communication.

Python Generators Cheatsheet

A quick cheatsheet showing Python's generators, covering usage of 'yield', behaviour on raising Exceptions, and Generator Expressions.

Git Stash: The Basics

Git stash allows you to quickly push local changes to a stack-based storage area, thereby giving you a clean working state without creating commits or branches.

It is useful when manipulating previous commits, or prototyping with different changesets. Git stash only happens on your local machine and cannot be pushed to a remote server.

FFmpeg via Docker

I have previously written about using FFmpeg to convert H264 into MP4, running in a Docker container.

Running desktop applications in Docker negates the need to install anything, and isolates processes more effectively than something like Brew would. I needed to use FFmpeg again this week, and so spent a little bit of time setting it up properly - using Docker. Jessie Frazelle wrote a post in 2015 named Containers on the Desktop that was the inspiration for doing this.

Solving Slow Tests

Everything has a cost. Some costs are obvious. Money costs, time costs, overhead costs. Most, but not all, apply to writing tests for your software.

Rebooting AI - Further Reading

I recently read Rebooting AI, as book discussing how the recent focus on Deep Learning as the path towards Artificial General Intelligence is flawed. It was a good read, and made many interesting points. It left me wanting to learn more about other areas of AI, and luckily there was a 'Suggested Reading' list at the end.