I’ve written before about all sorts of approaches to programming style, how you should do some things and why, and also why you should not do other things. Recently, I’ve found my increasingly frustrated by the environment that I’m working in, by what I perceive at face-value to be a lack of knowledge or perhaps simply a mismatch in individuals’ idea of standards. Of course, my employer currently has no standards. No standard anything – code layout style, data-design approach, unit-testing, in fact, testing anything is not ‘standard’ at my current employer.
For someone who takes the quality of work seriously, and an integral part of the job, feeling like the only quality-aware cog in the system is a cause of despair! Indeed, if you ever manage to read ‘Zen and the Art of Motorcycle Maintenance’, you may appreciate the idea of Quality with a capital-Q.
On the other hand, I have found myself frequently saying “It is what it is” recently. I believe this may originate from “The Power of Now” by Eckhart Tolle, which I have not read myself so can not verify. However, my understanding of that book, based on friends recounting it to me, involve the idea that sadness, upset, and anger – indeed any negative emotion – are all the results of ego. Essentially, you might imagine that “I’m angry because I want to be angry”. Why should your environment mould itself to suit you, after all?
And so, perhaps I should take a back-seat and allow myself to be moulded to my environment, and exhibit a little less ego? My work environment is the product of chance, and the needs of one big and sometimes irrational client… and I am employed to serve the needs of my employers and their clients. So what if it so happens that their needs do not happen to score more than about 3 on the Joel test. So what if I have better computer hardware and a better work environment at home? It is what it is.
And I’m not guilt-free myself. The Environment and I sometimes take shortcuts that seem necessary at the time, but may later come back to haunt us. Sometimes I write code I don’t understand a few minutes later. Sometimes, I do things not because they are great, but because they are simply practical. And sometimes, decisions made in the best faith and with the best effort to understand what the future may bring, simply turn out to be wrong. You Ain’t Gonna Need It (YAGNI)… or perhaps If You Try And Figure Out What You’ll Need You’ll Be Wrong (IYTAFOWNYBW???).
It is what it is.
And yet of course, the ‘professional’ (or should I presume I really mean ‘ego’?) in me wants to fight this, for things to be better; should I vote with my feet, leave to do something else ‘somewhere better’. Or should I be realistic and recognise that the percentage of companies who actually have enjoyable places to work which are also fulfilling and not jam-packed with rediculous bureacracy are… probably limited.
We’ll see, and in the meantime – It Is What It Is.