Maurice Volaski

I am a freelance software dev available for hire for small to medium-sized projects

Bio

I fell in love with the Mac while mapping trees for a college project. That spark launched a lifelong journey in software — from HyperCard to modern phone apps for science.
Read more

In undergrad, I took a course in botany and got roped into revising a campus map of the different trees on campus. I had no idea how would I would do my project. As it turned out, the school had two Mac computers. The project, which took two years, turned into an 80-page tour guide to all the trees and shrubs on campus. I did it all on a Mac and fell in love with the machine.

I was itching to tinker more with it, and while in grad school, I did. Hypercard had come out, and I started writing stacks, the equivalent of mini-apps. Then came Pascal, and, before long, I was writing freeware utilities to enhance the experience and productivity of Mac users worldwide. I had become one of the most prolific authors of Mac freeware during the late 80s through mid-90s. You can see all my old creations at fluxsoft.com.

That involvement along with my writing a Fortran program for my graduate study in experimental psychology led me to a job lasting 34 years. During this time, I wrote a bunch of programs including an electrophysiology data acquisition and analysis app and an accounting software for managing the budget of an academic department. I then transitioned to help desk/server administration for many years. Recently, I have moved back to my first love, software development, starting with a web-based database for managing worm strains and then a phone and web-based database for managing zebrafish housed in industrial aquatic systems.

Developer Philosophy

The best software does what the user wants and not what the developer wants.

I call this the A to B principle. The gist of it is this. A given user begins in some initial state, let’s call it state A. However, the user wants to be in a different state, let’s call it state B. The goal of the computer is to get the user from A to B and to do it most expeditiously. There are innumerable instances where the computer fails to do this, a result I call an A to B violation. Worse, it may send the user to state they don’t want to be in, state C. This is an A to C exception.
Examples