I thought a good way to start off the Draconis Software Blog would be to give a story of who we are and how we got here. Like most small businesses, we’ve learned as we’ve gone along and had our share of triumphs and mistakes.Draconis Software started over 5 years ago without a company or really much of a plan. Myself (Costa) and Ryan had grown a fairly large computer network, but had no good way to keep track of the machines until it was too late and a problem developed. We thought it might be nice to write a small program that could run on the machines and collect statistics like CPU, memory, and disk usage, and then report back to a central machine to display a summary on a monitor.
As we started development, we kept thinking of more and more features we could add on to the program. Why not make it save the information in a database and provide graphs of past performance? And make it cross-platform? And allow users to write their own plugins?
At a certain point, we had to draw the line somewhere and pick which features we were going to finish for the 1.0 release, and which ones were just going to have to wait until later. Even so, in retrospect, I think we waited too long before our first release; I’ve learned that the axiom of “release early, release often” is very important for small software startups. While there’s a valid drive to make the first release perfect and filled with new ideas, this can become so difficult and time consuming that the release never happens. In addition, since software startups are usually understaffed, this process can take even longer. By having a stable, fully tested (albeit scaled down) initial release, you can slowly grow a client base and be sure that each new release has even more useful features for your market.



