Apple’s iCloud vision
“Google’s frame is the browser window. Apple’s frame is the screen. That’s what we’ll remember about today’s keynote ten years from now.”
DaringFireball, John Gruber
Nailed.
Marketing BeatFactor, Part 2
Marketing. Hard work.
The first thing I like to report on is the biggest marketing machine in history. Google. I thought, Google AdWords might be worth exploring.
So I set up an account, create a campaign, and shortly after I am thrilled to see that if I searched for “iphone metronome” BeatFactor showed up in the advertisement list on the right.
But only for a short while. I am not paying enough, at least that is what the keyword analysis tool tells me.
But, search is not the only thing. There is this huge content partner network, and maybe that comes to the rescue.
The following day I see that I got > 500.000 impressions and over 900 clicks on my add.
I was soooo thrilled. I went to itunesconnect, and looked at sales. Ah. Oh. Uiiii… no change at all. So i spend like 50$ on clicks with nothing to show for.
Why?
After careful research it seems that the content network and my keyword list are only very lightly coupled. I see that i got clicks from spam sites, porn sites, advertisement sites. But no clicks from anyone I care about.
To do this better, you need to generate a list of sites that you want to advertise on. I used the AdWord tools to get a suggestion list, download it, modify it (there is a LOT OF CRAP in those suggestion lists), and then upload it again.
After having done that, the next day I got 4 clicks. Uiii. I let this continue for two weeks. Overall I got 1700 clicks and nearly 1 million impressions.
Did I get a single sale out of it. I doubt it. I can’t see any improvements at all in my sales using this.
Furthermore, much more important is that AdWords is just too expensive for this kind of business. For those 1700 clicks, I payed 9000 cents, so a good 5 cents per click. To make a profit, i need to have a better than 1:20 conversion rate, as I make a good 100 cents per application.
Even with the highly focused content network add system I used, assuming I got a 1:20 conversion, I should have sold 90 units at least due to AdWords. I have not sold 90 units total in that time
. So AdWords for iOS niche applications seems to be a total loss in terms of usefulness.
Computer management is torturing users
Google says:
“With Microsoft, and other operating system vendors, I think the complexity of managing your computer is really torturing users,” Brin told reporters at Google I/O. “It’s torturing everyone in this room. It’s a flawed model fundamentally. Chromebooks are a new model that doesn’t put the burden of managing the computer on yourself.”
While I know where he is coming from, I really, really like to suffer through this (actually, I did not suffer from managing my computer for years. But that’s a different story), compared to have Google manage my computer.
The quote outlines the main problem that Google has. They believe automation, and their engineers, know everything better than anyone individual can. Hey, maybe they are right, but that is just to much 1984 for me.
Google I/O 2011 is on
And my, do I not care at all right now.
Let’s review some of the big things of past Google I/O:
2008 – OpenSocial, Gears, Appengine, GWT
2009 – Google Wave
2010 – Chrome WebStore, WebM, Google TV
2011 – Android, Chrome, Music, Movies
Google, imo, has a terrible track record as a technology platform. As a developer (and I am not talking about a big time company, like Adobe, who obviously married into Google somehow – there is no explanation for the support Google, an open and “innovative” company, is giving that piece of crap software called Flash), no as a small time developer, you can not rely on Google.
It’s 2011 now, and at least they do focus on 2 things that make my “I want to believe” Google-Files list.
In general, i do not believe Google to be a particular good software company. They are a great infrastructure company. In no other company in the world you can run code as easily on a million CPUs (maybe at Amazon?). And their software is, at times, brilliant, at other times distastefully bad. But what makes a great software company, in my book, is consistency and a vision.
I don’t believe Google has a software related vision that last longer than from one I/O to the next. And they don’t need to. As long as the platform, the web, stays open, they make money. Their software efforts only exist to broaden the reach of their advertisement platform, nothing else matters. So they do have consistency. Hey, one out of two ain’t bad…
There are 4 projects at Google that I bet on, that I believe will still be around in 3 years:
- Chrome. Having a successful browser guarantees that at least that percentage of the market has access to their ads
- Android. Having a mobile OS that they can heavily influence (yeah, it’s open. Take Google away, it’s gone) guarantees again mobile advertisement revenue.
- AppEngine. I am not really sure why I believe that this is a safe bet, because I don’t see yet how they benefit from this. It is probably considered to attract developers to move into the cloud, which means more functionality is available in the browser, which again makes ad revenue soar.
- Google Apps. Same argument as the others. Have more people use the browser, more people get ads, more money for the big G.
People always seem to forget that Google, in it’s truest sense, is a sales company, even more, it is an advertisement sales company. Normally, those companies, in terms of respect do rank right beside Lawyers in the USA, but Google managed to dodge that bullet nicely so far. But never forget that this is their purpose, their motivation, in all they do.
So if they release any technology that does not really fit that profile, or where it is unclear how they make revenue from this, don’t bet on this to be around, and especially do not bet money or your business on it.
Therefore, they can announce what they want at I/O. They are like Microsoft these days, they use vapor ware to prevent others from entering the market, or to encourage you to wait for the “open solution”.
Marketing BeatFactor, Part 1
I am going to write down all the things I am trying to market BeatFactor,my just released application for the Apple appstore.
If someone is actually reading this, go to www.beatfactorapp.com and check out the videos to get an idea about the app. Without trying to tout my own horn, I think this is the best and easiest to use metronome/sequencer app for the iPhone/iPad out there, bar none.
There are of course better apps, but not at the 1.99$ price point. Or, like Garageband, they are not available for the small screen.
So far, since release, I am selling, let’s say, not what I hoped for. But that was to be expected. Without advertisement, it’s amazing enough that I have already people in Uruguay or Japan buying this. Actually, I really am amazed.
There are 3 things you can do as an iOS app developer, and i guess if you try to make money on the other platforms (yes, i give you 2 sec pause to cough or laugh if you must) the same rules or options will apply.
There are 3 viable options:
- Google AdWords
- The general web press
- sites that might fit your apps profile. In BeatFactors case, musician sites
- general iOS review sites
- Banner ads on targeted sites, again the same subdivision does apply.
Before I go on to outline, over the next weeks, what I did, how much I spend, and what the net benefit was, let’s go over the inevitable. The bottom feeders, the once that try to screw you as soon as you are out there in the open.
Open curtain, left: enter Ed Turner, and his chinese compatriots. As soon as my app hit the app store I got 2 emails.
One from Ed Turner, who claims to be a marketing professional, who really likes my app. He gives some boilerplate advise, and offers to help me promote the app. And if I act now, and use the special link in the mail i even save 100$.
The other from a chines company, asking for a bunch of promo codes to promote the app in china. At least they did not want money right away, but, if I want them to review it, then it will cost me. This is a common, recurring theme for iOS review sites, more on that later.
If you are just getting into the application development and distribution game, don’t fall for those guys. Someone who mails you an hour after your app is “live”, you know they did not look at the app. That’s a robot, reacting on the feed changes, nothing more. Money scam, pure and simple.
You can find more on this here, on touchreviews.net.
Next issue, picking the sites to approach, and what to send them.
Tracking down a memory leak
So I was running my application through the leak analyzer with Instruments. Surprisingly, only one leak showed up. It was at a line looking like this:
self.myDictionary = [[NSMutableDictionary alloc] init];
and some subsequent assignments into the dictionary. It took me a few hours of trying to figure out if I could believe this (how can I leak something here? I am using the property assignment, that should take care of releasing the old guy, right?)…
The property is defined as a (retain) property. And then it suddenly hit me.
In the set property, the old one will get released properly. Then the new one get’s assigned, and retained. So after the assignment the ref count is increased again, so self.myDictionary has a ref count of 2, instead of one.
Duh. Duh.
While this is obvious for most people, it really took me a while to just “see” it. The line looks so innocent, so “i am going to take care of you”.
Supporting old iOS hardware
The sound project I am working on has as one of it’s goals the ability run on anything iOS, like the old iPhone 2g. There are, so far, no reasons not to be able to do so, we don’t push 100K polygons or anything like that.
But this is actually quiet challenging.
Those are the small hurdles:
a) there is no build system provide functionality. You should always build with the latest and greatest XCode SDK. So you use iOS 4.2.1. You set your target to 3.1.3. And then you build happily, using functions and methods that did not exist in 3.1.3. You do not get a warning, you do not get an error. All you get is a crash when you try to run this on that platform.
b) XCode does not, in one installation, allow you to run your image on all versions of the software. E.g., XCode with iOS SDK 4.2.1 does not include a simulator for iPhone 3.1, 3.2… it starts with 4.0.
The lesson learned is that if you want to ship something for iOS, you should have all the hardware that you want to support. Otherwise you are guessing. Or you need to preempt all API calls with selector tests, which probably will bloat your code to 2x it’s regular size.
There are in my project just 2 areas i had to work on so far that were dramatically different in iOS 3.1.3 vs. 4x.
Cut/Copy/Paste
In the times before 3.2 you had no custom Pasteboard commands. So on 3.1.3 the program crashed as soon as you tried to work with those objects, as they don’t exist in the runtime. So I started coding 2 alternative parts, one with the custom menus, which already existed, one using the default menus. The funny thing is, that currently I disabled the post 3.2 code path, as the default menu system is actually nicer to use and more easy to understand than the custom one I came up with before. So refocussing on how to do the same thing using the default actions made the program actually better, I think.
Audio file creation
The other thing I was bitten is the creation of MP4 files. Using ExtAudioCreateFile I was able to use the hardware AAC encoder to take the LinearPCM sounds I create and stream them into ExtAudioFileWrite, and let the hardware encoder do the rest.
No such luck on iOS 3.13. There is no hardware encoder, and, also no software alternative. So i needed to change the code to create a .CAF file instead of an MP4 and use LinearPCM as the encoding, meaning no encoding. Makes the files bigger, but the feature still works.
All in all fixing those 2 things took me 2 good days of work, mostly research and trying to figure out what is possible in the first place, especially in the CoreAudio case. But I think if it is just 2 days, it’s worth doing to support a few million more potential customers.
Jamie Cullum live in D’dorf
I have seen Jamie Cullum yesteday, in the venerable Phillipshalle in D’dorf. He played forroughly 2 hours 25min, and man, it was a hell of a show.
I have seen a lot of so called “superstars” performing and yesterdays live performance ranks with the best of them.
This was a group of excellent musicians who convinced me at least that they had a lot of fun on the stage. Pretty much no song sounded like the album version, there was improvisation, solo’s and everything you expect from a good live band.
Luckily for me, at least, he stayed away from the more “pop” oriented songs on his last Album. I mean he played them, but those were jazzified versions of those songs.
Highly recommended. If you ever have a chance to see this band, go. You will not regret it.
Don’t go if all you can stand is the typical radio beat.
iPhone SDK version 3.1.3 (7E18)
I wanted to test out our application on an old iPhone, 1st generation. That one just got upgraded to the latest SDK, which, at least here in Germany, is 3.1.3 (7E18).
I add the device to XCode organizer, get the profile updated, and then I am faced with the following error:
“The iPhone ABC software version 3.1.3 (7E18) is too old to be supported by XCode. XCode supports … ” a long list, including 3.1, 3.1.2 and 3.1.3. The character designation at the end completely threw off the development environment.
What to do… ?
After searching for a while, I found this:
ln -s /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1.3\ \(7E18\) /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1.3
so just create a link for this weird looking SDK, and solved it is.
Incipio Feather iPad case
I bought one of the above a few months ago. Initially I liked it a lot, it’s lightweight, has a good feel, and, at least per featureset, protects the iPad.
Now, after 10 weeks of light use, the edge of the case are starting to break apart, like if the material is worn out.
Complete waste of money.
Leave a Comment