Jakew
Consulting, hacking, and motorcycles

Epiphany

Thursday, 17 January 2008 17:52 by jakew

I’ve had this rattling around in my cranium for a few days but haven’t really taken the time to write about a recent experience I had that has changed the way I look at things. On Tuesday (1/15/2008) I got to participate in a marketing panel. The folks at Savitz (Joe was our guide for the evening) were doing a study about first time buyers of new motorcycles. What I witnessed, for me, was a real eye opener.

We started off with some introductions. We worked with a partner answering some basic questions like what we did, who we lived with and what type of bike we had. Then we moved on to what was important to us about our bikes, what type of bike we would recommend to a new rider and our opinion about the type of people who rode various bikes.

On one wall he had pictures of ‘beginner’ bikes on the wall. On one end was the Kawasaki Ninja 250 and on the other end was the Honda CBR600F4i (?). In between were bikes the like Ninja 650 and Suzuki SV650. We talked about our opinions of the type of people who would ride the various bikes. It was interesting to me to hear other people talk about this. For me I know people who ride just about all of the bike he had on the wall. Hearing how people were forming their judgments of the riders based on the appearance of the bike was startling. Basically the general direction was that more mature sensible people rode the bikes that were less aggressive in appearance (Ninja 650 & SV650) and younger men would tend to ride the more aggressive bikes (like the ZZR600 and CBR600).

During our discussion we talked about our criteria for selecting our first bike (to be in the study it had to be your first NEW bike and our first bike) I was surprised about how the selection was made. In my case I got my EX500 based on recommendations that it was a good beginners bike that was strong enough to not get ‘boring’ but not so strong that it would be difficult to handle for a noob. Other people had similar criteria. In common with everybody though was the desire for a better looking bike. That was a surprise to me.

At this point Joe uncovered another wall with more bikes. These bikes were either concepts that might come to market or some that were just being introduced to the market. On one end were two 128cc bikes from Honda and Yamaha. The Yamaha bike was very popular because it looked like a Super Sport (very aggressive), in fact if you didn’t know what you were looking at you might mistake it for a 600cc or liter bike (ok – physical size might give it away). There were a few new 250s from Honda (not popular) a 250 and 650 from Hyosong and most importantly Kawasaki’s new 250 was on the wall. Nearly everybody said they would pick the Kawasaki 250 or recommend it to a beginner. Why? It looked like a Super Sport. It really looks good. Both the Kawasaki EX250 and EX500 have very dated looking designs that compared to other bikes are just flat out ugly. Actually, I have a hard time thinking they were ever good looking. However, Kawasaki manages to sell more 250s than just about thing out there b/c of it is the only choice if you want that size. The other small bike choices are the EX500 and Suzuki’s GS500. In the looks department the Suzuki wins b/c it manages to look somewhat like a GSXR600.

Both of the Hyosong bikes are pretty good looking, but nobody chose them because most of the people in the room didn’t know who the hell Mr. Hyosong was. So brand is a factor.

So the epiphany? In some ways I’m retarded for this, but I have never really given that much respect to how things look. I’m a freaking code monkey. I love technology and tools for their own sake. A car or bike’s value is determined by lap times, horsepower to weight ratio, and other features. But my customers don’t think like that.

I’ve developed what I believe is a great product that can solve important problems for my customers. Thing is: the UI sucks, the documentation sucks and my web-site sucks. Actually, the web-site isn’t that bad. The good thing is that all of this can be fixed. The core product (the batch processing of files) stands and doesn’t need much work. The UI stuff can be redone to make it more elegant and provide the user with a better experience. I can also spend some more time on my documentation and try to take more time explaining things to my customers.

Anyway, my big take way from being in a marketing study is that looks really do matter. As a geek it ticks me off a bit (can’t they just tell the product is great even though the UI is confusing?) but all I can do (or you can do) is adapt to it.

Think about it this way: how many good looking crap products have you run in to? Way too many. How many crappy looking great products have gone on to wide spread success? None.

Lesson – look good.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Engine of Progress logo!

Sunday, 6 January 2008 19:10 by jakew

It's here:

Engine of Progress Logo

I'm pretty happy with it.  Simple design that I can easily modify for various purposes, not too fancy.

 

Now I need to work it in to the web-site.  Which does raise up a small issue - the template I used is blue.  The logo is red.  Course - I have Photoshop.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

And the green flag drops

Sunday, 6 January 2008 19:04 by jakew

The holidays were great for me, exciting to say the least. I’ve had time to reflect on the past year. I had time to think about what I accomplished, what I didn’t accomplish, and what I want for next year.

My biggest challenge in the year ahead is building Engine of Progress in to a profitable business. I build my first product last year and I’m ready to start selling it. I also have a few more products I plan to build. The challenge for me is doing this without investors, while continuing to consult, and having no clue what I’m doing.

I don’t want investors because from my perspective they don’t really solve any problems – they just introduce new ones. Plus at this point an investor would expect to get a huge chunk of what I’m building at a pretty hefty discount. To me money isn’t the problem – I can get money. Knowing what to do is the problem. Specifically – how do I advertise/promote Grinder in such a way that people start buying it? How do I get people to show up at Engine of Progress’s web-site just to read about Grinder? There are a few other problems, but if I cannot solve the marketing problem the other problems are mute.

A related problem has to do with my consulting. Historically, I have always worked through agencies that took care of finding work for me to do. I want to do away with the agencies. They are a hugely valuable asset to me today. But their only real value is the relationships they have with my clients. This year I want to learn how to get and maintain those relationships myself. Doing that will require some significant changes in my behaviors. I’ll have to get out of my office and actually interact with human beings. In some ways this is a similar problem to the one above. Ideally, I would use this web-site as a marketing and promotional tool that would bring my customers to me. But I suspect that I am also going to have to go out and actively find my customers to get things started. I’m also going to get more active in the development community.

In March I’ll be doing a presentation on Visual Studio extensibility. I’m going to dig in to how to build your own templates for Visual Studio so you can have all your boilerplate stuff done and just reuse it on every project.

So the green flag has dropped and the year has started. It is easy to feel overwhelmed with it all. It would be so much easier for me to just grab another contract and do what I’ve always done before. Believe it or not the old results didn’t suck, but I want something new. I want to own the company; I want to build products that help developers do their work. I still want to build applications for customers, but I want to change the way that happens too. Looking forward to this time in 2009 I think I’ll look back on 2008 as a transitional year. I’m not sure how exactly I’ll accomplish everything but I know I can do it. Just don’t expect it to be graceful this first time around.

Here is to a new year - it is going to be fun.

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed

Engine of Progress: Grinder

Wednesday, 2 January 2008 12:33 by jakew

Grinder is my first product and my first lesson in the joys of running a business. In particular: how to sell and market software.

Switching from being the Geek in the box to Business owner is an interesting experience. In the past I would write something like Grinder and hand it to my client and ride off in to the sunset on my way to the next gig. This time I get to live with it. I also get to deal with stuff most developers don’t really think about.

My first hurdle in marketing is creating a crisp clear message about Grinder. To me Grinder makes a lot of sense, I’ve seen the need for it (and written programs like it) all over the place. However, articulating the problem that Grinder solves is proving to be a challenge to me. Why? Because to me it solves a lot of problems that my previous customers had.

Introducing Grinder

To paint a clearer picture the original name of Grinder was “File Processor”. The problem with that name is that it is too obvious and won’t show up will to Google. A product name that also describes the product? Lunacy. So I did my usual and came up with a name that is somewhat odd by also evocative.

Grinder is a file system monitoring tool that uses Windows Workflow to process files. You create workflows using the custom designer and activities provided. You then use the configuration editor to create file types and associate the file types with the workflows. Finally you configure the directories that will be monitored and associate the file types to look for in those directories. Whenever Grinder finds a file that matches a file type it will process that file using the associate workflow.

There are a couple of things that I did in Grinder that I think are really cool. First is the custom workflow designer. It doesn’t have anywhere near as many features as the designer in Visual Studio but I didn’t want it to. My goal was to make it really easy for somebody who is not a programmer to build a workflow. As such the designer doesn’t allow any branching or looping and it doesn’t support the code activity. It does however provide a library of custom activities specifically designed to process files. Things like copy, move, run program, zip/unzip, send email, and FTP are included along with a few others.

With this approach it’s pretty easy for somebody like a system administrator to throw together a workflow that takes an incoming file, unzip it, and then run a program that processes the file. You can throw together that workflow in about ten seconds.

Grinder is also a great replacement for BizTalk’s File adapter. There are two problems here that Grinder solves. First, a lot of the time it makes a lot of sense to put BizTalk right on the file server where the files are, but that can cost a lot of money. Second, you usually need to monitor a lot of directories which means BizTalk end up having a bunch of receive locations that have to be managed and can have an impact on performance. Grinder has a much smaller footprint BizTalk and is a lot cheaper so you can throw it on the file server without as much impact. Because Grinder’s configuration is stored in XML it’s really easy to write a script that can add all the directories you need to monitor. Actually – I’ll see if I can make a tool for doing that. To get the file in to BizTalk’s message box you simply use the HTTP Post activity to post the file to a BizTalk receive location. In the context of BizTalk, Grinder can be thought of as the BizTalk File Adapter on steroids.

Another use for Grinder is in EDI scenarios where companies are moving files back and forth. In this situation one organization may have a dozen different trading partners each deliver three or four different files. Often each organization will have a home directory and then subdirectories for each file type. In this case you configure Grinder to watch the subdirectories and process the files as they arrive. To make things as flexible as possible Grinder has a mini-language for passing parameters to Workflows and activities. So each directory could have a property added for the clientID and inside the workflow the clientID could be used as part of the processing.

Further flexibility in Grinder comes from the fact that it is based on Windows Workflow. If Grinder’s designer won’t let you do what you need then you can write a workflow using Visual Studio. Grinder provides an interface to workflows that allow them to access the work item information so your workflow can determine the name of the file being processed and the properties for the workflow (clientID for instance from the previous example).

You can also write your own activities that are specific to your company. For instance if you need to send the files to a web-service you can write an activity that handles using the file’s contents to call the web-service. I already have plans for additional activities that I plan to release in the coming weeks.

So what is Grinder? Grinder is a service that processes files using workflows. What problems does that solve? If you have Grinder in your arsenal you don’t have to write the code to monitor directories and then process the files that get found. This means less code to support, maintain and change when new requirements emerge. It means you can respond faster to changing requirements. You can provision new trading partners in a few minutes w/o writing any code. It means your programmers can work on cool stuff WCF, WPF and Silver Light. It means your system administrators can have a nice tool that keeps the file processing centralized so they don’t have to keep track of hundreds of little programs and script files scattered all over. It lets you do more in less time with few resources so you can use what you have to tackle the big important problems.

Without Grinder your environment ends up with hundreds of little programs to process the files your business relies on. These programs require maintenance and support. They are almost never documented; eventually nobody is clear on what they do and how they relate to the bigger environment. Most of the time you aren’t aware of them until they stop working and your systems fall over on their sides and then nobody knows what to do. Grinder fixes that by eliminating those programs and making them easier to maintain and support.

As a final plug for Grinder: Right now I'm giving away a limited number of free licenses.  I want to get it in the hands of users so I can get some feedback.  I wrote Grinder for me and I know how to use it.  Now it is no longer about me.  It's about you my customers.  Included with the license is a free 1 year support contract which includes updates, enhancements and technical support.  So by registering now you get to help steer where I go with Grinder - for free!  Go here: http://www.engineofprogress.com/Products/Grinder.aspx and click on the "Register for a free license" in the upper right corner.

The real problems for Engine of Progress

So I think I’ve done an OK job describing Grinder, what it does and what problems it solves. But the real problems for Engine of Progress are different. First is learning to communicate about my products in a fashion that makes people purchase them. Second is getting that communication in front of people.

Based on what I’ve learned over the past month or so there are three things to communicate: what problem is being solved, what the benefits of the product are and what the features are. Which really boils down to one thing: “What problem is being solved?”. The benefits and features of the product are the solved problem – end of story. If you’ve read this far then you know figuring out how to articulate this is a real challenge to me. I don’t think it is because Grinder is a product in search of a problem, I think it is because Grinder is too basic in that it solves a class of problems. I think the next few products I have planned won’t have the same issue for me.

The next problem is learning how to get in front of people so I can deliver my message of Grinder goodness. We live in a wonderful time for marketers because the internet is the world’s greatest combination of Want Ads and Yellow Pages. The only challenge I have is that I don’t have much of a budget for marketing so whatever I do has got to be cheap and effective. I already have some ideas, we’ll see how they work out over the next few weeks.

While I’m a bit overwhelmed by this transition I’m also very excited. I think 2008 is going to be one of the most interesting years of my life. Completely life altering. For the better – just to be clear. ;)

Categories:  
Actions:   E-mail | del.icio.us | Permalink | Comments (0) | Comment RSSRSS comment feed