FBS Confessions: iPad support and why I love web developer interns

Feb 9, 2011 Michael Wurzer

This post is both pleasing and painful.

First the pleasing part: We’ve released an update today for flexmls Web that significantly improves compatibility on the iPad.  We still have some things to fix (Flash charts and touch controls on mapping), but the basic functionality of flexmls Web now works on the iPad.  Specifically, we’ve fixed the scrolling problems in search results with the detail report and the left list (you can one-finger scroll both), fixed a display bug that prevented emailing of listing reports, and fixed several orientation challenges.  It’s not perfect yet, but it’s a lot better than it was and definitely is functional.

Now for the painful part.  One of the stakes in the ground on which FBS has distinguished itself and its products over the years has been support for multiple browsers.  Our theory in being steadfast about following web standards has been to be prepared for innovations exactly like that brought by the iPhone or iPad.  As  long as they ran a web browser, we’d be compatible.  Of course, life and software development are never that easy.

I’m about to go a bit technical here, but I think it’s useful.  Several years ago, we focused on turning flexmls Web from a web site into a web application that required less scrolling, no (or fewer) popups, and generally looked and felt more like a desktop application than a web site.  In some respects, those changes pushed the boundaries of what even desktop browsers could do.  To accomplish the “application” look and feel we were after, we used lots of iframes and other techniques that later on proved incompatible with the iOS and other touch-enabled mobile browsers.

We knew this going in but figured we’d be covered because we had a mobile version of our web site.  Alas, whereas flexmls Web was pushing the boundaries of what desktop browsers could do, our flexmls Mobile site was lagging way behind the capabilities of mobile browsers. Of course, this conflict came to a head with the popularity of the iPad, which was running a mobile browser on what people viewed as a desktop-like device.

When we first started discussing this problem, we concluded the best approach was to escalate work on our mobile site to take advantage of the increased power and touch-screen support in mobile browsers.  We reached this conclusion because we knew the design of flexmls Web presented big hurdles to compatibility given our use of iframes.  Removing the iframes was a major overhaul that was significantly more daunting than revamping mobile, so that was our direction.

Though we had a plan, our customers wanted a fix and they wanted it now.  Fortunately, one of FBS’s primary hiring channels is an intern program with our three local universities.  We hired two new interns this year, and, one of them, Nick Larson, was assigned the project of trying to fix some of the iPad bugs in flexmls Web.  Now, here’s why I love interns.  They come in with their eyes wide open, willing to try pretty much anything.  Heck, they’re just excited to be coding.  They don’t know or care anything about the legacy of the code or the nasty problems lurking around every corner.  They just go for it.

In this case, within a few days, Nick had figured out solutions to several of the key scrolling problems flexmls Web presented for the iPad, without having to ditch the iframes at all.  (For those interested in more technical details, I’m hoping we’ll get Nick to post a “how to” over on our Developer Center blog in the coming days or weeks.)  Almost magically, what was a major pain point for our customers is now mostly solved.  Again, some incompatibilities remain, but we’re working on those as well.

What’s really fantastic here is that Nick has shown us that flexmls Web can run on the iPad and that fact has changed our strategy.  We’re no longer cornering the iPad only into mobile.  That’s not to say we expect everything in flexmls Web to work on the iPad, but we do expect the basic functions to work. And the really great news is that we also have been making significant progress on our new mobile site, which also will work on the iPad.  So, we’re back to our beginnings and doing everything we can to support the most popular browsers today, which most definitely includes the browser on iOS devices.

For those of you who have been waiting patiently for some form of iPad support, we apologize for how long it took and we hope you enjoy the support we now offer.  We know it’s not 100% but we’re headed in the right direction.