Today was not a good day.
I don't know. I woke up in a fair to neutral mood. I got to work, though, and things just went to shit.
My company has what I like to call a cargo cult philosophy. Various people in authority at my firm read or hear of these new concepts or 'best practices' or 'development patterns' from people at other companies who have mindshare and think...hey! We should try that!
Nobody seems to ever put in the minimum next sixty seconds of thought and ask "...would that make any sense here?" Because invariably, no, it doesn't. Agile, DevOps, Readme-Driven Development, Scrum and Kanban, etc. These are all interesting ideas, and (in my opinion, yes) methodologies or philosophies that work really well for some people. However, (again in my opinion) saying 'if we adopt Agile we will do better' is just dumb, if it's not couched as 'Do we have the requisite conditions and skill set for Agile methodologies to be helpful?'
Today, we had 'Dogfood Day.' The concept is well known and simple. Eat your own dogfood. Have your own personnel use (actually use, not just 'test') your own products, pretending to be your customers. This should, in theory, offer your engineers better perspective on what their customers want and don't want; it should give smart people who aren't numb from familiarity a chance to spot UI or functional glitches or bad design decisions. It should even function as a sort of rough testing round for your apps. Sounds good, right?
Well. What if I told you that our software is built in modules, and each of those modules is intended to support a business process that is so labyrinthine (both from innate complexity and from a heavy burden of government regulation) that some of the richest companies in the world have entire departments whose jobs are bounded by the functionality of one of those seven or eight modules? Because, you know, this is true. Now: once you know that, consider this for a 'Dogfood Day': Take teams of your engineers, four or five people in each, and have them try to work through the entirety of the business process for all seven modules in one business day. Never mind that even those engineers who actually work on these modules probably aren't more than passably familiar with that one segment of the process, and never mind that the process involves huge amounts of tacit and subject-area knowledge.
Now, bear in mind that I don't even work on any of those software modules. I'm a DevOp; what I call an Op. I make shit run. I build servers, manage servers, and at the very very far end of my job description, I deploy code to those servers and make sure it functions. I never use our products other than to do minimal functionality checks, and since our company never bothered to really put in a management interface, any actual in-application management tasks I have to do get done externally via scripts or manual command-line tweaking.
In sum: I have no idea how this stuff works.
Now take me, a couple of weeks before we shut down for holidays and when I have a whole set of deadlines, and tell me I have to spend an entire day 'competitively' using those systems which automate a workflow I don't know and honestly couldn't care less about.
And make sure I'm in a really, really bad mood about every part of my life outside of work.
Well, I'm sure you can guess.
A while back, I worked myself into a really, really bad situation vis-a-vis another person. Not a bad situation involving the two of us. Rather, a bad situation where I was...well, never mind, it's not important. Suffice it to say, the situation is pretty much resolved - not in the sense of 'worked out' but in the sense of 'okay, this will never become an issue, and that's what you want, right? Right?'
Yes, it is.
For every good reason that ever existed.
But see, the fact that it won't become an issue...makes me feel fairly unimportant and useless and hopeless.
And that's not the worst bit. Worse than that is the fact that my feeling that way, despite knowing it's the best possible outcome, makes me angry as hell at myself, because it means...I'm useless and hopeless.
And you know what? As stupid as it sounds, those metaloops go on up the chain. There is an infinite spiral of fail here, and it's all mine.
At the end of the day, while the world will move on probably 'as it should' without any bad things having happened (or rather, without any 'Things That Really Should Not Happen, No, Not At All' having happened) - I gotta say, once more, it just feels like I sucked it up to make sure the world kept spinning. I sold myself a story to prevent myself from doing really, really stupid shit - but the stupid shit, while it would have probably made me and others miserable, would have been the truth, and the story is just another layer of the martyr complex I've wrapped around myself to try to 'ensure my suffering has meaning' or some shit.
That doesn't mean it was the wrong thing to do. But it does mean I need, desperately, to find another way to handle situations like this, because I've been doing it this way my whole life, and it's killing me.