profile picture

Lee Holmes

Precision Computing - Software Design and Development

© Lee Holmes 2026
  • Home
  • Projects
  • Archive
  • Writing
  • About
  • Pixel Doodle
    Pixel Doodle
    Pixel Doodle is a fun little Pixel Editor for Gameboy, emulators, and retro handhelds like the Anbernic RG35XX.
  • Statique: Simple Self-Hosted Comments for Static Websites
    Statique: Simple Self-Hosted Comments for Static Websites
    When hosting a static website or blog, you ultimately have to tackle the question: “What about the comments?”. Statique provides a simple, self-hosted option.
  • BinShred - Parsing Arbitrary Binary Data in PowerShell
    BinShred - Parsing Arbitrary Binary Data in PowerShell
    When working with raw binary data (especially in security forensics), it is common to need to write parsers for this binary data. For example, extracting file contents out of the NTFS data structures on disk. For many common data structures, there are already binary parsers written for them that you can leverage, but you’ll still sometimes need to write your own. BinShred is a PowerShell module that lets you do this.
  • Using Bloom Filters to Efficient Filter Out "Known Good"
    Using Bloom Filters to Efficient Filter Out "Known Good"
    There are many times in security investigations where we want to quickly filter out “Known Good” and only focus on what remains. Bloom Filters are an excellent way to accomplish this.
  • Work Simulator 2020
    Work Simulator 2020
    It’s March 4, 2020. A pandemic grips the world, so you’re working from home. Can you last the month?
  • Scour: Fast, Personal, Local Content Searches
    Scour: Fast, Personal, Local Content Searches
    If you have a large collection of documents (source code or text files), searching them with PowerShell or your favourite code editor can feel like it takes forever. Scour is a PowerShell module that surfaces the Apache Lucene project that can help.
  • Part-of-Speech Tagging with PowerShell
    Part-of-Speech Tagging with PowerShell
    When analyzing text, a common goal is to identify the parts of speech within that text – what parts are nouns? Adjectives? Verbs in their gerund form? This PowerShell module provides an excellent interface to Stanford’s speech tagger.
  • TimeJournal: Time Profiling for Humans
    TimeJournal: Time Profiling for Humans
    Time Journal helps you analyze where you spend your time by infrequently asking the simple question: “What are you doing?”
  • Interactive Rosetta Stone Explorer
    Interactive Rosetta Stone Explorer
    In 1799, Napoleon’s explorers discovered a 4-foot tall, 700 lb stone slab in Rosetta (Rashid), Egypt. Explore its hieroglyphics and their meanings with the Rosetta Stone Explorer.
  • Downloading Plain-Text Wikipedia
    Downloading Plain-Text Wikipedia
    If you’ve ever been interested in having all of Wikipedia in a plain-text format, you might have been disappointed to learn that Wikipedia doesn’t actually make this format available. This PowerShell script will create a plain-text version of Wikipedia for you.
  • Gregg Shorthand from a regular QWERTY Computer Keyboard
    Gregg Shorthand from a regular QWERTY Computer Keyboard
    If you’ve got an interest in languages, writing, and computers – you may have stumbled into the crazy world of Shorthand and stenography. If you want to use shorthand from a regular keyboard, now’s your chance!
  • Morser - Keyboard Morse Input Device
    Morser - Keyboard Morse Input Device
    If you’re interested in Morse Code as a hobby or just as a neat lo-fi communication mechanism, Morser will let you use your regular keyboard as a Morse keyer into any Windows application.
  • Scripting WinDbg with PowerShell
    Scripting WinDbg with PowerShell
    The WinDbg module lets you script and automate WinDbg sessions from PowerShell.
  • BgShell - Background Shell
    BgShell - Background Shell
    BgShell is a proof of concept PowerShell host that explores the idea of PowerShell as a background Macro program.
  • DIY Cat Feeder and Water Dispenser
    DIY Cat Feeder and Water Dispenser
    What do you do when your cats need to be fed automatically, and all you have is junk laying around the house? Inventing time!
  • Note Trainer - Musical Staff Trainer
    Note Trainer - Musical Staff Trainer
    I wrote Note Trainer to help me learn guitar. It shows a random note on the treble cleff staff, delays a bit, then plays the actual note. You play the note as soon as you see it, then decide for yourself if you played the right one :)
  • A 440 Tuning MP3
    A 440 Tuning MP3
    This is just a simple MP3 to play an A440 test tune. Loop it in your media player, and tune your instrument!
  • Seattle Commute Times Visualilizer
    Seattle Commute Times Visualilizer
    When I was first looking for a house, one of my primary constraints was commute times. Before Google and Bing offered commute time estimates, this project helped thousands of people.
  • Gregg Shorthand Quick Reference
    Gregg Shorthand Quick Reference
    This quick reference summarizes the useful resources available at gregg.angelfishy.net. The document puts the Gregg alphabet, and 147 brief forms all in one helpful quick reference.
  • Webcam Control - Use a Webcam to Automate your PC
    Webcam Control - Use a Webcam to Automate your PC
    Use Business Cards to Automate Your Media PC … with a webcam as the input device
  • PerfCompare - A C# micro-benchmarking and performance analysis tool
    PerfCompare - A C# micro-benchmarking and performance analysis tool
    PerfCompare is designed to help you test, compare performance, and micro-benchmark small snippets of C# code.
  • Maze Generator
    Maze Generator
    This little C# application generates random mazes for you. Kids find it entertaining, although I should really put in a bit more positive reinforcement at the end :) Downloads Project
  • GPS Tracker - GPS Track Log Viewer
    GPS Tracker - GPS Track Log Viewer
    A useful project to display GPS NMEA track logs on screen.
  • Sierpinski Triangle Fractal
    Sierpinski Triangle Fractal
    The Sierpinski Triangle is a neat mathematical diagram of triangles within triangles. Here’s one implemented in C#.
  • SVG Editor and Painter
    SVG Editor and Painter
    I was on a roll, and this painting program / SVG editor is the result. I wrote it in SVG, and it even lets you export (save) your SVG drawing to another SVG document.
  • Catch the Ladybugs!
    Catch the Ladybugs!
    Who can resist making a child happy? Ariel like the last game so much that I thought I’d try working with animation and other things. This game of Catch the Ladybugs is the result.
  • Memory in SVG
    Memory in SVG
    SVG is the web consortium’s proposed replacement for Flash (and other “vector” formats.) While experimenting with it, I wrote this little game of memory for my daughter, Ariel. If you know your letters, you can play too!