RSSAmplifier

Blog

Bits, Bobs & Breakpoints — Aaron Holmes

Bits, Bobs & Breakpoints — Aaron Holmes

aaronholmes.netRSS feed ↗29 posts

Latest posts

Browser-Based URL and vCard QR Code Generator

Browser-Based URL and vCard QR Code Generator # 25 May 2026 JavaScript , QR Code , SVG , Utility , Frontend This is a single HTML file that turns a URL or vCard contact details into a QR code and saves it as a scalable SVG - handy for business cards, signage, or anything headed to print. It runs entirely in your browser with no internet connection, so nothing you type ever leaves your device.…

Interview Coding Take-Homes: Part 3

Interview Coding Take-Homes: Part 3 # 15 December 2025 Programming , Software , Interviewing UCLA Health - Population Analysis # This take-home was about the data ingestion and cleaning population data. The goal was to take messy JSON from an API and turn it into a clean CSV, so the analysis and visualization could focus on the real questions without getting bogged down in data cleanup. Goals #…

Interview Coding Take-Homes: Part 2.b

Interview Coding Take-Homes: Part 2.b # 28 August 2025 Programming , Software , Interviewing UCLA Health - Terraform Module # This take-home was for a Senior Cloud DevOps Engineer position in a key IT organization at UCLA Health. This is part b of a two-part take-home. Read the first part, Interview Coding Take-Homes: Part 2.a . Prompt # You are a terraform developer building a new module to help…

Interview Coding Take-Homes: Part 2.a

Interview Coding Take-Homes: Part 2.a # 18 August 2025 Programming , Software , Interviewing UCLA Health - Maze Bug # This take-home was for a Senior Cloud DevOps Engineer position in a key IT organization at UCLA Health. This is part a of a two-part take-home. Read the second part, Interview Coding Take-Homes: Part 2.b . Prompt # This is an intentionally incorrect python script to play through a…

Interview Coding Take-Homes: Part 1

Interview Coding Take-Homes: Part 1 # 3 August 2025 Programming , Software , Interviewing As software engineers, we are frequently asked to demonstrate our ability to architect and implement software. Sometimes this is done through algorithm and data structure live-coding interviews, sometimes through take-home assignments, often both, or through other means. I have been given a number of…

Making a Copper Wire Tree

Making a Copper Wire Tree # 8 August 2024 Plants , Crafts This presentation shows the steps I took to create a wire tree out of copper wire in the shape of an informal upright bonsai. This is an embedded Microsoft Office presentation, powered by Office .

Winter is Canning 2022

Winter is Canning 2022 # 22 September 2022 Programming , Software This presentation shows the steps I took to prepare for this years 6-month long “Winter is Canning” challenge. Growers compete for the glory of winning the best looking pepper plant in a soda can. This is an embedded Microsoft Office presentation, powered by Office .

Pair Programming

Pair Programming # 6 April 2022 Programming , Software Why should you pair program, and how do you do it? This is an embedded Microsoft Office presentation, powered by Office .

My Dog Cleo

My Dog Cleo # 28 October 2021 Dog This presentation is about my Great Dane, Cleo. She has passed recently, after I created this presentation. This is an embedded Microsoft Office presentation, powered by Office .

Types in Software

Types in Software # 21 April 2021 Programming , Software This presentation is about types in software, why they are important, and what they do to help us. The presentation source code is at this repository . This is an embedded Microsoft Office presentation, powered by Office .

Displaying response headers and pretty JSON with cURL

Displaying response headers and pretty JSON with cURL # 19 September 2019 HTTP , Bash , curl , Utility , Productivity , Shell The Problem # I tend toward using cURL when testing HTTP services, but I had a difficult time parsing the result when these services spit back unformatted JSON responses. To make my life a little easier, I set out to find a way to bend cURL to my will. The Solution # Let’s…

The Behavior of C# Nested Static Classes

The Behavior of C# Nested Static Classes # 26 July 2018 C# , .NET , Experimental , Documentation While working on a code review, I found a nested static class that I needed to verify the validity of. I had three questions: Does the CLR create new instances when the containing class is instantiated? Do the static class members retain the same values across all instances of the containing class? Is…

Transparent Video in all Browsers from Cross-Domain Sources

Transparent Video in all Browsers from Cross-Domain Sources # 6 January 2017 JavaScript , Canvas , Experimental , AJAX , XMLHttpRequest , Video A brief history of time cross-domain transparent video # Transparent video is not a terribly new concept in web development, however, because browsers do not support transparency in videos, accomplishing this requires a unique solution that involves a…

Using Git with the .git directory outside the Git repository directory

Using Git with the .git directory outside the Git repository directory # 19 August 2016 Git , Git-Bash , Bash I have a particular use case where I want to use Git on top of another version control system. The only problem I ran into is that the other VCS wanted to track the .git directory that Git creates for its own tracking purposes. Rather than mess about with making the existing VCS ignore…

Simple Way to Prevent Websites Jumping from Scrollbars

Simple Way to Prevent Websites Jumping from Scrollbars # 1 April 2016 CSS A common occurance I see on websites, and a frequent question I see as well regards websites “jumping” when more content loads onto the page and a scrollbar becomes visible in the browser. The solution to this is remarkably easy, but I don’t think I’ve seen many developers mention it. The trick is simply to make the…

Two short ack filetype definitions for TypeScript

Two short ack filetype definitions for TypeScript # 9 February 2016 ack , TypeScript I search my TypeScript code a lot and finally got tired of using awk, grep, and friends to filter out irrelevant files. Here’s a definition for .ts files and .d.ts files to help you out. -- type - set = ts : ext : ts -- type - set = tsdef : match : /.+ \ . d \ . ts / Put this in your .ackrc file (or use those…

Simple programming patterns and conventions

Simple programming patterns and conventions # 24 December 2015 Patterns , Conventions , Programming I thought it might be helpful to some developers to see some simple patterns and conventions in a variety of languages. Many of us know about more complex and abstract patterns, like the Abstract Factory Pattern or the Flyweight Pattern , but smaller patterns are rarely discussed outside of answers…

Printing function body in Chrome’s console

Printing function body in Chrome’s console # 1 July 2015 Chrome Chrome used to, by default, print a function body in the console if you entered a function name into it, or if you called console.log() with a function name. What happens now is that Chrome will print a link to the function which, when clicked, will navigate your source viewer to that function. For example, executing (or logging)…

Reading an HTTP Request Response Body from Exceptions

Reading an HTTP Request Response Body from Exceptions # 16 April 2015 C# , .NET , HTTP , Debugging Every so often I need to read the response body of a failed HTTP request while debugging a .NET application in Visual Studio. It’s not immediately obvious how you can do this, so here’s a quick way to do so. You can use these same methods when working directly with an HTTP response object or an HTTP…

Circuit Scribe art project step #3

Circuit Scribe art project step #3 # 25 January 2015 Circuit-Scribe , Circuit-Scribe-Seattle I finally took the time to start maping out where I’ll need to draw my Circuit Scribe ink lines. I also drew where I want to place LEDs and calculated resistor values. I may need to revisit some of this to use less resistors to lower the load on the circuit, but I’m not sure. I’ll have to draw out a couple…

Circuit Scribe art project step #2

Circuit Scribe art project step #2 # 20 January 2015 Circuit-Scribe , Circuit-Scribe-Seattle I put another hour into this and started sketching out the buildings surrounding the Space Needle. The landscape is starting to take shape, but it lacks any depth. Next I need to figure out where I’m going to route my circuit, and then I’ll start drawing some of the details in the buildings. Also I really…

Circuit Scribe art project step #1

Circuit Scribe art project step #1 # 19 January 2015 Circuit-Scribe , Circuit-Scribe-Seattle I finally started my “cityscape” project with Circuit Scribe! Here’s a quick video showing the first pencil sketches. I will be posting these as I go along under the Circuit-Scribe-Seattle tag, so stay tuned for more!

Writing AngularJS directives as TypeScript classes

Writing AngularJS directives as TypeScript classes # 12 January 2015 JavaScript , TypeScript , AngularJS , Directives Introduction # TL;DR? Read the implementation details here. Note: This post was written for AngularJS 1.x. Angular 2+ has different conventions that make parts of this post obsolete. TypeScript is a fantastic language that extends JavaScript by providing static typing syntax.…

Using Time as a Color Generator

Using Time as a Color Generator # 20 December 2014 JavaScript , CSS , Codepen , Fiddle , Experimental The idea # I saw the site What colour is it? and thought the concept was really cool. For whatever reason, visualization generators pique my interest. I wanted to alter the original to see a wider range of colors, and to play with the attr() function in CSS’ ::after psuedo-element. I also wanted…

Speech Synthesis on Windows Phone 8.1

Speech Synthesis on Windows Phone 8.1 # 7 December 2014 C# , .NET , Windows-Phone , Speech I recently wrote an application to make my phone report current Los Angeles traffic conditions. I used the Windows.Media.SpeechSynthesis namespace to read in either a plain-text string, or an SSML -formatted string, and to speak it until the end. It turns out that speech synthesis with .NET libraries is…

My Ghost theme; Casper for developers

My Ghost theme; Casper for developers # 1 December 2014 Ghost I started using Ghost about a week ago. My (honest) first impression was that code blocks are unstyled and uneditable, which is a huge pet peeve of mine. I fixed that problem by forking Casper and adding Ace editor. You can find my fork of the theme here: https://github.com/aholmes/Casper . For whatever reason, I still wasn’t satisfied…

Running Entity Framework Migrations on Application Start

Running Entity Framework Migrations on Application Start # 28 November 2014 C# , Entity Framework , ASP.NET , .NET Entity Framework is an ORM developed by Microsoft. It has a useful set of tools and conventions for automatically managing database schema changes called Code First Migrations . My only gripe is that, unless you are willing to do some digging, migrations can only be managed with the…

JavaScript Vector Animations with Divs or Canvas

JavaScript Vector Animations with Divs or Canvas # 28 November 2014 JavaScript , Canvas , Pixi.js , Animation , Codepen , GitHub , Fiddle See the Pen Vector Animations by Aaron Holmes ( @aholmes ) on CodePen . What’s this all about? # A few months ago I found the post Vector animations with Python . I thought the presented demos were very cool, and the code interesting, but I was disappointed with…

Displaying code with Ace on Ghost

Displaying code with Ace on Ghost # 28 November 2014 Ghost , Ace , Theme , JavaScript , CSS After getting Ghost set up, I was disappointed to see the lack of syntax highlighting in Casper’s codeblocks. Additionally, code posted on sites where I can’t copy, edit, or scroll around is a huge pet peeve of mine. I wanted to provide a usable codeblock for any readers of my site. Having used Ace before,…