Hacker News new | past | comments | ask | show | jobs | submit login
My Twitch Live Coding Setup (medium.com/suzhinton)
606 points by ingve on Feb 25, 2019 | hide | past | favorite | 113 comments

Lots of people discussing the pros and cons of livecoding. I'd like to share some alternate thoughts if possible. I believe that there is a niche interested in watching and/or participating in livecoding and for them they do it because they can be productive and have a good time.

So I took livecoding pretty seriously for a while. I recognise that Noopkat is a pro at this and is one of the most consistent live coders I've seen in a while. I need to pop into one of her streams one day to see how it's evolved.

From my past experiences of her stream, my own streaming and others' streaming it feels like there's one big unsolved challenge in livecoding.

Coding hasn't lent itself well to "liveness".

At least in its current form, sitting down in the middle of a session of someone coding and trying to figure out what they are doing is HARD. It's not like a game where there's a dashboard that carries the score and you can gather all the context you need in under a minute. When joining a stream of live coding, the questions to be answered:

- what project is the person working on? - what "feature" are they working on? - what are they trying to achieve at this very moment?

These questions are similar to a game

- what's the game the person is playing/or what character is the person playing/what teams am I looking at? - what's happened so far? - what's about to happen?

Summarise these as

- bigger picture context - current historical context - immediate and future intentions

And all of this should be gathered in about a minute with no interruption to the stream(er).

So far, no live coding experience has been able to satisfy this. I do believe that this is one of those cases where technology needs to solve the challenge. Either in the form of a new livecoding specific platform or better integrations in twitch/other live streaming platforms.

Similarly to streaming games - there are several subgenres on a "performance vs entertainment" scale.

There are "no commentary" streams, "some commentary" streams, "backseat gaming/coding" streams where the streamer is asking viewers how to solve a problem and then implementing their suggestions, streams discussing metagame/architecture of the code, tutorials for beginners, and streams where the code/game is just an excuse, and the real focus is on interaction with chat and random topics.

If you're an average codemonkey/noob in a game - few people will want to watch your no commentary stream; if you're John Carmack/starcraft god people will watch you silently doing git merges/practicing split micro over and over for hours :)

> Coding hasn't lent itself well to "liveness".

> what project is the person working on? - what "feature" are they working on? - what are they trying to achieve at this very moment?

I used to do a bunch of livecoding myself, actually.

I agree with you that most programming does not lend itself too well to livecoding. But there is one niche that I believe lends itself extremely well to live coding.

This niche being whiteboard programming questions/interview practice.

In this niche, the whole point of the exercise is to work on self contained problems that can be solved within 30 minutes, and to talk out loud to your audience the entire time.

Was pretty fun when I was doing it. I was doing it mostly for practice, and now I work at twitch because of it.

And if I ever create my own startup, it will probably be something like "running a recruitment firm on twitch, by getting people to do interviews live".

Edit: Videos of my old stream are here: www.twitch.tv/stale2000/videos

Dad! I was hoping you would show up on this thread and was actually about to comment about you, whiteboard problems really are perfect for twitch I think, but you're the only one that I've seen do them

Haha, thanks!

That is am excellent story! Thanks for sharing :). I used to do things like ruby koans and Euler project stuff back when I was live streaming. You make a really good point about how the shorter stuff lends itself well to live streaming.

Can you share a link to your steam?

Sure, I have a bunch of videos saved here:


If you're live-coding you should be constantly talking aloud what you're doing and what you're thinking about. The most popular Twitch streamers are usually good at filling silence.

and if you want longevity and viewers you need to have a consistent schedule. I cannot count the number of people who had a good stream but were so inconsistent with their hours that it was nearly pointless to follow them

I often verbalize through problems (talk to myself) - so this may actually be a good excuse for that.

Some sidebar that shows info a chat mod or the streamer can set could maybe solve this. Then anyone who is regularly watching and moderating for you can try to keep it updated, and new viewers can just look at the screen.

Alternatively if you're handling it all yourself as the streamer, something like an emacs buffer with org-mode that you try to periodically update and leave on the screen.

    > So far, no live coding experience has been able to satisfy this. 
You are right. But some are interesting for the purpose of inspiration, or even entertainment. I've watched @Swizec recently and also the guy who created minecraft, mojang, had some epic livecoding years back.

They're similar to cooking shows on TV or youtube. You might not be able to do the stuff yourself, but just watching someone knock down their immediate obstacles can be inspirational and promotes confidence to emulate their approach for one's own projects. It is also heartening to see that elite pro's struggle with the same little snags that everyone else does.

The context and intent is, of course, important if you want to reproduce the exact same project, but that would be less interesting, I think.

I see the same difficulties with some games, for instance those that do not lend themselves to a simple score board.

When I join a stream of someone playing a strategy game which also has a tactical layer, you are usually equally clueless as to what is going on. Certainly at the strategic layer but also as to what a good outcome of a tactical encounter is.

I'm not sure how technology can fix this. On the other hand, other spectators can usually pretty easily do this in chat.

What games are you thinking of? I find RTS really easy to jump into at any point, but that is he only genre I watch really, so I'm curious what issues come up in others.

Games like XCOM/XCOM2. Specifically, I'm watching a stream of Long War Rebalanced, and it's kinda annoying when you join an hour in.

What if the real useful functions live coding is fulfilling have to do less with the spectators, but are more on the creators side?

Communicating what you are doing while you are doing it is a extremly practical way to focus your thoughts. That kind of rubber-duck like process works better if you have somebody concrete you can adress (e.g. a youtube audience, or a good friend of yours), because you won’t get yourself get away with cheap excuses that easily.

If you have to talk about a thing it will immidiately become clear which parts of the code you have internalized and which parts you have a harder time wrapping your head around.

Would be quite cool if livecoding sessions were more TDD based, and you had a log of all the tests you'd created in the current session. I realise this might not be a good fit for all sorts of work though.

I think, displaying your commit history and something like Todoist the entire time would solve most of these problems. Todoist would give the viewer a broad context and future intent and your commit history provides insight into the current status.

Twitch has in general dropped the ball by not trying to make streams more interactive. I think we should be past the stage where we are using just "dumb" clients.

Would Twitch extensions fill this void? From what I know of the platform, it would let you implement interactive features.

Mixer has done interesting things in regards to interactive livestreaming. It seems like progress is being made towards giving users more ways to interact, it's just taking a while. Perhaps because we're not sure _what_ to make interactive?

I did live coding on twitch back a year or so ago, for about 2-3 months. It was nice to get a bit of company working from home on my own sabatical (aka. financial dive) year.

Overall though I don't think it's worth it. You get the usual lurkers that come say hi, and then a bunch of drop-ins that have language questions, stackoverflow type questions, or start rambling about technological choices which eventually distract you from your burning floor todo list staring back in your eyes as deep as the abyss.

Fun though, but counter-productive.

How did your sabatical turn out? Did you get what you expected out of it? I am starting one right now and wonder if you had one or two words of advice? Your comment made me laugh btw, I am in such a similar position! Best to you.

Shipped an indie game on PS4 to 60 odd countries. Pretty happy with my results. Hardly making any financial sense though, I made more contracting for a month than after a year of royalties.

What % kind of hit do you think you take? I think live streaming the development process might be a really cool way to build a community around a developer-focused tool I might build. Imagine if DHH had streamed the process of creating Rails before it was Rails. I think you're totally right that there's tension between being entertaining and being productive, but do you think one could it well enough that ancillary benefits might be worth it?

That's exactly what Adam Wathan has been doing over the past few months while working on newer stuff for Tailwinds CSS: https://www.youtube.com/channel/UCy1H38XrN7hi7wHSClfXPqQ

< (aka. financial dive) year.

what do you mean?

That he probably didn't have a paid sabbatical. Getting paid for a sabbatical is very rare and not the norm.

After 4 years in a Fortune 100 as a contractor, I was burnt out. I took a year off to jump into indie game development. Eventually I successfully shipped a product on the PS4 store, but to get there was a deep scary dive, with no real net and constant self doubt. It made me appreciate how easy contracting is. Now I'm back from my sabbatical, contracting full time and loving to sip on my latte not worrying about the cheque.

you don't get paid, you don't make money, eat from savings.

I think a lot of people, including myself, could get a lot out of streaming what we do even if another person never watches at all. Because we have to talk about our decisions, focus on a task, and just keep going as if we have an audience.

I've heard conversations that this same idea would probably help in every profession.

And a couple Mormon developers I know, think that the concept of a personal Holy Ghost, which is a belief of the Ladder Day Saints church is the same kind of assistant for moral decision making. We all perform differently when we know someone is paying attention.

I think you meant Latter Day Saints. If there are any Ladder Day saints (supposedly there is a Ladder Day[1]) I'm guessing that Mormons wouldn't hold as much reverence for them, what with the alcohol involved.

[1] https://www.urbandictionary.com/define.php?term=Ladder%20Day

Oh man... I won't be editing the typo so that I can be properly shamed.

That's such an interesting comparison! I kinda love the idea of Pair Programming with Jesus

I just launched my beta site, Vidcap.co. It was a lot of work and I was thinking all along that it would've been interesting to stream or YouTube the whole 5 month process.

The night of launch was a tough night since I didn't understand at the time how to deploy on Azure.

Unfortunately I didn't record at all. It would've been nice to have something like that, even if no on watched. Even if one person watched, they would see that sometimes the "easy" thing takes a lot of persistence and nail biting to make it happy for some.

I agree, it helps keep you on task because you feel that you owe it to your "fans" to put on a show. Maybe from no on I will stream just for the hell of it.

Do you have a project by the way?

As someone who has streamed development, it does help in that regard. However, I feel like it also slows me down a bit, and you have to be extra careful not to expose any sensitive bits.

And then there are the backseat coders who only sit in the channel to tell you how they would code it... they're fun.

The original article is really interesting. https://medium.freecodecamp.org/lessons-from-my-first-year-o...

I didn't even know livestreaming code was a thing aside from pre-scripted tutorials. I'll have to watch one of the streams, because the hands-on nature is probably good for learning the quirks of various techniques that you don't get from programming books.

It's too bad I spend 80% of my development time reading documentation and chasing down bugs.

80% is thinking and figuring things out, 20% is writing code; always.


Solve your problem then write code. Problems solved by writing code almost always ends up with crappy / messy code / difficult to maintain code.

The coding should be the easy bit, it's just implementing your solution in a language you know. It's basically just typying.

It gets lower and lower the more senior you get because you add an entire "obtain requirements and develop consensus" step.

I commend the author on the level of detail documented in the article. It's clear that they have spent much time and effort on making an appealing stream.

And yet I still don't get live coding. I have about as much interest in streaming my programming as I have in having a coworker watching me work over my shoulder: zero.

I'd love to know what people get out of this. For me the sacrifice to flow is far too great for what benefits I perceive I could get through collaboration.

I do see the potential in social network / community building though.

I do some live-coding in my spare time as a way to maximize focus and avoid distractions. It's the exact opposite of a tutorial or something useful for the casual observer - most of the time is me making mistakes and learning from them (a.k.a. fumbling around in the dark, reading docs, and fighting the compiler).

For that reason I also decided to go with Youtube - there's far less casual drop-ins and the people who join tend to be genuinely interested in what they're getting into, even though the traffic is lower (I experimented with Twitch for a couple weeks before going this route). Also it's easier to permanently archive.

Fwiw the topic I'm learning about is Rust + WebGL -> WebAssembly... I typically stream on Sundays but often enough, life takes over and I miss a week (this is part of what's making it really hard for me to learn - there's not enough momentum). Feel free to drop in: https://www.youtube.com/channel/UCGKhwtFOUlzj4VILDU0efkQ/liv...

That said - I agree 100%, I don't know why anyone does watch, it's probably super boring unless you're in the exact same boat! ;)

I think it's a good educational tool. It's like watching a cooking show and seeing how a chef goes from preparing raw ingredients to a finished product.

I think it is easy to dismiss until you've had a proper go at it

The experience for me was really engaging, and it gives you a kind of energy to keep going.

If you struggle to code outside of work, I think twitch streaming can give you the power to keep going at it without feeling burned out. Without streaming I find it is super easy to switch off and turn on some youtube video or play a game.

A good reason for live coding is transparency even beyond a GitHub repo: I tried live-streaming data science because everyone thinks it's magic, and I try to show that it isn't. (and also show that data science coding is easier than one may think)

Once you know how to do something you think it's easy.

do you have a link for the curious?

Haven't done it in months since I've been busy, but here's an example of analyzing IMDb data the correct way with R and ggplot2: https://www.youtube.com/watch?v=P4_zSfoTM80

That video is also an example of unexpected issues that can only happen when livecoding.

I rolled that out into a full blog post (https://minimaxir.com/2018/07/imdb-data-analysis/), which admittingly was faster to code while not being on camera.

If you look at her projects, a lot of it is very MAKER / IOT / ARDUINO focused.

She is pretty awesome and has a significant following helping people with fun projects.

I don't think the stream would work as well if she was a C++ developer at a giant company just streaming her day job.

I've streamed some Wordpress Development I've done, and its surprising the amount of people who hop in and ask questions. Usually because they are wanting to create their own plugin for the first time, or have a specific problem that they are hoping the streamers project will give an insight on.

Anything that touches Dates and Calendars seems to get an audience really fast.

* I can never help these people, and probably shouldn't be streaming.

I agree on both fronts, a well written article but to me the notion of people observing any missed key on the keyboard would only increase the likelihood of me messing up tenfold. Props to those who livestream coding, I don't think I could.

my typing error rate goes up about 500% any time a coworker is watching me type

Question: Is it necessary to use "they" now that it's clear that she's a girl?

I thought you use "they" when gender is not clear as to avoid assuming it's a guy.

I sometimes use "they" when I feel like using a gendered pronoun would distract from the topic at hand. It's incorrect but sometimes it makes sense.

Comment for people downvoting this: I don't think this comment should be downvoted, seems like a genuine question, intent on learning or understanding. If anything it's an opportunity for people or the questionee to explain or teach why they are using a specific pronoun. It's always better to approach with reasonable doubt and be less dismissive

so common it's normal in Australia, I wouldn't worry about it.

The real problem with typical Live Coding setups is that the text size is often way too small. You have to massively increase the size of the font or zoom the UI so that it's readable for the users, especially those who are viewing the stream on mobile/a small subwindow (one unintended perk of the Electron-based IDEs is that changing font/UI sizes uniformly is easy to do).

I strongly disagree with streaming at 720p30: the low resolution combined with what's said above makes it very hard for the viewers . As long as your upload bandwidth is sufficient (>6 Mbps) and your computer processing power is sufficient (quad-core CPU), I do recommend 1080p60 for future-proofing. Your viewers can lower the quality if necessary, and the exports to YouTube maintain 1080p60 as well. (EDIT: Maybe not: transcoding is apparently not always available for smaller channels, so bandwidth for users can be a concern)

It's worth noting the Streamlabs Alerts are just HTML, and as a result supports as many CSS hacks as you want (e.g. fonts/sizes/colors)


As someone who makes videos, I'm always jacking up the font size for tutorial videos.

I normally keep my editor's font size at 11px pixels, and it lets me easily fit 3 code windows + optional sidebar at 80 characters, and I can sneak in a terminal in 1 spot on demand without it bothering me too much. Then I have a browser and documentation open on my 2nd monitor. It's a very productive set up running at 2560x1440.

But in "video mode" I have to record a 1920x1080 area of my screen, and on top of that boost the font size of my editor and terminal font size to 40px. It basically means coding with 1 file visible at a massive size. Even splitting my browser and code editor side by side isn't a good idea most of the time when recording videos because it hides too much of the code. Then for documentation, that can't sit on the 2nd monitor because if you're talking about it, it needs to be on the streamed monitor.

It's like coding inside of a coffin instead of a nice 2 bedroom apartment.

There's zero reason to run 60FPS for a text editor, turn it down to 15FPS and take that extra bandwidth and put it into quality - if you're worried about the YouTube quality after-the-fact, you can run two encoding jobs though it's a bit rough on your CPU

The extra bandwidth would still be pretty small since the screen is mostly static. Unlike streaming a video game which is far more intensive as all 60 frames could be different within that second.

Not 100% sure if that’s the case here because of the Constant Bit Rate setting, but there are definitely fewer artifacts.

Oh, I didn't know Twitch requires CBR. I guess it makes it easier to determine what the end user can stream without issue.

Double-checked: Twitch does say transcoding is "as available" for non-partners: https://help.twitch.tv/customer/portal/articles/2785927-join...

Hmm, I could have sworn that I had the options available when watching smaller channels, but they may have been Partners.

> There's zero reason to run 60FPS for a text editor

It does make things surprisingly more fluid, especially for window navigation/scrolling (although you get into the 30fps vs. 60fps debate). If you're using a webcam that also does 60fps, it makes it consistent too.

I'm not disagreeing that it looks nicer, but trading FPS for clarity is definitely a good idea for live coding. I edited my previous comment, Twitch seems to have improved on this front

> Double-checked: Twitch does say transcoding is "as available" for non-partners

It's mainly done for non-partnered channels with high view count (at latest after requesting it manually).

If they had it on smaller streams, there also seems to be some mechanism that kicks in when a stream restarts multiple times (my guess would be some heuristic thinks there might be problems and tries to be helpful).

Also, like you said, enabling transcoding needs a stream restart right now. Guess this could be improved.

Maybe the system's heuristic just doesn't really remember sessions after some hours have passed so it needs to see a high view count again before turning on transcoding (after the restart).

I'm a product designer, consultant, mostly medical devices and otheris soon critical products. I've been toying with the idea of live streaming myself designing example products (no client work of course). I use mainly solidworks, fusion360, creative cloud etc. to do it. Do the hn folks think there would be interest in such a stream?

I've never understood the idea of using a 60% tenkeyless when your job requires you to type a lot. Even if you go full-size it dosen't take that much more space and you save you fingers the extra work for number and function keys.

> Even if you go full-size it dosen't take that much more space and you save you fingers the extra work for number and function keys.

If I go back to full size, it takes enough space that my shoulder hurts from the off-center kb/mouse, and it makes my fingers work harder and slower to reach the numpad and function keys.

I used to have a full size mechanical, switched to a 60%, and more recently an asymmetrical split 5x6+5x7 keyboard. The two small ones run a fully programmable FOSS firmware (QMK), so I can get keybindings that help me work faster.

The F-keys are used rarely enough that it's fine having them replace the top number row on the 2nd layer. I have a button to toggle to the 2nd layer, and two buttons that activate the second layer when held (one where the Fn key is on laptops, another where Enter is). On the 2nd layer, HJKL are arrow keys, WASD + QE + RF are also arrow keys + home/end + pgup/pgdn. The 2nd layer also has volume+media keys, print screen, and some other stuff on it. So I can navigate around the computer much faster since my hands never ever leave the home row.

The split keyboard is ortholinear (keys arranged in a grid, not staggered). I've had Caps Lock replaced with Escape for a long time and it's way superior to having escape above the tilde. There's no spacebar, all keys use 1 unit on the grid. My left thumb has space and backspace right below it; the right thumb has space and enter below it. So esc+bksp+enter no longer strain the pinkies, and they are faster to use. Aside from that it's pretty much a normal keyboard; however the split does make it a fair bit more ergonomic - both halves can be moved around and tilted.

40% keyboards without the number row on top, on the other hand... I don't know how anyone can use those for real work.

Also, I haven't needed to do it, but you can place on your second layer (or dedicate a key just for it) a key that will take you to the third layer. Put a numpad + mouse keys + F-keys on the 3rd layer and it's perfect for data entry. Or numpad + WASD + arrow keys, so you can play the occasional game which requires both WASD and arrows.

It's portable (although it's not a feature I care that much about), but programmatic layers are a huge plus for me. I use Vim and now I don't need to move a hand off my home row to use arrows and I love this. So, it's not really about space. It's also aesthetically more pleasing which is subjective. I'm a bit of a minimalist. I refuse to use multiple monitors such that I don't get used to having the additional screen-space, because I do have a tendency to work at coffeeshops and my workflow remains the same in the office and outside of it.

There is a certain maximum number of keys that your fingers can actually reach. At some point, chords end up being easier to type.

I think 3 row keyboards are too few keys, but the number row is actually pretty hard to type, so eliminating it isn't necessarily insane. I have a number row on my keyboard but I also have "raise" and "lower" layers, one of which gives you a number pad on your right hand. I find the numpad easier to reach than 1 and 0 and try to use it all the time. I have symbols mapped to a layer, so the crucial ones are on home row, with the other ones on the letter keys below the number that normally types them, with some exceptions for keys I've moved elsewhere. I also have dedicated keys for := and != which is quite enjoyable. (You can see the complete map at https://github.com/jrockway/qmk_firmware/blob/master/keyboar...)

Basically, if you're programming you are probably typing a lot of symbols. On a traditional qwerty layout, all those symbols are shifted AND on hard-to-reach keys. Moving them anywhere else is an improvement. Having more keys is good for infrequent things like arrow keys, page up/page down, insert/delete... basically OS functions that you use during normal usage of your computer, but that you've programmed any application you actually care about to not use. (In Emacs/Vim you aren't using arrow keys to move around your text, for example. Or at least I don't, preferring C-n/C-p/C-v/M-v/C-f/C-b to the OS keys.)

I like having my mouse closer to my typing position. I've gotten fast enough at the top number keys that I don't mind too much.

Depending on your setup, you might never/rarely need to use certain keys. The numpad is a waste of space, there's literally no need for it. Arrow keys are rarely needed if you use Vim and i3wm (plus vi mode in bash and vi shortcuts for Tmux). On my keyboard if I need the arrow keys I just press Fn+esdf (wasd offset by 1). All the other rarely used keys (F1-F12, PgUp/Dn, &c) are just a Fn key away. I find that combining keys is more convenient that having separate keys far away.

This setup is not for the real world, it is for fame and stream. I can't even imagine not using my 2nd monitor. I have 4 monitors by the way.

With all the distraction and talking, with smiley and responses, I don't think anyone can really deliver anything properly on time. Some people play games, some use different tools for streaming. This is one of those.

Ah, the old "No true Scotsman" fallacy.

Some people love multiple monitors, like many of my colleagues whom I respect despite using multiple monitors /s. But I have yet to understand how multiple monitors are inherently more efficient than e.g. multiple desktops, or switching between windows, especially when I'm wearing glasses. (This is not an invite to try and "convince" me, I've tried.)

Similarly, some people simply prefer not having to move their hands as much with the smaller keyboards, including - what a surprise! - people with smaller hands.

What I really don't get is why you'd need to put down other people's choices to validate your own.

Because this is a comment section and I want to share my thoughts and experience as well as my criticism?!

Didn't you just do the same to my comment?

While I have a preference, as do most people, I didn't say it was better than alternative solutions (my argument is pretty much that their equivalent), and didn't imply that one choice somehow made the user more professional or serious ("not for the real world, it is for fame and stream").

Maybe, I've been in the tech industry over 15 years professionally (excluding geeky childhood of course), and the second monitor for coding or any type of tech business was a blessing once it became affordable for most people. I just cannot imagine not having a 3rd right now.

Keepass (or another offline pass manager), Skype, multiple shells open, ftp manager, notepad (or whatever you call it for coding), browser, some Spotify (okay I get this one is not a must), and sometimes calculator.

I can't even imagine not having a numpad like she doesn't have. In our work environments, everyone has a 2nd, 3rd, or 4th. I've seen even 6th monitor. Her system is for streaming, and I don't think while streaming anyone can get anything done properly. Let alone the privacy of the company you are hired to do the job.

> I can't even imagine not having a numpad like she doesn't have.

My wrist pain got better when I ditched my number pad.

Lots of people have reported the same.

I also use 1 monitor, I use to use a lot, now my main monitor at home is an ultra wide. It provides less real estate than 2 monitors, it is about 1.5 monitors in width, but unlike dual monitor setups there isn't a line in the center of my vision and my main work window is straight in front, with emulators and terminals off to either side.

But I also have a setup with just 1 1900x1200 monitor. Honestly it doesn't make much difference. I am not using keepass at the same time I am coding, while I am coding I am writing code. Heck zen mode in various editors, full screen no menu bars, exists for a reason.

The OSs we all use today were written in text mode editors. Much of the work is still done in text mode editors (I know quite a few devs at Microsoft who use Vim!)

Don't judge others for doing what works for them.

FWIW, Visual Studio Code does most of what you have, all in one UI. It supports shells, scratchpads, and expression evaluation in pick your favorite language. I use deployment scripts instead of FTP, running from a console, so again one less thing.

IMHO multiple monitors are great for those times when I am manually taking data from one place to another, or for when I am live viewing changes.

I have never had a productivity boost from seeing email appear in the corner of my eye. How in the world is that good for coding? Likewise for a blinking tab in Slack or Skype. I'll check Slack once an hour or so, but I honestly don't want to see the notifications while I am focusing!

Let people do what works for them.

I am letting what works for them already. I didn't enter her apartment and add another monitor and a numpad to her desk.

Just want to chime in that my home setup is pretty similar to the one she lists -- and I'm very much not famous and have never even contemplated streaming.

I don't like a 2nd monitor -- having one makes me rotate unnecessarily and doesn't provide anything that multiple desktops and generally multiple windows don't provide.

I prefer a tenkeyless keyboard for everything -- the less I have to move my arm to reach the mouse the better.

I wonder if live coding could / should / will support similar "interactive fundraising" techniques as is common in game streaming. Some channels offer e.g. for $10 to manipulate some in-game item: Add an additional enemy, give the player a specific powerup, ...

I imagine for coding the equivalent could be "rename variable x to y" or "add comment //x on line y". There's a lot of potential for annoying / fun mischief, but that's what makes it entertaining and worth the $$$ for the viewers. Some might just want to actually help out!

I've actually been very interested in possibly live coding some random noodling I do while programming or learning something new in programming. Kind of like having an office environment in a sense.

In https://hackalong.devpost.com/ hackathon last year I implemented a basic tool, to make the 5 last recently edited files (updated via live-polling) available on a website from vs code: VS Code Extension Tab -> StreamCode.

I find it sort of funny that this is basically a direct modernization of what used to be a common thing centuries ago: mathematicians would be paid to compete against other mathematicians and see who could solve certain problems faster. And while there isn't exactly a competitive aspect here, it still seems to be almost a spectator sport, but now with a new layer of spectator interaction.

I've been mulling this over for quite a while now. Maybe this is the place to ask -- are there any good twitch streams for java coding?

Wow. Looking at the photo on the heading of the blog post - My desk was never ever been this tidy. never.

Great article, really enjoyed it! Having had a curious mind ever since I can remember myself, I've always wondered how things work behind the scenes, television included. This was such an amazing read, getting to know about all the bits and pieces behind the scenes.

I was kind of hoping for some info on the performance of her 13" MacBook, and if she's tried the 15" model at all.

When the current model first came out I read compliaints from livestreamers, and wasn't sure if the software was improved or Apple updated something...

One thing I didn’t see mentioned is, since she is using one monitor only how does she switch between scenes in OBS? Keyboard shortcuts? Also, does she not have a monitor view to let herself see what the stream looks like live?

She did mention this - she said that obs is only recording part of her screen, and she has an area of her screen not recorded for "admin" stuff. She also mentioned she uses keyboard shortcuts for her "secret" scene

I found this to be a particularly detailed and well-written article which addressed questions I didn’t even realise I had even as I’ve been investigating live-coding setups. Thanks!

I wonder how well her MacBook performs. Whenever I try to stream on mine it quickly spins up its fan which is really distracting, does anyone have any tips to avoid that?

Which study desk is it? (Its not mentioned in the article)

At the top of the article it says

> I upgraded from my $30 IKEA table to an Uplift motorised standing desk

I love seeing other devs' workspaces.

Are there any (other) sites collecting posts like this similar to r/battlestations or edc sites for software developers?

I don’t know why streaming can’t be a simple one click process. If anyone ever tried to configure OBS, you know what I mean.

It is. GeForce Experience will stream to your predefined YouTube or Twitch channel just by hitting ALT-F9 (or whatever you want it to be), among other programs that do similar.

People choose to use OBS for the extra features. Scenes, layouts/overlays, embedded interactive features, etc etc.

Because, even for small operations, you want to make it yours. And making it yours involves a lot of creative decisions. The software has to support those creative decisions.

I use vMix to do single-camera personal streams and five-camera, eight-feed, we're-adding-a-drone-soon fighting game tournament productions. But that's because I've already bought into the complexity enough to do it (and the budget; my copy of vMix cost $1300).

I'm not sure I see much of a market for XSplit or Wirecast, but they've got their fans...

Check out Streamlabs OBS (SLOBS), its interface is much more streamlined than regular OBS, though they still have some difficulty walking the line between flexibility and simplicity.

There are tools like XSplit which make the process simple. Of course, said tools are Windows only, since the target audience is gamers.

If there's enough of a market for simple code livestreaming, then the multiplatform tooling will follow. (or someone could fork OBS like what Streamlabs did and strip down the features).

it can be but usually people want more power which OBS gives..

OBS is a child's toy in comparison to Vmix.

Xsplit > OBS > Vmix

Your arrows contradict you

I think the arrows are in terms of how good they are at being simple.

Are those arrows or greater than comparisons?

It is on steam but it's quite limited.

Do they have a second screen for Googling or do they show that to their audience too?

I'm jealous of the aesthetic. It's really nice looking.


I prefer working alone and quietly.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact