The Most Important Startup’s Hardest Worker Isn’t a Person
When you walk into the San Francisco headquarters of GitHub—the startup that sits at the heart of the software universe—it looks as if you’ve walked into the White House. The lobby is a wonderfully amusing recreation of the Oval Office, right down to the stripped wallpaper, the gold curtains, and the American flag in the corner. The reception desk is, yes, a replica of the President’s desk. But as you approach and check in for an afternoon meeting, the decor isn’t nearly as interesting as the technology. As you check in, Hubot sends notifications to everyone you’re scheduled to meet with.
This is a simple thing. When you sign into the iPad sitting on the President’s desk, Hubot runs a software script that shuttles those notifications through the company’s online chat system. But that’s only a small part of what Hubot can do. From the same chat program, GitHubbers can ask Hubot which decidedly hip San Francisco food trucks are set up down the street—and Hubot will tell them. If they need a dial-in number for an afternoon conference call, Hubot can provide it. If they need something translated from Spanish, Hubot will translate. When prompted, Hubot can also post a tweet, unveil a graph of the latest GitHub.com traffic numbers, or boot up some servers to accommodate more traffic. Hubot can even tell a joke or find an animated GIF of something completely frivolous, like a dance party. In other words, Hubot is good for a pick me up.
Sam Lambert, the director of systems at GitHub, calls Hubot “the hardest working GitHubber.” That’s a company-wide in-joke. Hubot isn’t really a GitHubber. He’s a bit of software that plugs into the GitHub chat system. About five years ago, a guy named Ryan Tomayko built Hubot as an easier way for the company’s engineers to manage and modify all the hardware and software underpinning GitHub.com. Simply by sending a message to Hubot—much as they’d send a message to anyone else from inside the GitHub chat client—engineers could update the operating systems driving GitHub’s servers, delete data from the databases, or take entire servers offline. But in the years since, Hubot has evolved into something that supports everybody inside the company—not only handling a wide range of tasks but providing a conversational context for those tasks. And as time goes on, this becomes a central record of (just about) everything that happens inside the company.
“It’s a new way of working,” Lambert says.
Hubot points to a future where all businesses operate in this more automated way. Across Silicon Valley and beyond, many companies have adopted chat systems like the one GitHub built for itself. They include tools like Slack and Hipchat—software that provides a central place for a company’s employees to communicate in real time—and businesses can equip these tools with bots that will do their bidding. Some of these bots are frivolous, but not all of them. In fact, GitHub has open-sourced the code for Hubot, making it freely available to all, and now it works with both Slack and Hipchat, not to mention classic IRC systems and Google’s Messenger. Other businesses, in turn, have adopted Hubot as a way of handling critical tasks. This includes Box.com, the big-name Silicon Valley file-sharing startup that recently went public.
The rise of Hubot is a nice way of illustrating the rise of GitHub itself. GitHub.com is a place where software developers can share and collaborate on code, and it has become the primary repository for the world’s open source software, embraced by everyone from Google to Facebook to Microsoft. Hubot is one of the many software projects GitHub has shared on its own service, and the spread of this bot mirrors the open source movement as a whole.
‘It’s the Culture of the Company’
When people discuss Hubot outside of GitHub, they often describe it as a tool that does “ChatOps,” meaning it handles “operations” tasks—stuff like configuring new servers and databases or updating the code that drives GitHub.com. The term was coined by GitHub, and others have built additional ChatOps bots, including tools like Lita and Err.
The ChatOps idea grew out of a movement called “DevOps,” where new-age tools like Chef and Puppet allow IT types to automatically configure and update massive amounts of hardware and software running across their organizations. ChatOps adds a conversational element to this movement. Hubot provides a new, easier, and more powerful way for GitHub to manage and modify and expand the technology underpinning its operation. “GitHub, the website, is updated, all day long, with a bot,” Lambert says.
This is also how Box uses Hubot. And because so many other companies (Box’s customers) use its infrastructure to house private data, the startup recently beefed up the bot with added security, so it can be sure that the person making a change to some critical system is the person authorized to make that change. This work has been open sourced too, so that anyone else can use it.
But the possibilities extend well beyond classic server room tasks, as GitHub has shown. “It’s the culture of the company,” Lambert says of Hubot. Hubot can tell him which GitHub employees are currently sitting in offices nearby. When he’s about to place a call to a GitHubber on the other side of the globe, Hubot can tell him what time zone they’re in. Or, if you’re on the GitHub sales team, Hubot can turn up info about a company you’re trying to sell to. If you’re a coder, Hubot will tell you when a change has been made to particular piece of GitHub software. If you’re in the finance department, it can show you the company’s latest revenue figures.
“You can use Hubot to do anything that you can write code for,” says Josh Nichols, the GitHubber who now oversees the Hubot project. The Hubot homepage refers to the tech as “A customizable, life embetterment robot.”
Katelyn Bryant, who works in PR at GitHub, uses it as a way of tweeting to the company’s official Twitter account or, yes, finding a dance party GIF. “We use Blue Jeans for video conferencing,” she explains. “I can say: ‘Hubot, bluejeans me.’ And it will send me a personal link so I can start a meeting.”
Hubot of the Future
Well, what she really says is: “/blue jeans me.” Hubot springs into action whenever it sees a “/.” The system has a “command line” feel to it, meaning that, much like with old school computer terminals, you have to use specific commands for it to work. But at the same time, it feels conversational, in large part because you send commands to Hubot as you would send messages to any human. You open up a chat room and send Hubot a note, and this becomes part of a larger discussion. When it does your bidding, Hubot appears among the other chatter, represented by his own robot-like icon.
“You get this incredible context for what you’re doing and what your team is doing,” Lambert says. “When something goes wrong, everyone piles into the infrastructure [chat] room, and you can watch the remediation of the incident happen. It’s highly coordinated. People can understand the context. It helps you work through things as a team.”
What’s more, unlike a command line, Hubot and the GitHub chat client provide an easy-to-access log of all past messages. If Lambert wants to see what happened one day last week when the company updated a bunch of servers, he merely opens a chat log. “I can return to that point in time,” he says.
A Hubot Dependency
As we sit in the Safari Room on the second floor of GitHub headquarters—the room with stuffed toy animal heads mounted on the wall—Lambert tries to remember the command for asking Hubot which food trucks are nearby. He can’t. And that’s a drawback.
But as machine learning techniques continue to progress, computers are getting better at understanding and responding to natural language—the way humans naturally speak. Google recently published research describing a chatbot that can discuss the meaning of life, and though flawed, it’s pretty impressive. This is the bigger (and more distant) future of Hubot. It becomes all the more useful if you can ask it, in ordinary English, about the food trucks.
That is still to come. But Hubot is enormously powerful today. GitHub is five years into using it, and it’s deeply ingrained in the company’s culture. If you walk around the GitHub offices, you’ll see Hubot stickers on laptops. Company artists have developed a cartoon-ish alter-ego for the bot that looks kinda like a steel-plated flying Minion—without the goofy factor (see the image above, pulled from the Hubot homepage). This ‘toon turns up in the video that opened the company’s recent developer conference, alongside that other GitHub mascot, the Octocat (see video above).
View the original here –