photo by Alexandre Perotto

Internal Names: Uber gave me a sobriety test, and I didn’t even realize it

Uber was testing me to see if I was drunk, without me knowing it. It wasn’t until I used a tool to take apart the app that I realized that Uber had given me dozens of sobriety checks throughout the time I’d used it.

Naming & Organizing

Designers and developers routinely have the need to name things. It’s how we keep things organized. Most UI patterns have names, and there’s several books and resources where you can find those names. However, sometimes you’ve only seen a feature in a single app. That’s when it’s beneficial to be able to check what that app calls it. Most of the time you can’t, because these names are internal to projects.

Not the best way to name things

Occasionally I hire designers. Rarely does a designer try to name all their layers something descriptive. Mostly I tend to get designers that name very few layers, leaving mostly default names, which leads to working with layers named “Group 4 copy” and “Ellipse 6” instead of “Tomorrow” and “Background-Enabled.” It’s not fun trying to figure out a layer list when hundreds of items are named ambiguously. Having layers named makes working with a project faster and more efficient. This has given me the discipline to try and have everything named properly on all my projects.

The Way Apple Names

Developing for the iPhone I’ve found that Apple has proper names for all of their visual components. When a list is displayed, and it needs to be made clear that an item can be tapped on to reveal more information, Apple displays what they call a disclosure indicator. The little arrow icon that is the typical indicator, is called a chevron. It’s an insignia you may recognize as being the logo of an oil company bearing the same name, or from seeing it on military uniforms.

My latest iOS app project has a very different UI from stock, so in re-creating certain UI features that Apple implements, I’ve been looking to them for names. When you select a single value from a continuous range of values, Apple calls the UI feature you use a slider, a common name for the pattern. The indicator which shows what the current value is? They call it a thumb. The bar that the thumb rides? That’s the track. It all makes sense, but these certainly aren’t the names I would’ve come up with. I’m glad not to have to make these decisions.

Brightness slider

Uber’s Internal Names

I had just seen The Killers perform an amazing concert, and as the thousands of attendees poured out onto the streets, they were causing a spike in Uber demand. As I waited for Uber’s surge pricing to drop, I decided to use Flex 2, a tool I developed that lets you inspect apps. I’m a curious person, and Flex lets me see how apps are organized behind the scenes. It shows you things that normally only internal developers see. As I delved into the Uber app, I found that internally, they call the surge confirmation screen a “sobriety test.” It felt a little devious that they administer all these sobriety tests unbeknownst to their users. It does make for a great internal name though.

Uber’s surge pricing sobriety test. Seeing the internal name in Flex 2

Everything you interact with has a name, from progress indicators, to treemaps, to radial tables. Sometimes the names differ from platforms, such as iOS or Android, or from app to app. Naming things well is a mark of a good designer or a good developer.

If you liked this article I’d appreciate if you’d hit the recommend button! (The cute little heart below.)