• This week I have 16 meetings that I have to attend and I'm also concurrently coding on 4 unrelated applications, managing several SQL Servers, as well as other admin minutae for various servers, answering questions, and debugging & researching crap for apps that I have developed and apps from coders that are no longer with the company.

    I've been running like this for just short of two decades and it has just gotten worse -- this year in particular. I don't know if other internal development groups run like this but it's impossible for me to tend to the level of quality that I want simply due to the amount of task switching I have to do during the day.

    Amazingly, I have been able to fudge it for a long time now and I have a great set of users that are ok with me getting to 80% of their needs and scrambling to fix bugs that are nearly always because of my lack of attention to details because I have too much to do and too many interruptions, and etc..

    Is this my fault? Probably, but it's a systemic relationship issue between me, my boss, his bosses, and our users. The group dynamics support this way of doing things. For this to change we need a company and culture wide paradigm shift. That being said my team is working on a method to address this chaos because it's simply not sustainable.

    But one point I would make is that I feel we, as an industry, are just now actually figuring out how to write software. And we should remember that as an engineering discipline our industry is just getting started.

    Along with this site, tekpub, cleancoders.com, and others we are finally just starting to get and idea of how to create and maintain software, how to actually use patterns, how to communicate with and manage users. We've been winging it for about 60+ years and we are just being able as an industry to discern what works and what doesn't. We have spent most that time re-inventing the wheel -- we keep solving the same problems with different variations of the same code.