Making and Selling Quality Software for the iPhone

Recently I’ve been hearing a number of complaints from iPhone software developers about pricing. These folks want to get out of the “99 Cent store.” The vast majority of these guys are either producing shovelware, first time coders, first time businessmen, are not making the effort to strategize their applications on the app store.

There are five basic things you need to do to get your app sold.

  1. Price appropriately, price not-free.
    Have a lite version so users can get a taste, but, do charge money for a full application. Don’t half-ass it with a 99 cent program and think you’ll get into the top-tier of sales. That is essentially a lottery at this point with the 10,000+ applications out there. Don’t go free, because then you lose your standing. Only go free if you want to establish a brand like ngmoco before releasing your paid apps. Also note that reviews are stacked against free apps, since more people will download apps for free, but are less likely to be commited to (and appreciative of) the app. Whenever someone makes a purchase for anything, they become more committed to it. Just like sony/microsoft/nintendo console fanboys become more commited when they own “they greatest console ever.”
  2. Make quality software.
    If your software isn’t very good, even the fart app fans will review it appropriately, and it isn’t going to go anywhere. If this is your first app, fine, make it a free application to demonstrate your willingness to learn, and then once you’re a better programmer you can move on to…
  3. Strategize your pricing.
    Start out with .99 cents. If your software is good, you’ll get into the top 25.  Once it is there you can iterate on the software and raise your price appropriately. Drop the price if you fall out of the top 25, have a sale, whatever.
  4. Iterate the holy hell out of your software.
    The biggest purchasers on the app store play with a piece of software for at most a few minutes and then never touch it again. You do not want these people to delete your app and rate it poorly. If my theory is correct, those same people are punching the update app button on the apps part of iTunes every ten minutes. You want to be updated whenever anyone hits that button so that their interest in your application comes back. There are a lot of little parts to this as well. Change your icon so these people understand that your app has undergone a significant change. They’ll see it in  iTunes and they’ll see it again on the iPhone. With any luck they may go back to the app store and review your application well, and even give it the benefit of the doubt for any problems it is having because you are updating it. Every time you update, you get back on the new page on the iTunes store, even if you just update to change the version number. Updates are free advertising.
  5. Spend just a little on marketing
    Most of the applications that are free have some kind of admob integration, buy through them and it won’t take much but the uptick in users could get you to be more sticky in the app store. Do not use admob advertising in your own application, you’d just be advertising for other applications.
  6. Consult with others, network the hell out of yourself and your product before and after release.
    There are only so many things you can know. You might be a good marketroid but a poor developer. Then you’ll need to talk to find a community of developers on a forum or IRC channel and get chatting. Establish yourself there, help others, and others will help you. The same goes for being a developer and needing tips on marketing, or bizdev, or whatever. Talk to other people about this stuff so you don’t make mistakes in the long run. Lets say you’re writing your first OpenGL application, and it is for the iPhone, talk to OpenGL developers, don’t do it all on your own! The “others” you consult can even include your users, include a feedback form of some kind in your app. Do read and understand their feedback, if the majority of your users want something, you should probably deliver it. Ignore the crazy people who tell you they want more porn in your app.

Once you’ve got one app that has sold really well, and you’re ready to move on, think about continuing to support the older application and lowering the price. Eventually as you get back down to around the 99 cents, you’ll want to think about your strategy for going free with that app. Once it is out of the top 50 it isn’t going to do you any good, so it might as well get into the top 50 on the free chart and become an advertisement for your newer applications.

So there you go, I’m just a reviewer of software, but stop complaining about why it isn’t selling and try some strategies. The worst you can do is fail as poorly as you are now. Or tell me why I’m wrong, I’m sure my strategy isn’t perfect. Talk with other developers and publishers like ngmoco, find out why they’re successful, and use those ideas to make your apps sell.

50 Cent: Blood on the AtomicGamer iPhone Game Reviews

Yo Fitty!

50 Cent doing his best to appear interested, tough, and ready for anything.

Fitty, dey got some new iphone game reviews up!

50, not pleased with the iPhone's established genre of farting apps.

Naw man, it ain’t like dat, dey gets some shit that aint fart appz, yo!

50 Cent, hears, and is interested in, expanding his iPhone horizons beyond flatuence applications.

Yeah dawg, that is right! They got that shit up at atomicgamer! I heard they reviewed:

  • Days of Thunder
  • Galcon
  • Scrabble
  • Truck vs Grenade

feature_tdsquad

But yeah, and if you follow the TimeDoctor.org Twitter Feed, you’ll even get a whack at some free iPhone games soon, what about that, Fitty!?

50 Cent is now overjoyed, and will follow the twitter feed!

A Comparison of Current VOIP Solutions for Gamers

Computer games have been an important part of my life since as long as I can remember. I’m still young, but I caught the tail end of Kali and saw Mplayer rise and fall, and Gamespy never quite thrilled me like All Seeing Eye. Things have changed a lot over the last decade, but one important tool has remained the same. I discovered this tool during the beginning of my birth into the FPS clan community. The reason people were so darn good was because of they had the one advantage the noobs didn’t — communication. I honestly can’t think of anything more important in online gaming than your access to voice communication. Not only does it make the experience more enjoyable, but also helps to create friendship on a whole new level.

The difference between now and ten years ago is that we’ve finally brought in choice. Out goes relics like Roger Wilco and in comes some real competitors. As we all know, competition fuels advancement. Many gamers these days are constantly bickering over which tool is better – Ventrilo or Teamspeak. Others who like to keep their VOIP sessions a bit smaller and more personal tend to utilize Skype. However, a few are catching on to this new kid on the block known as Mumble. As primarily a Teamspeak user, I have been itching to test and see what solution is truly the most superior. When it comes to FPS games you need every tweak possible to keep up with the rest and VOIP is definitely on that list. I had some free time and access to all the required software, so testing is what I did.

Before I begin I’d like to quickly touch on the advent of in-game VOIP technologies. I think it’s wonderful and a great asset to multiplayer online games. It sure makes things enjoyable when you have a good team of random people communicating and working together online. I like that the volume can automatically lower for the VOIP transmission which is a feature unique to this integration. However, there is a drawback to this — you can’t easily contact other people you know who are playing other games. It’s just not a solution a clan or squad who play multiple games regularly can rely on. Furthermore, you have to remember that the server is doing this work and heavy VOIP can cause a game server to lag as it takes up quite a bit of bandwidth and some CPU time. Consequently the audio quality can be poor as I have seen in a few games. When it comes down to it, this is not something I’d rely on in the competitive gaming community.

I’d also like to give you some background on the setup so we don’t get a thrall of flames and accusations. I’m a Unix/Linux sysadmin with a networking degree. I do have half a clue regarding networking, but if you see a blatant mistake please, beat me senseless. I only have control over my network during the tests, so I can’t vouch for others, but there is no interference on my end. I tested with no traffic (web, torrent, etc), and if you’re wondering I have QoS setup for all these applications at the same (highest) priority. A friend of mine runs my clan’s Teamspeak server on FreeBSD 6.2. He also put Murmur on that same server. Ventrilo is on a separate server, and Skype is . . . well, Skype is Skype. I’m watching the Stanley Cup Finals as I write this and making this a bracket competition kind of makes more sense because of the visual representation and it fits my testing process. Behold, the competitors.

Skype – – – – – – – – – –                                    – – – – – – – – – – Teamspeak

___________________| _______ vs _______ |

Mumble – – – – – – – – –                                     – – – – – – – – – – Ventrilo

The first on my list was Skype (3.8 win32) vs Mumble (1.1.4 win32). While speaking to the Timedoctor himself I compared Skype and Mumble’s performance by speaking and listening over both connections at the same time. On my end the Mumble server was reporting 45-60ms. I found the voice quality to be pretty close. Mumble uses Speex for voice activation detection, background noise filtering, and compression. Skype utilizes a proprietary protocol of which the details are scarce. I have always enjoyed the voice quality of Skype, and Mumble has that and more. My experience showed that the background noise filtering was superb and pushed Mumble to the top in this category. Skype also happens to use a more P2P type of communication instead of client/server, but don’t let that scare you. I’m not going to discuss bandwidth or resource usage because that’s not the point of this article — we want the best tool for you no matter the cost. However, latency is certainly important. It was quite close actually, but Mumble was slightly faster than Skype. Skype was the echo in this test, and I’d have to say it was something on the order of 250ms — definitely noticable. Mumble wins this one.

Skype – – – – – – – – – –                                    – – – – – – – – – – Teamspeak

___________________| Mumble vs _______ |

Mumble – – – – – – – – –                                     – – – – – – – – – – Ventrilo

Teamspeak (2.0.32.60 win32) and Ventrilo (3.01 win32) were the next up to the chopping block.. Teamspeak has Speex for its high end audio codec as does Ventrilo. Teamspeak’s audio is not exactly something to write home about. It has a bit more liberal licesing and that’s probably why it has a pretty good foothold in the hosting market. Ventrilo, however, makes you sound human wheras Teamspeak’s audio quality can’t really be explained adequately. Even at the highest settings Teamspeak seems to make you sound like you’re in a wind tunnel or a tin can without a very high end mic. Don’t critique me on this, I’ve had dozens of mics and they all end up with the same results. Latency was extremely noticable. The Vent server was measuring 22ms and the Teamspeak was measuring 45-60ms. No wonder you Vent fans fap furiously to the egotistic Vent developer (singular). We’re looking at nearly a 1.25 second difference here in audio! This was just mind blowing. In an FPS game this can be the difference between (virtual) life and (virtual) death! On a side note, Teamspeak has one feature I want to see more often though: you can amplify the audio to make it louder than other applications. It’s nice to make the VOIP louder than the rest of the system so you don’t have to lower your game’s volume. This is probably less of an issue than I’m making it out to be, but I really do enjoy this feature and can’t quite locate this in Ventrilo. If it’s there, sue me. Either way, this Bud’s for you Vent, you earned it.

Skype – – – – – – – – – –                                  – – – – – – – – – – Teamspeak

___________________| Mumble vs Ventrilo |

Mumble – – – – – – – – –                                  – – – – – – – – – – Ventrilo

Okay, we’ve weeded out Skype and Teamspeak. The final showdown needs a bit of an introduction. From my machine I have the following measurements: Mumble showing 45-60ms as stated earlier, and Vent claiming 22ms. Let’s get straight to the point. Latency for Ventrilo was comparable with Skype. Mumble has the advantage here. It’s slight, but every bit is critical. In the audio quality realm it’s very close, too, but Mumble has actively working background noise filtration that can be the difference between hearing your teammate the first time and losing critical time asking “WTF?”.

The conclusion is pretty simple. If you want the best you can get right now for VOIP you better look at Mumble. Not many hosting companies offer it yet, but if you can get a VPS or a dedicated server go out and install it immediately! There’s not much more to ask for — you get great audio quality and latency, in game overlay is a part of Mumble, directional audio can hook into games, nested channels, awesome multiplatform support, and probably others I can’t think to mention. The only negative is that although user and group control is great once you get the users created . . . creating them is not exactly straightforward. There is a perl cgi web interface for it, but it’s really basic. I expect this to be taken care of soon, but it is something you should know about. Get past this hurdle and you won’t look back. Either way, do these Mumble devs a favor and get them laid as a THANK YOU for such an amazingly well performing app. Just don’t get them into a relationship or we might not see version 2.0. P.S. Teamspeak 3 is vaporware. Don’t get your hopes up.