Front-end education for the real world. Since 2018.





A Q&A with JavaScript for Everyone author, Mat Marquis

Mat “Wilto” Marquis

Topic: Announcement

To celebrate the launch of JavaScript for Everyone, we gathered some questions from the community for Mat to answer to give you some more insight into the why of this course, along with some sage advice.

What is it about JavaScript that has you producing so much educational material about it, for so many years?permalink

So many years — so very many years. Listen, you’re catching me at the end of writing and editing the course here; I’m 80,000 or so words deep in the weeds right now. I’m doing my best not to reply to this question by staring into the middle distance, haunted, for a little longer than is comfortable for anyone.

It’s just that — listen — I like JavaScript. I think we do ourselves a disservice by pretending JavaScript is the web’s shameful secret, only meant to be experienced by way of anodyne frameworks that try to buff down all the rough edges.

The web is supposed to be a little messy; it’s made by — and for — people. The modern web — as glossy and corporate and soulless as it can feel, at its worst — was built on the foundation of a future imagined in the 90s and evolved through the work of countless authors, making decisions both good and bad. There are fingerprints on those built-in constructor functions, if you know where to look.

A little dust on the lens is all part of the charm.

Why Piccalilli; why isn’t this just on Udemy/Skillshare/Masterclass/etc?permalink

I’m going to side with an independent publisher every single time. That’s the web I want to support.

From a purely logistical standpoint, well, I wanted to write this in my own voice, and I wanted to play with the medium a little. It’s hard to imagine Skillshare responding favorably to late-night Slack messages to the tune of — just to pull some fictional examples out of thin air — “can we make it so clicking this link plays an MP3 of an airhorn” or “I have written an entire lesson as a bit; do you agree that it is cool to have done so Y/N_.” JavaScript is weird; we might as well have a little fun with it, yeah?

What do you think about the current JavaScript ecosystem, how it’s evolving and what the future looks like?permalink

I tell you, I worry, same as anyone. If I’m being honest, right now the big one is one level higher than worrying about JavaScript as-it-is-written: the vague sales pitch — phrasing very deliberate — of LLM-based “press X to do JavaScript” tooling.

I mentioned this in the JavaScript for Everyone newsletter a little while back, but anyone that isn’t trying to sell you something will pretty readily cop to the output of these tools being, let’s say, “minimally viable.” That’s where they’ve remained for the duration of their hype cycle, despite every promise otherwise. At best, they provide a means of producing quick prototypes. At worst, well, the purpose of a system is what it does: the primary output of the whole field of LLM-based code generation seems to be “justification for devaluing developers,” bought and sold back and forth by the unfathomably rich and powerful.

I worry about the part we could unwittingly play in that worst case scenario. The pitch for these tools, for us, is that they’ll shield us from the frustrating parts of our work — but that’s where the experience is.

What about those of us who come to rely on tools like this to abstract away the worst part of learning JavaScript (the “learning JavaScript” part)? If they largely experience JavaScript by way of a “write it for me” button, how can they oversee the results? How long before we, as an industry, would start to lose the ability to gauge just how “minimally viable” the output is? The bar would get lower and lower; our standards would meet the output of these tools, not the other way around. JavaScript gets worse for it; the web suffers for it, users suffer for it.

Doing the work is how we learn and improve. I don’t like doing push-ups, but setting up a coal-burning push-up-doing machine in my basement isn’t gonna get me any stronger, and it’s not gonna do my house a hell of a lot of good either.

I’m less worried about competing frameworks, these days. Mostly, I worry about us. I want us to get better, stronger, more valued — that takes work. That’s why I’m here: to help.

Why did you opt for a written course, instead of a video course?permalink

Well, “the devil you know,” for one thing. Besides, I have more of a face for typing than television.

Mainly, though: video just isn’t the water we developers swim in every day. Far as I’m concerned, learning JavaScript hinges on being able to try stuff out for yourself: copy a snippet of code, chuck it into your dev console, see what happens; move a semicolon to see how it breaks. If we’re working with lexical tokens, I figure the course should be made out of them too.

Besides, you can only fix so much “in post” — imagine finding a typo in a code snippet in a recorded video? Just the idea would keep me up at night.

If you were to give a beginner one piece of advice, what would it be?permalink

Beginner to making websites? Listen. Bring it in. Lemme spin my chair around backwards, to show you that I am both cool and relatable, not some square.

Don’t start here. Not with this; not with a deep-dive into JavaScript. Learn to write good HTML. Learn how the choices you make with it will directly impact a user’s experience of the things you build. Learn how to build a flexible, resilient foundation before you go pricing out skylights and air conditioning units.

But after that — for a a beginner to JavaScript? Same advice, writ a little smaller: learn the medium, not the tooling. Working backwards from a framework is going to feel a lot faster up-front, but it’s only going to slow you down in the grand scheme. Starting out with a fundamental understanding of JavaScript will set you up for success no matter where you go from there, unglamorous though it may feel.

Away from JavaScript, what excites you the most about the web?permalink

The little pockets of weird are still out there. It feels like we’re starting to shake off some of the… Apple-store-ification of the past couple decades.

I’m hugely into the resurgence of what I think of as “web brutalism” — websites that look like they’re made out of website. A couple examples are strange.website, WEATHER IS HAPPENING, LOW-TECH MAGAZINE, and fellow Piccalilli course creator Scott Riley.

What do you think people will gain from taking the course?permalink

I mean, one, I figure you walk away from this course with a deeper understanding of JavaScript; table stakes, right? I couldn’t ask for much more than that.

But if I could ask for more, what I’d really want, in my heart of hearts, is for you to be able to laugh at JavaScript a little. I know that setting out to learn JavaScript can be really intimidating, for how inconsistent and sprawling and frustrating the language can be; it feels like the realm of the capital-D Developer, a mythical creature born with a special gland-or-whatever that allows them to understand the rigid, analytical, calculating nature of JavaScript in a way we mortals never could.

Thing is, when you you really get in there — when you really start to see how the deep-down gears mesh — whew, what a mess. Big ol’ honking clownshoes, all the way down. “Ooh, I’m made of computer science; I’m so scaaary” — man, JavaScript, you can’t even do math right. C’mon, we’re not gonna let this thing push us around. We got this.

Do I need a good foundational understanding of the author’s pop culture consumption to understand the course content?permalink

Absolutely not. I’m a firm believer in the concept of “you gotta make your own fun,” so any deep-cut dork references you encounter in this course are, by design, just for me. I promise, learning how generator functions work won’t hinge on the phrase “picture the ‘pause’ music from Goldeneye 64, here” resonating with you. Likewise, I don’t think anyone will necessarily bat at eye at my saying, for example, that comments in code are a way to “chronicle your expeditions into JavaScript for those who come after,” emphasis mine. Current-me mine, I mean.

Editor’s note: you will unfortunately have the Goldeneye pause music stuck in your head for quite a while.

But some of you — I see you out there. These can be just for you, too.

Enjoyed this article? You can support us by leaving a tip via Open Collective


Newsletter