Friday

I got up early, strug­gled against the alarm for an hour, and even­tu­ally dragged my ass out to work. It’s day five with­out cig­a­rettes (cold turkey from a pack a day), and I’m not going to jinx it by say­ing how easy it’s been. I could go on, but the short answer is that I only need to worry about it when I’m in front of a counter that sells ‘em, oth­er­wise I can keep my mind pretty occupied.

Work is pro­to­typ­i­cally insane. My boss expects every­one to put in 60 hours a week because the busi­ness is tiny and strug­gling to sur­vive. While I don’t want the busi­ness to fail, I just can’t force myself to care about pro­pri­etary scale cal­i­bra­tion soft­ware — at least, not ’60 hours-a-week’ care. Part of the issue is struc­tural, strangely enough. My boss wrote most of the 76k lines of code him­self, and essen­tially dumped the whole thing in my lap about a month after I fig­ured out the major dif­fer­ence between a web app and a ‘native’ or ‘desk­top’ app. In the process, about half of his stuff was 80% done, so you’ve got a bunch of yet-to-be-tested fea­tures paired with the new­bish web-developer (me). I clum­sily broke things try­ing to fix things, and the related problems.

Part of the issue is that there is no QA, tech sup­port, or doc­u­men­ta­tion, so I’ve got to do it myself, and like every other pro­gram­mer ever, I want to do… um… none of those. That is lazi­ness on my part, but it’s com­pli­cated by the facts that there is no “sta­ble” branch (there is a branch labeled ‘sta­ble’, but I’m reg­u­larly asked to add totally new fea­tures to it, effec­tively mak­ing it unsta­ble), so bug fixes get tested in the same branch as new fea­tures, and unless I want to quadru­ple my work­load port­ing bug­fixes between branches there isn’t a way around it.

Long story short the devel­op­ment “process” at my job is a total night­mare. It works fine for cus­tom appli­ca­tions, but that isn’t what we’re devel­op­ing, the last time I checked. Some amount of cus­tomiza­tion (tem­plat­ing) is done for clients, and must-have fea­tures are imple­mented upon request, but there is no way to get around the core prob­lems short of telling some cus­tomers to live with­out typ­i­cally poorly thought-out fea­tures for a while.

Leave a Reply

*