On Saturday, we hosted Story Hack Boston along with P2PU and Mashery at the MIT Media Lab. About 50 people from content and technical backgrounds joined us to create new story telling experiences. The crowd was pretty evenly split, which made for a lot of awesome collaboration.
We’re making some changes to how we manage our App Gallery and wanted to take some time to explain them to you, our developer community.
The App Gallery is where we highlight interesting and useful SoundCloud powered apps and services for our users. As our developer community continues to grow, it’s even more important that we keep a high bar for apps found in App Gallery. Having a high standard protects the value of being featured in App Gallery for all of our developers while giving our users…
Just over a week ago we had our first internal hackathon at SoundCloud. You can read (and listen!) about it on our community blog or read some of the awesome press coverage the event received.
We had over 60 people attend and over 20 projects were demoed. I joined a team organized by Josh Devins to build ToyBox, a children’s toy that plays sounds from SoundCloud in response to physical events. The team consisted of myself, Horaci Cuevas, Josh Devins, and Oliver Hookins.
The first task was to come up with a design for our project. An Arduino fitted with gyro, accelerometer and motion sensors provided the interface between real world events and the rest of the system. A Raspberry Pi…
This is a story of how we adapted our architecture over time to accomodate growth.
Scaling is a luxury problem and surprisingly has more to do with organization than implementation. For each change we addressed the next order of magnitude of users we needed to support, starting in the thousands and now we’re designing for the hundreds of millions. We identify our bottlenecks and addressed them as simply as possible by introducing clear integration points in our infrastructure to divide and…
As some of you might know, we had an outage yesterday. We believe that in every mistake there is something to learn from, so after each outage we are writing post-mortems. Usually we do this internally because the issues we run into are very specific to our infrastructure.
This time we ran into a quite nasty issue which could affect everyone running a linux system with a lot sessions on it and we thought you might be interested to know about that pitfall.
At 4:40pm CEST, we got reports about Yikes
(503/504 errors) on SoundCloud. Around the same time, our monitoring alerted for a high amount of 503s at our caching layer and right after that one of our L7 routing nginx instances was…
Today we’re featuring a guest post from our friends at Retronyms. They’ve built some amazing community features into their app Tabletop using the SoundCloud API and have open sourced their CloudSeeder Devkit. This post was written for us by David Shu. David is a software engineer at the Retronyms and has worked on a number of iOS apps, including Tabletop and Dokobots. He currently resides in San Francisco, CA.
We recently built a SoundCloud-powered community into our app Tabletop, a modular audio environment for the iPad, using the CocoaSoundCloudAPI. The project, CloudSeeder, lets users browse, stream, favorite, and comment on Tabletop tracks without ever leaving the app.
As developers, we discovered tons of talented users in our Tabletop community. At the same time, our users found inspiration from each other and a new showcase for their creations. To share in the excitement of community creation with all developers, today we’re releasing the CloudSeeder Devkit as open source on Google Code.
SoundCloud is a polyglot company, and while we’ve always operated with Ruby on Rails at the top of our stack, we’ve got quite a wide variety of languages represented in our backend. I’d like to describe a bit about how—and why—we use Go, an open-source language that recently hit version 1.
It’s in our company DNA that our engineers are generalists, rather than specialists. We hope that everyone will be at least conversant about every part of our infrastructure. Even more, we encourage engineers…
A few weeks ago, I attended News Hack Day in San Francisco. News Hack Days are events that bring together journalists, developers and designers for multi day creative coding and brainstorming sessions.
I really like the idea of hack days that bring together people from different backgrounds. After chatting with a few journalists, it became obvious to me that recording interviews on the phone is a real pain. I saw this as an opportunity to build a fun app that would make this easier for people.
There are many approaches to building libraries that wrap HTTP APIs. For many of our officially supported SDKs we chose to build light wrappers around HTTP client libraries with a few added features to make it easier to work with the SoundCloud API. This approach has a few benefits. It guarantees a certain consistency and is relatively easy to maintain. It’s also fairly future proof. Changes in the HTTP API do not typically require updates to client libraries.
Sometimes however, you might be looking for something a bit more feature-full, or with more abstraction from our HTTP API. That’s why I was really happy to see that the great folks at SocialFolders built an alternative SoundCloud Ruby gem and released it to the public. You can check out their blog post about it or go straight to the source on GitHub.
SoundCloud loves hack days. Our latest hack day adventure brought us to Music Hack Day in Barcelona and we thought we’d share a bit of the great experience we had there.
Photo by Thomas Bonte