Welcome to my website.
search
To search for particular topics or search tags, click on the ">" icon to the left. There will be two lists: "Categories" and "Tags".
At any time, you can press the house icon, to return to this home page.
Categories are high level groups of pages that share common objectives or content. For example, "Algorithms" shows a set of pages and projects that describe various algorithms.
Tags are lists of pages that have some common content. For example "arduino" shows a set of pages that relate to Arduinos.
Or use the magnifying glass icon in the navbar, or use this Google CSE:
Major changes
I converted to vscode (from Jetbrains). This required changes to each repo and some changes to individual files e.g. formatting.
I have 101 repos (15 are either private or WIP). Managing these manually was taking many hours. To fix that, I created a common, shared command line tool called "zpm" (the "z" means "the last" and "pm" means "program manager"). Using that and updating an automated test harness called "ztestit" I am now able to run a complete suite of tests on all 101 repos. That takes under 2 hours (if no issues pop up).
Note: the plan is to refactor ztestit and to make more generic and publish it. It currently has a lot of specific code that is only applicable to my set of repos.
Also, I used zpm to test that they all work on Windows/MSYS2. Currently they all pass on Ubuntu, Macos and MSYS2 see Repo Information.
I also started using vfox. This helped standardize the tool chain and their installation which helped in quite a few areas. For example using ztestit and vfox, I was, finally, able to get SWIG to work with Python, Ruby and Nodejs on all 3 platforms. The next step is to convert to Powershell on windows. That will likely take a very long time to do.
Note: there can still be some bugs in these scripts. There may be some OS specific or environmental quirks I'll have to accommodate.
Latest changes
- 2026-07-15 add email link to all pages
- 2026-07-15 convert to using a common command line tool: zpm
- 2026-07-14 python-check-bb: updates to use BB token
- 2026-05-28 pyalamake: updates for macos; fixed swig-ruby; fixed swig-nodejs
- 2026-02-12 various changes for vscode
- 2026-01-28 py-runner-base: A python module to declare and run commands from the CLI
- 2026-01-08 pyalamake: Update to use arduino-cli
- 2025-12-11 3d-print-servo-hs-311: 3D print of holder for a Hitec HS-311 servo
- 2025-12-10 3d-print-breadboard-half: 3d print of holder for half-length breadboard
- 2025-12-06 3d-print-lin-5718l: 3D print of Lin 5718L-01P (NEMA23) motor holder using openscad
- 2025-12-05 proj-man-os-cleaner: Script to clean up Ubuntu OS
- I've retired, so I've removed my resume.
Downloads and Articles
Here are some Cool Things I've done in my career, at university or just for fun.
- Common Setup - projects in this site assume some common setup
- Project templates - templates for python, cpp, arduino projects
- pyalamake - Generates Makefile using Python script for use with CLion
- Algorithms - some interesting algorithms to use
- Medical Device - Verification - verification tools with FDA compliant reports
- Find the Best choice - an app that helps you find the best choice based on your criteria
- Games - a set of games and simulations
- Test Discrete Fourier Transform - test of Discrete Fourier Transform
- Test BM25 page ranking - test BM25 algorithm for page ranking for searches
- Low Rate Peristaltic Pump - creating a very low rate (0.1mL/hr or lower) peristaltic pump
- pycro - python script talking to a microcontroller
- Arduino - Various topics on the Arduino and programming for it
- FPGA - Various FPGA projects using Vivado and CMODA7 board
- AI - Various AI projects using pytorch, HMM, and PSO
- Python Apps and modules - Various Python apps and modules
- Project Maintenance - Various apps to help with project maintenance
- Ruby Apps and gems - Various ruby apps and gems
- Music - Various apps and articles about music and audio
- Other Languages - Other development languages tried out and tested
- How To - How-to articles: set up git server on RPI, install UBU on RPI and VBox
- Articles - Articles, discussions and presentations
- 3D Printing - 3D printing using openscad with various models
Non-Technical
- Recipes many recipes!
- Non-technical Stuff flying, income tax, climbing, hiking and biking, i.e. just stuff.