Warming up to iPhone

I'm on the startup path. One thing you realize when you set out to do a startup where you will initially do all the heavy lifting is that you don't know everything you think you know. For me, I've been training for this for a while, I have web stack burned in to my head and it just drips out of my fingertips. However, what I didn't have was enough mobile to get me by. I've done plenty of web-based mobile apps and mobile web sites but what I plan to do quickly outgrew that and needed access to the phone's hardware.

I have released 2 apps which served me well as learning tools and submissions to the San Diego App Challenge. Win or lose, I figured I'd do these two apps rather than any "hello world" book samples.

San Diego Transit

Available for iPhone, this app is the only native iPhone app that integrates mapping and realtime bus location data for all areas that San Diego MTS covers. I was shocked to learn that such an app didn't yet exist in San Diego, but multiple existed for all other major California cities. See the video below for a walkthrough.

Download San Diego Transit on iTunes:
http://itunes.apple.com/us/app/san-diego-transit/id518207969?ls=1&mt=8

 

What I learned doing this app:

  • UIMapKit, iPhone's mapping framework
  • Loads of strategies for doing databases that live on the phone via SQLite
  • MonoTouch UI development
  • Web service / data connection and parsing (iphone phone-home!)

Street Report

Simply take a photo, share your location, and alert the city to issues. The trick here was getting the data to the city, and using some HTTP POST magic, was able to auto-fill the city's own service request form.

What I learned doing this app:

  • Photo taking / storing / manipulating
  • Low-level HTTP work for iPhone
  • Windows Azure cloud storage from iPhone
  • Location, reverse geo-tagging

Download Street Report on iTunes:
http://itunes.apple.com/us/app/sd-street-report/id518218814?ls=1&mt=8

 

The skinny on MonoTouch

Mono is an open source .NET implementation. MonoTouch, and MonoDroid are .NET libraries that allow for developing native apps in C# on iPhone and Android respectively. Because C# is also the language of the new Windows Phone 7 platform, I was intrigued by the possibilities of less code. I just stuck to MonoTouch

The short version:

I like it. It wasn't no-brainer by any means, but MonoTouch was just the right about of abstraction from Objective-C. I feel pretty confident I can cross-develop for all 3 phone platforms, re-using anywhere from 50 - 90% of the code, depending on the type of application.

The long version:

Since MonoTouch compiles right down to the native objective-c bindings, and it uses the XCode UI development tool, I really felt like I was developing iPhone the way objective-c developers do. In fact, I found I could talk to them and get tips / strategy, or follow along with solutions on Stack Overflow. The best benefit was writing it in C# and getting to use .NET framework pieces, like web service calls, JSON parsing, and a ton of other useful framework pieces we take for granted.

My second favorite thing was how easy MonoTouch can be to do real database work, using SQLite database development. An open source tool called SQLite-NET (https://github.com/praeclarum/sqlite-net). It's kind of like Entity Framework Code-First, for iPhone since it can generate the tables, and makes CRUD operations to that SUPER simple. It's a HUGE time saver and worked perfectly for large data sets / normalized data interactions

Let the fun begin

Now, back to these regularly scheduled programs. 2 Apps published, a ton of new development potential in the vault, and some exciting beta products coming soon.

***UPDATE*** 6/29/2012-  Street Report Wins Grand Prize and City Innovation Award

I'm so grateful to the judges of the SD Apps Challenge for thinking so highly of this app. It won 2 awards, City Innovation ($5,000) and Grand Prize 1st Place ($15,000). The money is of course helpful as I work on my company, Small Steps Labs, but the recognition is equally appreciated. More info from the UT article: utsandiego.com/news/2012/jun/29/tp-winner-fills-hole-in-city-app-market-winning/ 


Food Buster Game

14 Sep 2010 In: ASP.NET, Food Buster, San Diego

Apps For Healthy Kids contest /

Food Buster Logo

A couple of months ago my wife and I created a healthy app for kids called Food Buster for the USDA and Michelle Obama's Apps For Healthy Kids contest. Creating the game with my wife was a lot of fun, and I even learned a thing or two about food, calories, and exercise. What has ensued though has been nothing short of a humbling experience.  Once we had been selected as finalists we decided that should we win the popular vote we would donate the $4,500 prize to two great non-profits. This gave our efforts a purpose besides getting us to Washington D.C. and the support from friends, family, and total strangers was great.

We even got a little bit of air time from channel 6 San Diego:

We had a nice article written about us by the UCSD news, another great article in the North County Times, and just the briefest mention by the LA Times.

My wife and I had a great time building this app, getting people interested and educated about our cause and showing off our idea. We went to great lengths to get the word out, including dressing up in costume as a carrot and banana for web clips and walking around town:

 

The good news is we aren't done yet. Nope. We've got some great plans for Food Buster. New features, more interacive game playing, and better graphics, and sound. We got a lot of feedback these last few months and are excited to put it in to action.

We also just became members of a great program by Microsoft to support startups called BizSpark which helps new startup businesses get off the ground by giving them access to all the development tools Microsoft has to offer (all that  I'd ever need, that is). I'm proud to endorse this program and these tools. Building Food Buster in just a couple months in my off hours was only possible because I had access to great tools which made rapid development possible. I developed Food Buster using ASP.NET, jQuery Ajax, jQuery UI, SQL Server, and LINQ data objects.

Many thanks to Aaron and Lynn at Microsoft for inviting me to the program, setting me up with the tools and answering all the questions I had about it. We now have some very powerful tools to further develop with as well as access to some much needed server resources on the Azure cloud platform.

 

 

SD Fires Update

24 Oct 2007 In: San Diego

Wednesday is here and as you can see the fires have spread and continue to threaten a large area of San Diego. I'm working from home again today trying not to go stir crazy. Jesica, Ben and I went and saw The Darjeeling Limited. Jes and Ben went to Qualcomm yesterday to see if they could help out but there are so many San Diegans needing a hand they've actually told people not to come, there are too many volunteers. They also have too much food / water for now, but they need cots, air mattresses, and portable showers.


For those of you still concerned about where I am, here's a map to re-assure you a bit:

 



The yellow areas are evacuation areas, the red are areas that fire have been / are.

Jesica and I are heading out of town tomorrow night -- we've had a trip planned to San Francisco on the books so we've got plane tickets for Thursday night through Sunday which will be nice to get out of the bad air.

Thanks for the concern everyone.

San Diego Fires (again)

22 Oct 2007 In: San Diego

 Well I'm fine, but a lot of people in San Diego are not. This is crazy, very reminiscent of the '03 fires that closed UCSD for days. My work (Taylor) is closed today and I'm working from home, so that's alright. We may be closed again tomorrow, I'm supposed to call in and check the company status.

Jesica and I are going to keep an ear to the news and if they need volunteers tonight we might go over to Qualcomm stadium and help out. They're asking people to stay off the highways and the phone lines for now, so we'll just do that.

My thoughts and prayers are with my co-workers who live in Escondido and Ramona who have already evacuated. For a minute-by-minute updated map you can check out this map.

Update: (6:45pm) -- Jesica and I investigated volunteering for the Red Cross but they currently do not have any openings for people with no current red cross volunteer statuses. They are doing trainings to become certified which doesn't help us as we only have our immediate time to give.

On a positive note, the air quality in Hillcrest / North Park is quite good, we must be in some kind of pocket as we can see smoke clouds in every direction but above we can see clear skies and stars. My work is also closed tomorrow, so I guess it's another day of working from home which isn't bad at all.

Update: (10:35pm) -- Ben's area is being evacuated, possibly voluntary but he says all of his neighbors in Mira Mesa are packing up and the news has said that reverse 911 calls are being made to Mira Mesa residents. He'll be spending the night over here. We're watching the maps / news but we're probably in the best place to be in San Diego. The air quality is still very good, although extremely dry. I'll keep you all posted.

Update:(10:50am) -- The fires continue in San Diego but we are still very far away from it. I'm again working from home and Ben and Jesica went over to Qualcomm stadium to see if there is anything they can help out with since both of their works have closed up for the day. The latest numbers I've heard are that 375,000 homes have been evacuated across the county.