Engineering Blog

May the Yelps be with You

May brings us talks from the Python meetup, another mind-blowing talk from Designers + Geeks, and a talk from Products That Count on brand naming. I’m also excited to give you a sneak peak into June: we’re hosting our second annual WWDC after party. We promise this after party will be so good, you won’t want to leave for the hotel lobby (even if R. Kelly himself invites you). For our Pythonista readers, let’s take a deeper look into the the upcoming Python meetup. Packaging turns out to be an important part of any language. Great packaging encourages language adoption,...

Continue reading

More Yelp in your Ruby

What’s that you say? Your Ruby applications are feeling a little empty and meaningless without Yelp data to make them shine? Well, consider your prayers answered because today we’re launching our official Ruby Gem for interfacing with the Yelp API! Find the gem online now, and start using Yelp data in your Ruby applications with ease. Install the gem with bundle by adding ‘yelp’ to your Gemfile, or without a Gemfile by running gem install yelp. Your first step on the road to Yelp data awesomeness is to register and get API keys from our developer site. Next, create a...

Continue reading

April Showers Bring More Talks to Yelp

Yelp is hosting many exciting talks this month! Let’s take a closer look at two, but be sure to check out all of the links below to see what’s in the pipeline. What does it take to monitor an architecture that is continually in flux and being changed by hundreds of developers? A seriously flexible monitoring framework: Sensu! A resident Yelp Site Reliability Engineer, Kyle Anderson, will be giving a tour of how Sensu works at Yelp. He’ll be explaining how Sensu hooks into the Yelp SOA architecture to empower individual development teams to monitor their own services in real...

Continue reading

MySQL replication, error 1159, and why you might want to upgrade

pre.mysql-block { overflow-x: auto; margin: 0 0 1em 1em; } At Yelp, we use MySQL replication to provide the performance we need to serve our 120 million monthly unique visitors. In this post Josh Snyder walks us through some of the internals of MySQL’s replication system, and discusses an issue that we saw in production. MySQL replication and the slave I/O thread’s purpose On a MySQL slave, the task of replication is split between two threads: the I/O and SQL threads. The I/O thread’s job is to download the log of events executed on the master and write them to...

Continue reading

March Events at Yelp HQ: Python Madness & More!

Love Python but can’t make it all the way to Montreal for PyCon this year? Never fear, Yelp is hosting a sneak peak of many of the talks! Instead of buying plane tickets, a hotel room, and a conference pass, you can kick back, drink beer, and have pizza with us! Next week’s Python meetups, both PyLadies and SF Python, will be hosting practice talks for the conference. Let’s dive into two of the talks: a novice session on machine learning, and an intermediate talk on working with external languages. At a high level, Melanie Warrick will get us started...

Continue reading

Introducing RequestBucketer: A system for putting HTTP requests in named buckets

JR Heard has many big projects under his belt, and this week we’ll get to learn about one of the most recent. Yelp pushes new code almost every day, so it’s no surprise we get new features every week. But how do we make sure they’re working as intended? JR describes one element of our solution below! Let’s talk about features. Building new features is super fun. Improving pre-existing ones is fantastic, too. What would be less fantastic would be if the your new feature turned out to crumble under production load, or if your untested-gut-feeling improvement to an old...

Continue reading

Yelp Dataset Challenge Round 2 Winner and New Data

The Challenge The second round of the Yelp Dataset Challenge opened in May 2013, giving students access to our massive Phoenix Academic Dataset, with reviews and businesses from the greater Phoenix metro area. The Yelp team is very excited to provide the academic community with a rich dataset over which to train and extend their models and research. We encourage students to take advantage of this wealth of data to develop and extend their own research in data analysis and machine learning. Students who submit their research are eligible for cash awards and incentives for publishing and presenting their findings....

Continue reading

Yelp’s got style (and the guide to back it up)

We’re excited to publicly share Yelp’s styleguide — a living document that we’ve used internally since May 2013 to create visual consistency across Yelp and reduce technical debt with modular, reusable markup and styles. To get this project off the ground, our front-end and design teams worked together more closely than ever before. We’re very pleased to be able to share it with anyone interested in hearing how we moved to a fast-paced UI design and development model. This kind of design and development requires a lot of discipline across product and engineering teams. “There are no special cases” has...

Continue reading