Spare Passion for Hire

I'm available today as a part-time independant contractor/consultant with a wide range of experiences to assist you with web development, software engineering, documentation, or test automation.

Contact Me


Download PDF


Wireless Cell Phone Controller

I was a part of a successful engineering project which controlled a cell phone remotely from a central location. We were able to reach out about 6000 feet over 802.11g from a central location to an embedded system with Bluetooth capability for controlling the cell phone. We used the Hands Free Profile (HFP) of the Bluetooth stack to do so. We were able to make the cell phone call a number, answer an incoming call, hangup a call in progress, and send DTMF tones.

My role in the team was to research, purchase, and prepare the embedded system for controlling the cell phone. We used python on to embedded system (Linux) to establish a connection to the central control and then wait for, accept, and initiate cell phone commands. The central control side (Windows) used a program written in C# to search for cell phones, control them using a custom script, and keeping a log with accurate timing. The control side was also able to play, pause, resume, and fast forward through the custom script.

Personal LAMP Server

I made an individual effort to learn how to setup a Linux server running SSH, FTP, Telnet, RDP, HTTP (Apache), and RealVNC services as well as create clean documentation for the Linux community to follow. I was sucessful in completing the tasks I set out to accomplish and the resulting documentation can be found on my blog here:

Linux Virtual Machine Development Environment

While supporting Technologic Systems' single board computer (SBC) product users, I noticed many customers had an incomplete developement environment. Mostly it was incomplete because in order to develop on a Linux based SBC, a Linux development PC is recommended. Some customers Lacked the resources and time to go out and purchase a separate PC to Dedicate as a Linux PC, so I created a completely free and easy to use Linux development environment in a virtual machine (VirtualBox) that we Called the ts-virtual-dev. It emulates the development environment used By Technologic System employees and makes it incredibly easy to start Developing programs, custom kernels, busybox builds, and much More. You can read more about it here:
Screenshot 1 2 3 4

Linux Kernel Compile Instructions

Like in my experience in the item above this one (Technologic Systems Linux virtual development environment), I noticed a lot of questions Coming in from customers about compiling additional kernel modules for the Technologic Systems single board computers (SBC). Technically, this level Of support is not something we've been allowed to support in the past, but I was able to create a few guides which walked users step by step on how To create a custom kernel that suited their needs. These guides can be Found in the section Documentation below.

LaTeX Technical Documentation

Recently I've been practicing the art of technical documentation. I taught myself LaTeX and then provided templates for the community And colleagues. These can be seen in my portfolio here, but for more Information, visit my blog: LaTeX Laboratory Template and LaTeX Resume Template and Examples

Fedora Linux on MacBook 5,1 Aluminum

I have written tutorials for installing every version of Fedora Linux on a MacBook Aluminum (5,1) since Fedora 10 was Released. These tutorials can be found on my Linux Blog at For example: Fedora 13 Goddard on MacBook Aluminum 5,1 [Guide]

Virtualbox Guides

I have written tutorials for installing (and using) several different Versions of VirtualBox for several different versions of Fedora. Take a look:

Photo Gallery Sync Script

Another personal project that I took on was developing a script, called picup, that would automatically Scan my images searching for keywords within the EXIF data and then both Sync and create a gallery based on the keywords. This script powers my gallery. I have created A blog post with instructions and examples on how to use it here: Picup: A Keyword Scanning Script to Synchronize or Upload Photos to an Online Gallery

360 Webcam and Temperature Dashboard

I developed an online dashboard to control and monitor a 360 degree network webcam and temperature guage (RS-232) which are mounted on a remote building. I used a combination of Python, Shell Script, PHP, MySQL, Google Charts API, and a pinch of Perl and Regex. I have my server setup to take five pictures around the building every half hour and also record the temperatures of four zones to the database every hour. Google Chart API is used to wrap up the data into several nice, easy to read charts. The images are compiled into a GIF image for a timelapse view. Also, user visits are recorded to the database and displayed on the dashboard. I created my own API in Python to control the 360 degree Canon network camera programically. You can find the source code here:


I have a passion (some may call it an unhealthy obsession) for computers that started back in 1993 when my Dad picked up our first Apple computer. Years later, I'm sitting in the front seat of emerging technology, soaking up every byte of knowledge, and loving every millisecond of the ride. I couldn't have picked a better career as a Computer Engineer. I love that on one day, I can be designing circuits for an embedded computer, and on another day I can be developing software. And my passion doesn't stop there. I've done pretty much anything that has to do with computers. I've done web development, on-site technical support, software and hardware consulting, web hosting, servers, administration, etc. And most of which I've learned by myself on my own time. For the rest, I went to BYU-Idaho where I earned my B.S. in Computer Engineering in 2009. I'm currently employed at Oracle Corporation (Legacy RightNow Technologies) in Bozeman, MT as an Application Engineer on the CX Platform Team. In my experiences, the more I learn, the more I realize how little I know. Which is great since I know I'll never have to stop learning (and playing).

Just as important as continuous learning within my professional life, I strive to live balanced. I love to hit the slopes, rapel off cliffs, backpack through unspoiled mountains, and tear up dirt roads with my wife of 15 years, my 13.2 year old daughter, my 8.2 year old son, and my family

In the end, this geeky father is fun loving, optimistic, curious, and enjoys living life to its fullest. I hope you enjoy the website and take a look around. If you find yourself with questions or want to chat with me about opportunities, please let me know. I'll be here. :)