le lab

Of AppStore and Bad Ideas

January has been for me the month of a very bad idea regarding iPhone Apps : I decided to make a sale. Here's a report of how things have been doing before you decide to do the same stupid thing. Of course your mileage may vary, so take everything I say with a grain of salt.

How things were going before

Well December and beginning of January were reeeaaaallyyyy slow. November was a great month, as you can see from that graph estimating weekly income. I don't know why, but for me it was slow. Maybe the weak economy (but frankly I doubt, seeing the number of iPhones sold here in France), maybe the holiday season, maybe my attempt at making less updates.

Sales weekly

I was quite unhappy wih two things : first of all the comments and ratings of my first and most important application, TrackMe. As I said before, the comments on some stores are from the very early days of the app, and although I admit I've been a bit too fast to release, the version that was on the AppStore end of september was good, working flawlessly and really comparable to other competing apps (some of which much more expensive). And the app is better than the free or low price apps it is compared to. Really better, like 2.49 euros better (that's 2.99 USD).

Second thing I was unhappy about : I had taken more time to polish and improve another app, a Location Recorder, that was published on the AppStore on the 23rd of december. And sales on this new app were really slow, even nonexistent. Most of all, there were almost no comments on it. I didn't want the app to become a stone in the bottom of the app ocean.

What I did

It's been a strange decision making process. Absence of knowledge has led it, for the most part. To start, you must know that january is the month of sales in France. So on January, 7 the sale period was opened for all retail outlets. I decided to open the sale too.

My goal was as I said before to give a little bump to unit sales, and be better at estimating the good price : the price at which you make more money, despite selling for a lower price. My second goal was to get a better exposure. New comments. I hate the comments I see in some store, did I say that already? Then I wanted to reach higher and show people how much better I was than competitors : after all we're all chasing after glory and reconnaissance.

Of course, I didn't reach any of my goals. As I read there, there are lessons to be learned, just don't do it the hard way. Hard for your bottom line.

What happened

Well here is the chart you've been waiting for that dissects what happenend in the last 4 weeks :

Price Drop chart

The day I started the sale is on January, 7 2009. You can see a peak there, and you can see a really better number of unit sales for TrackMe for the end of the month. But hey, look at the money : I have been making much less money.

I've had an update on January 16, that also helped sales (you know you can have a little help and come back to the first page when updating, yes you know, the developer of pcalc told you how). That was, as usual the real helper in unit sales.

Then last week of january I had this crazy idea : let's try free, to see. See what? see if people like the app, if you can at last get some nice comments, etc. So I did, for TrackMe only.

Here's the story of updates and price changes of that app.

Free == Shit

Pardon my french, I am. I don't like 'free' stuff. I like nice stuff that people have spent some time on, I like real support where people spend time, I love indie developers : Coda, MarsEdit, Snapz Pro, Mate, BBEdit, Screenflow, Super Duper, Fission & Audio Hijack etc etc.

I wasn't sure I liked free apps downloaders on the iPhone. On my iPhone, I don't have crackulous, but apps such as fastlane, instaviz, burnball (great game), obama!, things, Dakslide (formerly know as Exposure) Premium. I have the occasional free app, but well, except for really useful NetNewswire happiness, I don't use them. So I buy apps.

Well, when my app became free, the unit sales rose in one day from 30ish to 1200. Still not the figures you'd get from a game app, but reasonable. But who are these guys? Where were they before? Were they people who couldn't afford to pay the app when it was 0.99 USD? Was a student who had trouble buying such an app because of the economic downturn (I read that from a fellow developer)?

So, here is the graph of that stupid week:

Oh my how stupid I can be sometimes]

How to make no profit, kill sales and attract people that would anyway never buy your app....

Lessons learned, well..., the hard way

  • Pricing is tough, and having a very low market makes it even tougher
  • Free is evil : free 'buyers' don't want your app, they want free and that's a relationship where you're gonoing to loose.
  • Going from paying to free and back is like shooting a bullet in your feet while tying a rope to hang yourself.
  • Updates are nice, having a real marketing is better. Playing with price is worthless, except for the top 10 apps on the AppStore.

I am now looking for better strategies to reach the goals I had before, and better strategies for my next apps. I'm thinking about a low, short introductory price to try to makes sales take off, and then back to regular price. When I say short, I mean short. 1 or 2 days.

I'm thinking also about a new model for updates : the more you add in an update, the more expensive the app should get. It's a way to reward even more the user, it values more the work you've done, and it should increase the profits (even if sales are a bit lower).

Commetns are certainly welcome. If you want to continue the discussion more privately, use my email a gmail.com , cgodefroy, or come by on twitter

How the AppStore Review process is improving

Disclaimer : I don't know anyone working for Apple, so I don't know how things are really going. I am only reporting observation from my standpoint, as an iPhone developer.

I already have on app on the appstore, TrackMe, a GPS recording application for your tracks. I made another one, in the same field, but with more time spent on getting things to work nicely together, and being easier to understand for the user. This one is still in review, and I don't know yet if it will get published before the end of the year.

The review process for the first one was obscure, long, but went well : after a little over two weeks, I received the magic email : " Your application is ready to publish". Since that day, I have improved the quality of the application, added much needed features. All in all, the application is fine for me as it is. I certainly need to squash some more bugs, and be a little bit more conservative on several issues. I also need to be able to add a Douglas-Peucker algorithm for tracks that are more than 100 points long. Each time, the review has been an easy process : submit the update, wait one week and see the update pop up on the AppStore.

Then there is the new one. Apparently, I have been in relation with a very thorough reviewer, all for the best.

First, the review is getting faster every time : I got my first rejection after 6 days. Yes, six days! That's short. And I'm talking calendar days, so it must've been 4 instead if you don't count the week end. Then I got my second rejection in just 4 days! You guessed it right : the process was done between monday and thursday. It might even be less than that.

Second, the quality of the review is very good. My first app wasn't rejected, so I cannot say there's really been a progress in this area. But the two rejections were for obvious reasons: my application was not idiot-proof. I mean, it's not like I did something unorthodox, I didn't use private headers or whatever. I didn't make a 'pull my finger' app. I didn't download mpeg ac3 video over edge network. It was just that I didn't check what would happen if the phone was without any network connection (in which case some features wouldn't work), and the second time, I forgot to add a full email validation.

I don't know what will happen next. I hope it won't be rejected again : I have tried to adopt the same idiot-proof state of mind when testing the app and added some more feedback in that state of mind , plus of course correcting the two issues that were mentioned. I really hope it won't get rejected for more reasons, because it would prove I am unable to reach the same state of mind. That's all there would be. Plus the frustration of the email title : Application Submission Feedback.

What I know is I am mentally figuring a to do / check list of must-have routines that is growing. I will put a first rough on Fidug's web site for everyone to add and see, and put hints at what can be done in code. All for the better.

The War is Not Over

Yesterday's Apple Keynote (if we can call it that way) was not only about presenting new products. It 's also been the occasion for Tim Cook and the top management of Apple (Steve Jobs being the puppet master) to show how big the rifles were . Rifles for what? Rifles against MSFT, of course. Because I can tell you this people : we're back in the war between Apple and Microsoft.

That war had been stopped in 98 by Steve Jobs when he asked MSFT to re-invest in the Mac Business, both by making better apps and by putting money. And Bill Gates was wise enough to accept the opportunity. It wasn't a war anymore, even if the Mac herd still eyed Microsoft developers as copy machines (remember these WWDC mottos?). And then recently, both during a chat, and then afterwards through a memo that was 'leaked' to the press, the other Steve (Ballmer) decided that it was time to spread FUD on Apple once again.

Why did that guy decide against Apple this time? He feels he's in danger in his core activities.

Microsoft is present on four platforms :

  • desktop
  • mobile
  • music players
  • console games

On platform 3, the Zune player is almost counted amongst the 'others' group when people report on market figures. I haven't seen any here in Germany, or in France where I live. iPod has a 70%+ market share in the US, and a good market share in other regions, apparently;-)

Apple 1 - Microsoft 0

On platform 2, Apple has proven since the announcement of the iPhone back at MacWorld 2007 that it could once again turn a market upside down and has since become the #2 phone seller in the US (I have to check those figures anyway, is it only on the smartphone segment as I suppose?). On the other side, Microsof annournced recently that the new version of Windows Mobile was postponed until late 2009, maybe even 2010.

Apple 2 - Microsoft 0

On the console platform, Microsoft is known to lose a lump of money, and Apple is not yet really present, despite the emphasis they've put on games withe the iPhone and iPod Touch. They don't confront, yet.

Apple 2 - Microsoft 0

On the desktop and laptop (can you make a real distinction anymore?), Microsoft still has their superior market share. But they don't have the mind share anymore, as people are turning away from Vista. When you have a failure, the best communication you can have in Microsoft mind set is to talk about something else. Linux doesn't seem to be a problem (although Asus using it on EeePC might show a new way) on the desktop platform anymore.

Apple has a good record and switching is real. If Windows is still strong on the desktop business, Apple is gaining market shares in areas that it was weak before : education, law, management, physics. Areas that are not only graphic design or video. Figures speak for themselves.

Apple 3 - Microsoft 0

That's too bad. I preferred the Microsoft of the early 90s. The one we're seeing today is like the bull in the arena. 32 times out of 33, the toreador wins. Right now, we're up for a new show as spectators of the Apple- Microsoft war.

Who's that guy?

Hi, my name is Cyril Godefroy, I'm 37 with a wife and 3 boys.

Although I've been in a graduate school of management, I rather work in the tech world. I've been a project manager for several multimedia cds, and I've been managing or developing web sites since 1996. The projects I've worked on are as diverse as a small institutional web site for a fashion competition, up to portals with value services for telcos, media or Isp (aol, noos, sfr or France Television). I practice fluently php, rails, java with different flavors of WebObjects or Tapestry.

Since september 2006, I'm specialized in quality of service and performance. As of february 1st, 2008, I'll be working with Witbe, the leader of quality of experience control in France.

I also write iPhone Applications, such as TrackMe, a handy tool to track your moves when you go out walking, biking, or when you make pictures.

I have written an e-book, still only available in french, which describes the performance issues that can undermine a web site, measures to enhance performance, and method to analyze the real kind of issues, and help set the priority on performance.

I also love photography. Not so much the fact of knowing which camera is the best, but having a camera in the hand and taking pictures of places, people, anywhere and everywhere. Helping others making better pictures is something that helps me make better pictures too. I wrote an e-book in French to explain the basics of digital photography.

FFmpeg revisited

FFmpeg is a nice piece of human intelligence able to convert from almost everything to almost anything in video. I talked about it before, I won't talk too much about it. BUT, the executable I had made was flawed. Amongst its issues, there was no support for aac! So I spent more time on it and I put my comments. Still xvid and amr missing though. If you find it, please tell me! You can also download the command line executable.

1 Install lame

2 Install faac

tar -xf faac
./bootstrap
chmod 755 bootstrap
./bootstrap
./configure
make 
sudo make install

3 Install faad

tar -xf faad2.tar
cd faad2
chmod +x bootstrap
./bootstrap
./configure
cd libfaad
make
sudo make install

4. Install x264

svn co svn://svn.videolan.org/x264/trunk x264
cd x264/
./configure
make
sudo make install

5. You have to find the way to add amr_nb support by yourself, as well as xvid support, I'm sorry.

6. Download and correct ffmpeg

cvs -z9 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co ffmpeg
cd ffmpeg/
./configure --enable-mp3lame --enable-gpl --disable-vhook --enable-a52 --enable-faac --enable-faad  --enable-pthreads --enable-x264

In libavutil/common.h there's a big piece of code to delete, which only works on Win32. It's a if loop. Try to compile: it comes as one of the very first errors.

make ffmpeg

Et voilà. Don't misunderstand me: due to the lack of documentation , it's taken me a small day to get to this point...