Thursday, November 29, 2007

Scrum progress

Apparently I forgot to post this entry. I was searching for it to link to, and I couldn't find it. So a bit late but still relevant.

I posted about using Scrum as a uISV and wanted to follow up on the progress. At the time I said
Right now I plan on trying the following principals: a product backlog, a spring
backlog, the sprint and the daily scrum. I don't think I have to worry about
anyone being late to the daily meeting :) Also I might reduce the sprint
time to 2 weeks instead of 1 month. Maybe even 1 week, but that might be to
short.
I'm still working on the product backlog for both Omni Customer Support and Web Work Schedules. The product backlog is an ongoing progress as I think of new features or find bugs in the software. I need to break the tasks down into smaller pieces. For the first sprint, I was focusing on getting Omni Customer Support finished and out the door. I released version 1.0 and the sprint ends tomorrow. So my estimation of the work effort was accurate.

I have found that I'm a lot more focused now because of the daily scrum. I'm actually writing down my answers to the three questions which makes it me more accountable. I tend to keep that document open on my second monitor and I glance at it to remind my self a) What I'm working on b) What blocked me yesterday. I'm very honest with myself on what is blocking me. I've listed procrastination, my consulting work, and Omni blocking the scheduling app. It was painful to write down that I procrastinated instead of doing what had to be done. I've only had to write that once but I can still see it on the list. That's motivating.

Having a short sprint cycle is working well. I've only had the one sprint, so it is really to early to tell. The two weeks is a short enough window that I can feel the deadline and I can keep everything fresh in my mind that I'm working on. This has been increasingly important as I switch gears back and forth with the consulting.

My experience of the software awards scam

A few months back Andy Brice wrote an excellent post about an experiment he did of submitting a fake application to all the download sites. If you have not read it, I recommend that you do. It is real enlightening. This is post is my experience.

Today I published Omni Customer Support 1.0 to several hundred download sites using RoboSoft. In response I received just shy of 100 emails, most of them minutes after my software was uploaded. Most of the emails asked for a link to their site. Some of them would not accept my upload until I did so. Probably half of them gave me an award "after they reviewed it and it passed their rating guidelines." I was ready for this after reading Andy's post.

There was also a number of the sites that wanted me to register my software with RegNow and provided a link with their affiliate number in it to sign up right now. I'm guessing they get some sort of kickback if I were to sign up. The hook is that "Software products that are registered with RegNow that have higher page view count will be ranked higher on our site." So sign up and I will have a better listing on their site.

This same concept of "raking higher on their site" is also used if you link to them. And if I wanted them to process my upload faster, linking to them will speed up the process. I understand why they would want the link from me, SEO and some extra traffic, but it does feel a little like a bit like extortion.

But the kicker was this one: Please download a copy of your award at http://-----site-----/images/star5Award.gif and display it on your website. We encourage you to place a hyperlink on the award logo and link it to your software page at http://----site-----/OmniCustomerSupport_software37707.htm This will increase Internet traffic to your page and it will receive higher placement by search engines such as Google or Yahoo.

I'm curious to know how having the award on my site will increase my traffic. I would really like to know how it would increase my ranking in Google. Perhaps they know something I don't know.

I ran WebSiteGrader on Omni Customer Support and saved off the overall score and the number of both Google and Yahoo inbound links. I'll report back on how it changes after having been on the download sites for a while.

Omni Customer Support 1.0 released

I released Omni Customer Support. The code has been complete for over a week, but I was cleaning up the lose ends up in the purchase process. I'm using e-junkie with PayPal and Google Checkout. Setting all that up was pretty easy to do and the process works smoothly. It feels good to get it out the door, but I'm holding off any celebrating until I make my first sale.

I published it to the download sites, I've got a separate post about that. I need to start my Adwords campaign. I'd like to bang out the multi user capability, but I need to return my focus to Web Work Schedules. My consulting work is picking up and keeping me busy. I can't complain about that since that is paying the bills, which is important, especially with Christmas just around the corner.

Tuesday, November 27, 2007

new web app developer forums -- seeed

Paul Farnell launched seeed yesterday. According to the home page "Seeed is a place to discuss the business of web applications." There is a BoS entry announcing the launch. It is just getting off the ground and I created one of the early accounts (user #11). There are about 50 users now. I recognize a lot of people from BoS.

The goal is to be like BoS but with the focus on web applications. BoS is not limited to desktop development, but I would say that the majority of the applications there are desktop applications. It has RSS feeds and a weekly human edited digest of the best discussions on the forums.

I mentioned it on the BoS post, the key thing is achieving a critical mass of users. I don't know what that number is. There is not a lot of content yet, but what is there has been good. I hope it is successful.

Leveraging Lucene & POI to index Excel Documents

I wrote my first piece of link bait today. Based on recent discussions on BoS about link bait and several great posts by Patrick McKenzie on the subject, I figured I should spend a little time and get it done. I wrote a small code tutorial on using Lucene with the Apache POI project to intelligently index Excel documents. While the readers of this kind of content are not my target customers, any inbound links are sure to help.

There is also some truth to me wanting to give back to the larger software development community. I know Google has saved me countless hours of work but finding a little piece of information that solved my problem. Hopefully my tutorials will do the same for someone else.

Since it is technical by nature, I submitted it to programming.reddit.com and see if I can get any traction. If you have a reddit account, and like it, I would appreciate a vote for it. I added the reddit button on the bottom of the tutorial. I have a few other tutorials that I plan to write and see how they work.

Ideally I should have a blog under Omni Customer Support to host the tutorials, but I don't have one installed. I've been meaning to install WordPress, but haven't gotten around to it. Rather than wait for that, I posted the first tutorial and I'll move it (with the proper redirects) once I have a blog set up there. I'm pulling the trigger on this, rather than waiting for it to be perfect.

Monday, November 26, 2007

Post Holiday Review

A quick update on my activity over the holidays. I had a great holiday and I hope everyone else did as well.

Text2go worked well. Listening to white paper went well, except for a few issues. At first I was concerned about the voice, but it turns out you get use to it after a while. Nothing like a real person in my opinion, but not to bad. It did have a few "glitches" that I also got used to. For example it would read "M" as meters when the author was using it for millions. The white paper had its copyright and url on the bottom of every page which got very annoying. I should have removed it. That is not Text2Go's issue, it was reading the text that was there.

I only had one 5 hour track which is a pain if you accidentally skip to the beginning of the track. In the future, I would split it up by chapter to make it easier to jump into it. About 68 pages into it (of 105), it stopped. I'm not sure why this is. I have not looked at the text to see if I missed one of the '<' or if it was something with the IPod. Before it only showed up as 6:40 minutes long so I'm thinking this might be the IPod because it was showing that it was still in the middle of the track. But I was driving, which is not a good time to try to debug the issue.

My retention of the white paper is fair at best. I think I do better reading vs listening. Part of the issue is the material, a good portion was aimed at much larger ISVs which did not hold my attention as well. I plan on reading the new version when is released.

On the Scrum front, I found a topic that is of some interest to readers. That's a pretty cool feeling. I'll have a follow up post soon discussing my progress.

Tuesday, November 20, 2007

Traveling

Like a lot of people, I'll be traveling to see family on Thanksgiving. For me its a 5 hour drive in the middle of the night so the kids will sleep all the way through. Combine a 5 hour drive with the need to stay awake, wanting to pass the time and the desire to possibly learning something is a problem in need of a solution. I've used audio books (fiction) in the past, but the selection is thin if you are concerned about what your kids will hear. The solution for this trip is Text2Go. If you follow TJ Etherton's blog, you will know he has been using Text2Go and is very happy with it.

I've always thought it was a great product, but I didn't have a need for it. Working from home eliminates my commute and I can't listen to any talking when I'm developing. Give credit to Mark Gladding who blogged about using Text2Go to listen to books from project Gutenberg last month and got me thinking about the idea. Instead of an audio book, I thought I'd try to learn something useful to my uISV. So I downloaded The Emerging ISV Handbook: Sales Is Not Rocket Science (www.isvprime.com.)

There was a slight snag with it. The PDF is 105 pages long, but the audio was only 6:40 minutes long. After trying a few things I pinged Mark asking for help. He quickly responded and said to look for any <> in the text as well as a lot of < when talking about numbers. A simple search and replace cleaned up the text and now I have 5 hours of audio ready for my trip.

The voice takes a bit to get use to so I'll have to see if I can stand it for 5 hours. I'll give an update after the trip and let you know how it went.

Monday, November 19, 2007

Pull The Trigger

I read a great post for over at Self Made Chick by Christine OKelly. In it she describes how she made $100K by spending 25 minutes and $0 in marking. She runs a SEO copywriting firm and this describes how she made the jump from searching for jobs on Craigslist to having 100K worth of work.

The key thing I got out of the post (and it is her first words of advice) was that you have to pull the trigger. She had a formula on how to build her business but she stalled. There was a list of things she had to do before she could execute. In reality, the list came from the fear of execution. In the end, she pulled the trigger and executed her plan and was very successful.

So how does this relate to my uISV. In both Web Work Schedules and Omni Customer Support, I have my own list of things I have to do before I execute. I know the list partially is based on fear and it is holding me back. Fear that I don't have as many features as my competitors, fear that there are bugs, fear that it will not sell, fear that I'm going after the wrong market, fear that I will not be successful.

Another factor that can make it difficult to execute is my consulting. It is a known quantity that is successfully paying my bills. I need to do the consulting work, but it can act like a crutch at times. The fact that I can fall back on that if I had to is great mental relief but I have to watch that I maintain my focus on my business and support it with the consulting vs. being a consultant that has a hobby project on the side.

Friday, November 16, 2007

uISV Class 07 update

I ran WebSiteGrader on each member of the class of 07 to see how we stacked up.

Here are the high level results:












SiteScorePage Rank
steplivelynow.com 694
www.thinklife.co.uk 403
joelmarcey.com 364
www.smallfarmcentral.com 764
www.sportavista.com 134
www.sendalong.com 90
catchthebest.com 895
www.heliumfoot.com 370
www.lokad.com 954
twistedwave.com 700
www.omnicustomersupport.com 290
www.webworkschedules.com 280


If you have not run WebSiteGrader on your site yourself, I would encourage it. It only takes a few minutes and there is no cost and no signup. Just enter your url and hit go. One thing that I noticed is that some people still don't have the redirect from yourdomain.com to www.yourdomain.com which is important from the SEO perspective because those are treated as two different sites to google. You are potentially splitting your links between them and thus reducing your incoming links.

The highest ranking for our class was a 95 by Lokad and the highest page rank was a 5 for Catch the Best.

UPDATE: For the life of me I can't figure out why the big space is above the table.
UPDATE 2: After seeing a 10 for Omni Customer Support, I looked at the detailed report and fixed a few EASY things (meta tags, descriptions, improved title) and bumped the score up to a 29. It took all of 10 minutes to do.

Scrum for One

I was talking with a friend who has found himself as a project lead on a large project where is is doing mostly managerial stuff. In an effort to avoid that work he has turned to Scrum project manament. If you have not heard about Scrum, you can google it, or read the wikipedia link here . I'll try to give you a quick description for those who don't want to go read about it.

There is a product backlog which is a list of all the requirements and issues for the product. You have a "Sprint Planning Meeting" in which you pick the items from the product back log fro the sprint backlog, which is the list of tasks you are working on during the sprint (typically 30 days). Each task is given a time estimate. As you work on a task you track how much time you spent on it. You graph these using a burndown chart which helps you monitor your progress, lack of progress, over estimating, under estimating, etc. Each day that is a "Daily Scrum" which is only 15 minutes long and you are not allowed to sit down, helps limit it to 15 minutes. There are 3 questions
  1. What did you do yesterday
  2. What did you do today
  3. What is blocking your progress.
Since it is agile development, anyone can add items to the sprint backlog or product backlog. That is the high level basics. There is more details, but you can learn about it from the many sites about this practice.

It was asked of me how I keep my self on track and monitor my progress by Bob Walsh. At the time I was using Basecamp, but I've been slacking on it a bit. Mostly because I switched gears to work on OmniCustomerSupport, which I have to admit now has been more of a detour than I originally planned. I just created an account at Code Spaces which I plan to use instead of Basecamp.

At the same time I plan to incorporate the Scrum approach. Now since there is only one of me, it is a bit overkill, so I'm only going to take bits and pieces. Right now I plan on trying the following principals: a product backlog, a spring backlog, the sprint and the daily scrum. I don't think I have to worry about anyone being late to the daily meeting :) Also I might reduce the sprint time to 2 weeks instead of 1 month. Maybe even 1 week, but that might be to short. I'll experiment and let you know how it goes.

I want to credit TJ Etherton over at IKollect for the idea of this post. He has been posting about his productivity experiments. I will continue to share my results of using Scrum as a uISV.

Wednesday, November 14, 2007

Website update and review

I added content to the Omni Customer Support website and asked for feedback on the BoS forum. It was unanimous that the header had to go. I never really liked it, but my focus was on other things so I left it there. So I cleaned it up which also took care of a color issue that I was having. As Ken Kaczmarek said I GotTheOmniCustomerSupportBlues. I had several different shades of blue, Ken counted 6. Another issue was the lack of "Download Now" button. I had the "Buy Now" but not the download. I don't know how I missed this. So I created new buttons (the old ones were pixelated) and used new colors to make them stand out a bit more.

There was a lot of little things I was doing wrong that were easy to fix. I spent far to much time using GIMP to make the new buttons, tweak the logo, tweak the header, etc. But the new version is up and I think it is a lot better.

I'd like to thank Ken who I already mentioned, Goran Burcevski who helped debug a problem with running with Java 1.4.0_03, Nicholas Hebb, and Floyd Price. Floyd is a Mac user and last night I found a Maven plugin for creating the Mac Application Bundle, so I hope to have a version for him to test soon. There were also a few anonymous posters who provided feedback as well, but I can't give them proper credit because I don't know who they are.

Stats from posting:
  • 161 Visitors
  • 10 downloads of the app -- This was a lot less than the first time I posted. Law of dimension returns on posting for feedback? Not sure. I am a little disappointed in this because I made quite a few improvements to the app and was hoping for feedback on the features.
  • 493 Pageviews
  • 2.88 Pages/Visit
  • 00:01:59 Avg. Time on Site

Wednesday, November 7, 2007

Omni update and website update

I pushed out some changes to the Omni Customer Support website tonight. The biggest part was adding some screenshots. I think they came out OK. Of course after you have your images, you think of what should be different, so you do edit the data, layout, etc. and take a new screen capture. Then the process repeats itself. I'm trying to do a little bit each night on the website to help flush it out. It's starting to get there.

On the product, I got several major changes out yesterday (and one minor bug fix in tonight.) The major changes were creating tags on issues, adding balloon hints on startup, adding the concepts of data sets, adding a sample data set and started the beginning of the Help Data set. Data sets are independent, and you can only search in the active data set. This allows you to have one data set for product A and another one for product B. It also allows me to have a Help data set and the sample data set.

I modified the search ranking algorithm a bit with the introduction of tags. As it stands now, the title is the heaviest, then tags, then description and solution. This has resulted in relevant rankings in my testing so far. It might be something that I open up to allow the user to modify.

I tried to make a flash movie tonight to put up on the web. I always want to see one and I think it will actually show off the product well. But it just about killed my machine. I had to many programs up when I tried it. It came out OK, but I need to rehearse it a few times. I'm going to opt for call outs vs. using audio. I'm trying to use CamStudio, I've used it before in the past but never with the screen annotations, It is going to take a bit to get a version I'm happy with.

Tuesday, November 6, 2007

Beta 2

It looks like I'm going to miss my schedule. I got side tracked for part of last week with consulting work. That's good for the immediate needs of my bank account, but frustrating that I'm going to miss my self imposed deadline. Good news is that I silently pushed out the second beta of Omni Customer Support with several new features. I'll provide more details after I get a full nights sleep. I think its really feature complete now. I said that last time, but it turns out I was not quite there yet. Things left to do to get this out the door is set up the licensing script on the server, tie that in with e-junkie, finalize the payment processing, flush out the help and the website. So still quite a bit of work, but nothing technically difficult, but each item takes time.

I'm going to start splitting time on these tasks and the scheduling software. I'm in ramp up mode on the consulting with the new contract that started last week. This will be a time and energy drain until I'm up and running.

Thursday, November 1, 2007

A Downside to Desktop applications

One major downside to desktop applications is that you don't know if users are actually using the applications. With web applications, you control their access since they have to go through your web server. Even if you don't have logins, you can use a number of tools to track users, or at least know that X people are using my software.

I know I can add a calling home feature, but as a user I don't really like those. I have a fire wall that only allows certain software to access the internet and I get very suspicious when software that has no business getting online asks for permission to do so. Unless I know why it needs it (i.e. its an SFTP client) then I deny the request. I don't like the idea of software reporting on me.

One way around this is to have a check for updates function. That is pretty widely accepted and I'll think I do that. It's still not quite the same because you never know for sure if they are using it.

The real issue is I'm close to having several major changes wrapped up and I want to know if anyone downloaded the app is actually using it. I'm guessing not, because the trial was limited to 25 issues and I have not received any requests to a real key yet. If no one is using it, then I don't have to worry about saying that data in the last version will be lost. I could write a converter tool, but that is time that I don't want to waste. In the future I will either ensure the data format is backwards compatible, or have an import tool that will be able to import the old data.