We recently took part in the Developer Week Accelerate Hackthon, the event that brands itself as the nation’s largest challenge-driven hackathon. It truly was a big one – the biggest hackathon we’ve ever been a part of with over 450 hackers. What made it special, was the diversity of participants – a really great mix of talented people with a variety of backgrounds and skills.
Our prize for the best integration went to Sam Miyakawa and Jason Benn for their app called DevExperts.
DevExperts allows you to search for top active Stack Overflow users by keyword. For example, if you search for “Pusher”, it will bring up the SO users who have been answering the most questions on SO in the past 30 days.
SO doesn’t provide any user social profile information, so the app tries to intelligently guess the user’s twitter handle using Google searches in background workers. This is where Pusher comes in. When a user performs a search, the app makes a call to their back-end in order to fetch all the users using the StackExchange API. As part of that API request, the app spawns workers in the background that execute Google searches to find the users’ twitter handle. The result of the search is stored in a database and Pusher is used as an asynchronous responder to push the search result and update the front-end.
Long-running Background Processes
Providing a callback for long-running tasks is a common use case for Pusher. In this case the application is built on Ruby on Rails and the background processes run using Sidekiq, where the Google search is executed and the Pusher event is then triggered.
Sam and Jason have shared the DevExperts codebase. You can get it on GitHub.
The Future of DevExperts
We thought DevExperts was a great hack. Not only did it quickly highlight the SO expert on a particular topic it also lets you discover and follow them on social channels. The theory being that you can continue to learn from them.
Commenting on potential improvements Sam said:
The next step is to make searches bookmarkable. Meaning that if you search for Pusher developers, you could bookmark a link that looks something like http://devexperts.herokuapp.com/search?q=pusher
Other planned features are to allow users to flag twitter handles that are not correct, make corrections to twitter handles if a handle was flagged a certain amount of times, tweet to the developer directly from our site, etc.
Congrats to Sam and Jason! And thanks to Developer Week for having us.