Programmer Time Table



You wake up full of ideas about new features and capacities that can be added to the product that you're working on. But even at this stage the code's structure is clear to you personally and you've been working on this code for over a year. It's unclear how these features can be incorporated into the current codebase. Although you have generalized attributes and gotten rid of all sorts of corner cases that were flagged as bugs by users you don't see a path forward for incorporating those ideas. You will see capabilities and the vision and are hopeful your co-workers will have context the product will be added to by your thoughts. You finish off your breakfast and head to the office. Still your ideas that are very hopeful will survive until the day's end.

Right there's another re-organization. You suspect someone in human resources read a book called"Tuesday Re-organizations" and misinterpreted all of it. Some teams are merged and many others disbanded. Whims. That is neither good nor bad in your mind. Just general grayness that permeates the organization to keep people on their feet. You look out the window and see a man pacing back and forth and gesturing wildly. He mentions needing more resources and you can't tell if he's talking about pens or people.

You've had a ticket open for testing out your thoughts for a couple of weeks about obtaining a cluster. Provisioning VMs is an process that entails some weird pseudo-language. All of your attempts to get involved and improve this process have been thwarted. Kafka springs to mind but you've not read any of his works. You have an intuition that you would have been friends if you'd been alive around the same time. You realize many of those"broken things" are castles with moats. Martin Fowler made it wrong, it is not micro-services, it is micro-castles and it is really the future of software development. You start imagining this is all a deleted scene from the movie"Brazil". You are a programmer in the bureaucracy. You imagine pulling out a gun, putting it to your head and pulling the trigger. HR bureaucrats spring into action as soon as they hear the gunshot and start racing to see who will stamp a requisition form for your replacement. The guy that was gesticulating outside the window a few minutes ago runs inside:"Hold on one second . I want to put you. YOU SEE? WE NEED MORE RESOURCES!!! Ok, are you still there?" . Where were you? Right, validating some new feature code.

They are technically capable in between cycles that are compile and You've got some friends and test runs you ping them. They aren't engaged or excited in any way. They do not see the vision of how it enhances the product and offers a unified experience for the users. You don't blame them. Their supervisor was breathing down their neck about a thorny bug that has eluded all root cause analysis for a couple of months. It could be hiding in any number of 3rd party dependencies and is not reproducible in any way that is consistent. Transitive dependencies' list is so big that no one knows anymore some variant of Guava keeps conflicting with another version of Guava every 3rd day of the month. The workaround since you can remember is to re-run the 3 hour build that produces whatever artifacts rely on these set of dependencies. You ping another friend, same reaction. You select something to work on and examine Asana queue and your Jira and you have had open for some VMs, while on Jira you ping that ticket. Your mind starts to wander and you begin pursuing an analogy. There are no assembly lines in sight and it feels like one. Take re-jigger the thing, the thing, add something else, pass it on to the next man. You do not have time for new stuff and don't expect a response they're operating at capacity and because IT has been migrating hardware.

You complete the task you'd picked up and three additional ones have already shown up in the queue. There's neither coherence nor any kind of aesthetic sensibility in any of the items that are new. No unified vision. Just requests by go-betweens that sit between you and the real users of the products you're working on. You remember some type of manifesto about not doing things this way. Something about direct and frequent interaction between the manufacturers and the people who get value out of the manufacturers of the work. Your mind wanders and you see the path of another analogy. This is like playing with house except for technology but you are too tired to carry this one to completion.

You finish the day with five new lines of code. Too tired to continue the first thread that started in the morning and had you excited to go into the office. The build is broken web developer and you're unsure why. It's the 3rd of this month? You can not run it on a cluster if it is your code that's breaking or somebody else 24, to figure out.

You grab a bottle of water and head home.

Leave a Reply

Your email address will not be published. Required fields are marked *