· 04:52
Mike 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.
Listen to 💌 Tiny Improvements using one of many popular podcasting apps or directories.