Happy birthday, tech:lounge

tl;dr: Today, a year ago, we released tech:lounge, an online platform for free video courses on web and cloud development. We use GitHub to plan the courses, and QuickTime on a MacBook Pro to record the episodes.

We have often been asked how recording an episode works. First and foremost, there is a rough conceptual outline for each course. It actually just contains a few words per episode. The idea here is to have a common thread over the course of time. Additionally, this helps us to insert ideas for new episodes where it makes sense.

Every episode should be between 30 and 60 minutes, so the first thing to think about is whether the idea for an episode provides enough content for a single episode, and also if it's not too much content for a single episode. Every tenth episode is planned as a real-world example that wraps up what has been learned so far. Their length should be between 60 and 90 minutes.

Recording an episode

Before the recording of a new episode takes place, we need to create the slides. They are meant to support the speaker, never to replace her or him. Additionally, we highly value live coding, as we think of it as the perfect way to show off how things work. We have a variety of templates for the slides, and we select one of them depending on the course. They are all built with reveal.js, a JavaScript presentation framework.

The slides themselves are written in Markdown, which makes it incredibly easy to manage them using GitHub. We use a private repository, and whenever one creates the slides for a new episode, a new feature branch is used. As soon as the slides are ready, the speaker sends a pull request, and someone else reviews the slides for correctness, typos, …

Once the branch has been merged into master, recording may take place. We actually do not use any special studio equipment. Any recording is done using a MacBook Pro, with the built-in microphone [sic!]. We use QuickTime, which is part of macOS, to record the screen as well as the audio. Typically, before recording an episode, we do a short test recording of 30 seconds, to verify whether everything works as expected.

Publishing the video

When the recording has been done, we first upload the .mov file to Dropbox, to have a backup if anything goes wrong. Then the video is being uploaded to Vimeo. Vimeo then needs a few hours to convert the video to various formats, optimized for phones, tablets and desktop devices.

While we wait we update the tech:lounge website, the tech:lounge section of our company website, and we prepare a blog post for Heise developer, one of the most important IT news websites in the German-speaking market. We then publish everything at once, typically on a Monday. Finally, once the video and all the articles are online, we publish a few tweets (so follow us on Twitter if you want to get notified when new episodes are available).

And that's it.

What about tech:lounge in English, French, …?

In the past 12 months, we have been asked a few times why tech:lounge is only available in German language, and whether it will also be available in different languages. The reason why it's in German is that if you want to learn about JavaScript and Node.js there is already a variety of amazing resources on the web - at least, if you speak English.

But not everyone is as fluent with English as they need to be to understand this content, so we wanted to improve the diversity of languages and to raise inclusion. Hence we decided to publish the videos in German, which is our native language. Currently there are no plans to provide videos in other languages, but let's wait and see…

And, last but not least: Congratulations, tech:lounge, for your first birthday!

Twitter Facebook LinkedIn

Golo Roden

Founder, CTO, and managing partner

Since we want to deliver elegant yet simple solutions of high quality for complex problems, we care about details with love: things are done when they are done, and we give them the time they need to mature.