SaaS: the good, the bad, the ugly

Which one was Blondie, anyhow?

Which one was Blondie, anyhow?

I’ve extolled the virtues and pitfalls of running a software as a service business. ((Photo courtesy of Rufus Gefangenen)) This morning I discovered a glitch in my SaaS website that, while it doesn’t cause anything to actually malfunction, creates a very obnoxious problem on a lot of the pages.  The site is written in WordPress1 and the entire SaaS component of the site is built out of plugins.23 Basically, one of the plugins creates a form that is used in one of the pages.  The malfunction is that the form is now included on every page.  Ugh.  This is going to be a really fun bughunt because even when I disabled every single plugin, the problem persisted.  Apparently the glitch started appearing about  a month ago – when I last updated WordPress.

Now, I’ve been meaning to just rewrite the plugin from scratch – but I’m also keenly aware of the pitfalls.  My biggest incentive to rewrite the code is so that it is more future-proof.  Another reason to do it is that the original code was written in such a cludgy manner I’m literally ashamed to tell you how it is implemented.  Let’s just say that I originally wrote the core of the plugin after having learned the basics of PHP programming only a few months prior.45 About nine months later, I shoehorned the same code into a WordPress plugin – when I had only been using WordPress for about two months and knew almost nothing about plugins.  Now, more than five-and-a-half years from the day  I launched the site, I do feel I’m a much more capable PHP programmer and WordPress plugin writer.  Confident in my abilities to do a better job and facing the task of having to go through a potentially big bughunt anyhow, some part of me wonders if it wouldn’t be best to just rewrite the damn thing anyhow.

Default Series Title

  1. My first open source love []
  2. Such as the awesome Simple Series plugin, OCD plugin stats plugin, and EZ Creative Commons license plugin! []
  3. How’s that for a plug about plugins? []
  4. Look… it works, okay. []
  5. Mostly works. []