Where 2.0 - Why You Need To Be There
Back in 2007, we attended our first Where 2.0 conference. We presented UpNext at the Launch Pad portion of the conference which was won by Swivel (whose presentation included breakdancing and poppin and lockin).
For a young startup, new to the mapping industry, Where 2.0 was mecca. Filled with mapping and location enthusiasts, this was the place to be if you were interested in geo. But, Where 2.0 was a niche player in the larger web space. Remember in 2007…
- The original iPhone had been announced at the beginning of the year, but had yet to be released to the public
- Dennis Crowley was at the conference talking about the new company he joined, area/code. This was post Dodgeball, pre Foursquare.
- The majority of sessions covered mapping, mapping techniques and mapping data
- Tele Atlas and Navteq were still independent companies and would be acquired later in 2007.
Since then, Where 2.0 has continued to grow in importance and stature and is among the most influential conferences in tech. Much of that is due to the leadership of Program Chair, Brady Forrest and his team at O’Reilly. It seems like Brady was bringing together thought leaders and tech innovators in the location space since people started carrying around Zach Morris phones, maybe even before then.
Today, location, mobile and geo are more than just buzz words and Where 2.0 is the center of it all. Take a look at the lineup of speakers and you will see that all the leading tech companies are attending. Google, Facebook, Groupon and Foursquare are just some of the names that will be offering their thoughts on location.
It is great to see that location has broken out from its niche status within the tech industry (probably last year). Geo is now ingrained in the DNA of all tech companies. Appropriately, the theme of this year’s conference is “The Business of Location”. So if you want to where the next business opportunities are, head down to Santa Clara this week and check out Where 2.0.
Give us a shout @upnext or email@example.com if you want to meet up.
(On a side note, maps have always been at the center of Where 2.0. As a mapping startup it is great to see that maps continue to play a large role in the conference even as it continues to expand and grow.)
Android NDK for Rendering
We’ve been working a lot recently with the Android NDK. The NDK allows you to write native code for an Android device, allowing you to bypass the Dalvik VM and write directly to the platform. Now, we already have a functioning version of our app written in Java, so why did we put in the effort to port it over? Speed, of course. For those facing a similar decision, here are three things we’ve learned:
1) The Dalvik VM is slow for CPU heavy applications. Slow is a relative term. For your average “tables and text” application, it’s more than fast enough. But if you want to write applications with heavy CPU usage, then you’re much better off with the NDK. Specifically, we found that the Dalvik VM really suffered when running highly recursive algorithms: the method call overhead was unacceptable. Now, you could eliminate a lot of this method overhead via public fields and manually inlined code — but if you’re going to go that far, you may as well write the thing in C++. Note that this applies even to the newest crop of devices (Nexus S) with the latest operating system (Gingerbread).
2) Garbage collection kills frame-rates. Again, not for tables and text applications. But if you’re writing a game or anything with a tight, optimized render-loop, you must avoid generating any garbage. Unfortunately the Android SDK spills metric tons of it: Android internal classes aren’t written with optimization in mind, they’re written for ease of use. The IO classes freely allocate and discard byte arrays and can’t be re-used, and the NIO classes — which are as optimal as the SDK gets — are almost as bad. So even if you write your app efficiently, merely using basic SDK classes will produce significant garbage, eventually triggering the Garbage Collector and pausing your app, producing stutter. Using the NDK avoids this problem.
3) NDK libraries are extremely limited. This is gradually improving, especially with NDKr5, but for now you’re fairly constrained in what you can do. You get the standard C libraries and support for STL. But if you want to do something high tech, like, say, send an HTTP request, you have to learn your BSD sockets and write 100 lines of code. Or you could download the Android source and compile libcurl, which is perhaps even more of a pain. That said, there is one other alternative: JNI. For advanced functionality, JNI enables you to uplink to Java, do things in the SDK, then return the results back to the NDK. We do this a lot, and it works quite well — except, of course, it generates a lot of garbage.
“When a consumer gets the phone and they wanna play a game that uses our technology, it’s got to be a consistent experience, and we can’t guarantee that [on Android]. That’s what held us off of Android”
Tim Sweeney on what’s stalled Epic from developing on Android. The easy solution to this, I think, is to allow developers to whitelist specific devices on the Android Market. Currently that’s not possible; so if someone downloads your app on a device that can’t run it, you’ll get a one-star review. And those will pile up.
The Android Market does let you specify what features your app needs, but that’s not enough. I need to be able to target a specific CPU, a specific GPU, and sometimes even specific OpenGL extensions, all of which I could do myself if they let me whitelist devices.
UpNext on what’s Up Next!
We’ve been working hard these last three years developing what we think are the best 3D maps out there and a few weeks ago, when we were at SXSW, Techcrunch broke the story of us closing our funding round!
Erick covered it well and we are excited to be working with such a great group of investors (Chris Sacca, David Cohen, David Tisch, David Diamond, Oleg Tscheltzoff, Josh Guttman, Will Herman, Ty Danco and ARC Angel Fund).
We feel really good about where we are heading and wanted to share our thoughts on future.
First off, take a look at the NFL’s official Super Bowl app that was created using our mapping platform (video). We think it is a significant leap in showing what our vision of mapping can accomplish.
When we talk about mapping, we’re talking about one of the most valuable properties on mobile devices. But even though maps are used everywhere, by everyone, they’ve lagged behind the rest of the mobile web. We are here to change that.
In our funding post, Techcrunch writes, “Mapping is a big boy’s game, with Google Maps, Bing Maps and MapQuest dominating maps on both the Web and mobile. But sometimes it takes a startup to push things forward.”
That is UpNext - we are constantly pushing ourselves and our technology because we are lean and have a clear vision. Our maps are dynamic, immersive and interactive. As the company name states, we want to show you “what’s UpNext in your city”.
Check out our new website, UpNext, to learn more about how UpNext’s mapping platform can help your brand.
This funding round, plus the support of our investors, provides us with the rocket fuel to reach our vision. Try out our app, UpNext 3D Cities, and let us know what you think. Android and Version 2.0 are coming soon but we’d love more feedback before then. There is lots of work to do to reach our vision, but we think that’s the fun part. We are definitely looking forward to it.