A funny thing happened on the way to release…

Last week, Ian Landsman wrote about leaving features out in order to get a product out the door, and I promised to write about delaying a product to make it stronger.

One thing about writing a blog is that, as long as you’re honest, you give yourself an automatic history. Something you can look back and reflect on. For example, on May 10th, I wrote that the Zesty News alpha was feature complete, and that there was only bug fixing and interface cleanup to go. And that was true, at that instant. Rich Sheridan is fond of saying “last minute change is a competitive advantage”. If change is necessary to succeed, changing at the last minute is better than not changing at all.

So, a funny thing happened on the way to the alpha release: I decided to make some changes. Two things kicked off what I’m calling my Summer of Refactoring (aka, Thank God for Automated Tests): a desire for better perceived performance and an acknowledgement that plugins are more important to Zesty News than I had first thought.

I’ve been actively using Zesty News for months now. One thing that had bothered me a little bit, but not enough to take immediate action, was that the UI would sometimes pause for a second or two if feeds were being updated while I was reading. On one hand, it was a minor niggle… what’s a second or two, right? But, on the other hand, it breaks the flow of reading and lessens the total experience.

So, I started looking at my options. I ended up concluding that the sqlite database was just not the right database for Zesty News. It’s a great database for a large number of desktop applications. But, Zesty News is almost like a multiuser application in that the feed updating happens right alongside the user’s reading. sqlite is very fast, but Zesty News has a fair bit of bookkeeping to do to work its magic.

At about the same time I came to that conclusion, I also looked at the field of competitors at the time and knew that plugins are going to be an important part of what Zesty News can offer. I’ve been planning all along that the difference between Zesty News Lite, the free version, and the full Zesty News would be completely implemented in plugins. That will greatly ease my maintenance burden, and it will also ensure that others who want to make plugins have a powerful facility to do so.

With a decision to change the database engine already there, I decided that I would open my mind to other changes that would make things easier for people who want to write plugins.

The first couple of weeks of June were lost to a false start on the database change. I liked many aspects of the change, but there was a different performance problem introduced there. One that was just not acceptable to me. Once I discovered that the Firebird database was actually a viable option, I was all set and could proceed forward.

The next step was to put in the best pieces for plugin writers, so that I could make writing plugins easier. I changed around a whole bunch of infrastructure parts that I had chosen. The shape of the Zesty News code changed around the edges, and everything was streamlined a bit and became more pleasant to work with.

The Zesty News of today no longer has the concurrency problem that it had on May 10th. The main interface looks much better (thanks, Kirsten!), there is a smattering of new features, and the infrastructure is fun to work with. I’m exceedingly happy to have changed course, because I know that the Zesty News of today is going to be much better for what comes next: real users.

Sounds like a good time to start the alpha for real! And that’s what I’m doing.

5 thoughts on “A funny thing happened on the way to release…”

  1. Hi Kevin,

    good read, but I have a question. What exactly is or does Zesty News? I’ve already read a few older posts and even took a look at the blazing things site, but it’s still a bit unclear to me what Zesty is all about.

  2. Hi Tobias,

    That’s a very valid question. I’m actually amazed at how much response I’ve gotten with so little information. I haven’t gotten into too much of the what it is and does.

    The short of it is that it is an information aggregator (RSS reader). There is a lot of activity right now with regards to RSS, which is why I haven’t been forthcoming with what makes Zesty News a special RSS reader.

    Now that the alpha is out, however, it’s a good time for me to start putting a “Features” page together on BlazingThings.com and talk a bit more about it here.

    If you’re not familiar with RSS readers: the big idea there is that the software will keep an eye on what’s going on on regularly updated websites so that you don’t have to. No more manually following a bookmark to view a site every day… Zesty News will go get the latest for you. And, it will organize it to save you time.

  3. Hi again,

    I know what a RSS reader is, but since the blazing things site doesn’t show any real screenshots of the application, I was a bit uncertain about Zesty. However, I would be interested in what makes it so special or better than other feed readers, like FeedDemon, for example.

    Since I use FeedDemon myself and having a few complaints (no tree hierarchy, for example), I would love to see a nice feed reader which fits my needs. Looking forward for such a Features page.

Comments are closed.