Hello, JavaScript

June 21, 2025

I’m learning JavaScript at the moment.

I have no intention of becoming a software engineer or web developer, so why would I put myself through this hell? Well, as I’ve stated too often in recent posts, I’m going all-in on my website and plan to make it my wonderful, fascinating space on the internet.

I am currently using Webflow to develop this site. I originally chose it due to its no-code build features and CMS. Webflow provides me with a lot of customization and flexibility. However, coding my site from scratch will give me full control over what I wish to develop.

That’s why I’m learning JavaScript. I already understand enough HTML/CSS, so JavaScript will allow me to build a simple, full-stack website, with whatever pages and features I desire.

I previously started my JavaScript journey earlier this year in January. But after 1-2 weeks, I stopped and focused on Python. Despite wanting to code this website at the time, I thought it would be too difficult to properly store my 150+ blog posts without a CMS. That was due to the knowledge barrier. I didn’t know what was possible or how to do it, so that daunted me.

But I now have faith in myself.

I’ve solved difficult problems in the past, ones I assumed were impossible, so I’m confident that I can manage my blog content without a CMS or find an open-source tool to help. It won’t be easy. It’ll surely be tricky. But it won’t be impossible. And knowing it’s not impossible is enough to motivate me.

So, what’s my learning plan?

Unfortunately, I do not have a specific learning path, detailed plan, or roadmap to follow. I recognize this is an issue, so I need to strategize more. However, I don’t want my lack of strategy to delay my JavaScript journey.

So, I’m taking the following measures in the meantime.

First, I’m reading Eloquent JavaScript. It’s not the most exhaustive resource for becoming proficient in the language. However, I’ve seen a lot of experts recommend the book for learning JavaScript basics and syntax.

I’m already six chapters in, moving slowly, and I enjoy the code examples and practice exercises provided. As I read, I can open up VS Code and use Node.js to test the examples and execute code myself.

The next thing I’m doing is converting old Python code to JavaScript.

Since I’m fairly proficient with Python, I understand most of the high-level programming concepts that apply to JavaScript. Not all Python code is feasible (or logical) to write in JavaScript, however, I have code solving Project Euler puzzles that work with the language.

I already did the dirty work of figuring out the math/logic side of the answers, so I don’t have to waste time on that. Instead, I can focus purely on translating the Python code into JavaScript.

After that, I plan to develop a few simple websites for practice. Remember, the goal of my JavaScript journey is to rebuild my website. So, eventually, I have to focus on using JavaScript for web development rather than for math and logic puzzles.

The few practice sites I build will be cookie-cutter ones. You know, the basic websites most people create at the beginning of their web development journey. None will go into production or be hosted on the cloud (even though I need to learn those skills). Instead, I’ll keep them local and leverage them strictly for strengthening my skills. There will be nothing to showcase here.

Once I have a few sites under my belt, I’ll begin developing my websites with a frontend and backend. I won’t be an expert at this time, nor will I feel ready. But that’s okay. I don’t have to be an expert to code a personal site. It isn’t a large-scale, CRUD app with thousands or millions of daily users.

It’s a simple, damn personal site. I just need enough programming competence to get started.

Is this the best JavaScript learning route? I have no idea. Maybe it is. Maybe it’s not.

So long as I learn, make progress, and accomplish my goals, I’ll be happy. No matter what route I take, there’s a lot of learning ahead. I’ll never feel as though I know enough. There’ll always be some new problem to solve or technique to master. Rather than being nitpicky and identifying the most optimal path, I’m choosing something and beginning.

Taking action is my top priority, as it should be.