Streaming Open Source Development on Twitch — Part 1
My Streaming Motivation & Hardware Setup with Reviews.
TL;DR
Motivation: Sharing with/Giving back to Community, Time Efficiency
Hardware Setup: Mac, Headset, Webcam, Green Screen, Mic, Light
Motivation
Splitting my time as an Indie
It hasn’t even been three months since I started my journey as an Indie iOS Developer at the beginning of this year. During my very first week, I mostly used to plan for my first couple of months. One of the easier decisions I made that week was that I wanted to invest some portion of my work time in Open Source topics. After all, doing what I love was one of the reasons to go Indie in the first place. And I always enjoyed giving back to the great community that I had profited from for nearly a decade now as an iOS developer.
The tougher question was: How much of my time do I want to invest? While I’m sure that I will experiment with this more in the future, for a starting point I tend to either follow the 60–30–10 rule (borrowed from color theory) or the 80–20 rule (also known as the “Pareto principle”). As I started my Indie career without any existing paid apps, I wanted to mostly focus on my first product and didn’t want to split my time up too much, so I went for the 80–20 split. This means 80% of my work time, I’m investing in my own products, and 20% of my work time, I’m allowing myself to work on Open Source topics.
Planning for the long run, acting today
Besides Open Source development, I also had (and still have) a plan to prepare a free video course for total beginners because I have been asked for such a thing by various people throughout the years several times. My goal with it is to kick off the viewers’ journeys in the world of iOS development — but it’s easy to get stuck right after such a beginner course. An idea of solving that was to develop some apps from start to finish fully live on Twitch, allowing anyone who took the course to continue learning by looking over my shoulders and asking me questions in the chat.
Unfortunately, preparing for the course will take a lot of time that I can’t invest at the moment (I need to first secure my Indie career). Also, there are still a few topics I need to properly figure out and break down for myself before I can teach about them. But on the first day I had dedicated to Open Source development, when I started working, I had this thought: If I’m working on public code with fully public results anyways, why don’t I just make the process public, too?
Being honest with myself
At first, I was skeptical. After all, it’s quite a bit of work to set everything up, and interacting with the chat would slow me down, too. But then I was planning to stream anyways, just a few months later, so I’d have to do the setup at some point. Also, the reason for me to work on Open Source is to help the community, interacting with chat serves the exact same goal, so it’s fine.
But more importantly, I considered one of my weaknesses: I knew that I would probably enjoy working on Open Source projects so much that there was a high risk I would invest more than 20% of my time on it (to finish up those things that feel like nearly complete, but aren’t, if you know what I mean). And I also knew, that if I would be streaming, I could easily set up fixed times in the week to stream. And I wouldn’t do any work in-between my streams, because if I did, viewers would miss that part and then it wouldn’t be the “full process from start to finish” anymore, that I was looking for.
So in the end, the final reason for me to start streaming was: Time Efficiency. It’s just the best way for me to limit my Open Source time effectively.
Hardware Setup
This is my hardware setup and a summary of my experiences with each piece.
Mac: M1 Pro MacBook Pro 16" with 16 GB RAM + 1TB SSD
Price: ~$2,700
👍 Pros:
– M1 Pro builds 40% faster than M1, only 2% slower than M1 Max (source)
– Double the battery life of Intel MacBooks (also ~25 % longer than M1 Max)
– 1TB has plenty of space for multiple Xcodes, iOS simulators, 1080p streams
👎 Cons:
– More than double the price of an M1 Mac Mini with 16GB+1TB → the 40% reduced build time combined with the great monitor & mobility is worth it
– No headroom with only 16GB of RAM (the 32GB option costs extra $400!)
Recommended? 💁♂️ Oh yes. M1 Ultra builds yet 37% faster though, consider!
⎇ Alternatives:
– M1 Mac mini with 16GB RAM + 1TB (~$1,300)
– M1 MacBook Air with 16 GB RAM + 1 TB (~$1,650)
– M1 Ultra Mac Studio with 64 GB RAM + 1 TB (~$4,000)
Headset: AirPods Max
Price: ~300€ (~$335) — Note: I bought them second-hand.
Pros: 👍
– Easy to connect to Apple devices
– Very long battery life (I hardly have to charge)
– Comfortable even after hours of stream
Cons: 👎
– Expensive when bought new (~$550)
– Cable-mode requires extra Lightning-to-3.55mm cable (~$35)
Recommended? 💁♂️ If you own more Apple devices, then: Yes. Else: No.
⎇ Alternatives:
– Logitech Pro X (~$90), good quality detachable mic
– HyperX Cloud II (~$70), also very popular with gamers
– Any headphones you already own (if you get an external mic anyways)
Webcam: Logitech C920S Pro
Price: ~$70
Pros: 👍
– Reliable (I see cams in streams turning off randomly, never happened to me)
– Good 1080p quality & natural colors
– Privacy shutter (after all Edward Snowden told us the NSA is watching 👀)
– Auto-focus & auto-lighting that can be configured via Logitech software
Cons: 👎
– Built-in mic that can’t be turned off physically (NSA, remember?)
Recommended? 💁♂️ Yes!
Green Screen: Elgato Collapsible Chroma Key Panel
Price: ~$120
Pros: 👍
– Easy & fast to set up & put away
– Stable stand
– Good height
Cons: 👎
– Could be even a bit wider (I have to cut the sides of my webcam image)
Recommended? 💁♂️ Yes, really convenient if you need a green screen.
⎇ Alternatives:
– Setup a nice looking background for your workspace if you have the space
Mic: Blue Yeti
Price: ~$100
Pros: 👍
– Flexible modes that also allow for interviews & more
– Great sound out of the box without any filters applied
– Logitech software ships with multiple filter presets
Cons: 👎
– Default stand not well enough shielded against vibrations (keyboard)
– Clicking mute button creates too loud noise to use during stream
Recommended? 💁♂️ Yes, this is actually recommended by many for starters.
⎇ Alternatives:
– HyperX Quadcast, convenient tap-to-mute sensor (~$110)
– Rode NT-USB, ships with a pop shield (~$170)
– If you have a good quality headset mic, use that instead (e.g. Logitech Pro X)
Light: LAVKOW 10 Inches RGB Selfie Ring Light (US alternat.)
Price: ~$30
Pros: 👍
– Cheap
– Supports different colors
Cons: 👎
– Not very bright, but good enough for streaming when sitting close
Recommended? 💁♂️ To save money, get a selfie light, Yes. For quality: No.
⎇ Alternatives:
– Elgato Key Light (~$200)
See also Twitch’s hardware recommendations page for more alternatives.
Other Periphery I Use
Not exactly streaming related, but if you’re interested in what else I have on my desk while streaming, here’s a quick commented list:
- Apple Wireless Magic Keyboard 2 ($65):
I’d prefer Logitech ERGO K860 now. - Logitech MX Vertical ($80):
A savior for my wrist, wouldn’t wanna go back. - Inateck HB2021 5-in-1 Adapter ($35):
Only one cable to connect, like a dock. - Boyata Laptop Stand ($30):
Nice build quality, very stable & grippy. 👍 - Lamicall Phone Stand S1 ($10):
Good enough, hole for cable. Does its job. - MAXLVL Gaming Mauspad XL ($15):
Size of 90cm x 40cm is perfect for me.
That’s it for my motivation & my hardware setup. I hope this helps future streamers to get started. The next part covers the software side which I think is even more interesting: All tools I use and how I have them and my hardware set up to work together. Make sure to follow me to not miss it!
A native Mac app that integrates with Xcode to help translate your app.
Get it now to save time during development & make localization easy.