DEV Community

loading...
Cover image for Rabbit holes and re-learning code

Rabbit holes and re-learning code

Jeff Mitchell
I'm an IT generalist and junkie who's decided to dust off old coding skills and join the modern era
・2 min read

I’m an engineer, and coding as a way of expressing a solution to a problem was something I did a lot in University, but in my career I’ve completely fallen out of practice. I still solve problems for a living, but these days my solutions are expressed in a Word document…or more likely an email.

I’m a computer generalist and junkie…it’s just hardwired into my DNA at this point. In all my “junkie-ness” I never returned to coding, until now.

Late in 2020, I decided to get serious about it. Thanks to Codecademy, I chose to pick up again with C++. My University coding skills, long ago in the 1990s, were all about doing procedural programs in Turbo Pascal. I knew a little C, back in the day, so I figured C++, at least the basics of it, was a good vehicle to get back in.

C++ is very rigid and unforgiving, but the memories and muscles came back and served as a good warm up. Codecademy took me from the ground up and gave me all the knowledge to do basic things. I finished all their lessons, which put me in a good place to practice on my own. These early steps oddly led me down a weird rabbit hole of creating win32 programs in C++. I found that rabbit hole briefly appealing because, in this desire to return to coding, my endgame is to do something useful and create something other than a console program.

The win32 hole highlighted a bit of a problem…I’ve been a little guilty of what I call “squirrel” syndrome. A more modern language called Rust piqued my curiosity and I spent a couple of weeks down that new rabbit hole. It attracted me as it was developed to have the power of C++, but without the associated pitfalls and baggage around memory usage. I liked the idea of starting something that was built with safety in mind. A substantial portion of software vulnerabilities stem from poor C++ programming hygiene.

I found a wonderful Rust tutorial in which you code a text editor from scratch. I completed most of it, and it will serve as the foundation for whatever else I do in that language. I intend on returning to that tutorial to finish it and have ideas of my own for how to eventually extend the text editor I built.

I extracted myself out of the Rust rabbit hole, to return to the “languages of the web” (HTML/CSS/JavaScript). In my mind they are fundamental, and the foundation for open solutions to problems. I rebuilt my on-again/off-again website thejeffism.ca using these basic building blocks. I intend on focusing on each in turn, starting with JavaScript. For that, I turned back to Codecademy and its wonderful way of teaching. I highly recommend them if you want to build a foundation for coding skills.

I can’t guarantee I won’t fall in more rabbit holes, as I go after the next shiny thing that I’d like to learn about, but at least for the rest of 2021 I plan to focus on the basics.

Forgive me…but React is shiny and I need to go check that out… :)

Discussion (0)

Forem Open with the Forem app