The Sometimes Blog
The Agile Approach To Launching Your Product
Sometimes knowing when to go live can be one of the hardest decisions. For the most part there are two approaches to getting your product ready for prime time.
- #1. Extremely long drawn out testing process internally, then launch to public and hope you got it right.
build, test, test, test, test, months go by, test, launch (typically still find issues) - #2. Quickly get to market. Fix / change / add things based on users response
build, test, launch, revise, revise, revise, revise...
Method #1 is perfect if you're launching that banking site that handles large sums of money or any extremely mission critical application. You want that sort of thing to be perfect before going to market. It's key to the success of that sort of product. A bug in the code for handling people's money can mean death for your product. User confidence equals nill.
The thing to keep in mind, however, is that most sites are not this mission critical. Does this mean you should launch a site that is full of bugs and broken pages? Hell no! There is nothing worse than looking un-professional and losing user confidence before they even finish working their way through your site. Do your unit testing, use your app for a while, invite friends and family, get all the low hanging fruit issues cleaned up. Then pull the damn trigger!
Here is why method #2 is typically the right approach.
First off, you get to market quickly. This is more important than you may realize. Getting user feedback to help shape your product is huge, especially in the early stages. No matter how big your internal team is, they are not going to find every usability issue and think of every feature your users want. They just won't... period. Mainly because they have been working on the product too long. It takes outside feedback and lots of it to really flush things out. Listen to your users. Take everything into consideration, then based on that data make your next set of features / fixes. Naturally you can't build everything everybody wants all the time. You still need to filter out the not so important stuff and focus on bugs first, then features that the majority of your users MUST HAVE! Don't let your product become bloated down the road.
Going to market quickly can also give you a leg up on the competition. Even if your competitor is advertising they will have X more features than your product, but they plan to launch sometime next year... people will move on and go to a product that already exists. Your competition is already behind the eight ball now, meanwhile you're busy tweaking things to make your app a better experience for your user base not your QA department.
Secondly, you don't build a bunch of stuff no one wants because you need to get to market quickly and don't have time. This is a good thing. Create these restrictions if they're not there already. It's really easy to go hog wild with features right out the gate. So many web apps are chuck full with so many features and functions that users get lost. It's like when you go to a restaurant that serves everything under the sun. First off you can't decide what you want to eat, so you just get frustrated, and then nothing seems to sound good. Then you're wondering how on earth can they make a good philly cheese steak and have great sushi. Chances are both are half ass, and probably both will make you sick. Your users will feel the exact same way when you give them too many items in your products menu. How many times have you been looking for a web app to do X and found something that did everything else but X? Think you're the only one who was looking for X but moved on because it was cluttered, complex and still didn't actually do what you want? Doubt it. Guarantee you're not the only one.
Start with the core functionality. Keep it simple. Let the product evolve based on your users feedback. Build on features your users MUST HAVE and you can't loose.
E-mail Marketing with Campaign Monitor
Now days there are tons of options when it comes to e-mail marketing. I have personally worked with several services over the years such as Exact Target, Mailchimp, PHPList, Listmail, Pommo, and even a home brew. Lately though I must say I have found true e-mail marketing bliss with Campaign Monitor and Mailbuild. Campaign Monitor and Mailbuild both are products of the Australian based firm FreshView.
Both services have a well documented API and tons of reporting features. There are even several different modules to help get you rolling in popular blogging / CMS apps like Wordpress and Drupal. Or just use a simple signup form that posts to the Mailbuild or Campaign Monitor servers if there is no module available and your not comfortable working with an API.
For myself the API is huge. It allows me to roll out custom solutions that meet specific client needs. For my clients, the detailed reporting is huge. The reporting in both services is simple to understand and very powerful.
Both Campaign monitor and Mailbuild really hit the mark on the following key aspects for a successful e-mail marketing service.
- Deliverability
- Integration
- Reporting
- Management
- Ease of use
- Price
- Support (staff in Portland for US customers)
I recommend giving them a try on your next campaign, you only pay when you send so it makes it really easy to give them a test drive.
Tracking Visitors with Mint
I already know what you're thinking. Why wouldn't I just use Google analytics for free or AwStats? You should use Google analytics, and AwStats is a nice log analyzer as well, but you should also have some comparison data to Google analytics. Not only does Mint provide you with additional stats, it can also be a bit more reliable than Google analytics mainly because the script executes at the top of the page and calls your own server. It's very possible that you could be missing out on some stats because the Google analytics code was never executed. It does happen.
Another important advantage to Mint is that you see data in realtime. No 24 hour delay. This can be huge for testing that new link placement or being able to watch if the email campaign you're sending is getting users to your new product. Being able to see data in realtime can give you the ability to react quickly to your users. Mint also ships with a clean interface and the ability to add more functionality through what the Mint folks call Peppers. Think of Peppers as modules or extensions. Keep in mind when adding these Peppers you are adding javascript to your page and also raising the chances of having a bug. So just install what you need and always test in your development environment first. You knew that though.
Happy tracking!
www.haveamint.com
New site design
Hope everyone is liking the new look and feel. It's been along time coming. I have been so busy building for other folks that my own little presence got pushed aside, but thanks to a rainy day and a three day weekend I managed to crank this out. Over the next couple weeks I'll be slowly adding more content; mainly case studies. Be sure to join my newsletter, subscribe to the sometimes blog feed, and leave a few comments. Thanks for checking in!
What to do when cron isn't fast enough
Sometimes you need to automate a task that needs to happen every few seconds rather than minutes or hours. Recently I needed to rsync two directories between servers every few seconds. Normally you would just make a cron job and call it a day, but the requirement of every 3 seconds makes cron inadequate.
Page Markup for SEO
I run into many organizations who either ignore or are not aware of some easy things they can do to optimize their site for search engines. Many folks feel the best tactic to increase traffic is to throw more money into their pay-per-click ads. This certainly will help increase traffic, but I always advise my clients to take care of the more important things they can do to boost their ranking organically. For this article I will go into just the basics of page structure for SEO to get you started in the right direction.





