Saturday, October 24, 2009

The next iphone app

I'm several weeks into my second iPhone app, one I'm not yet ready to share with the world. I will, however, say this about it. Currently, I don't see any competition for it in the iPhone App Store. That either tells me that there's no demand for it, OR, and I personally like to think this is the case, nobody's seen this niche yet, and it's been completely ignored ;)
However, this post isn't just about me telling you I'm working on a new app that I can't tell you about yet, but more importantly, it's me describing something I consider to be important when building any app, not just iPhone Apps, scope creep, feature creep and lack of accurate sizing.
Any developer can tell you what any of these can do to a project. As you start building, you start seeing all the "cool things" or things you didn't think about when you started that would make a product better. So, you start adding the new features, and pretty soon, your 2 or 3 week (or month) project takes 3 times as long to complete, and in that time frame, you've not built anything you can sell. I'm not an advocate of releasing broken software, and in fact, on the App Store, you can't release broken software, or at least there's a good chance it will get rejected by Apple before it gets to the store. What I am suggesting, is think out your projects before starting. If you have to, draw out all your screens, on something like notepods for an iPhone, or just simple wire frame drawings for other apps (web, mobile device and desktop). This will help you not only set some direction for your project, but also help you scope it out. Is it too big for one person to build in a reasonable length of time? Are you going to need help? Is it within your skill set and expertise? Can you build part of it, get it out and monetize it while continuing development?
All of these questions I think are relevant and crucial to answer before starting a new project.
Ok, now back to my current project, the one I can't tell you much about yet. I fell into this trap on this project. No, I haven't had any scope creep, or feature creep, although I do have a feature list of enhancements for future releases, thanks to a couple of friends who have seen the project. Where I think I failed on this one, is, thinking it was a smaller project than it really was. I figured this particular iPhone app was about 5 screens, all pretty simple, with 1 custom table cell view. Well, as I drew it out, and it made some sense, so I started coding. Unfortunately, I didn't do any kind of work flow management, how you go from screen one to screen "n". Therein lies the problem. Those 5 screens are currently about 10, with at least 4 more to go, with nearly all of those also having heavy development in table cells. If my full time job was iPhone development, I might say this still has 2 weeks of development left, but since it's not my full time job, this could be another 4 or 5 weeks. Looking back, I should have found someone to partner with on this app, and given them parts of it to build, which would have saved me a lot of time and headaches in the meantime.
Of course, now I'll have a framework for the next app like this, so I'm sure when I start the next one, I'll probably fall into the same trap again, given I have such a big base now, but time will tell. ;)

No comments:

Post a Comment