When to say ‘when’

As a coldfusion programmer for a small company that is constantly striving toward innovation while keeping things efficient, I often have to make decisions about the tasks I work on and how I work on them.  Over the years we often find products to complement our programming, such as web-based editors, code snippets and full-on open-source software.  Sometimes though, these products wind up on the dying end of a software life-cycle, with new browsers and untested technologies.  I ran into such a case yesterday.

We have a longtime client who has been using a very popular WYSIWYG (What You See Is What You Get) web-based editor.  It had been working fine in their browser of choice for quite a while, but suddenly, stopped working.  It turns out that since the editor is open source and free to use, that the development has slowed and fixes weren’t being found for handfuls of users that were under certain circumstances, like us.  I did take the time to upgrade the editor, trying to fix it with the new releases.  After the upgrade didn’t work, I tried a clean install, as well as a clean install on another site, in case there was an issue with something within the site code itself.  I reached a point in my frustrations that I had to make that decision to go on trying, or to abandon the current editor and move on to something else.  Today I’m going to have to find another option.

As a programmer for a small company, this is my job.  Most people, those not in our field, wouldn’t consider custom programming for web applications to be an art, but it truly is.  With all of the factors that we have to deal with every day, from new browsers to OS’s, servers and firewalls, an enormous amount of creativity drives each bit of code programming.  For every piece of logic, I must decide what it is that I have to accomplish and I have to devise the logic and then the code to maximize my time and keep the program running smoothly.  When I have to go back and work on code from years ago, and/or on a different system, the advances that have been made to our server and our knowledgebase make old code seem shoddy.  I then have to make the decision to make the code better, and thus make the further advancement of the site better, or to leave it, and hope that we don’t have to make any further changes to it later on.

And now, I must choose to say ‘when’ on my blog.  After struggling with 2 server crashes and having to rewrite this blog twice, I could continue to go over it again and make it better, but I must choose to stop.