LicenseKeeper, Where Art Thou?

LicenseKeeper, where art thou?

I announced the start of development for LicenseKeeper in October of last year. It’s been six months and I haven’t talked about it since.

I guess I made the classic mistake of announcing a product too early. Sometimes, the hard lessons must be learned through experience.

Development has been progressing since the original announcement, albeit very slowly. Several things have affected forward momentum.

Learning Cocoa

No other thing has slowed development more than trying to learn Cocoa at the same time.

Cocoa is incredibly powerful and provides tons of functionality right out of the box. I was able to get a working prototype of LicenseKeeper completed in a very short time. CoreData and Bindings provide powerful features for building a simple database application very quickly with little or no code.

But with all the power and functionality comes a pretty steep learning curve. Every single feature or bit of functionality that I’ve added to LicenseKeeper has included a ton of reading, researching, and experimentation before getting something to work.

While Cocoa’s greatest strength is its power and built-in functionality, its biggest weakness is its complexity and lack of available, easy to understand example code.

My biggest failing is expecting Cocoa to implement UI elements and features like .NET or MFC on Windows.

Multiple Projects

Trying to develop more than one product at the same time is hard. Kudos to those developers that are able to produce, maintain, and support more than one product.

Eating My Own Dogfood

I’ve been using LicenseKeeper to store all my shareware registration information, serial numbers, and license keys for the past few months. This seems to be a good way of determining what goes in to a product. I have a huge list of possible features, but actually using the product helps focus the product’s feature list as well as help fine tune the user interface.

The interface has undergone drastic changes over this time as has the object model. While this has delayed the release of the first version of LicenseKeeper, I genuinely feel that it will be a better product for going through this process.

The UI has been simplified and continues to change. The object model has grown and shrunk several times, but seems to be stabilizing. I’m now starting to think about icons and have begun researching options for sales processing.

Release Date

I’ve learned my lesson, I’m not promising a release date nor even making a guess of when it may be. But, since the update to Bullfrog has been released, LicenseKeeper is now first priority on my project list.

10 Stupid Small Business Mistakes

Steve Pavlina on 10 Stupid Mistakes Made by the Newly Self-Employed:

1. Selling to the wrong people.

I’ve done this. Boy, does this hurt the bottom line. A few years ago, I tried to enter the Web Hosting business. Since I host all Outer Level owned sites on a dedicated server with plenty of Bandwidth to spare, I thought I would help defer the costs by selling Web Hosting to small businesses. In order to compete with all the competition out there, I needed to be cheap. The problem with selling $10 per month web hosting is that you tend to attract technically challenged customers. The amount of hand holding required to help someone setup their first web site, hook up their email clients, and trouble shoot their firewall settings will never be covered by $10 a month. It didn’t take me very long to become pretty picky with who I took on as a customer.

2. Spending too much money.

This is an easy one to fall into. “I just have to have that new MacBook Pro to do development”.

3. Spending too little money.

I wish I had this problem. I definitely tend towards #2 above. Though in the past 12 months, I have noticed that my tendencies are starting to lean more in this direction.

4. Putting on a fake front.

For whatever reason, people think that using “we” instead of “I” is more business-like. I definitely tend to revert to doing this and need to make a conscious effort to not stray back into this practice.

5. Assuming a signed contract will be honored.

This is definitely true. I have run into this several times in the consulting world. Unfortunately, as a small business owner it’s usually cheaper to move on with your life than to try and put up a legal fight.

9. Failing to focus on value creation.

This is good advice and something I’m definitely trying to concentrate as I add software products to what Outer Level does. Providing value as a consultant is what it’s all about. But actually providing value with products is harder than it sounds. It’s easy to come up with “cool” ideas, but do these ideas actually provide value to potential customers?

10. Failing to optimize.

I’ve taken a few steps in this direction, but when it comes to the most time consuming portions of running a business such as paperwork, this is easier said than done. How do you automate opening mail and filing government paperwork? Some of this can be outsourced to a payroll service, a book keeper, or an accountant. But, much of the time it’s cheaper and quicker to push through it yourself.

I’d like to add one more to the list. One that I fall into more often than any other:
11. Over Analyzing
Running a business includes making tough decisions. One of the things that makes a successful business owner is the ability to quickly make the tough decisions and not look back. Taking too much time to make a decision is often worse than making the wrong decision.
I have the tendency to worry too much and too long over one solution over another because of cost or complexity. This deliberation usually is more expensive in time and money than picking the more expensive or complex approach.
The other way I suffer from this is reading too many business books, blogs, and articles. After a certain point the return on investment is not worth the time. I’m not saying that getting educated and keeping up on information is bad, but I spend too much time reading how others are doing things instead of doing it myself.

Run Windows XP Without Rebooting

This is getting interesting.

Mac World reports that a company called Parallels now has software that uses Intel’s built-in virtualization technology to allow Windows to run inside Mac OS X.

This seems far more interesting that dual booting into Windows. There’s also some speculation of this functionality being built right into the next version of OS X (Leopard).

Posted in Mac

Apple Boot Camp: Run WindowsXP on a Mac

Apple Boot Camp sounds like a late April Fools joke, but it looks real.

As tempting as this sounds, somehow it just feels dirty.

Is Apple selling out here? What’s this going to do to the Mac games market or the Mac 3rd party software market? It’s one thing to use an Intel chip, but to actually enable and encourage Windows installation and use? This will probably kill off the Aspyr and MacSoft type game porting companies. Why would anyone wait the extra six months to purchase a ported game when you can buy the original when it’s released?

This essentially changes the game. The hacks that were already in the wild are complicated and probably only for the technically adept. Boot Camp seemingly brings dual booting Windows XP to anyone with the time to try it.

Will this be a big hit? I can certainly see the appeal. I myself would love to no longer need VirtualPC for the few Windows only programs I need. Being able to work on .NET development for my clients on an uber-cool MacBook Pro during the day and boot back into Mac OS X for product development cetrainly would be nice. But at what cost?

Posted in Mac

Bullfrog: Universal Binary Released

The new version of Bullfrog featuring Intel Mac support has been released.

Changes in this update:

  • New: Universal binary support for both PowerPC (ppc) and Intel (i386)
  • New: graphics scoreboard
  • New: Bullfrog Theme Song
  • New: Improved Horsefly AI
  • New: Improved Bee AI
  • New: “Check for Updates” menu item
  • New: Title Splash Screen
  • New: Player can now enter their name for high scores
  • New: Player name is persisted
  • New: Options Menu items
  • New: Options preferences are now persisted
  • Fixed: drawing of frog mouth/tongue on help screen in the wrong place
  • Fixed: Increased bug points
  • Fixed: high score column layouts to support bigger scores
  • Fixed: Occasional invalid animation frame error
  • Fixed: Mosquito Sound FX Does Not Mute
  • Fixed: Ticking doesn’t stop at end of round
  • Fixed: Butterfly spawn area so they always spawn on screen
  • Fixed: Removed the “Vote Now” main menu item
  • Fixed: Removed the “Don’t Forget to Vote” text on credits screen

Download the full Bullfrog game for free!