Skip to main content Accessibility Feedback

Coding is breaking problems into tiny parts

One of the most common challenges I hear from students who are just learning JavaScript is around knowing how to actually build projects from scratch.

You can learn a many of the commonly used JS methods and browser APIs and run through a bunch of practice exercises, but how do you take that knowledge and actually apply it to a task?

Today, we’re going to talk about that.

Breaking projects up into pieces

The thing that helped me the most early on was figuring out how to take a big project and break it down into a series of small steps.

I’d grab a notebook and a pen and write down all of the things that needed to happen for the project to actually work. Then I’d break each of those tasks into the smallest possible parts.

Once I did that, figure out which methods and approaches to use, and how to order and organize them, because a lot easier.

But the first few projects were really hard. I didn’t just instantly get it.

This is a skill you can build

It took a bunch of projects for me to really figure out an approach that worked for me. Along the way, I wasted countless time stuck on simple problems, unable to find answers from Google or StackOverflow.

After hearing from countless students struggling with this same problem, I ended up creating the Vanilla JS Academy.

Academy is a project-based online JavaScript training program for beginners, designed to help you learn how to break coding problems into their smallest parts, find solutions when you don’t know the answers, and learn how to think in JavaScript.

Over the course of the 10-week program, you’ll build 30 different projects. Here’s how it works…

  1. Every other day, you get a project to work on, 1-3 short lessons that provide some background, and a template to help you get started.

  2. On the in-between days, I share my approach to the project and some of the common challenges and “gotchas” that students often run into.

If you get stuck, there’s a 24/7 private Slack channel exclusively for students, and video office hours every few weeks.

But a lot’s changed since the program started, so I just updated the entire program.

A focus on modern JavaScript

When Academy was first created, Internet Explorer 11 was still a pretty popular browser, and even IE 9 had enough use that it made sense to support it.

But with modern JavaScript methods now supported in all major browsers on both desktop and mobile, Academy was in need of a refresh. Here are a few of the highlights…

  • All of the projects have been rewritten with modern JS methods that provide simpler approaches and a better developer experience
  • The program covers a wider range of topics, including writing your own JS libraries, working with APIs, and building simple web apps
  • There are 4 new projects to work on, and lots of updates the old ones
  • While the lessons were always available in both text and video, the videos now include closed captioning

I’m really excited with how it all turned out.

A new Academy starts on May 31

If this sounds interesting to you, a new Vanilla JS Academy starts on May 31, and registration opens on Monday.

The program costs $899 (before any location-based pricing adjustments), but if you’re reading this as part of my newsletter, you can register today for just $499, almost 50% off, using the link at the top of this email.

(And if you’re reading this on my website and want to get this awesome deal, drop your email into the form at the bottom of this page to sign up.)

What students have to say

I think this is the best JavaScript training program I’ve ever made, but don’t take my word for it. Here’s what past students have to say…

Making myself a little web tool and using a whole range of stuff that Chris Ferdinandi’s Vanilla JS Academy taught me.

I struggled with JavaScript for a decade so I really would recommend it for anyone who needs a big friendly confidence-booster.- Laura Kalbag
Tired of tutorials? Want to really dig in and work with other developers on how to become a vanilla JS badass? I can't tell you how much I've learned from Chris Ferdinandi and his Vanilla JS Academy.- Ben Rudolph
I was confident that I'd get something valuable from the Academy. The only only hesitation I felt was from knowing how many false starts I had with JS in the past and questioning my own commitment.

With Academy, something finally clicked in regards to both my ability to understand and write JavaScript.

I now feel pretty confident in reading other's scripts and figuring out what's going on. That's in large part due to your clear bite-sized lessons and the active discussions in Slack that quickly surfaced questions and issues that I was also experiencing. Seeing how the same problem was solved by so many others was also helpful in letting go of the pressure to get things right and shift my focus on getting things to work and adjusting later as needed.

I really liked how the lessons were broken up into quickly consumable chunks. I loved having a clean, unopinionated project file to start from that I could wreak design havoc on. :)

The Slack community was priceless.

I've taken other online classes that include a slack community and never found them to be quite as welcoming and my involvement felt much more transactional. In this community, I enjoyed seeing everyone's dedication and investment in each other. It was welcoming, inclusive, helpful, and encouraging. That made a huge difference.- Leticia O'Neill
I can honestly say I am not sure how I ever thought I could learn JS WITHOUT the Vanilla JS Academy. And trust me I have tried other courses.- Izzi Koning

Frequently asked questions

What’s the difference between the Vanilla JS Academy and your pocket guides?

The guides try to cover all of the important details on a particular topic, then walk you through a project to help you remember what you learned. Academy is about learning from doing, and gives you just enough information to get started on projects without giving you all the answers.

If you learn best from experience and building things, Academy is a great fit. If you learn best by being guided through a problem, Academy would probably be a waste of money.

I already purchased your pocket guides? Will I learn anything new from the Vanilla JS Academy?

There’s definitely some overlap in content, but the focus of the Vanilla JS Academy is on teaching you to “think in JavaScript,” through experiential, project-based learning.

If you’ve already read the pocket guides, you’ll be able to focus more on thinking through problems and less on, “what method do I need to do this?”

How does it work if I’m in a different timezone?

The lessons and projects automatically show up in the learning portal every day, and can be completed whenever you want. The Slack channel is available 24/7, and there are people from around the globe in the program.

The only “time specific” part is the office hours. If you’re in a location where you can’t join them live, you can send in questions ahead of time. Office hours are recorded so that you can watch them later.

I have a disability. Will I be able to follow the lessons and join office hours?

Every lesson includes a text-based version as well as streaming video with captions. Office Hours feature live automated audio transcripts. Because they’re automated, they’re not 100% accurate, but typically “good enough” for most people and conversations.

If there’s anything else I can do to make the program a better experience for you, please email me at chris@gomakethings.com.

Do I need any prior knowledge or experience to participate in the Vanilla JS Academy?
Ideally you’re comfortable working with HTML and CSS already. Experience with another library or framework (like jQuery, React, and so on) is helpful but not required.

Ready to join?

If this sounds awesome (seriously, it is!), official registration opens on Monday.

But, if you’re reading this as part of my newsletter, you can register today for almost 50% off using the link at the top of this email.

(And if you’re reading this on my website and want to get this awesome deal, drop your email into the form at the bottom of this page to sign up.)