Right now I'm in a horrible mental pain as I'm watching a talented/experienced musician just absolutely fumble in music software he's not familiar with. To be clear: this guy's been a musician for 20+ years, released 15?+ albums, etc. He's not dumb, and I'm not better than him. But.
He just spent 5 cringeworthy minutes looking for a very obvious button, which he didn't even find in the end.
There are two lessons here:
Streaming is hard on the brain
Dunning-Kruger curve is so, so real
Bonus lesson: mob programming is a useful concept that you should incorporate into your worldview.
I'll explain:
(1) On streaming killing your brain
(In this post, I only talk about tutorial-like streams, or otherwise technical, mentally intensive tasks. Not chilling with buddies or shooting aliens.)
One of the reasons - for me at least - why it's so difficult to rewatch your own streams is the amount of cringe you'll inevitably do.
Before I tried it myself, so many times I've watched streams (or unedited video tutorials) and thought "wow you blind fool the button is just 2 centimeters to the left!!! how do you not see it!" and then I tried streaming myself doing something I thought I'm familiar with, and noticed the hundreds of micro-brain freezes where I overlooked something obvious and scrolled up and down 3 times.
(This, coincidentally, is a huge humility lesson for us with ADHD: when you think something takes 15 minutes, it's because you haven't watched yourself fumble for another 15 minutes, alt-tabbing between 20 open windows to try to remember which one you wanted to use.)
Streaming exacerbates any mental hiccups even a healthy person might have on a daily basis, because you're well aware that you're there to entertain and you can't just open a manual or watch a tutorial or quickly duckduckgo something. And even slowly reading right-click menu items one by one feels like wasting everyone's time, so instead the brain goes into ADHD(-like) overdrive. Gotta go fast.
Streamers who talk about serious-ish topics have an even more difficult job, because they're often asked to have opinions on a lot of issues, for some of which they will inevitably not be prepared for. If you can't keep your ego completely in check, sooner or later you'll say something questionable or inaccurate.
(2) You're not immune to the Dunning-Kruger effect
Streaming truly highlights the omnipresence of Dunning-Kruger curve. It's easy to think "I've done a similar thing before, therefore I'm an expert on all similar things".
The music production streamer I mentioned earlier - again, an experienced music producer - opened a dozen software instruments he hasn't worked with before, thinking he can just wing it and learn on the fly. And sure, for a bigger part, he did. But for the mistakes that he made, he didn't know if it's a limitation of the software, or his knowledge, or a bug, or a configuration error in a different software. His stream chat was filled with inaccurate suggestions and opinions.
If this guy who's been making music for 20+ years - including beta testing products, giving feedback to companies that they actually incorporated, doing live shows, releasing albums, making preset banks for hardware and software synthesizers, doing commissions, landing his music in tv shows, movies, ads, etc - if this guy can overestimate his abilities and fumble around looking for a button for 5 minutes - then you will do it too. Humility is important. Expertise is important. But it won't save you from making mistakes.
(3) Mob programming is a good mindset, actually
In programming, there's this relatively unknown method called "mob programming" where at least 3 developers sit in a room and take turns (every 2-5 minutes) in working on one task together.
One person is holding the keyboard+mouse (the "driver"), while the person next to them is the one programming (the "navigator") and that developer tells the driver what to do (but cannot touch keyboard/mouse themselves). The rest of the room (the "mob") can offer advice, but don't have control. Then every x minutes, the responsibilities shift by one seat.
There are many more details on how to make it work, but they don't matter that much if you're not a developer.
The main benefit of this is that every human has mental ups (bursts of energy or inspiration) and downs (like brain freezes, sleepiness), but in a room of 4+ people, there's always going to be someone at peak mental capacity when the navigator has a dumb moment, and they can point out an obvious mistake which would otherwise result in a potentially expensive bug, which would happen if a solo developer was working on their own.
(4) Bonus bonus advice
Don't be afraid to ask for help. Especially when you're only moderately confident in any given skill, programming or art or cooking or cleaning up, having someone by your side to offer their perspective, point out an obvious error, give a helping hand, do a quick fact check, can really save you many hours, and make your life more pleasant.
And doing mob programming-type round robin would make for really fun streams, I bet.
Most of you know the situation when we had planned some work, let’s say a few different tasks. Then we started most of them, work in parallel and when time is up only a small portion of the work is really completed. In teams working towards deadlines or iterations this usually at least feels bad or has consequences, such as more budget needs to be requested or delay of delivery.
Last Friday was the annual CodeCraftUK conference in Glasgow. As a community organised event it’s much more reasonably priced than some of the bigger conferences, and also has a rather different structure than most of the big conferences – as they say on the conference website they put the conferback in conference, focusing instead on small group guided conversations and workshops. Since we have…
New Post has been published on https://www.aneddoticamagazine.com/mob-programming-whole-team-approach/
Mob Programming: a “Whole Team” approach
Mob Programming is a development practice where the whole team works on the same thing, at the same time, in the same space, and at the same computer. This is a “Whole Team” approach to doing all the work the team does – including coding, designing, testing, and working with the “customer” (partner, Product Owner, user, etc).
We have expanded the “team” nature of all the work we do – not just planning, retrospectives, and a daily stand-up or other meetings – but all the work that the team does. This could be thought of as Extreme Pair Programming, or continuous collaboration, perhaps. In other words, this is an evolutionary step beyond the pair programming, face-to-face communication, team alignment, collaboration, and “self organizing team” concepts of the Agile approach to software development.
I’ll share how we’ve been using this practice to super-charge our development efforts and deliver high value software for almost 3 years. We’ll see what it looks like, the benefits (higher quality, rapid development, more productive, continuous learning, full engagement of the team, and more), and how to do it yourself. In our workplace we “Mob Program” all day, every day, but we’ll also explore some ideas on how you can employ all of the concepts and practices (and get the benefits) of “Mob Programming” in your own company even if you can’t do it “all day, every day”.
Mob Programming is now being done all over the world, and a wide spectrum of projects and in organizations of all sizes. It is quiely learned, and can be adapted to almost any product, project, or problem. In a nutshell, it’s about working well together.
New Post has been published on https://www.aneddoticamagazine.com/mob-programming-whole-team-approach/
Mob Programming: a “Whole Team” approach
Mob Programming is a development practice where the whole team works on the same thing, at the same time, in the same space, and at the same computer. This is a “Whole Team” approach to doing all the work the team does – including coding, designing, testing, and working with the “customer” (partner, Product Owner, user, etc).
We have expanded the “team” nature of all the work we do – not just planning, retrospectives, and a daily stand-up or other meetings – but all the work that the team does. This could be thought of as Extreme Pair Programming, or continuous collaboration, perhaps. In other words, this is an evolutionary step beyond the pair programming, face-to-face communication, team alignment, collaboration, and “self organizing team” concepts of the Agile approach to software development.
I’ll share how we’ve been using this practice to super-charge our development efforts and deliver high value software for almost 3 years. We’ll see what it looks like, the benefits (higher quality, rapid development, more productive, continuous learning, full engagement of the team, and more), and how to do it yourself. In our workplace we “Mob Program” all day, every day, but we’ll also explore some ideas on how you can employ all of the concepts and practices (and get the benefits) of “Mob Programming” in your own company even if you can’t do it “all day, every day”.
Mob Programming is now being done all over the world, and a wide spectrum of projects and in organizations of all sizes. It is quiely learned, and can be adapted to almost any product, project, or problem. In a nutshell, it’s about working well together.
Week 12 – SDN Cast News, Mob Programming with Woody Zuill and Mark Pearl The subject of SDN Cast 45 is, next to the weekly news and event items, Mob Programming.