In the ongoing development roadmap for HomeSpot HQ is a simple item: Create a Mobile Optimized Site. By itself, it is a pretty straightforward task. We designed the HomeSpot HQ site for a 1024×768 browser window. And while most of the modern mobile devices will render this site satisfactorily, there is definitely something about a truly optimized browsing experience when using the scaled down browser on an iPhone or (in my case ) Droid Incredible.
Web or Native
Our first strategic decision has been to focus first on an optimized website in lieu of a native mobile app. There are plenty of reasons for leading with this approach:
- the ability to leverage our existing code base vs. managing multiple code lines per device
- broader device audience vs. per device versioning
- avoiding deployment channels (and cost) via AppStore or Android Market
As HomeSpot is an ASP.NET MVC application, I was able to use some guidance from Scott Hanselman about having a parallel set of Views for the mobile browser set that run alongside the default set of Views for the traditional browser set. This approach allowed me to use my existing Controllers and (with a few exceptions) reuse the Models without modification. Compared to rewriting in Java or learning Objective C to target their respective device platforms, this approach represented the fastest path to mobile coverage.
Split or Common Site
The other choice I made was to keep the mobile version and desktop version of the site under the same Url. There are several pros and cons to this approach, and there may in fact be some ramifications I will have to deal with down the road. So, the user experience will be such that if you view the site on a recognized mobile device, you’ll be served the mobile optimized Views, otherwise you’ll get the normal desktop Views. The Url won’t change between the two versions.
The advantages of this approach, so far as I have thought about them, include
- easier deployment process with only one site to manage
- unified Google Analytics
However, there are some trade-offs:
- lack of distinct Url such as “m.homespothq.com”
- inability to easily deploy code fixes just to mobile site independent of main site
- trickier to allow mobile users to view the non-mobile site if they so choose.
Mobile Web Framework
The final decision I chose to make was picking a mobile optimization framework. I looked at iui and jquery mobile primarily, and decided to go with jquery Mobile. While it is still emerging from an alpha stage, it appears to be meeting my expectations so far. I’ll create additional posts with more specific commentary on this platform.
The Mobile Optimized HomeSpot site is still under development and initial testing. Given the limited time afforded to me to contribute to my own side-hustle, I hesitate to even offer a ship date. Still, it has been a good exercise to weigh out the various options for reaching a mobilized audience.