Zillow VP shares developer trends at Google I/O Extended event in Lincoln

Garrett McAuliffe, VP of Engineering for Zillow, an online real estate database, predicts most web traffic within a year will come from touch wave devices and talked about the challenges associated with developing software for multiple operating systems…

Garrett McAuliffe, VP of Engineering for Zillow, an online real estate database, predicts most web traffic within a year will come from touchscreen devices.

He also talked about the challenges of developing software for the multitudes of operating systems those devices run on in a half-hour keynote during Lincoln’s Google I/O Extended event Wednesday. About 35 local tech community members attended.

“We’re back to the bad old days in mobile,” he said. “Now you’ve got to write your software once for an iPhone, using Objective-C for your programming language, and then write it again in Java on Android, and then write it yet again on Blackberry J2ME or on a Windows Phone using C Sharp.

“If you try to support all devices, you’re writing at least four times, and you’re still writing for the web.”

To avoid excessive rewriting, McAuliffe said, one could simply ignore some of these devices. Zillow, for example, which has been developing both Android and iOS apps for nearly five years, writes solely for those systems, ignoring Windows Phones, which aren’t selling well, and Blackberry, “which is sort of digging around in a crater right now.”

The other potential solution, he said, is to create hybrid apps, which fuse native iOS or Android and web technology. To illustrate, McAuliffe displayed Zillow’s real estate app. 

The top half of the page, he explained, is native technology, written in Objective-C. The bottom half is pulled from the web page.

“And when we did this we found it was really great, because on most Android phones you don’t even see the web portions below the fold—it’s off screen,” he said. “So the top portion, the native portion—we have the data on the device immediately when you go to this screen, and so that appears instantly. The bottom portion appears if you scroll down. So that was an early thing we did that worked really well.”

Following the release of the iPhone 5, Zillow rolled out a second hybrid version, this one for their mortgage marketplace app, to account for a longer screen and slower loading time “below the fold.” Here, McAuliffe said, they flipped the native and web technology: HTML on the top, native controls on the bottom. As the user manipulates the sliders on the page using the native technology, the graphs above (HTML) animate to reflect the adjusted loan rates. 

“We took HTML, CSS and Javascript, and we packaged that in the app that we shipped to the Google Play Store or Apple’s App Store, and every time you touch one of the native controls, you make a Javascript call into the Web view portion. The Javascript there would do animation of the graph and it would update the HTML that shows the breakdown.

“That worked really well for us because we could then take that web technology and we could put it on an iPhone. We could use the exact same technology and put it on an Android phone, and in fact even on mobile web you could run the exact same codes. We were writing it once and running it on three different platforms, and we got much more leverage out of our development.”

McAuliffe also spoke to the challenges associated with touch user interfaces. Customers today expect anything they touch to respond immediately.

“All of this need for speed is being done on little devices, with low memory, with slower microprocessors than your desktop, and the networks are really late,” he said. “Once bytes are flowing they’re flowing pretty fast, but it takes a long time to get the first byte off.”

To meet customer expectation, McAuliffe suggested using responsive design, adjusting the layout according to the device being used. On Zillow.com, he said, users will see a very different screen depending on whether they’re visiting the site from a desktop or a mobile device.

“So it’s the exact same URL, but we sniff the user agent. We go, ‘Oh, you are on a 320-pixel LiveAndroid phone, we better give you a user experience for the narrow device,’” he said. “Be responsive, think about the difference between resolutions, a lot of users are going to be coming to your website on a mobile device, so it better work really well on 320 pixel wide display.”

McAuliffe ended his talk by describing Google’s Project Tango, a mobile device designed to “track the full 3D motion of the device, while simultaneously creating a map of the environment,” according to Google.

Toying with the combination of hardware and software during “Hack Week,” a week in which employees are allowed to work on whatever they want (so long as they share their results), Zillow sought to utilize Project Tango in the real estate space, specifically for use with Zillow Digs, a home improvement app. 

“They built it so you can take the Tango device and scan a room up and down, and it would get a dot cloud of the room, and so they’d get what looks like a 3D representation of the room,” he said. “It’s still not really useful for what we would want to do. They needed to have a polygon of the room. So they used convex hulls to build a polygon around the room.”

Eventually, he said, after employing a compression algorithm, they could, “figure out the lengths of walls to actually get the square footage for a room, and things we do find interesting in the real estate space.”

“Sometimes people in management are like, ‘Now we’re going to lose productivity for a week,’” he said. “You won’t. You’re going to get more creativity out of people and you’re going to get some of your coolest features out of it.”

Lincoln developers share lessons, trends

Several local developers gave brief presentations at Zillow’s Lincoln office earlier in the afternoon. Encouraging coders to “Fail Fast. Isolate. Shed Load,” Hudl software engineer Rob Hruska delivered a half-hour talk titled, “Prepare For Failure.” Hruska advocated building one’s own library to force timeouts and build bulkheads and circuit breakers to avoid “cascading failure” in a web application.

“It’s important to build some awareness on how applications can interact and fail in really unpredictable ways,” he said.

Jesse Angell, founder and CTO of PaymentSpring, a Firespring company, discussed building web services and how those services steer software development. Nate Lowry of Nebraska Global, directed a lighthearted brainstorming session focused on drawing more women, minorities and children into the technology sector.

This story is part of the AIM Archive

This story is part of the AIM Institute Archive on Silicon Prairie News. AIM gifted SPN to the Nebraska Journalism Trust in January 2023. Learn more about SPN’s origin »

Get the latest news and events from Nebraska’s entrepreneurship and innovation community delivered straight to your inbox every Wednesday.