Analyzing a Tech Book: Android Wireless Application Development

Prolog

I promised a publisher I’d review their book, Android Wireless Application Development (2nd edition), however, I tried doing a book review earlier and honestly it’s just a snooze to read; so I thought I’d write a blurb about tech books in general too.

In general these technical books suffer from a very common ailment, being big and boring – no normal people would read these tomes from cover to cover and enjoy it. There are some publishers which consistently publish enjoyable succinct reading; but a large majority still churn out heavy tomes which end up selling regardless of their content.

The subject has been covered in some detail.

Andrew Binstock wrote about Lax Language Tutorials not too long ago,

“These books are marked by common failings that greatly frustrate their simple mission. The first and by far most-common handicap is a confusion by the authors in which they conflate a tutorial with a detailed treatise on every aspect of the language. For reasons not quite clear, the latter approach seems generally favored by the publishing industry, resulting in almost ridiculous volumes.”

Philip Greenspun also touches the subject in his Dead Trees story,

“It is an article of faith in the computer publishing that bigger books sell better. They take up more space on the shelf and readers with a tech problem find a bigger book comforting. Readers aren’t really sure what is wrong with their computer and they only have a few minutes in the bookstore so they figure the thickest book is the most likely to contain the solution.”

Sounds plausible. I did a bit of googling about the myth of authors getting paid by the pages, but that seems to be untrue; although a thicker book might mean more sales which would mean there is an implicit motive to make your book as thick and heavy as possible.

The Bad

So how does this relate to Android Wireless Application Development? Well at 791 pages (including index and everything) it certainly is thick, although it’s not the thickest book I’ve seen. There are much worse. I’d love it if these books would limit themselves to 300 pages, but preferably closer to 200 pages.

The biggest cardinal sin of Wireless Application Development is explained by the authors’ themselves in the very introduction:

“This book was written for several audiences:”

It goes on to list software developers, quality assurance, project managers and “Other audiences”. I figure you can write a book for several audiences, but you cannot write a _great_ book which is suited for several audiences.

The tech books which have affected me the most, the ones which were of most educational value to me, have all had focus. They tended to a narrow audience which I was a part of.

In Android Wireless Application Development I found maybe 3 chapters out of 29 completely irrelevant; which isn’t that bad actually.

The Good

Then again this is a reference book first. Every chapter can be read independently of each other. There is no common thread from beginning to end; so you can just pick the chapters which interest you and read them; and this is definitely the way you should read this book. Thankfully most chapters jump straight into code examples which mostly get straight to the point.

It doesn’t go very much in depth into the more advanced subjects, but nor should it. It scratches the surface and lets the reader go online if it interests him further.
With 29 chapters this is certainly the way to go; although I myself would’ve maybe dropped some of those chapters, but at least it doesn’t leave any major subject unscratched.
It’s all in there.

 

The Judgement

I used this book as a head rest while camping for a week in Iceland; and at 791 pages it certainly worked well for that; but you’ll learn a whole lot more if you actually read some of it. Good for the non-beginner Java dev wanting to learn Android development but also for intermediate Android developers who just need a reference book.

Amateur Android Game Development Tips

I’ve been meaning to write a summary about the feedback I got to my post about being an amateur Android game developer. It was mostly collected from reddit comments, hacker news comments, and comments on the blog post.

If anyone was wondering if the post had any effect on downloads the answer is yes. It was the only marketing which clearly affected the download stats. However, as with traffic to the blog post, the effect was temporary. I guess if you manage to write interesting content regularly you could ride that wave better than I did.

So here are some points collected from the feedback, and some of my own subjective opinions reiterated from the last post now condensed in this handy list.

Have an appropriate amount of polish.

Great game concepts can be ruined by crappy presentation or bad user experience. If you don’t have artistic talent consider getting a guy to do the graphics for you. Ditto for musical talent.

You can really immerse yourself and feel the seriousness of those orders when they're given by Mr. Potato head.

 

Don’t do ad-based marketing.

Your game probably only costs a buck or so, so you’ll probably end up paying $10 to make a $1 in sales. It’s ok to do do cross-marketing however, e.g. between your games, which doesn’t cost you a dime.

On the 8th of October I paid 5.29e for 23 clicks. You're going to need some crazy conversion rate and a product which costs more than $1 if you're going to make that marketing money back

 

In-game ads make for a poor income unless you have hundreds of thousands of players

You want to risk annoying your players for a few measly cents? You can annoy them when you can afford loosing some of your player base.

That's a YEAR'S WORTH OF AD REVENUE from Theseus. It's all gonna go to finance my extravagant lifestyle. I'm practically rolling in moolah.

 

A proven concept on platform X doesn’t mean it’s going to be a hit on platform Y

Sometimes it’s just how the stars are aligned. Sometimes your version just sucks.

You may have the first pacman on some device, it still might not make a difference.

 

Updating each week will boost your downloads temporarily

I have simply not found any other easy marketing technique to be as effective.

Visitors to Theseus. Each one of those peaks coincide with an update to the game.

 

Do it for fun

Chances are it will never make any substantial sales, so treat it as a hobby. Those cinderella stories about devs striking it rich are just that – cinderella stories.

Just me and my computer on a Saturday night hacking away. Fun.

 

Don’t re-invent the wheel, or the game engine.

Check out AndEngine for instance. You’ll save a bunch of time.

Thanks Clippy!

 

Pimp out your game whenever you can

It’s not going to make much of a difference but people who don’t know about your game can’t buy your game. Btw. download Theseus and the Minotaur.

Poor applications working for their pimpin' developers.

 

Use in-game analytics

You’ll want statistics about your game usage.

That's a black box. That's how much insight you'll have about your game usage without in-game analytics.

 

Retention matters

Old players of your game are your best source for word-of-mouth marketing. You can achieve better retention by for example adding new levels regularly. In free versions if you don’t want to add more levels you could for example switch which levels are available for free to re-activate old potential customers.

Word of mouth marketing in action. The tobacco industry has great retention among its consumers.

 

It doesn’t hurt to have lovable characters

If your game doesn’t have characters consider adding some and make sure they have some personality and are memorable.

The marketing-droids at Nintendo knew what they were doing when they unleashed this yellow cretin upon the world

 

Cram out several games

Your first game is probably gonna be a dud. If your game doesn’t seem to be picking up and developing it is become a chore, then just cut your losses and move on to the next project. The more games you make the better, faster, leaner and meaner you will get.

It's the episode of Lucy when she was working in the android app factory.

Prefer game concepts which have a fast development time

A role playing game is going to need a lot of story and a lot of graphics, and a lot of your time. A game in which the player tries to beat his own high score won’t be infinitely time consuming and might still be a bigger hit.

Developer, choose your fate!

 

Thoughts? Go ahead and comment.

My Year as an Amateur Android Game Developer

Back in February of 2010 I was coding in the offices of our customer – a semi-big Finnish company. It was interesting from a technical perspective, but the project had changed directions about half a dozen times in the past 6 months. I guess it lacked someone with some backbone to lead it according to one vision. Instead they were bending over to anyone with an opinion and we had a veritable software Frankenstein on our hands. Despite being a neat programming challenge the product itself was a mismanaged collection of random features in which my own faith was close to zero. It’s at times like these you start looking elsewhere for something that would bear more meaning.

I’ve done my own random software projects now and then and the last few years my interest had shifted to products that could make some dough. I had often taken ideas to the implementation stage, but most of these projects ended up fizzling out due to lack of motivation, becoming cute tech demos in the corner of my hard drive or in a forgotten code repository. In spite of that I was getting that urge to create something of my own again.

A MOBILE FUTURE NOT TOO DISTANT

I had read about the fortunes some lucky developers had managed to make on the AppStore, but the real gold rush seemed mostly over. On the other hand the Android platform was gaining traction and it had a serious lack of fart applications; and I reckoned those fart applications needed developers. I had a crappy old Symbian based Nokia phone and thought it might be time to get one of those new fangled smarty phones. The iPhone was only available from one operator (not mine), and developing for it required a Mac, which was an even steeper investment. This made me hop on the Android bandwagon. I ended up scouring an auctioning site for an HTC Hero and on the 28:th of February 2010, I had the winning bid on a white HTC Hero. In the beginning of March a package of used mobile electronics had arrived much to the glee of a new owner.

The horse sticker wasn't included. I had to accessorize it myself.

Soon even your grandma will be ruled by a smart phone overlord

I played around with the Hero – and compared to my Nokia it was night and day. I came to the conclusion that these smart phones were going to be our overlords very soon. We’d be fiddling with these buggers updating our tweetbooks, fouring our facesquare, reading, chatting and playing on the go. In fact I concluded the gold rush was far from over, it was merely beginning. It wouldn’t be over until most people were conducting most of their online time on their phones. I don’t know where we’re now, but if we’re not there yet I think it’s pretty safe to say we’re getting closer.
Continue reading

Android Market Publisher Console Now Comes With Stats

Google has enabled more detailed statistics for all android applications.

There’s a Statistics link just below the download and active installs numbers which will open up a more detailed statistics view.

Seems like they started collecting data after mid-december because that’s how far back the statistics for Theseus goes.

Theseus Video Tutorial

Behold! An amazing video tutorial for Theseus on the Android:

It occurred to me that it might not be a bad idea to create a link to this directly from the app.
Since I think nearly all Android phones have a Youtube app, just dispatching a “youtube intent” with the url should open this video in the native youtube player.

Maybe in the next update.

Stats -> Analysis -> Reaction -> Result!

So I’ve had Google Analytics enabled on Theseus for a month now and I’ve got some stats now I can react to, and I have.

This graph show the amount visits per day since I installed analytics:
Theseus Visitors 2010-12-05 to 2011-01-08

The spikes there occur when I update the game. I usually update in a weeks interval so I can get the game into the “Just In” list. Update more often than that and your app will simply just not show up there.

So now that I have some data I started to mine. I can see stuff like which is the most replayed (i.e. most difficult) level for old players (recurring visitors) and new players (new visitors). Good stuff; but I know that some levels are going to be harder than other.

I started digging into the stats and turned up with this:

The segment is new visitors and it measures how long they spend inside the game. While the average time spent in the game was something like 20minutes, over 44% left it under 10 seconds. Yikes!

Now some people may just start up a game and quit to try it out later, but hardly 44%. I’m doing something wrong here.
My reaction was to create a big “Start Playing!” button on the title screen which takes you directly to the first unsolved level. Tutorial 1 for new players.

I released it a couple of days ago and here are the same stats for the last couple of days:

Down to 37%. I’m not a statistics guy but I guess that’s outside the margin of error.
I guess that it’ll get even lower for regular days when the game hasn’t been in the “Just In” list.

This way of improving your product is a whole lot more effective than speculating what to do next. Feedback loops are important.

Google Analytics for Android

My last update for the lite version included analytics support and now I have some interesting statistics about usage.

For each loaded level and activity startup I made it track a page view.
For each menu button press it tracks a event.

Here’s a screenshot of my Theseus Lite Google Analytics dashboard:
Theus Lite Analytics

To setup it in your app check out the documentation.

A Message from Android Market

Hello,

Over the next several days, we’ll be updating Android Market on devices running Android 1.6 or higher. We’re writing to alert you to several changes being introduced with the update that may affect your applications:

* The details page for every app will now utilize and display the app’s “Promotional Graphic” assets at the top. If you haven’t done so already, we recommend uploading “Promotional Graphic” assets for your apps as soon as possible.

* Users will be able to filter applications by content rating. If you haven’t added a content rating for your published apps, you should do so immediately at the Publisher site by December 15 — applications or games without a rating will be treated as “Mature”.

* We will be reducing the purchase refund window to 15 minutes.

* We will be increasing the maximum size for .apk files to 50MB, from the current 25MB.

* Market will support filtering based on screen sizes and densities, as well as on GL texture compression formats. Filtering is based on and elements in an app’s manifest.

* If your app includes wallpapers or widgets, Market will automatically add them to new “dynamic” categories, based on their manifest files.

Thanks, and we look forward to continuing to work with you on Android Market.

Regards,
The Android Market Team

©2010 Google Inc
1600 Amphitheatre Parkway
Mountain View, CA 94043

Retention

I read a blog post which had a video from the Angry Birds creators on the Google blog the other day and it had some effect on me.

The thing that struck me most was the word Retention. They said they keep updating the game to keep players coming back. I’ve kept updating Theseus too, but not for the same reason. I updated to keep the game on the “just in” lists. I’ve been scrambling to figure out new features to develop and other ways to improve the game to get reasons to update. These Angry Birds guys just add a few levels now and then.

Why am I not doing this instead?

That keeps old players updating and coming back, and old customers are your best way to new customers. As long as they keep playing and keep active they’re more likely to spread the word.

Retention baby, retention!

10k+ downloads and 100+ ratings

Proudly powered by WordPress
Theme: Esquire by Matthew Buchanan.