Week 9 – Re-evaluating Things

My Indie Journey on April 12th, 2010 No Comments

Over the last week, quite a few interesting things have happened that are causing me to re-evaluate things a little.

Contacting Opportunities

When I started this indie adventure, I didn't really plan on doing any consulting/contracting jobs. The whole point of this was to work on things for myself and see what happens. Well, I heard about a couple of contracting jobs my company could do and I'm starting to reconsider my position on such jobs. I'm still going to continue work on the iPhone/iPad as far as doing my own apps, but a little contracting would certainly help keep things running. The reality is that I want to take my time and really build the new iPad app right and release it when only when it's ready to go. The problem with that is that I do have a pretty fixed runway right now and if I need more time than I've allotted, then I may not have a choice to stay indie. If I had a bit of contracting income, I'd be able to extend that runway a bit, but of course, if I'm working on a contracting job, I'm not working on my own stuff.

Android

I know there is a growing interest in the Android platform, so I thought it would be a good time to take a look at the Android SDK. I've been playing with a port of Budgee for Android and I'm not sure how much I like the platform. Everything seems a little more difficult because of how Google chose to architect things. I'm not a big fan of Java, although it has definitely improved a ton since I last used it. I still really dislike Eclipse - it has some powerful features, but something about it just doesn't feel right. Maybe that's just because I've used Visual Studio (and now Xcode) for so long, but it definitely feels like everything is a huge collection of plugins instead of a tightly integrated & streamlined IDE. I may finish the Budgee port just to see the whole Android process, but I'm not sure if I'll actually release it into the marketplace. It's interesting to see a different perspective on mobile development at least.

MonoTouch & Apple's 3.3.1 Clause

I've mentioned before that I've been a .NET dev for a long time. I didn't like Objective-C that much when I first starting tinkering with the iPhone, but I've grown to appreciate it and the Cocoa framework. Having said that, I'd still like to write a lot of the code for my iPad app in C# on .NET. Naturally then, MonoTouch was a pretty good choice for me (for this specific app). I started really evaluating MonoTouch as a serious possibility about two weeks ago - I wrote a good bit of test code, tried out debugging, checked out what is/isn't supported, and just generally kicked the tires. Well, it looks like this isn't a viable option anymore due to the new developer agreement. I'm not *that* surprised with this new change, but it's a bit disappointing. I've got another post about this topic specifically, so maybe I'll publish that one day. Yes, I can write everything I need in Objective-C, but for my specific app, several things would have been much easier to deal with in C# (particularly since I could also use Visual Studio to write/debug/test all of the backend code). The UI code would still be all Cocoa widgets, so that part doesn't change either way. The big downside to having to write all of the backend code in Objective-C is that I can't use it to power the web services the app will need (which will likely be written in C#), nor can I port it to any other platform (other than Mac) without re-writing things again. I realize that is part of Apple's goal, but as a developer, I'd rather write the backend/logic components once and then craft a native UI on top of that for each platform/device. I know the MonoTouch team will do their best to make MonoTouch compliant with the new SDK, but it feels like using MonoTouch at this point is going to be asking for headaches later on...so I'm going to go ahead and build out everything in Objective-C.

This Week

I'm going to finish up some work around the contracting opportunities, and then I'm going to start some hardcore work on the finance app. I've spent plenty of time with the iPad and the apps that are out there at this point, so I have a good idea about what I do and don't like as far as UX goes. I'm extremely happy with my decision to not rush something out the door for iPad launch - there are several things I didn't think would be that important before the launch and now I can see they will be extremely important.

No Responses to “Week 9 – Re-evaluating Things”

Leave a Reply