Few days ago, Basecamp released their brand-new email service, Hey.com, in an invitation-only regime (update: as of June 25th, invitations are no longer needed). They managed to ignite quite a hype around the new web and no wonder − Hey promises a completely fresh start, a redo of the way you read, write and manage your emails. Sounds great, huh?
I’m lucky enough to be already in so… I can play around! And I can tell you, handling all my forwarded emails to email@example.com feels great so far! But this post is not about the user experience or features. You can read about them elsewhere or have a look at the fabulous Hey demo by Jason Fried.
For me, a Ruby on Rails web developer, it’s the Hey technology that is equally (if not the most) exciting thing about the new web, the question How did they do it?
Why? Because what we heard about the forthcoming web tech stack during the latest months was very expected (“What else than plain old Rails could its creators possibly use?”) and, at the same time, very bold (“But Rails is not that great for such interactive sites and, besides, it will be too slow!”). All of this gained a lot of traction and triggered a ton of expectations.
Yet the Hey web feels damn fast, very interactive as well as clean and modern-looking. How did they do that? That’s what I’ll try to dig up from the web and present here in the following posts. It will be an open-ended series with each post trying to bring a particular technology “trick” to a wider audience. We'll start with a cute little feature, the keyboard shortcuts.
As a little disclaimer, please note that I have no access to the source codes of the Hey app. Everything that I state here is based on various info on the social networks and, more importantly, an analysis of the web itself using the developer tools in my browser. I spent quite a few hours looking into the web code and whatever I think I get, I’ll try to share with you, as long as my free time allows… 😏
This is also the right place to show my big appreciation of the generous approach that Basecamp takes regarding their source code. The back-end code itself is closed source but the client-side code is freely available and wonderfully readable as it is all covered with source maps! Without them none of this text would be possible. Thank you, Basecamp!
Stay tuned and feel free to tell me what you want to read here about the Hey tech stack. Send a comment or email, you know the address, right? 😉