How it got Started
The SteadyMouse project was started in 2005 after my Grandfather, Dr. James Gottemoller, was diagnosed with Parkinson's Disease. Essential Tremor (ie: uncontrollable shaking of the hands) often comes along with Parkinson's, Multiple Sclerosis, and various other diseases and such was the case with my Grandfather. As you might expect, or have experienced personally, this makes using a traditional computer quite difficult. Technological solutions were rather limited, with the field only in its infancy. I thought I could engineer something in software, and spent some serious weekends learning digital signal processing and writing code. The fledgling version of SteadyMouse ended up helping my Grandfather far more than I expected, and it only made sense to share it after that.
Where we are Today
SteadyMouse version 1.3 would hold up for many years and be free software (As it still is today).
Fast forward to 2014: With almost a decade of customer feedback collected, and strong demand coming
in for a major upgrade (Especially to support Windows 10), I made the decision to undertake a massive,
re-engineered, commercial version of the software. This has taken until nearly Q4 of 2016 to develop
and preparations to release in beta are underway as of August. The old SteadyMouse v1.3 installer is
only ~1.7MB in size. To give you an idea just how much has changed, the new version is nine times larger!
For a C++ application, that is mostly code and very little artwork taking up space, this is enormous.
In July 2016, SteadyMouse, LLC. was formed to carry the software forward in an official manner.
Special thanks are in order to a few friends who've helped along the way
(Circa 2005 - 2006)
- Dr. James Gottemoller - Who graciously offered himself as a test candidate during SteadyMouse's early days. If not for his struggle with Parkinson's disease this would not exist.
- Andrew Gottemoller - For finding solutions to several very difficult issues, one of which allowed me to throw out the mouse device-driver based architecture that would have been ever so painful.
- Grant Farrand - For all the lessons in digital signal processing
- Scott Moeller - For more lessons in digital signal processing
- Hugh (I don't know his last name). On the now defunct forums at www.wemove.org. Hugh performed the original beta testing of v1.1 and provided tons of useful feedback.
Special mention to alternative technologies and sources of inspiration in the field
Technical Facts for the Inquisitive
Weinberg's Second Law: If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization.
SteadyMouse is written in C++ using a C style to keep things simple. This language is very efficient and the code is "lean and mean" so that it won't waste your battery life or PC resources. You won't find any of this barbarianism. The philosophy in play is a result of cutting my teeth on embedded automotive software for over a decade (I'm used to having a 64Mhz processor with less than 1MB of RAM). Most of the code in SteadyMouse is very carefully constructed for performance and consequently could run just fine on the oldest hardware you can find. I'd bet a 100Mhz CPU and 128MB of RAM, running Windows XP, would be enough. Now, that's not to say the software isn't super advanced. It is pretty sweet under the hood, it's just that the resources it uses are respected and not wasted. Most folks don't care, but I do, and this info is for the other's out there that have a similar appreciation for the hidden side of software that goes unseen.