9 ms·
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
by nstart 8y ago
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.
- stale2002 8y ago> 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
- nstart 8y agoThat 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.
- pablasso 8y agoCan you share a link to your steam?
- stale2002 8y agoSure, I have a bunch of videos saved here: https://www.twitch.tv/stale2000/videos https://www.twitch.tv/stale2000/videos
- 0_gravitas 8y agoDad! 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
- stale2002 8y agoHaha, thanks!
- emerongi 8y agoTwitch 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.
- hiimshort 8y agoWould 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?
- jmartinpetersen 8y agoI 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.
- arcticfox 8y agoWhat 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.
- jmartinpetersen 8y agoGames like XCOM/XCOM2. Specifically, I'm watching a stream of Long War Rebalanced, and it's kinda annoying when you join an hour in.
- atoav 8y agoWhat 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.
- artjomheinz 8y agoI 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.
- babaganoosh89 8y agoIf 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.
- Shivetya 8y agoand 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
- mediaserf 8y agoI often verbalize through problems (talk to myself) - so this may actually be a good excuse for that.
- ajuc 8y agoSimilarly 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 :)
- opan 8y agoSome 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.
- thom 8y agoWould 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.
- deleted 8y ago[deleted]
- crispyambulance 8y ago> 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.