#Dev Retro 2022 - Learning, learning, and ... more learning
Also featuring project building, exercises, and an IRL baby!
2022 was a year in my life where a lot changed.
For one, in my personal life, my wife/best-friend and I (who got married in 2022) had a baby boy. He was delivered in April 2022.
The arrival of my son, though obviously expected and obviously wonderful, set my learning journey back by about six months! Even now, the interruptions and distractions are frequent, so my learning efficiency and speed are not optimal.
If you look at my commit history, there is a glaring lack of commits (literally zero) from around April 2022, up until about October 2022. Things really started picking up again in November 2022.
Learning
In 2022, most of my "learning time" was spent on sites like Codecademy, specifically the "Full Stack Developer" course. I largely moved away from the Odin Project and Free Code Camp.
On Codecademy, I have a few completed courses, which I think shows some progress, though really most of my retention of concepts and knowledge came from borderline obsessively completing exercises on Codewars and similar.
I more recently started filling in some knowledge gaps using several other learning resources developed by one Jad Joubran, a Dutch developer and educator.
Learning wins
I can say with confidence that I understand most "basic" JavaScript concepts and features. This knowledge includes, for example: arrays, methods, classes, objects, functions, scoping, Math
, and of course let
versus const
.
A year ago, I was still largely clueless about all or most of the above.
Learning difficulties
Currently my learning difficulties are in the realm of Promises and React.
I recently got to a point on Codecademy at the later part of 2022 where the Codecademy lessons on React were just not "sticking". I went searching for additional resources and found Jad's course(es).
Exercises
Codewars, Edabit.com, and other similar resources I really went hard in the paint on. Practice, practice, practice! I really learned a lot about "shortcuts" (e.g. the unary operator +
), and clever ways to do certain things. I continue to use these sites, though recently not as frequently.
Caveat
I also learned at a higher level that the way things on done on sites like these are not necessarily best practice, or the "correct" way to do things. That is, while one-liners are clever, they may not be readable, and may even be objectively bad code.
Projects
Some projects I built or iterated on in 2022 include the following.
shipyard
This was and is really just a way for me to start using and applying some intermediate-advanced programming principles (e.g. classes
, object manipulation, import
/export
, etc.)
This is a project not prompted by any sites like Codecademy, etc. I plan to turn this into something with a web interface, perhaps even into a text-based game someday. [Repo here]
madare
This just my personal site. Initially it was a Codecademy prompted "portfolio" project that I completed in December 2021, but I more recently returned to a far more basic/minimal web presence.
I drew on my existing knowledge of HTML and CSS to design most of it, though I more recently re-wrote some basic JavaScript functionality using the knowledge I gained in 2022. This is a private repo.
jamming
This was a guided Codecademy project to build an "app" using the Spotify API, fetch
, React, and other advanced JavaScript tools/features. In all honesty, Codecademy did not do a good job in preparing the learner for a project of this scope and scale.
Part two of the project was to add a feature to the app. My feature was the album art of the tracks that show up in the app. It turned out--due to the power of objects--implementing my addition was far easier than I initially anticipated. [Repo here]
azulene
This is a project I initiated long ago in May 2021, at the beginning of my learning journey. At that time, I knew far less about programming concepts and JavaScript than I do now, though even now I still consider myself a novice.
I have recently started to redesign this from scratch. My ideas of where to take this however are still beyond my current knowledge level. This is a private repo.
tl;dr
In 2022, I greatly expended upon my knowledge and comfortability with JavaScript and general programming concepts.