Workin’ for the Man

This last week, I showed what I’ve been working on for the last 7 months to my superior, only to be shot down. I’m responsible for ‘porting’ (really, it’s a complete rewrite) a Geospatial Information program from M$ windows to a custom in-house version of Linux. I modified the interface along the way, because I felt the current one sucks balls ( esp. with respect to some newer features ), it’s more of a kludge, and upon inspecting it’s code I’m surprised that it runs as reliably as it does ( full of memory sharing side-effect functions ).

So the reason I get shot down: “We don’t want to retrain all the current users.” Given the officialdom methodology and bureaucracy that we all have to deal with, I can understand. Still, it eats at my soul to purposefully make a decent application worse. I’m of the opinion that if the user requires to go through a complicated training course just to use the software, then either 1. the users are idiots or 2. the software has failed in some way. I’m leaning towards 2, because all software should work intuitively, following The Principle of Least Surprise, and require minimal to no training. I felt that the newer interface was nearer achieving that than the current one.

I was just trying to make the world a better place in what little way I can, but the Man just won’t have it. Mostly my disgruntlement stems from the fact that I’m growing tired of working on the same stuff for 7 months now. I’ve stopped learning about Qt/C++, and have settled into ordinary usage. It’s time for me to complete my project and move on to something else, something new, something where I can learn again.

I’m considering moving my mental energies towards stock market prediction, agent programming in erlang, SQL programming for metadata of geospatial imagery at work, or working on my Linguistic Engineering.