

A live streaming platform dedicated to code - chippy
http://www.devv.tv/

======
ColinDabritz
I love it, I've been considering how to livestream real coding best for quite
a while, in terms of personal streaming. Having a dedicated site is great.

I'm seeing some skepticism over all for a variety of reasons, certainly valid
concerns, but I think they largely frame it in terms of traditional "attention
grabbing" streaming, like game play. The other day Notch was streaming his
doom-on-the-web experimenting, which was really fascinating to watch. Imagine
if Bret Victor was live streaming his playful explorations of coding and
visualization, discussing his thinking as he progressed. To me, those are
killer apps.

I think programming streaming is essentially different from, for example,
video game streaming.

It has many specific qualities that make it an interesting platform.
Education, a window into true software development, and the highest integrity
source control possible.

It's definitely true that the 'pace' is different, especially if it isn't
"showcase" programming. I think the strengths lie in a couple key areas.

It's extremely honestly educational. In the programming industry you see a lot
of canned talks, which are great for introducing new things, showing specific
techniques, they have lots of uses. On the down side though, they are very
misleading to learners. The work programmers do is not largely blazing away
along the perfect path of a problem, whipping out code as fast you can type
(or copy paste). It messy, complicate, has lots of fumbling and dead ends, and
it's more about thinking hard than typing fast (not that fast typing is bad,
it's handy to get your ideas out of your head quickly, it's just not job #1).

It's "boring" in a switch off your brain, entertain me at all times sense. If
you literally streamed hidden spy cams of most programming, you would get very
little interaction. I think it's intellectually very interesting in an
engaging way, to watch others wrestle with problems, to see how they do things
differently, and gain insights into a very intimate process.

I livestreamed a bit of turn based gaming on the release of a game, and it was
remarkable. Most streamers day one were tearing through the game at a
relatively fast pace. I was taking it slow. Some people complained about the
speed, but my goal was to "full plan" working the thoughts and strategy
options through, and talking through it end to end. Some people were
frustrated by that, looking for more of the other styles of streaming, but I
gained a small audience (averaging 20s, peaking at 80s, it felt decent for a
new streamer). I talked out my thought process, which helped improve it. My
brain was 'fully switched on' in a state of flow. Just these things helped my
play immensely. I also interacted with my audience, which helped that much
more. A live stream can be your pair programmer. You can explore new ideas and
possibilities.

I imagine it more like when an SC2 player is exploring a build. It's "dull and
boring" because it's relatively predictable, but as they explain their
thoughts and discover new timings and possibilities, it catches a lot of
peoples interest.

Another important aspect for me is the timeline. Maybe not every minute is
interesting, but perhaps with a highlights feature you could step through a
process and show example. "See, this is where I made the architectural goof.
You can see hints here and here showing that it's problematic. Here's where
the realization happened and why, and here is the much more satisfying fix".

What if you had a recording of every moment of the programming of a non-
trivial system? You could do great research. You could study the kind of
mistakes people make, do minute-by-minute root cause analysis. My only concern
here is that narrating what you are doing, and having a live audience may
alter the style of your work. Can you still complete your best work under
these circumstances? It's an interesting question, and I've love to explore
the answer. I think it's definitely a different approach from the solo quiet
solitary work style, but if my experience with streaming gaming was an
indication it's one you can leverage into high engagement and flow. The
question is can you do all of the great work you need to in front of an
audience?

To me, with a timeline, livestreaming and archiving is the ultimate in source
control. What if you could trace a line of code to a check in to a time stamp
to the video of that line of code being created? What if you could stitch that
all together to a work item or ticket, and get video of the design and
thinking process, to understanding why the code is a certain way? That's
exciting.

One of my biggest concerns is the licensing policy. I need to own my code. I
need to own my ideas. Maybe it's open source software. But as a streaming
site, you are getting a non-exclusive, revocable right to host my livestreams.
In return you can play ads and host my archives.

I've thought about this quite a bit. I want to be a part of this. I've
submitted my email on the website. I believe you can also email me here.

Thank you for embarking on this adventure.

~~~
minimaxir
> _To me, with a timeline, livestreaming and archiving is the ultimate in
> source control. What if you could trace a line of code to a check in to a
> time stamp to the video of that line of code being created? What if you
> could stitch that all together to a work item or ticket, and get video of
> the design and thinking process, to understanding why the code is a certain
> way? That 's exciting._

Isn't that the exact use case for code/commit comments? :P

~~~
tree_of_item
Commits don't even come close to capturing the amount of data a screen
recording does.

~~~
minimaxir
Therein lies the problem.

Screen recordings aren't a _concise_ representation of the programmer's
thought processes, and it would take any viewer more time and effort to watch
15 minutes of video for a problem context and resolution than a concise 1-2
line comment summary of the code delta.

~~~
ColinDabritz
Certainly! The compression is handy when you have it. This is why check-in
comments like "Fixed bug #1234" are really frustrating. The link to the bug is
nice, but out of a list of 10 similar comments, I need to find the one that
say, turned on the security. I need the compression.

That said, sometimes my goal isn't "find it quick", it's "understand it
fully". Perhaps we'll figure out ways to understand the video in fast forward,
make visualization of code change timelines, that sort of thing.

But I think it's interesting to start with all the raw data and figure it out
from there.

------
minimaxir
A couple months ago, someone asked "Why isn't there a twitch.tv for
programming?":
[https://news.ycombinator.com/item?id=8039299](https://news.ycombinator.com/item?id=8039299)

I believe my answer still holds true. Programming isn't as well-suited for
constant live streaming because:

a) The viewer can't leave the stream in the background (as you would
television)

b) A very large amount of dead air where nothing is happening and the streamer
needs to fill dead air. (even worse if you have to debug something)

c) It would require a very optimized overlay that makes it easy to see the
code at sub-1080p resolutions. (almost no screencast even now does this
because it impacts usability)

d) The presenters need to be socially engaging; given the demographics of
people who are the best coders, this is not a guarantee.

In the meantime, I've done some code streaming Hello World PoCs just for fun,
with a few optimizations to solve the problems above. They haven't gone well
(need to fix a sound desync issue) but there is potential:
[http://youtu.be/DWRI_7HgZwk](http://youtu.be/DWRI_7HgZwk)

~~~
awalton
I concur wholeheartedly. I've watched people code on streams during game jams
and even then I was quickly bored to tears. Most coding is even less exciting
than coding games.

Some tasks just aren't well suited to streaming, and coding is one of them.

~~~
swirlycheetah
I've watched plenty of stream and I agree sometimes there can be dull moments.
The same could be said for any type of live stream though. Often this is down
to the streamer rather than the subject matter.

Watching quill18 fix a bug and be visibly excited about his code working
(raising his hands and shouting something along the lines of 'fuck yeahhhh')
during the last Ludum Dare was such a warming experience which mimicked the
internal monologue I often have when a piece of code finally works as I
expected it too.

There's obviously a demand for people who want to watch coding steams, my
biggest challenge is ensuring there are people who can offer streams worth
watching.

------
swirlycheetah
Person behind devv.tv here.

I built this landing page at the end of the last Ludum Dare compo/when Notch
began streaming his Doom build.

I'm currently trying to think of ways to attract developers to stream. There
seems to be lots of interest in people wanting to watch good quality streams
but I feel the challenge lies in providing these good quality streams.

I plan on streaming myself building the MVP in the near future.

~~~
thenomad
Neat! This seems like a really good idea.

I'd recommend focusing on a particular niche of developers who all gather in
one place, and who have a strong interest in learning more and watching others
code. Game developers would spring to mind but I'm sure there are other even
better groups for what you intend.

Then, if you can persuade one or two of the stars of that community to use
your platform, you should get a decent amount of starting traction.

Looking forward to seeing how you get on!

~~~
swirlycheetah
Thanks for the encouragement. One of the first places I actually went with my
idea was /r/gamedev
([https://www.reddit.com/r/gamedev/comments/2ekkeg/im_thinking...](https://www.reddit.com/r/gamedev/comments/2ekkeg/im_thinking_of_creating_a_live_streaming_website/))
where I got some really useful feedback. The feedback helped me tweak the
features I'd listed and understand some of the problems faced which I want to
tackle.

------
chippy
I love the idea. Something like this will happen soon.

There are some games developers who live stream occasionally on Twitch.tv. The
results are generally visual, and feedback quick.

I wonder how much they interact with the viewers / chat. If they can take
feedback from and incorporate ideas or fixes.

When I've tried streaming, I've found it hard focusing on the chat side and
coding at the same time - it's probably a skill that the best games streamers
have - that of paying attention to the viewers, being entertaining, and doing
a good job.

The other issue is wondering why I would want to stream myself programming?
The first thought was to share with others if they might find it interesting.
The second was that as a home worker I might like some virtual company, and
the third was that of narcissism. All three thoughts were kind of weak, and I
couldn't really come up with a benefit to myself from doing it. Nevertheless I
think that there is some future here with such a platform!

~~~
d0vs
> There are some games developers who live stream occasionally on Twitch.tv.

That sounds interesting. Links?

~~~
chippy
here's a couple

[http://www.twitch.tv/ae_play](http://www.twitch.tv/ae_play) CityBound
developer

Notch [http://www.twitch.tv/notch](http://www.twitch.tv/notch) (minecraft)
used to be on twitch, but I think he's moved to
[http://hitbox.tv/Notch](http://hitbox.tv/Notch) now

------
larsberg
I'll be very interested to see how this goes.

In a former life, I worked on developer tools and as part of that we did some
extensive on-site filming of experienced developers, in order to do some new
product development (I think we used 10 years of professional development as
the minimum bar). I don't remember the exact numbers, but it was over 75% of
the time was spent reading code - just navigating, stepping through a debugger
(without making any changes), and just staring at huge piles of code.

------
orta
I've been streaming a second monitor most weekend for the last month on thing
ranging from writing blog posts to building iOS apps. The hard thing has
always been trying to separate config files & notifications from user-visible
streams.

I think it would be interesting to have the stream be text input aware, so
that it can showcase the text currently being selected or edited in a way that
highlights it better. That and/or either having window specific zooms. I know
up-front what the interesting Apps I'll be working in are.

Also, it's a real hassle to keep open a chrome instance to chat, allowing XMPP
or IRC would mean I could have a native app for communicating with the
streamers.

~~~
chippy
Twitch uses IRC for their chat, what platform are you streaming on / using?

~~~
orta
I've been using twitch.tv, but found the IRC to be unreliable. I tried
multiple IRC clients and they disconnect and reconnect regularly, and often
miss messages which appear on the website.

------
bjansn
My co-founder once put 1.5 hours of coding on YouTube. Quite some enthusiastic
responses on YouTube and HN. Recently we got the idea of streaming more code
sessions. Didn't execute on it yet. You find his video here:
[http://youtu.be/cYrbc-g6R-U](http://youtu.be/cYrbc-g6R-U)

Judging from the responses there is a place for a platform that shows long
coding sessions as a tool for people to learn. With all the online courses
available today, these kind of video's are a nice way to facilitate further
learning and practice.

------
ColinDabritz
So who would you want to see streaming their development?

Let me nominate:

    
    
        Bret Victor
        Rich Hickey
        Scott Hanselman
        Jon Skeet
    

Who would you watch?

~~~
Kiro
John Carmack

------
thegenius
This seems like a a great idea and a lot of fun. Something I would personally
participate in on both the watching and the streaming side. The only concern I
think I would have is that of API key / password exposure. It would be up to
the developer to be very careful not to accidentally switch to a config file
in their editor or whatever.

~~~
swirlycheetah
It's great to hear people want to stream!

The sensitive information issue is certainly a valid concern and something I'd
be worried about personally too when streaming. I'm not sure how we'd solve
this in the long term, initially though it'd probably just be down to streamer
education.

~~~
thegenius
It's a problem that Github suffers from. The thing is, it's easier to educate
people about .gitignore and .hgignore, and those are both more effective at
blocking out sensitive files than accidentally switching over an editor tab
with a yaml or whatever. The risks become compounded when you consider that
people will record the sessions and make them part of the public record.

I might be overreacting, but it might be something to think about.

~~~
swirlycheetah
No I don't think it's overreacting at all, I've got this listed as a reason
people may not want to stream. If I could solve the problem then it'd be one
less barrier. Thanks for your feedback, really appreciated.

------
ioddly
I wonder how coding in front of a live audience frequently would change how
you write code. I can imagine both positive and negative effects. I think you
would probably get very good at getting boilerplate code out of the way, but I
assume it would make you more prone to mistakes, at least in front of a live
audience.

~~~
swirlycheetah
I can imagine you'd feel a little more under the microscope so may be either
prone to errors or may be so wary of errors you'll be overly cautious. Either
way I think that'd be something which would perhaps disappear once you'd been
streaming for a while and realised no one was really judging you.

------
greenwalls
I look forward to checking it out when it's live! Have you thought about
including designers? It might make your audience larger. Designers are usually
part of the dev process so I think it would still make sense with your name.

------
logn
I've long thought this could be interesting. Please implement a feature to do
a time lapse at varying speeds on replay.

------
20kleagues
just make something like google docs with read only view to public. it will be
much more streamlined for data where you don't have to stream 1080p displays
in all.

------
swah
Where is your stream showing you coding this? :)

~~~
swirlycheetah
Haha, I will actually be doing that! Probably over on hitbox.tv to begin with,
eventually porting over to devv.tv once I've actually built something.

