William Huster, Software Architect

Latest Posts

Practice Command Line Programming with wtf.py

Let's write a command line tool in Python to record WTF moments during code reviews.

Create Radar Charts with Python and matplotlib

Radar charts are a great way to visually compare sets of numbers. They also help us gain an intuitive understanding of the data structures and pattern matching processes that underpin almost all automated matching, pattern recognition, and machine learning algorithms.

VueJS Radio Buttons, v-model, and the name Attribute

I just ran into an annoying issue with the `name` attribute while using radio buttons with VueJS.

A Pattern for Live Form Validation

Use JavaScript to validate user input in real time without a framework.

A Simple VueJS Currency Filter

Unlike other front-end frameworks, VueJS does not provide any filters out of the box. Here's what to do if you need to display formatted currency amounts in your Vue project.

Presenting Alert! Alert!

Alert! Alert! is dependency-free JavaScript library to easily add UI notifications to any web project.

Writing Plain Text Templates for Email in Django

The short answer is *don't*. Here's how to use the html2text library to auto-generate plaintext emails.

Easily Advance a Python datetime.date by One Month with Arrow

Here’s a nice one-liner using the Arrow library to advance a Python datetime.date object by one month.

Python Code Style Linting with SublimeText

PEP 8 sets out some style guidelines for Python. Rather than commit these to memory, use a linter! Here's how to do it in SublimeText.

Popular Work

AngularJS TimePicker [Codepen]

This is a timepicker component partly inspired by the Google Calendar timepicker. It allows for flexible time entry by typing or by selecting a time from a dropdown menu. It also works with the AngularJS ng-model and form validation.

Alert! Alert! [Codepen|Github]

Alert! Alert! is a tiny, dependency-free JavaScript library to add UI notifications to any web project. The notifications stack on the side of the screen and can be dismissed with a click or configured to disappear after a pre-set time.

InfoDots [Codepen]

Info Dots are a dependency-free UI Component you can use to annotate bits of your web site or web app interface. They appear as small, pulsing anchors that you can attach to practically any DOM Element. Hovering over an info-dot reveals a tooltip.

Basic JavaScript Game Engine [Codepen]

An experimental game engine from scratch, written in JavaScript. The engine provides components for building game objects, handling keyboard input, and rendering to a canvas using SVG. This demo also features "Player" and "Enemy" classes with composable mix-ins for movement and basic AI.