Why your weekend projects help you level up - podcast episode cover

Why your weekend projects help you level up

Mar 28, 2024•5 min•Ep. 15
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episode description

A look at the cognitive science behind the Hierarchy of Competence, and how dabbling with new frameworks and tools can make you a better developer.

Creators & Guests


ā˜… Support this podcast on Patreon ā˜…

Transcript

Mike BifulcoMike Bifulco

This is Tiny Improvements. I'm Mike by ko This past weekend, I spent some time building a new project with Astro. It describes itself as the web framework for content driven websites, which was perfect for my use case. I'm working on rebuilding a content heavy site for APS. You won't hate called open api.tools. It's a project that's been around for a while and could really use some love. I've been building with react for a good long while now. And Astro's come as you.

Our approach to JavaScript frameworks means that I was able to mix in react components with Astros on syntax. At first, this felt a little bit like getting peanut butter in my chocolate, but it works surprisingly well. In true extrovert fashion. I jumped into learning Astro by building with it in public, on a YouTube live stream. Last Saturday.

It was a tough, honestly.. over The course of a few hours, I went from optimistically explaining my approach and giving a stream of consciousness of what I was thinking to silently debugging or reacting Astro challenge for kind of a while. Perhaps appropriately, the stream ended abruptly after my wife told me that my webcam was no longer working and that was followed shortly by OBS the streaming software that I use crashing completely. So learning in public, wasn't a great success.

The live stream was kind of a struggle. I stepped away from my Astro project and didn't come back to it till the next day. At that point, something clicked. I was able to get past the issue I was having. And my project really started to fly together pretty quickly. I was able to get a lot done in a short amount of time. And I was feeling pretty good about it. By the way I'll be sharing the fruits of my labor in the coming weeks.

My second day of building honestly felt a lot more like typical dev work does for me. I was in flow state, juggling tiny tasks and debugging issues as they came up. I felt unfazed to be working with Astro, which was a completely different experience as compared to the prior day. As I got to this point in the project, I could feel myself pulling from experience with all of the other web frameworks I've built with whether directly or indirectly.

I built production apps with many frameworks over the years from create react app to remix.run next JS to Ruby on rails. And now Astro. I've also poked around with countless CSS in UI libraries, like bootstrap and tailwind and chakra and shad CN UI. It's a little difficult to describe, but the time I spent with each of these tools has made me a better developer.

Of course learning about bootstrap doesn't inherently make me understand, react, but it did add to the foundation of skills that I use to debug things, to research solutions when I'm stuck and to ask for help when I need it. That new era that just popped up. Yeah. I've seen something like it before. Oh, this component isn't rendering correctly. I, yeah. I know how to do about that. The layout isn't quite right. I can fix it. You get the idea. In cognitive psychology.

There's a model called the hierarchy of competence. It describes the stages of learning a new scale from unconscious incompetence to unconscious competence. The four stages look like this unconscious and competence is the bottom of the pyramid where you have wrong intuition. The next step up from there is called conscious incompetence. This is generally where you understand the problem space a little better, but typically your analysis of the problem is wrong. One run up from there.

It's called conscious competence. This is when your analysis becomes right. Even if you don't have the solution straight off the bat and then. Finally the top of the pyramid is unconscious competence. That's right. Intuition. That means you can use the things, solve problems with it without really spending much energy thinking about it. In the early stages of learning, we stumbled between the unconscious incompetence and the conscious incompetence stages. The first two of them.

We don't know what we don't know. And we start to realize how much we don't know getting through this phase can really be a slog, but it's a necessary part of the learning process. That's where I was Saturday morning. Don't get me wrong. I'm not going to tell you that I've mastered the damn thing after just a weekend. I wouldn't want to end up hanging out with my dear old friends done in Kruger again. I'm likely passed the conscious incompetence stage with Astro.

I'm starting to see the patterns and the ways that Astro's approach to building websites is different from what I'm used to. What I am saying though, is that the projects like this inevitably bolster my skills as a developer. They're a good reminder that my expertise isn't just in rails. Or react or next JS. It's in problem solving and debugging and learning new things.

If you happen to manage a team of engineers, this is a good reminder that giving your team the space to explore new tools and frameworks can be a really good thing. Whether it's as a weekend project or a side hustle or in a more formal setting. And if you don't manage a team, remember this, the next time someone tells you that it's a waste to try out a new framework or library. It's not about the tool itself. It's about the skills you pick up along the way.

Transcript source: Provided by creator in RSS feed: download file
For the best experience, listen in Metacast app for iOS or Android