
Mark Rendle's Stream of Consciousness
Durée: 73m7s
Date de sortie: 22/07/2021
In this episode, I was joined by Mark Rendle to chat about his experiences live-coding/streaming on Twitch! Warning: We went on a lot of tangents during the conversation! It’s all good though - as they were all awesome tangents! We not only talked about streaming, but also Blazor, C#, Unity, the rate of tech advancement, teaching kids to code, and much more!For a full list of show links, see the website here
Hey, everyone, welcome to the Unhandled Exception podcast. I'm Dan Clark, and this is episode
number 20. So we are no longer a teenager. Although it does actually feel like a lot
plus que 20 épisodes depuis que le podcast a commencé l'année. Mais j'ai vraiment
enjoyed geeking out with all the awesome guests so far, and I'm fairly sure that today is going
to be no exception, because with me today is Mr Mark Rendall. So welcome to the show,
sir.
Hi, thanks very much for having me.
You're more than welcome. And I should probably introduce you on properly. So Mark is a C-Shap
Dev, Microsoft MVP, author of visual recode, and frequent public speaker. And you've actually
even done a talk with Donald Oxford. I think that was last year on writing code that writes
code, I think it was.
Oh, yes, that's a fun one. That's about a year ago.
I know it feels time just feels.
Yes, it's still March 2020.
But now you're streamers as well, which is actually what what we're going to be talking
about today.
Yes,
You host a Twitch stream where you do live coding.
Yes.
Before we get into that, is there anything else I've missed off your intro that you'd
like to mention?
Oh, I wrote a book, wrote the book on.
I didn't know this, actually.
GRPC for WCF developers for Microsoft, which is on Microsoft's architecture docs site,
wrote that with my wife.
And yeah, and then I think that's it, sort of just general geek and massive show.
In the last episode, I was chatting with Chris Sainty about Blazor, and then we were
talking a bit about his book, and he was talking about all the work that goes into
actually authoring a book.
It is a lot of work.
And writing a book with WCF in the title, when you've got one of the lead developers
of WCF as a reviewer.
Yeah, it's interesting.
Does this all tie into your visual record project?
Yeah, basically when Microsoft sort of announced that WCF was being discontinued and that they
recommandé GRPC, I jumped on that.
I was all over it and started working on visual recodes, started blogging about it a lot.
And they just got in touch and went, hey, we'd really like a book for sort of explaining
GRPC in the frame of reference of WCF.
Do you want to write it?
And I was kind of like, I can't write that.
But then my wife went, I'll help you do the technical bits and I'll turn it into a book
because she's sort of a very good writer and she's doing like an MBA in creative writing
at the moment.
Oh, nice.
So she took my just stream of consciousness, tech fact, tech fact, tech fact, and actually
turned it into a readable book, which was nice.
Yeah, it's funny actually because I mentioned before I was talking to Chris Stee in the last
episode and we actually spoke a lot more after Within is Recording about authoring
on books.
And then this morning I was chatting to someone else and they were saying that they've been
thinking about writing a book.
And I've actually been thinking about writing a book for quite a while too.
So this morning we were talking about it.
So it's funny that it's come up again in this conversation.
It seems to be the theme at the moment.
I think everyone should write a book or at least everyone should try writing a book
at least once.
I've got books that I wish I had time to write.
Yeah, one day I will actually go.
Can I sit down and do it?
But yes, it's nice to have a book out there and particularly to be able to say it's on
Microsoft's website and you can download a PDF or a Moby, I think, and you can sort of put it
on your device, but it's free.
And yeah, so it's kind of accessible.
Yeah, that's pretty cool.
I'll go and have a gander myself a bit later.
Yeah, cool.
So before we delve properly into streaming, I'm going to do this episode's listener
mention. So this one goes to Mike Brind and he said, great episode.
I'm becoming addicted to these since I found them at the weekend.
So he's referring to the last episode with Chris Sainty that I just mentioned
about Blazer.
And this actually means such a lot to hear that he's finding the podcast addictive.
That's like comments like that make all the work really worthwhile.
Yeah, that's that's nice.
It's nice when you put something out there and you get positive response.
Absolutely, especially if it's on the internet.
Yeah.
So streaming.
So you've recently started a Twitch stream.
Yes.
I was looking through the videos, obviously, you can attend Nile and get involved.
I'll watch them.
After the fact, you can see you've got a lot of ones on the school of GROC.
Yes.
Yes, school of GROC.
Oh, time is difficult.
I think it was three, no, four years ago.
I'd been doing a lot of workshops and consulting work and that sort of thing.
And it's great, but it doesn't scale because it's just you doing it.
And so I had the idea to do a video, sort of make videos and sell them.
And school of GROC was the brand name I thought of for that, which I was really pleased with.
But then when I actually tried to sit down and make videos, it's really difficult.
And so I never actually got to the point where I had completed a course in something
because when you're recording videos, you make a mistake and you go
that app and then you sort of go, right, where can I, where's
where's an edit point that I can go back to and just restart that whole bit?
And then the editing process, as you probably know from doing a podcast,
is just a nightmare.
I must admit, I find when I've tried to edit videos, I find that a nightmare.
I find editing audio only because you don't have the glitch in the actual video.
Yeah, it's just you can edit it and you just can't tell.
Yes, yeah.
When you've got video and you've got to kind of undo what you were doing on
the screen and stuff.
And then I got to the point where I was recording, doing the screen grab bit
and then going back and recording the audio over that.
And then you kind of go right.
So I need to stretch this frame to account for the fact that I talked for an extra
fight and it was just super complicated.
And so that project got mothballed and then I started working on visual
recode so I didn't really have time to do anything else.
And so then when I started streaming, I kind of resurrected the School of Grok name.
I quite like the some of your older School of Grok videos that it was
using like School of T kind of school, that kind of sentence.
Yes, yeah.
Actually, the only reason I've changed it is that when you something like
when Twitter pulls the title through on the meta card for Twitter,
it doesn't like the angle bracket and so it just cuts it off to school.
And it's just kind of like, yeah, no one's going to watch that.
And so I changed it too.
But yes, the branding for if I ever make stickers, it'll be School of T kind of
of Grok.
I've got a flashback of the, have you seen the mugs, the cup of tea?
Yeah, exactly.
That was kind of where I got that from.
Yes, yes, it's not original, but I do like it.
But yes, yeah, making videos and editing them and making them professional.
And it's, you know, even just stuff, when it's just you talking, you get
the mouth noises and you have to go through and you're kind of going through
and taking out all those noises, which you're now going to have to leave in on.
So yeah.
And that's that's the thing about streaming is when you're doing it live.
That's it.
It's out there.
You can't go, oh, no, I'm going to go back and delete because people are
watching and it's live.
And so you get, you get away with a lot more.
And so the idea is to, to do these live and then do a bit of light editing
and then upload them to YouTube and make it a series on YouTube.
But it's just, it's a lot more relaxed and informal streaming.
But yeah, I'm so busy and I've got so many things going on and, you know, day job
and recode and family, work-life balance and all that sort of thing.
But I wasn't getting any time to work on just speculative projects
or learning things or whatever.
And in a way, streaming gives you permission to do that.
So I can kind of go, oh, I've got an idea for a thing.
And I'm just going to hack at it.
And if I do it while I'm streaming, then it's sort of being productive or
something.
It's quite a nice side effect, isn't it, that you're learning
whilst producing something?
Yes.
Yeah.
And it forces you to kind of, if you ever sort of read any of these, how to
get things done, how to, how to be productive and whatever they always say,
actually set times in your schedule for doing things.
And I've tried doing that.
I've tried going right at 10 o'clock on Saturday morning.
I am going to spend four hours working on this.
But when it's just me, it gets to 10 o'clock on Saturday morning and I'll
go, well, I'll do it in half an hour.
I thought you were going to say at 10 o'clock, the kids give another
plan to your day.
Well, that happens as well.
That's what I get.
I can't map out the day with kids.
Yeah.
When it's streaming, if you say you're going to be there at eight o'clock for
an hour and then you're not there at eight o'clock, you're letting people down.
And that just gives you that extra push to actually sort of get on and do the
thing that you said you were going to do.
So that works really well as well.
And yeah, there's just that excuse to work on something different because,
you know, my day job at the moment, I'm doing a lot of back end services,
which, you know, part of the reason they pay me lots of money is that I know
what I'm doing and I'm pretty good at it.
So I'm not learning anything new there.
Visual recode.
I learn lots of new things, but they tend to be about the Visual Studio extension
SDK, or WPF, which are not really things that I want to be expanding my
knowledge on.
It's kind of, I really wish they just rewrite Visual Studio completely in
.NET 6 and Blazor.
Just don't think it's going to happen.
So yeah, streaming is a kind of excuse to go, I'm going to learn Blazor.
I'm going to learn .NET Maui, which I've been doing lately and kind of dig
into these things.
It's fantastic.
It's, and it's great.
And it's one of those things, I think everybody could do it.
That's kind of the reason why, why I suggested we talk about it today is that
I don't think really anything that I've done up to this point, because it's
not using the same set of skills that I use for doing user group talks or, you
know, presentations or workshops at big conferences, because the main thing
you need to be able to do is, is sort of just stream of consciousness talk
about what you're doing.
Yeah, I think a lot of people do have trouble actually verbalising their
stream of consciousness, though it's kind of, since last year, I've been
obviously working remotely and I probably will do for some time now.
But there's been a lot of pair programming in that.
And I found when doing pair programming, you are verbalising as you're
working and saying what you're thinking.
And I found that has made a massive difference to things like doing the
podcast or doing talks, because I've spent all day articulating as I'm
doing it, which is kind of what, presumably what you do in the, in the
stream.
Yes.
But I don't, I think a lot of people, if they used to sitting down with a
headphone, just coding away, aren't used to actually articulating that
out loud as they do it.
Yeah.
And I think that's a really useful skill for everybody to develop.
Partly, you know, as you say, when you're pair programming, the point
of pair programming is not that you sit, both sit in silence and somebody
watches the other one do it.
It's that you talk about what you're doing and you're in a conversation
and working at the same time.
And yeah, Twitch is like pair programming, but with 20 people sort
of watching and telling you where you've gone wrong in the chat.
And yeah, you blather away while you're coding.
And it doesn't matter if you stop coding for five minutes and just go off
on a complete tangent and people are asking you questions.
So when I started, it was, I had an idea for cocoon, which is a sort of proxy
that goes in front of a web forms application.
So you can replace it a page at a time, which was quite high level stuff.
And then I ended up learning blazer, which I hadn't touched before.
And I made a deliberate choice when I was doing that stuff, not to learn
anything about something before I started doing it on the stream.
Cause I thought for other people to watch me learn something might be useful.
But I was getting people watching the stream and just going, I don't know
any C sharp at all.
Could you do some streams where you actually teach C sharp?
And I've got enough people asking that, but I thought, OK, so, and I've
had to kind of try and work it out.
Cause if I go say to my wife, I'm streaming every night for two hours,
then she's going to just say no, you're not.
But I switched it so that the evening streams on Tuesdays and Thursdays
and now properly school of grog learn C sharp with me.
And I sort of explain the stuff.
And so we're kind of going, this is a, we got strings and
int's and decimals and nullables and methods and classes and all that sort of
thing.
And yeah, that's quite interesting going back to that level of assuming
no knowledge at all.
And I'm getting lots of younger people joining the show.
I got, so I know some of my, my eldest child's friends are watching and
they want to do game programming and they're sort of looking at Unreal engine
and I'm telling them, no, no, use unity and C sharp.
So they've, they started watching my streams to learn C sharp.
That's brilliant.
Cause I know like a, obviously a lot of kids are kind of not embarrassed about
the parents, but they don't want to, I don't want to be dropped off at school
or whatever it is.
And mine aren't at that age yet, but I'm, I'm presuming it's going to come
at some point, but that's fantastic that your kids friends are actually getting
involved in something you're producing.
Yes.
Yeah.
They, I am, what kind of parent am I?
I'm not strict.
My kids are not, it's, my parents were really just ridiculously strict
and everything was wrong.
And so I've kind of pushed back the other way.
And so yeah, my kids have it pretty good.
And so their friends going to meet me when I come to pick her up.
And yeah, then I get sort of reports backs going, my friends all think
you're really cool.
Nice.
They're obviously idiots.
But yeah, so they, they come and watch my stream and ask questions
and things.
So that's fun.
And again, I'm going to sort of lightly edit those and put it onto YouTube
as a, as a learn C sharp with Mark school of grok thing.
And then I'm switching the ones where it's me mucking about with sort
of new stuff to lunchtime streams so that people can just kind of drop
in while they're eating their sandwich.
And assuming if they're in the office, their office network hasn't
blocked Twitch, which, you know, maybe it does.
That was one of the things I was going to ask.
How do you actually pick the best times where people are most available?
So you just kind of mentioned about lunchtime things that people can drop
in.
Have you played around with different schedules?
Or, when I started, it was seven o'clock on Tuesdays and Thursdays.
And I was aiming for two hours and I would get people would be there
at the start and then drop out halfway through because they had to go
and do bedtime and bath time and things like that.
Cause obviously, you know, people my age and thirties and forties.
And I've got responsibilities, but it's, that's kind of okay.
Sort of dropping in and out and so on.
Obviously, I can't be doing it at nine o'clock in the morning or
three o'clock in the afternoon because the people who were paying me
would be going, why are we paying you for, you know?
So yeah, there is, there is some mucking about.
I think lunchtime is going to work quite well, certainly for the European
audience.
Then the learning ones, I've switched to eight o'clock in the evening.
When I think younger people are probably free.
I think it's sort of after tea time for people who have structured
lives, which, which I don't.
And it's only for an hour because more than an hour trying to learn
something, there's, there's a reason why school lessons are 45 minutes.
Because if you go for longer than that, then your brain just shuts down
and goes, nope, that's it.
New information.
And everything gets archived.
There's a really, really nice button inside Twitch where you just go
export and it sends it to your YouTube channel.
And so people who miss an episode can just catch up on it there.
And I think you can just in Twitch view the videos there, because
that's when I look back at your past videos in the school of GROC.
I could see there was just like the list of very light YouTube really,
it's just a list of your past videos.
Yeah, they only go back 60 days.
That's the issue.
Oh, I see.
So Twitch has this thing.
When you start streaming, there is a thing called the affiliate programme.
And they have a series of targets that you have to reach to become an affiliate.
And it's, you have to have, I think it's 50 followers.
And you have to stream for a minimum of eight hours in a single month.
It's all really, really achievable for most people.
You have to reach a number of people chatting at the same time in your stream,
which I think is only five or something.
And when you get to affiliate, so before you're an affiliate, I think the videos
are kept for 14 days.
And then when you become an affiliate, they're kept for 60 days.
But then you can export them over to YouTube, where they just stay forever.
Gotcha.
So you've probably done a lot more videos than I thought you had done.
So I was just looking on your Twitch.
Yeah, no, it goes back to pretty much the start of the year, I think.
I started doing it in January.
So all the ones on cocoon, which was the first ones I did, they're all on YouTube.
And I need to kind of do some editing on YouTube and then group them into
playlists and stuff.
And then yeah, the stuff that I'm doing now in the not learning ones, I'm
actually making a tool for streamers to use on their stream, which started out as
just I'm going to muck about with this.
And it'll be quite fun, but it's actually turned into, you know, it has a website
now, it has a proper name stream badger.
I've seen these on your Twitter stream.
Yes.
And that's great because I'm building it on the stream.
And then when I hit F5 and start debugging it on the stream, it becomes active
actually on the stream.
And so when I'm clicking the button to make Perry, the platypus go flying
across the screen, it actually happens.
So is this like an OBS extension or something?
Yeah.
So it's, it runs outside.
So it's a standalone programme.
And it's, it's super complicated.
Because of course it is, because why would you build something simple?
It started out as just a blazer application that ran in the browser.
But inside OBS, one of the sources you can have in your stream is a browser source.
So I create a browser source inside OBS and point it at this blazer application.
And then I also had another page on that application open in the browser.
And then I would click things in the browser application and they would
show up in the, in the overlay in OBS.
Then people were saying, oh, you should make this a standalone application
and started talking about electron.net.
And there was something else photon, I think it was called or proton.
But that had some issues.
So now it has switched over to using blazer desktop, which I started
doing with dot net six preview four, which was really quite hairy.
And currently it's on preview five over the weekend.
I'm going to upgrade it to preview six, because honestly upgrading
from five to six is not something worthy of streaming.
It's, it's just a pain in the arse and moving a bunch of files around.
But yeah, so at some point, once dot net six has a kind of go live license,
whatever they call those things, when you get to like preview eight or nine,
they start saying, we'll support this in production.
And then I will actually start packaging it and shipping it for Windows and Mac,
which I'm quite looking forward to and getting some branding on it and that sort of
thing. So you've got a dot net, Maui blazer desktop application,
which is running one blazer server app.
And then you also, in the same process, have a completely separate blazer
server application, which is running on a TCP port, someone local host
25293.
And the OBS overlay is pointing to the blazer server running on local host.
But the application is running all inside the blazer desktop webview thing,
which is just mental, but it seems to work.
That sounds pretty cool for the listeners.
If none of that made sense, go listen to the last episode on blazer.
Don't we talk about blazer server and all this kind of stuff?
Yes. Yeah.
And the nice thing about it is the first experience I had with blazer.
And this is one of the privileges of having been sort of doing the public
speaking circuit for 10, 10, 11 years now.
I'm doing a lot of the developer developer developer events in the UK.
Steve Sanderson, obviously, is UK based and was a presence at a lot of the
DDD events.
And so I met him there and he watched my talks and I watched his talks and
we follow each other on Twitter.
And so when I was working on cocoon, people were saying, could you get this to
work with blazer?
I was kind of like, I don't know, we'll try that on the next stream.
And so then on Twitter, I went, so I'm going to try blazer and see if we can
get cocoon working with blazer.
I've never touched blazer before come and see me flail.
And one of the people who came to see me flail was Steve Sanderson.
That's pretty impressive getting Steve on the stream.
Yes.
It's it was scary because, you know, I don't want to make myself look like
an idiot in front of Steve, but he was just super helpful.
And actually, he said the reason he was there was he doesn't get an opportunity
to see people's first experience with blazer.
C'est un peu comme ça.
As a software developer, that ability to watch someone try and use your thing
for the first time, you never get to see that.
And so you don't really understand how people are interacting with it.
And so he was watching me and trying not to give me too much help.
But also, if I did get completely stuck, you would go right, suppress,
control, shift, alt and whatever it was to bring up the debug window,
which he can then take away and think I need to make that more obvious.
But also just to sit there and go, why doesn't Mark read docs?
We put that in the documentation.
Why is he just trying to figure it out?
But once I started playing with blazer,
I was just super impressed with it.
I had been skeptical.
I was a blazer skeptic.
I thought, why are we trying to make the browser do something it doesn't want to do?
Why would you do this instead of just using JavaScript?
And blazer WebAssembly,
I think, a still got a long way to go.
It's got a lot better with .NET 6 and the ahead of time compilation.
And I think it will, over time, become really super compelling.
But blazer server,
actually on the learn C sharp thing next week,
I was trying to go, what's the next logical step after a console application?
So having written a console calculator,
what's the logical next step?
And as a .NET developer,
you might go, blazer is really new and therefore advanced
and it would be terrifying.
But actually, I'm going to jump straight to blazer server
to write a chat application
because it's easier to do it using blazer server.
You don't have to worry about JavaScript,
so you're not dragging in another language
and you're not worrying about APIs and JSON serialisation
and all this sort of stuff.
It's a really nice model.
Outside of the .NET ecosystem,
Basecamp have come up with this thing called Hotwire.
And Hotwire is HTML over the wire.
And it's basically doing the same thing as blazer.
It's running a process on the back end,
sending the DOM updates over WebSockets
so that you have this minimal thing.
And this is like the new hotness.
And I think there are a couple of other frameworks
that are doing similar things.
And I think Meteor was doing something similar.
And yeah, I was reading articles about Hotwire
and people were going, this is amazing.
This is the future.
This is fantastic.
And I'm just going, this is blazer.
This is blazer server.
It is, it's super simple.
And for people who have webforms applications
in one way, they are not at all similar.
You know, there's no ASPX.
There's no view state.
There's a completely different page lifecycle.
But in other ways,
it's almost exactly the same.
When you have an event in blazer,
that event gets sent over the WebSockets
and processed on the server.
And then the server sends back the DOM updates.
But it's doing it with tiny, tiny little bits
of packets of data being sent backwards and forwards
over this WebSocket.
It's just a really intuitive way of building applications.
And it's so intuitive that blazer desktop,
to me, makes perfect sense.
It's kind of going, as a developer,
you're probably, in your life,
you're going to spend time building web applications.
But you also want to build desktop applications.
And why not use the same thing for both of them?
And the Blazer desktop,
that is using the Blazer server model.
So you have a .NET runtime
and then a WebView,
which are connected via a WebSocket,
which is running over memory, effectively.
And so the performance is insane.
And that's a really nice, a really nice model.
And it means that people only have to learn one technology
to be able to build web applications
and desktop applications and mobile applications.
You can use what they're calling
maui-blazer, is the .NET template for it.
And it includes iOS, Android, Mac Catalyst,
and WinUI.
And you can build for all of those targets.
I think that's the thing that excites me
about all the new stuff,
like .NET maui, Blazer, across all the things.
I believe the Blazer mobile is experimental,
so it's not confirmed yet.
But the Blazer desktop is meant to be coming in,
.NET 6, I believe.
Blazer desktop is penned in for .NET 6.
So it's weird, because it's in preview.
I think all the experimental bits are turned on.
You currently can't create a maui-blazer application
that doesn't target iOS and Android.
I'm hoping that it becomes possible
to specify which targets you want
as part of the new process.
But yeah, they haven't guaranteed it for iOS and Android
as part of the .NET 6 final release.
But yeah, if I wasn't doing the streaming,
I would have no opportunity to learn Blazer.
It's very difficult to go to a client
and say, particularly when you're freelance,
you're kind of a coder for hire,
you don't get to choose architectures and technologies
and that sort of thing in the same way.
So you can't go to your client and go,
I'm going to build this using Blazer server
because they just go, no, you're not.
You're going to build it using these things
and this very expensive component library
that we pay enormous amounts of money for
and all that sort of thing.
So yeah, streaming gives me an opportunity
to learn things myself, which is really nice
and learning in the open.
I struggle with how to best put this,
but I am aware that I have a reputation
because of the talks that I do.
Is this safe for the certificates?
Yeah, oh, no, no, no, no.
No, I would like to say actually to the people
who might be wondering,
the streams are absolutely safe for work.
I do not, I bleep myself, but no,
I have a reputation as being knowledgeable, clever.
I do wacky, interesting, advanced things with code.
The first talk I ever did at DDD events
was called Functional Alchemy
and I was doing it at the main DDD conference
at the Microsoft campus in Reading
and John Skeet was in the audience.
You're getting good audiences with these things.
I do, I've been incredibly lucky.
But yes, when you're there going,
here's some really clever stuff you can do with C-sharp.
And John Skeet's in the audience.
And John Skeet's in the audience
and you're just kind of going,
right, we're gonna find out
whether this is as clever as I thought it was.
And bless me, he managed to last about 15 minutes
before he joined in.
But in a very joiny in kind of way,
it wasn't going, no, that's wrong.
He was going, oh, that's interesting,
I hadn't thought of that.
And he said, do you wanna,
we could, you could extend that to do this.
Do you want to pair on it after you've finished?
And I'm just going, pair with John Skeet.
But no, I have this reputation
as being this kind of one of the better people
in .NET and C-sharp.
And I wrote simple data
which had some really hairy code in it.
And I think it's really good
when you've got that kind of reputation
to just put yourself out there and go,
actually, you know, I'm an idiot,
I make mistakes, I don't know what I'm doing.
I need to learn these things as well
to just kind of deliberately knock off
some of that, that sheen that you have as a speaker.
And yeah, just put yourself on the internet
being dense and useless and not knowing anything.
Go back to what you were saying before about
you intentionally didn't learn Blazer
beforehand or look into it until you were on the stream.
That is such a good thing.
I can picture a lot of people
that wanted to get into streaming thinking,
I can't embarrass myself so I'm gonna
study this beforehand.
And then it's really good that you've not done that
and not cared about people seeing you learn
because everyone's got to learn.
If you pick up a new technology,
you're not gonna pick it up straight away.
There's gonna be learning curves.
Yes.
I think that's just brilliant to be able to do that.
Yeah, because if I went off and learned
everything I needed to learn to do an episode,
then that's the same as doing a conference talk
or a user group talk.
And a lot of the time,
I will say I want to learn lots and lots
about that subject.
And so I'll put it as an abstract for conferences.
Six months or nine months out.
And then if one of them accepts it,
I'm gonna write, I'm gonna learn that.
And I learn everything and dig really deep into it
and become not an expert,
but proficient enough that I can do a one hour talk on it.
And I wanted streaming to be different from that.
I wanted it to be let's learn together.
If I go through the process of learning and making mistakes,
then the people who are watching
are also going through that process
and they can see the mistakes.
And then when they come to do it themselves,
they can go, oh, I remember Mark messed that up
and he had to go back and do this and whatever else.
And I think that makes it much more useful and approachable.
Absolutely.
I think not just the mistakes,
but the if something doesn't work
and the investigations and debugging
and just doing that together.
Yeah, and I've actually had feedback.
It was interesting.
Some of the feedback was,
I wish you'd learn these things
before you show them on the stream.
But actually much more of the feedback was,
it's really fun watching you,
sort of people have learned things about debugging
or things about logging or things about,
even things about Googling from watching me on the stream.
If I Google something,
I drag the browser window down onto the stream
so that people can see what I'm Googling
and clicking about.
And you know,
and also a lot of the time,
the answer is coming from blog posts.
And if that's the case,
I want people to be able to see the blog post
and the URL and the person who wrote it
and that sort of thing
so that they get the credit.
And the fact that doing it this way
is also much less effort
is just a bonus,
not having to prep for these things, particularly.
I wouldn't necessarily be as happy doing it
if I had to do all the prep.
I don't know whether you remember this,
but when you did the Dr. and Dr. talk,
I think it was last year,
beforehand we were having a conversation
and you were saying,
I think you said you had got another screen below
where you could see the Zoom matrix of people
because you like to see people's expressions
and things as you're doing the talk.
But presumably you don't get to see any of that on Twitch
and it's just people typing.
You don't get that with Twitch.
It would be really nice, actually,
if you did get that with Twitch,
if there was a way of doing that.
I've wondered about having a Zoom meeting
running at the same time,
but public Zoom meetings,
you just get people bombing them and things.
So I haven't done that,
but no, you have the chat window.
And for me,
that was one thing too many to focus on, actually.
So I could talk and I could watch what I was doing,
but I found essentially an IRC application
because Twitch Chat is accessible as an IRC channel.
IRC.
Sorry to derail this slightly,
but I recently discovered that,
remember, MIRC?
Yes.
If you go to their website,
there's updates a few days ago,
as in literally they're still building MIRC,
I can't believe it.
Yeah, no, they are.
IRC is still totally a thing.
You see lots of projects these days.
There's a Discord server and there's an IRC channel.
But there's this app Chatty that I got,
which is an IRC thing that connects to your Twitch Chat,
and it pops up notifications.
And so I've got that set to bring up the notification
on the screen that I'm streaming
so that when somebody says something,
I do actually notice.
Because that's one of the things
that you have to be able to do as a streamer.
And if you watch the couple of.net streamers
that I watch to try and pick up tips from,
there's Jeff Fritz, C-Sharp Fritz,
who was building this thing ClipToc.
And he's very, very good.
So I watch him.
And also Layla, Layla codes it.
Layla Porter.
Layla Porter, yes.
She's got the most amazing stream.
She has this whole kind of 3D virtual environment
that somebody created for her.
And she has like, there's a tombola thing
that runs on the screen and a number pops out.
And then somebody gets a free JetBrains subscription
for six months and, you know, it's sponsored.
But the thing that both of them are really good at
is connecting with the people who are talking in the chat
and responding back to them and so forth.
And so I'm still learning with that.
But I have some people who regularly drop in.
So I'm kind of chatting to them and they join in.
There are people who look and don't like to chat.
And that's fine.
But sometimes there've been a couple of streams
where I've gone through the whole thing.
And I can see that there are a dozen people there
and none of them are talking.
And they just going, shout out in the chat
if you've got any questions
and trying to get people to engage.
But yeah, it's the only feedback you're getting
to say whether you're doing well or not doing well.
So it's nice when people do join in and chat.
And it's still very early days
and I'm not particularly putting in an enormous amount of effort
to promote the channel.
A lot of people are chasing followers
and chasing subscribers and all that sort of thing.
I'm not doing this to make money.
I'm doing it because it gives me an excuse
to do some hacking things and stuff.
I think the people just do it for money.
It probably shows.
It's like, for example, this podcast we're doing now,
there's no money coming in for it or anything.
It's because I love it and people that do talks
that you're speaking yourself.
So you know this, but the amount of effort
that goes into preparing a talk
is a lot more than what people probably think.
But all that's free.
It's kind of, well, time isn't free.
Yes.
And yeah, if you're doing something because it's fun
or because it's giving you an excuse to play with things
that you wouldn't have a chance to play with otherwise
or whatever, I've got no illusions
that I'm going to be a YouTuber
with millions of subscribers.
That's just not going to happen.
Are you selling yourself short there?
Yeah.
I'm just not excitable enough to be a YouTuber.
I actually watch YouTubers and it's kind of like, wow.
But yeah, if I do a stream and I get 10 people watching it,
then at the end of that, I'm super happy.
I'm made up with that.
Have you ever started the stream and no one's joined?
I've had somewhere, just nobody's there
for the first five minutes.
And do you just wait or do you start?
I just kind of blather on.
The first person turns up and that's it, you're going.
You've got one person watching
and you need to be talking
and you need to be engaging them
and you just sort of trust that people will turn up.
I try not to count the number of viewers
that are in the channel.
But yeah.
And I've done streams where there were like
three or four people all the way through.
And then I've done streams,
I think the most I've had concurrently was 45.
So there's a thing on Twitch called Raiding.
So when somebody finishes their stream,
they raid your channel
and they bring all their viewers with them
and just dump them into your channel.
And I got raided by somebody with about 35 viewers.
And quite a lot of them hung around.
Some of them obviously just vanish straight away.
But quite a lot of them hung around
and I got quite a few followers.
And yeah, and the really nice, you know,
like I say, Steve Sanderson drop in
when I said I was going to learn Blazer.
And then there was another one.
There's a new cloud hosting platform called Railway.
I've not heard of that.
It's like Heroku,
but it's just sort of starting up.
It's still quite early days for it.
And you get three instances of whatever for free.
And each of those instances can have a Redis database
or a Postgres database or a Mongo database
or a something else I can't remember.
And for Stream Badger,
I needed something to do a login process
because once I turned it into a desktop application,
you can't show the Twitch OAuth flow
inside a desktop application.
I mean, you can,
but if you are using a desktop application
and someone shows you the Twitch screen,
you have no way of knowing
whether that's actually the Twitch screen
or whether I've just copied and pasted the HTML
and I'm stealing your password.
So I wanted one of those external flows
where it opens a page in the browser
and you log in in the browser
and then it goes back to the application.
So I needed a website for that.
So on Twitter,
I went gonna take a look at Railway
and I had a dude from Railway turned up
and watched the stream
and was kind of sitting there going,
oh yeah, that made me to do this.
And I got completely stuck.
The NPM package that you install for the command line
doesn't work very well on Windows.
So the guy's in the stream and he's going,
do you have WSL?
Try using WSL.
So I switched over to WSL and did the NPM install.
And that didn't work for some reason to do with NPM.
And then he went just,
and he pasted the command
to download a shell script from the internet
and run it with sudo permissions.
He pasted that into the chat.
And so I copied and pasted a sudo command
from my Twitch chat
onto my main work computer and ran it.
Did you look at the script before you run it?
It did have HTTPS colon slash railway dot something.
So I was kind of like, yeah, pretty sure that's all right.
But yeah, getting those people dropping in
is really nice as well.
And I'm at the point now,
I've got 259 followers after six months.
And if you have Amazon Prime,
then you get a free subscription to use.
And on Twitch,
a subscription lasts for a month
and then you have to renew it.
And subscribing to my channel
doesn't give you extra privileges.
There's nothing you can do
if you're subscribed that you can't do
if you're not subscribed.
But there are people who just go,
well, I've got this free prime subscription
to do something with.
You can have it, which is really nice.
So actually, I think in total,
I've made $10 so far from Twitch streaming.
But yeah, it's just nice.
It's nice to sort of be building this little community
and there's this Discord server
and particularly picking up these younger people
who are looking to get into software development
and at school, they may be learning Python
if they're doing GCSE
or maybe learning Java or C++
if they're doing A-level.
And so they can sort of drop by
and learn some C-sharp
in a kind of informal fun environment.
So it's nice to be doing that outreach stuff as well.
I think that's nice getting younger people into .NET.
Yeah.
Historically, obviously,
.NET full framework has been very enterprisey
but now it's obviously open source,
cost platform, it runs everywhere.
But where we live and breathe .NET, we know that.
Yes.
But a lot of people in the minds,
.NET is still the old enterprise,
the Microsoft Windows only.
Just to get that education,
especially at the very start
when people are just coming out of school.
Yes.
And my first episode of the Hey, Learn C-sharp thing,
I talked about all the things you can do with C-sharp
because I think a lot of people don't know,
but you've got ASP.NET Core,
you can build websites and web applications.
Like I say, next Tuesday,
we're going to start building a Blazor server chat application,
which, you know, it means young people
and I'm going to show people
how to get it hosted on Railway
and you get your free instance on Railway.
So they can actually put a chat application
up just for themselves and their friends.
And I think that's going to be really
the younger viewers are going to go for that.
But I've got a game on the Apple App Store
and on the Google Play Store
that I built with Unity using C-sharp.
And at some point in the future,
I will do, hey, let's build a game with Unity.
There's all these things you can do.
I honestly struggle to think of another language,
even including JavaScript,
that is as versatile right now as C-sharp.
Unity, Xamarin, Maui, ASP.NET Core,
it's just you can do anything.
The only thing that you really can't do with it,
with pure C-sharp, is systems,
really low-level systems programming,
the kind of thing where the only option's really a C or Rust.
And yeah, that's fine.
If you want to learn those things
and do that kind of programming,
you probably need to go to university
and do a computer science degree anyway.
But for everything else, you know,
I honestly believe that C-sharp,
I've been programming for 30 years
and it's my favorite language
out of all the ones I've ever used.
And, you know, people go,
what's your least favorite thing about C-sharp?
I struggle to think of that.
And so, if I can introduce people to that
and have younger people who are sort of
just at the start of their careers
and looking to get into programming
and have them go, hey, this .NET C-sharp thing
and not view it as this big boring enterprise WCF,
all that sort of stuff,
then yeah, I think that's a really good thing to do.
Yeah, I find it fascinating
that games are so performed as well,
because the first half of my career
was actually in the games industry
and I was writing games engine technology
and it was quite low level in C and C++.
But I suppose this was more the engine
where if you're using something like Unity,
it's done for you.
But a lot of the performance stuff
really having to chase like cash,
misses and all this kind of thing
and get low level.
And obviously .NET is managed,
but I'm assuming Unity is just abstracting
a lot of that performance away from you
so you can just focus on your game.
Yeah, so Unity has an IL2CPP compiler,
which kind of takes your code through C++
and applies a bunch of optimizations.
But they also do very interesting things themselves.
So it's the runtime that they're using is a mono variant,
but they've forked mono
and they've been doing insane things to that.
But they've also got the boost compiler now,
where if you write code
with a sort of fairly restrictive set of constraints
and mark code with various attributes,
it goes through this boost compiler,
which is optimized to create data structures
that avoid cash misses.
And you can write massively parallel code in Unity
that will take advantage of all 16 cores
or all 32 cores
and try and keep as much state as possible
in your 32 megabytes of level 3 cash.
Yeah, there's deep magic going on there.
But as far as I'm concerned,
it's a C-Sharp application
and I'm editing it in JetBrains Rider
and everything I know from my years of experience
with C-Sharp is pretty much still valid.
Do you still have things like vertex shaders
and pixel shaders?
It's been such a long time
since I've even looked at this kind of stuff.
Yeah, it's got shader language
and you can write HLSL.
High-level shader language.
High-level shader language.
I remember that well.
You can get in and hack around with that.
I really don't understand shaders.
The other nice thing with Unity is there's an Asset Store
where you can just go on.
And so if you want a shader that makes something look wet,
then you can just go on to the Asset Store
and say wet shader
and somebody will have made one for you
and then it's drag and drop to bring that on and do stuff.
But yeah, you can go as low level as you want
and write your own shaders and do that sort of thing.
But you can also achieve an enormous amount.
I have no artistic talent at all.
So I buy 3D assets.
Most coders don't, really.
I know.
My son's getting really good with Blender,
so I'm gonna have him start building me the assets
that I want for my games.
You've got it all set up
so your wife can help you with your books.
You've got your son that can do the artwork.
It's fantastic.
It's awesome and you know Willow has done talks on Unity,
so she's learning Unity
and I'm working with her on stuff.
I know, yeah.
I remember you said when you were at that Donate Oxford talk,
we were chatting in the pub session afterwards,
so there was a few of the members there as well.
And you were saying that at some point,
getting her to do a talk on it,
she'd welcome anytime at Donate Oxford
or the podcast to talk about Unity.
Yeah, right at the moment,
we're trying to get her to focus on her,
so she's in just about to do her GCSE year.
And so revision and all that sort of stuff,
she's having to focus in and be sensible.
But once they've got through that,
then, yeah, they'd really like to do some more talks and stuff.
Kind of got this vague notion of getting her up to a point
where by the time she gets to university,
she can be working part-time as a Unity advocate
et making a bit of money or something.
But yeah, no, I'm very lucky.
Both my kids sort of hugely into the tech.
I'm building again with my son, who is 10.
We're remaking Club Penguin because he misses Club Penguin.
But he's starting to kind of come up with original ideas
that we're looking at building.
And Willow is doing her thing.
And, you know, she's following along with my streams now,
but building websites and getting into ASP.net core
Yeah, you know, my company's called Rental Labs.
And technically, that means that all four of us
could be doing things under that umbrella.
What I'd really like is in sort of 10 years' time
when both the kids have finished university
to just have my own game studio.
Ben doing graphics, me and Willow doing coding
and Miranda doing the marketing
and writing the copy and all that sort of thing.
Rental Labs is the perfect name for it as well.
That just sounds like a games company, doesn't it?
Yeah, yeah.
So, yeah, that's the plan.
Episode four.
Do you know Pete Gallagher?
I'm assuming you do.
He came on and we're talking about teaching kids to code.
And we're talking about like scratch and all this kind of stuff
and all the great stuff there is out there
to actually get involved with your kids.
I've done a bit of scratch with my eldest.
My kids, I've got a five year old and a seven year old.
So two boys.
And I've done a bit of scratch with my seven year old,
but nothing with my youngest.
But he's probably his older now.
One thing I really recommend to people who've been,
we've got kids who are using scratch is Microsoft Matecode,
which is a scratch style programming environment.
But they have Matecode Arcade,
which is specifically designed for making games,
simple games with kind of 16 by 16 sprites
and backgrounds and tiles and all that sort of thing.
But that's great because they can create a program
using drag and drop blocks just like scratch.
But then at any point,
you can click a button at the top
and it switches over to JavaScript.
And it's the JavaScript representation
so they can see how that turns into actual code.
So yeah, if they are struggling with scratch
and want to make more game type things,
then Matecode Arcade is really brilliant.
My son uses that.
When he's got an idea for a game that he wants to make,
he kind of throws it together in that
and then we can kind of go, right.
So let's see how we can do that in Unity.
Yeah, that is cool.
I'm just looking at the show notes from Pete Gallagher's episode
and we're talking about the sort of scratch.
You've mentioned Matecode,
so we're talking about that and Matecode Arcade.
Tinker Card is quite a good one.
Yes, yeah.
Micro bits, so I've got a micro bit,
I've got a couple of micro bits now,
so I've been doing that with Jack, my eldest.
I love these cheap boards, Raspberry Pis
and yeah, Tinker boards.
And you can get things that look like a circuit board
with a little screen and a couple of buttons on them.
And you can actually download your game
from Matecode Arcade directly onto the device.
And then, you know,
my son's taken it to school with a battery
so he can show his friends the game he's made.
And they only cost like 10, 15 quid for these things.
They're brilliant.
I've got, there are draws which have got computers
more powerful than the thing that put men on the moon.
And I just don't know it's in there.
I've lost, I've lost more computing power
than existed in the world before 1960.
It's just down the back of a sofa.
I find it scary how technology is advancing.
I think my watch is probably more powerful than
if you go back to the older machines,
it's kind of scary, isn't it?
But then if you think how,
I know that we're going completely off a tangent
from streaming now, but if you think how,
how small a period of time
that technology has suddenly exploded
about this past 20 years or whatever,
what's it going to be like in a thousand years?
And if you think a thousand years isn't that long,
the length of the universe, a thousand years is nothing.
But imagine what, what technology is going to be like
in a thousand years,
as long as we haven't like destroyed ourselves before then.
Yes. And let's be positive and say we're not going to.
I was watching a documentary the other day
on like discovery or something.
So the Homo sapiens,
the sort of species that we are
appeared 300,000 years ago.
We invented agriculture about 10,000 years ago
and started domesticating animals.
A thousand years ago, we were in the dark ages
and people were still living in mud, shacks,
and there were castles,
but technology was very primitive.
150 years ago, we had the industrial revolution.
70 ans a go, we invented computers.
And so in the last 70 years,
now we've got robots and drones and iPods
and iPhones and nanotechnology
and all this sort of stuff.
And it is just, it's accelerating unbelievably.
And what it all comes down to,
the thing that has accelerated that at every step
has been communication and inventing writing
so that knowledge could pass from generation to generation
and so forth.
And yeah, the internet has just
massively accelerated everything.
Just, you know, just having GitHub and Stack Overflow
has created programmers.
And it means that you can collaborate with people
all over the world and so on.
So yeah, it's terrifying.
I find myself saying to Mike,
well, when I was your age,
we only had three television channels
and if you missed something, that was it.
You missed it.
We didn't have iPlayer or Netflix.
And they can't imagine a world,
they can't imagine a world without Wi-Fi.
Whereas I remember a world without networks.
You know what I find more scary than any of this?
When I find myself saying to my kids,
when I was your age, I'm thinking, oh no,
I've become my dad.
Yes.
I remember my parents saying,
we used to make our own entertainment
and now I say the exact same thing to my kids.
And, you know, when I say to Mike,
make your own entertainment,
what they're thinking is start a YouTube channel.
And I'm kind of like,
no, I was thinking more like hoops and sticks,
but whatever.
But yeah, it is just accelerating out of all
recognizable stuff.
So yeah, yeah.
As for your son, in 100 years time,
what's it going to be a thousand years time?
But we just won't see it.
No, we won't.
Our kids might.
Anti-aging things and nano medicine
and cell repair and all this sort of stuff.
I think people are going to start living a lot longer.
I think they are.
But what's going to be the fallout from that?
It's like as in population is already getting bigger
and bigger, if people stop dying,
what's going to happen?
We're going to be able to fix a lot of that
with sort of engineering crops
and getting better at eating insects
and that sort of stuff.
My major ambition in terms of longevity
is I want to live long enough to see people land on Mars.
Elon is aiming to have a self-sustaining colony
on Mars by 2050.
In 2050, I will be 87 years old.
I figure I can make it that long.
That's what I want to see.
And then I can die happy.
That took a turn.
On Mars.
Right.
So we should probably wheel this back in again
and get back to streaming.
Yes, let's wheel it back around.
So you were saying before that you like to write cool,
awesome things.
And I noticed, and I remember you saying this in Twitter
at some point, but I noticed at the start of your streams,
you, and I think you're using Patrick Spenson's
Spectre console tool.
So when it starts up your stream,
you've kind of got this bunch of progress bars
as it's almost your streams booting up
and going through, I can't remember
what the different things were about.
Yeah, learning C sharp, making coffee.
Reading Twitter.
Yeah, there's stuff on there.
People have these huge elaborate things
that they've made in After Effects,
or you get them from stream elements
and places like that.
So that you go live with your stream
five minutes before you actually start streaming
so that people can kind of join and be ready and so on.
And I'm very self-conscious.
And I didn't want to have like a big flashy thing
that made it look all super.
Because then it was just going to be me and code
on the screen and so forth.
And so I thought, hey,
I'll make a thing in C sharp
that goes at the start of the stream.
So yeah, that's open source and it's on GitHub.
I think it's called Stream Intro on my personal GitHub.
I'll include a link to that in the show notes.
Yes, I'll send you the link
so you can put it in the show notes.
But yeah, that was just a fun thing to write.
And I wanted to muck about
because Patrick had just kind of released
Spectre console and I thought, that looks good.
And it was really easy to throw together, actually.
And it's just, yeah, it's a fun way to start the stream.
And it seriously manages people's expectations
of what's going to happen.
So yeah.
So really, really nice idea.
And his library is so cool.
Especially I did him on episode 14 talking about it.
And he was going to be doing a 30 minute talk
at dotnet.locs this Tuesday, this coming Tuesday.
But unfortunately he had to pull out yesterday.
So what I'm thinking about doing is taking his place.
I played around with it before we did the podcast episode.
And as you say, it's so super easy to use.
So I might just, rather than just
having to find another speaker and talk
at such short notice,
I might take his place and just
almost do what you do and just not prep for it at all.
And just jump in and let's play around with it together.
No, I think that's a brilliant idea.
Sort of thing, when you're doing stuff online,
I think that works a lot better.
It's, yeah, if you're in person,
people kind of expect you to be more prepared.
But online makes everything a little bit less formal.
But yeah, no, it's a great library.
And I made very sure that when the countdown thing finishes,
it displays a line saying this was made using Spectre console
and has the link so that people can go off
and investigate it if they like the look of it.
Very cool.
I realized before we mentioned OBS
and we started talking about it,
we didn't even say what it stands for or what it is.
Because I think that's the most popular tool
that people use for streaming nowadays, isn't it?
It is.
I think, I mean, without OBS,
I'm not sure they would be streaming,
but it's Open Broadcast Studio
and you can use it to record screencasts
as well as live streaming.
But yes, it's a big, complicated,
GPL licensed thing
that allows you to mix multiple audio sources
and visual sources and you can overlay lots of things
and it muxes them all together
and then sends them out to the stream
and you've got OBS Studio,
which is the original
and then there's Streamlabs OBS
which I've just switched to using
and the reason for that is that with Streamlabs
you can record a subset of the sources.
So when I'm streaming, I have StreamBudget running
and StreamBudget integrates with the Twitch app.
I can't stop myself from laughing at StreamBudget,
that's brilliant.
I love it.
It's the logo once I figure it,
once I actually start branding it and stuff,
the logo is going to be a honey badger
because that's my spirit animal.
But yeah, whilst I'm streaming,
people can type things in the chat
that trigger the images and sounds happening on the stream,
which is pretty cool.
But then when you're going to put the thing on YouTube
and edit it a bit,
you don't necessarily want those popping up
when it's not live.
And so Streamlabs OBS lets you record the screen
and yourself, but not the StreamBatter overlay.
And it's essentially the same.
It's just been polished up to look a lot nicer
and it's still free.
And I think they contribute back to the upstream OBS Studio
when they make changes.
But yeah, OBS, it's great.
Streaming, there's no big thing with it.
I know people have expensive lighting setups
et ils ont des DSLR caméras
avec des outputs HDMI
et ils sont en train de plier ça au sein de leur computer.
Donc, vous pouvez en payer beaucoup de moules.
Mais, bien sûr,
je fais juste mon webcam.
Et parfois, je utilise cette mic de headset que j'utilise.
Je fais un lavelier microphone,
mais ça coûte 50 euros,
incluant le processus audio
pour connecter à l'usb.
Vous vous déploiez OBS pour freer.
Vous créez un compte Twitch.
Vous linkez les deux choses ensemble
et vous presserez le bouton de la start.
Et c'est ça, vous êtes en train.
Il n'y a vraiment pas de barrière pour entrer.
Vous pouvez le faire avec un laptop.
Vous pouvez le faire avec un MacBook.
Ou tout.
Et je encourage beaucoup de gens à le faire.
Et vous savez,
allez en faire et utilisez-le
comme une opportunité
pour apprendre quelque chose de nouveau,
pour faire quelque chose qui est au-delà de votre zone de confort.
Vous avez tous les budgets,
comme une grise, une brise, un deck de stream,
tout ce genre de choses ?
Je l'ai investi dans un deck de stream
après un temps.
Ce n'est pas aussi expensif
et c'est incroyablement utile.
Mais en fait, ma justification pour le faire
c'était que j'ai voulu faire un deck de stream
avec un deck de stream
qui m'a réussi à faire.
Donc j'ai des boutons sur mon deck de stream
qui le tricent les images de flippant
qui sont faites par le software de la deck de stream.
L'une des actions
est de envoyer un request de GET
à un web page.
Et donc,
ça tente un request de GET
à un server de stream
qui le tricent les images de flippant.
Mais c'est un petit truc de fun.
J'ai investi en un...
Je ne sais pas ce que c'était,
j'ai eu James Whirl
en faisant une parole.
Et le problème était l'éducation.
Mais on a juste
eu un chat après.
Et il a dit
« Je sais pas, j'ai juste eu
ce nouveau deck de stream
qui m'a montré un deck de stream.
»
Et il m'a montré
comment ça fonctionne et tout.
Et je me suis dit
« Oh, j'ai trouvé un de ces deux. »
Et je me suis rendu un.
Mais je ne fais pas de stream
pour des choses comme
je fais beaucoup de meetings de teams,
par exemple.
Je veux dire,
je peux m'utiliser
ou
partager mon screen
via un bouton.
Et j'ai eu plusieurs choses
pour l'opening,
juste commonly used tools.
J'ai eu un pour l'opening
sur la screen.
C'est juste
tellement
flexible.
C'est ça.
C'est complètement brillant.
Ils ont juste réglé
Mark II,
qui a eu
des
plusieurs improvements.
Un câble USB
détachable et des choses.
Mais non,
beaucoup de outils
bien beyond
stream.
Beaucoup
d'articles auto-hoc keys qui
parfois
font laлуш basically
en avant
de la �è evidence.
L'starter
íveis
partout
et tout As
s'este
et
de l'article auto cooker.
ile
é哒
si
les
wholly
beau
avec les zones de la fête ou quoi qu'elles se sont appelées.
Oh, je ne sais pas si vous pouvez faire ça.
C'est vrai, c'est mon matin.
Il y a des choses, je ne sais pas comment faire, mais je sais quelqu'un qui a fait ça.
Et donc ils ont leurs zones de fête, parce qu'il y a juste des clés de hot qui vous pouvez assigner
et puis vous pouvez tricher les clés de la fête du deck de stream.
Donc c'est quelque chose que vous pouvez faire.
Mais c'est le plus grand purchase que j'ai fait en termes d'investissement en stream.
Je n'ai pas compris ça jusqu'à la fois que j'ai commencé à travailler sur stream.
Donc tout le temps je faisais cocoon, c'était juste de la interface OBS Studio.
C'est très cool.
Donc, les mêmes programmes que je vais nommer, c'est très dur.
Qu'est-ce que nous allons dire dans ce épisode?
Parce que nous avons parlé de stream, nous avons parlé de blazer, nous avons parlé de .net,
nous avons parlé de Unity.
Donc nous allons devoir penser de un bon nom.
Stream of Consciousness.
Stream of Consciousness with Mark Rendall.
Yes, I guess.
Mark Rendall's stream of consciousness.
Yeah, that's a good title, yes.
I like it.
So we probably are running out of time because I'm sure you've got lots of work to do.
But before we wrap up, shall we do dev tips?
Dev tips, yes.
So I'm allowed to specify anything at all.
It doesn't have to be dev related, it can be anything you want to be honest.
I should rename it from dev tips to just stuff.
I've started doing something recently as a kind of deliberate practice before I start coding.
I got Headspace, which is a guided meditation app.
And I've started doing a 10 minute guided meditation.
And it's not, you know, a lot of people think meditation is sitting cross legged on the floor and going on or whatever.
But I just sit at my computer and I've got Headspace pinned to my taskbar.
And I'm finding that really useful to kind of spend 10 minutes just calming down and chilling out before I start coding.
And it's, what I've found from doing that is I seem to get into flow state a lot more quickly after doing that.
If I sit down and I've got a conversation I just have with my wife and things that are going on and all this sort of stuff.
So yes, my kind of dev tip would be don't necessarily use Headspace.
You know, there's calm, there's all sorts of guided meditation things out there.
I think you can find guided meditations on YouTube, but I'm finding that really useful.
And I would suggest that other people might find that useful as well.
So give that a try.
C'est super cool.
Do you actually ever do that?
Like listen to it whilst actually coding so carry it on into your coding?
No.
Well, if I listen to anything when I'm coding, it has to be music without vocals.
So I use this as a Canadian noise band whose name is Rudeward Buttons.
F Buttons.
But yeah, that kind of, so no vocals.
Anything with vocals distracts me.
Yeah, so trance style music, noise music, that sort of thing.
But no, when I'm doing the sort of meditations, I actually, I sit with my eyes closed and I, that's all I'm doing for that 10 minutes.
And it's great.
It just, it gets you into a really nice headspace.
Nice.
And I'm not being sponsored by them and I'm not making any money from recommending them.
I remember there's another app called Grain FM.
Haven't heard of that one.
It's designed, they've actually, so there's, it's music, but it's very, like you're describing.
So there's no, there's no vocals or anything, but they've designed it to actually get you in that flow state.
Okay.
I've just, yes, music to improve focus, meditation and sleep.
It's not a free one, but there's a free trial which you can play around with.
Try five free sessions.
Yeah, I'm going to have a look at that.
I used to find this really good, like, obviously when coding, but also I could often just go on, like daily walks.
I just enjoy my walks, put my headphones on.
And sometimes I listen to, I'm listening to podcasts or audio books, but sometimes it's nice to just put something like this on and just let my mind wander.
Yeah.
And I've found that if I'm listening to just music, that my mind wanders, it does, but when I'm listening to something like this, like this brain FM,
there's something much more, my mind wanders in a different way, if that makes sense.
I don't know how to describe it.
I seem to think a lot deeper.
Hmm.
Yeah, I'm going to give that a go.
That looks interesting.
Cheers.
No worries.
So my dev tip, and this isn't really a dev tip.
I was a lot of developers, we use, like calculators.
But what I use instead of the Windows calculator is a Windows app called specQ.
So S-P-E-Q.
Sadly, it's Windows only.
But think of this as kind of an editor type of user interface, like think of notepad, but a repel for mathematics.
So you can type in equations or formulas until you show the output in line.
You can then go back and edit them or, but you can also assign variables and even render graphs.
But it's super lightweight.
And it's so much more nicer and powerful than a normal calculator.
So I kind of, I don't think I've opened the Windows calculator in years.
Again, sadly, it is Windows only.
So apologies to listeners who are not users, but I will pop a link to that in the show notes.
I'm just looking at the system requirements for it.
It runs on Windows 95.
Yeah, it's quite old, but it's just so lightweight.
And it's kind of, it opens in like a fraction of a second.
And it's like no-pub.
But as you're typing in, and you can type in different equations, I find with a calculator, you type it and then you want to edit your previous calculation or something.
And it's, it's not a nice UX, but in this, it's just a rappel.
Yeah, it looks pretty good.
I'm going to check that out as well.
Cool.
So before we wrap up, is there anything else you want to mention?
I know we've covered like everything under the sun, including like the lifetime of the universe and...
Literally, I think we did.
No, I don't think so.
Yeah, you know, be awesome if people stop by the stream.
The lunchtime ones are 12, 30 Mondays, Wednesdays and Fridays, starting Monday next week.
So by the time this goes out, it should be a regular thing.
The lessons which are suitable for ages 10 and up, let's say, are at 8 o'clock on Tuesdays and Thursdays on twitch.tv slash mark rendle.
And yeah, be awesome if people stop by.
Awesome.
So obviously we'll include links to everything in the show notes, including how to get in touch with you.
Is Twitter the best place to...
Yes, tweet at me.
That's definitely the best way to get my attention is to tweet at me.
Check my Twitter mentions about 10 times more than I check my email.
Fair enough.
Cool.
So a massive thank you Mark for joining us.
It's been amazing having you on.
Thank you very much for having me.
And thank you everyone for listening.
A quick reminder that this podcast is sponsored by Everstack, which is my own company providing software development and consultation services.
For more information visit Everstack.com.
And if you enjoy the podcast, please do help me spread the word.
I normally use the hashtag unhandled exception and I can be found on Twitter app Dracan, which is D-R-A-C-A-M.
My DMs are open.
My blog DanClock.com has links to all my social stuff too.
And we will include links to all the things we've mentioned today in the show notes, which can be found on unhandledexceptionpodcast.com.
Sous-titres réalisés par la communauté d'Amara.org
Episode suivant:
Les infos glanées
TheUnhandledExceptionPodcast
Tags
Azure Bicep with Alex Frankel