Category Archives: Sports and Fitness

Analyzing Pokemon Go

Pokemon Go is without debate the most successful mobile app in history, in terms of downloads, users, and revenues being generated. Why? How did this happen right in the middle of all the news that the “age of apps” was over, nobody uses apps anymore, and there were no new ideas left? I will admit, even though I never play video games, and I mean never, I gave this app a shot (hey, I had to know what my kids were so excited about or else I would be a bad Dad, right?). And you know what, I liked it! Not only does it give me an activity to share with my kids, which is always good, it caught my interest like no video game has ever caught my interest.

As a mobile developer from the early days of the Palm Pilot, I have been thinking about what makes this game unique and special eight years after the introduction of third party apps for the iPhone. Spoiler alert: it’s not doing anything revolutionary, it’s just nailing the details and execution, something a good designer could imitate (but on a smaller scale).

Easy Gameplay

First of all, it’s really easy to play the game. You don’t need three arms and reflexes like a cobra. You don’t need to memorize 15 different control combinations (quickly, do a backflip and turbo boost your death ray NOW!!!! No, wrong button!!!). The basic move you learn in the first 30 seconds is flicking a ball at a creature (called “pokemons”). It’s super easy, anyone can do it.

The second move you need once you begin to level up and get more powerful is to tap repeatedly on the screen during a gym battle. It’s the same move you use when your network goes down and you are trying to make the “send” button work : ) That’s all there is to the gameplay, no special dexterity or mad speed required.

Virtual Reality

Pokemon Go is not the first virtual reality game. There are tons of them. The difference is, most other games aren’t very “real” they are just “virtual”, meaning they take you to far away fantastic places. Pokemon Go inserts virtual creatures in to the real world around you. When you first see a little virtual bird or rat hopping around on the sidewalk, it’s pretty cool and entertaining. Stop, you almost stepped on a crab!

Pokestops, where you must physically travel to to get supplies, are tied to real world landmarks and locations. I discovered a pretty neat little fish painting in my neighborhood that I drove by 1000 times and didn’t know it existed.

Other players that you may encounter seem more real when they are nearby, not behind a computer screen on the other side of the world. You begin to identify with the virtual gyms that are in your neighborhood, and you build a sense of team spirit when you join forces with other players on your team (there are 4 teams you can choose from, associated with a color).


The game is almost useless unless you are out and about. Name another video game that forces you off the couch… It’s really closer to a fitness app than a video game, a fitness app that encourages walking. (Another crossover app like this that comes to mind is a running app that chases you with zombies). By the way, in case you don’t know, driving or going at speeds above 20 mph limits the game so you can’t really “cheat” and try to be lazy.

To me, this may be the most fascinating part of the game. As I walk around, I discover the locations of new pokestops and gyms, and I will go out of my way (i.e. walk more) to walk past them. When one of my kids yells out “there’s a rare pokemon nearby!” it gets me out the door and walking when I might otherwise not be.

Goals, goals, goals

This is the addictive part of the game. Every video game has levels and incentives to motivate you to play more. Pokemon Go did not invent that concept, they just took it to an entirely new level (pun intended). There are so many things about the game that encourage you to play it just a little bit longer…

Acquire new pokemon – You get rewarded each time you add a unique new creature to your “deck”. There are about 150, so it seems endless, and each new creature is really cool to look at.

Medals – There are lots of medals that reward you for all sorts of accomplishments

Player level – As with most games, you increase your level as you play the game. This is a source of pride, but also let’s you encounter more powerful creatures and eventually battle in gyms.

Power up your pokemon – Every pokemon you acquire can be made more powerful, so you gradually build up the strength of your posse.

Evolve your Pokemon – You can also totally evolve a pokemon, turning it into a new and more powerful creature.

Hatch eggs – By walking, you hatch eggs, which give you more creatures and things you need (candies and stardust)

Buddies  – You can designate a “buddy” pokemon and the more you walk with that buddy, the more candies you get

Limited Supplies – You have a bag filled with balls to throw and other useful items to aid your never ending quest to capture more pokemon. You have limited supplies of eggs, candy, stardust, etc. that you can monitor. When supplies get low, it’s time to go out and replenish. You always need more balls and stardust so you can get more pokemon and get more powerful so the cycle can repeat!


I must say, the graphics are elegantly simple yet beautiful. There are no 3D ray tracing shadows and textures that require a supercomputer to build and run, just detailed cartoon-like graphics. Each pokemon comes with creative animations that are just fun to look at. I admire how the creators of this game invented so many wonderful and unique creatures. As with any mobile app, the judicious use of animation can really make an app fun to use, and Pokemon Go is very fun to use. If done poorly, it could have felt like the card game like it was based on, but everything feels alive and is full of motion like a great Disney animated film.

I can’t imagine how many hours were spent perfecting all the art and graphics in this game.


Pokemon Go did not invent anything new or produce some technology that had never existed before. The makers of this game simply took all the fundamental concepts that make a game enjoyable, things that most designers would nod their heads to and say “yeah, of course I know that”, and executed extremely well. They emphasized features that appeal to non-gamers, who grossly outnumber hardcore gamers, and took the time to do things right.

Is this a fad that will fade away? Like anything, many of the initial people who jumped on the bandwagon early will jump off and seek out something more challenging and more complex. That is simply inevitable and that does not mean the game failed or is a short term fad. There is almost unlimited potential to add new features to this game to keep the faithful playing it for many months and years.

Can it be copied? Since Pokemon Go builds upon many, many years of the rich Pokemon intellectual property which includes books and TV series, it would take a company like Disney to even attempt that. Just the game design, engineering, and graphical design cost that would be needed is mind boggling. It is amazing that something so difficult to produce feels so simple to play. Steve Jobs would be proud of that!

Although most developers and designers don’t have the mega resources to produce Pokemon Go, the key points that appeal to users (see above) can be copied and integrated in to your own apps. I have three app ideas that came from “studying” Pokemon Go and several features to add to my existing apps.

Choosing Your Batting Order

Depending on your coaching philosophy, you may have different ways of choosing your batting order. At the lowest t-ball and coach-pitch levels, it might be completely random. To keep it completely fair, you should keep track of the last batter and rotate to the next batter in the next game. Not much to think about here.

Eventually, as players get older, there is more competition in the game and the pressure to win grows. Putting some thought in to your batting order can definitely increase your chances of winning. When coaching young teams, you need to keep a balance between winning and keeping all your players motivated. And don’t forget the parents! Like it or not, there is pressure from parents going both ways, toward being more competitive and keeping it “fair”.

I’ll just make one point about “fairness”. Let’s say you have a rotating batting order and try to bat everyone the same amount. That may sound “fair” but it is not really fair to the players who are putting forth more effort and building better hitting skills, and it’s not really fair to the team or to the parents who enjoy getting a win more than losing. Like I said, at the lowest levels of baseball that is the norm, but as players get older, everyone deserves to have the coach put some more thought into the process.

There is a tradition in baseball that the best power hitter bats fourth, when you are trying to be competitive with the batting order. Many times in youth baseball, your best power hitter has one of the better batting averages on the team. Statistically, my position is that you begin with the best batting average (or on base percentage perhaps) and work your way down. If you look at the math, players at the top of the batting order get more at-bats than players at the bottom, because rarely does a game end with the last player in the batting order. So, if the game is close in the final inning and you have 3 hitters coming up, you want those hitters to have the highest betting average possible. I’ve coached many games where the third or fourth batter in the lineup never gets a chance to swing the bat because the game ends with the final out while they are on deck.

Another coaching philosophy is to “spread out” your hitting talent so you don’t have a bad inning with 3 poor hitters in a row. Statistically, this does not work, because you end up with good hitters not batting more often than poor hitters. You end up with more runners (your good hitters) stranded on base. The bottom line is, to win more games you want your better hitters getting more at-bats.

Now it gets pretty depressing to always bat at the bottom of the order, both for the player and the parents of that player. In the middle levels of competition where winning is not everything, I may rotate the first batter (or you can do this with the third batter, let’s say, to keep it in the first inning). For example, let’s say everyone on the team gets a chance to bat first, no matter the skill level. So my worst hitter may bat first now and then. That is a pretty good compromise between winning and keeping all your players happy.

OK, let’s say as a coach you want to carefully pick your batting order based on performance. Without statistics, you are really just guessing. Players may improve steadily throughout the season, some players may get on a hitting streak, and some may enter a slump. It’s constantly changing. Having the batting numbers handy is the only intelligent way to go. You will also find your players more motivated when they know the batting order is based on results, and not “favorites”.

Baseball Pocket Coach makes it really, really easy to record batting results, and to keep those numbers handy when planning a lineup. I don’t know how many times I’ve seen a parent asked to keep the scorebook, and they look back and say “I don’t know how”. Even worse, they gladly accept the assignment, but when you try to decipher the results after the game, you can’t make any sense out of it so you don’t get any valuable stats. For youth baseball batting stats, you don’t really need to track every pitch and throw and use a special codes like “6-3”. A simple “Single” or “Popout” is all you need to help you with batting results. One or two taps per hitter and you are done. I designed the Baseball Pocket Coach app to be so easy you can coach a base and record batting results at the same time, or to hand it to a random parent with no training. If I’m coaching and using the app, I can quickly tap in the previous batting result while the next batter is walking up to the plate.

When you use this app to plan your lineup, it will show you the batting average next to each player’s name, and you can drag the names in to the batting order that makes sense. You can look at pure batting average, or the last two weeks batting average, or on-base percentage. No more guessing. I know that I have been surprised to see a not-so-good hitter have a high on-base percentage, usually because that player draws alot of walks. If you only rely on your gut feel, you will miss some things. If you have solid numbers, you can make more intelligent decisions, and tweak the lineup according to your gut feel. More tools = better results.

Baseball Pocket Coach app on iTunes app store