App development and promotion

One of the big things I keep trying to figure out is why so many of the popular apps tend to be developed on the west coast of the US. I don’t mean the Angry Birds of the world (which are built and grow so popular due to their first in class status), but I mean the popular utilities, camera apps, and other various social apps,

Years ago, when I was working on my MBA, a classmate of mine created a site called EZ2FindMe. It was a social network for business and college students to keep up with each other. It was built right before Facebook was being built at another college. Why didn’t it catch on?

I believe it has a lot to do with the network effect. And given that the West Coast is also the global media capital of the world – thank you Hollywood, the network economy is strong. This means that people are used to self promotion. That self promotion mind set is how you make it in Hollywood.

Those of us who are working on mobile apps need to realize that you can’t just right the best app. You have to work hard to code, but you have to work even harder to promote your app. For many this is not our natural tendency, we like the instant feedback if the compiler. The code we’ve
been working on has magically transformed into a tangible app and we can play with it. In promotion, we spend time tweeting, blogging, going to events, and talking about our app – or our vision if the app, and we have to wait for the network to take hold.

Yes it’s hard, but you have to do it. Go out there and talk to people about what you are doing. Show off your hard work. It can be fun…and the more people who see and get your app, the more opportunity you will have to get back to writing the code.

Cross platform vs. Performance

I’ve been working with a small team to build a cross platform game leveraging the Cocos2D gaming engine on iOS. I chose this platform for a few reasons:
1) There is a really good book explaining the basics of game programming and the libraries.
2) There seems to be a good number of other people using this engine
3) The game I am working on is a turn based strategy game and this engine seems to support that
4) I wanted to create a hex based map and had read that Cocos2d supported this
5) I had heard that it is cross platform capable with Cocos2d-X

Given those four reasons I have started looking around on StackoverFlow for more information on the cross platform nature of the libraries. Previously I had only found a single wiki that talked about cocos2d-x. So I was a bit worried already.

After a bit of reading, I didn’t feel any better or any worse for that matter. The biggest concerns that I have found in my readings are as follows:
1) Cocos2d doesn’t really support hex based maps (so I’ll change my design)
2) Cocos2d-x is really a C++ wrapper which requires that you code in C++ for iOS too (doesn’t seem too painful yet)
3) Like all cross platform development this is going to be hard (and will probably take a performance hit!)

Given those three findings, I am trying to decide, is it worth starting from scratch with a cross platform game and design? Will I learn enough, so even if the game is a bomb, the overhead will be worth it?

What do you think? Do you code for multiple environments upfront, or port your app once you have a success?

Security and your Mobile App

There’s an interesting perspective when it comes to mobile apps, people writing games don’t necessarily think about security. Enterprise app developers must consider security in their apps. And if you are developing social apps, security is even more important, there is no faster way to kill a social platform than to violate your users trust and security (unless your name is Facebook).

If you are writing a game, do your players care that they can get in and hack your high scores? Probably not if it is a stand alone game, but if it has leader boards and multiplayer, you don’t want to allow this… it will ruin the game play and lose you gamers.

How do you handle security?