JS Party listeners and panelists celebrate great moments from the last 100 episodes! Youāll hear from 14 of our favorite humans (and 1 horse) across 11 episodes. Hereās to our first 300 episodes and the next 300 as well. š„
Featuring
- Horse JS – Twitter
- Eric Clemmons – Twitter, GitHub
- Jarvis Yang – GitHub, LinkedIn, Website
- Justin Fagnani – Mastodon, Twitter, GitHub, LinkedIn, Website
- Josh Collinsworth – Twitter, GitHub, Website
- Brian Zelip – Twitter, GitHub, Website
- Rich Harris – Twitter, GitHub
- Erick Wendel – Twitter, GitHub, Website
- Alex Miller – Mastodon, Twitter
- Jonathan Creamer – Twitter, GitHub, Website
- Jerod Santo – Mastodon, Twitter, GitHub, LinkedIn
- Amal Hussein – Twitter, GitHub
- Nick Nisi – Mastodon, Twitter, GitHub, Website
- Kevin Ball – Twitter, GitHub, LinkedIn, Website
- Christopher Hiller – Mastodon, Twitter, GitHub, Website
Sponsors
Socket ā Secure your software supply chain in GitHub PRs! Try it for yourself today
Fastly ā Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com
Fly.io ā The home of Changelog.com ā Deploy your apps and databases close to your users. In minutes you can run your Ruby, Go, Node, Deno, Python, or Elixir app (and databases!) all over the world. No ops required. Learn more at fly.io/changelog and check out the speedrun in their docs.
Notes & Links
- The future of React with Dan Abramov & Joe Savona (JS Party #267)
- Is print debugging good enough? (JS Party #281)
- This is going to be Lit š„ with Justin Fagnani (JS Party #284)
- The spicy React debate show š¶ļø (JS Party #244)
- Digging through Nick Nisiās tool box (JS Party #278)
- Spicy fonts and static sites š¶ļø with Zach Leatherman (JS Party #79)
- Type War (what is it good for?) with Rich Harris (JS Party #292)
- Recreating Node.js from scratch featuring Erick Wendel (JS Party #268)
- Making web art the hard way with Alex Miller aka SPACEFILLER (JS Party #275)
- Reports of Nodeās death are greatly exaggerated with Matteo Collina & James Snell (JS Party #294)
- We ask a lawyer about GitHub Copilot with Luis Villa from Tidelift (JS Party #188)
- Web developmentās lost decade with Alex Russell (JS Party #263)
- p5.js - a JavaScript library for creative coding
Chapters
Chapter Number | Chapter Start Time | Chapter Title | Chapter Duration |
1 | 00:00 | It's party time, y'all | 00:38 |
2 | 00:38 | Episode 300! | 02:39 |
3 | 03:17 | The return of horse_js | 03:10 |
4 | 06:27 | The "His Beloved TypeScript" song | 02:06 |
5 | 08:33 | Kyle Beard & the future of React | 13:47 |
6 | 22:20 | Mikey G & Jerod's fantastic humor | 02:19 |
7 | 24:39 | Jarvis Yang & things bing Litt | 03:21 |
8 | 28:00 | Sponsor: Socket | 03:26 |
9 | 31:36 | Lars Ellingsen & spicy debates | 06:22 |
10 | 37:58 | Brian Zelip & Amal's insights | 03:00 |
11 | 40:58 | Kris Torres & Team Jerod | 03:03 |
12 | 44:01 | William V & extended convos | 02:22 |
13 | 46:23 | Mycale & the TypeScript wars | 06:39 |
14 | 53:02 | Nelson & recreating Node | 04:04 |
15 | 57:06 | Nathan P & creative coding | 05:33 |
16 | 1:02:39 | Amal & peddling vegetables | 07:52 |
17 | 1:10:30 | Nick & sneaking it in | 01:23 |
18 | 1:11:53 | Chris & Luis Villa | 02:13 |
19 | 1:14:07 | Jonathan C & live call-ins | 04:04 |
20 | 1:18:10 | Nick's final words | 00:48 |
21 | 1:18:59 | Join the community! | 01:40 |
22 | 1:20:39 | Closing time | 00:19 |
23 | 1:20:58 | Thank you š | 02:06 |
Transcript
Play the audio to listen along while you enjoy the transcript. š§
Oh, my goodnessā¦ 300 episodes. Can it be that we have created 300 of these JS Parties? I guess so, because thatās how it works when you increment the number once every time you make a new episode. So weāre here to celebrate, reminisce, and talk about the best of the fest with many of our JS Party friends. Amal is hereā¦ Hello, Amal.
Hi. Happy to be here. Great job fake-rhymingā¦
Thank you. I have a knack for fake-rhyming; not for actually rhyming, but for almost rhyming. They call that a slant rhyme here in these United Statesā¦ But you wouldnāt know that, because youāre over in Amsterdam, you know?
Yeahā¦ I think in Amsterdam they would just call it badā¦ [laughter]
Well, theyāre far more honestā¦
Ooh, Amal is laying down the shadeā¦
Yeah, itās gonna be a fun oneā¦
Alright, so apparently, hungover Amal is spicy Amal.
Oh, my Godā¦ Itās not a hangover if itās non-alcoholic.
Enough saidā¦ Thatās Kball, bumping in there. Whatās up, Kball?
Hey. Excited about this. I was realizing at some point, I think JS Party is now my longest-running gig. I have been hanging out with JS Party longer than Iāve ever worked for a company.
Awwā¦
Oh, wow. That makes us feel special.
Yeah.
What brings you back each and every week?
You all, of course. You set me up for that.
But you havenāt been here for a while. So Iām wondering, what did we do?
I was here last weekā¦
Iām just messing around. New jobā¦ You know, things get busy. That guy chomping at the bit just canāt wait to say hoy-hoy, but I wonāt let him until I introduce himā
Hoy-hoyā¦
Itās Nick Nisi. Heyā¦
I preempted you. [laughter]
You did. Youāre feeling salty as wellā¦ Chris - weāre not sure if heās salty or not. He just rolled out of bedā¦ But he said if I do one headlie, heāll get excited. I donāt know, he didnāt say that. I just made it up. Hi, Chris.
Hi. Good morning.
Good morning to you. And of course, this is our 300th spectacular, so if youāve been listening for a while, you know Iāve been relentlessly pestering you to send us messages, audio preferred, but text okayā¦ And thank you all for writing in, for calling in. We have two voice mails to play today, and we have a bunch of listeners who will get shout-outs and I will read what they had to say. Weāre gonna talk about some of our favorite parts about the last hundred episodes, some of their favorite partsā¦ And just see where this goes. To do that, I thought it would be kind of lame if I were to just read all these messagesā¦ And I remembered my old friend, HorseJS.
Hello, JavaScript developers. I just want to take a moment.
Nick, you know HorseJS, right?
I know of themā¦
Tell the people about HorseJS, Nick.
They were a Twitter account, are a Twitter accountā¦ I guess Twitterās not a thing, so they were a Twitter ā
I think were is probably the way to say it, yes.
They were a Twitter account that would take fragments of other tweets and use them out of context, that were all related to JS.
I will clarify that I do not regret using Redux.
Good times. Very good times.
Thatās right. Very good times. And that would be very obscure ā
Any JavaScript nerds wanna get rekt?
ā¦and so much so that there was other Twitter accounts that would explain the context for what HorseJS was saying, which was also really fun. One of my favorite troll accounts of all timeā¦
React, itās okay.
And we actually integrated it into the show. So the death of HorseJS is really bumming out the JS Party. In fact, we interviewed HorseJS one time, right, Nick? Me you and Divya interviewed HorseJS. And at that time, I had to decide how HorseJS was going to sound. And I thought itād be weird to assign it a male voice, a female voice, and so I was reminded of that great movieā¦ Not Alice in Wonderland. Whatās the other great movie? Thereās just two of them.
Billy Maguire.
Somewhere Over the Rainbow? Whatās that movie?
You lost the rest of us.
Wizard of Oz?
Yes! I was reminded of that great movie, The Wizard of Ozā¦ With the horse of many colors.
See, you just have to think like Jerod. I just had to put myself in Jerod shoes, you know?
Thatās right. Well, itās Alice in Wonderland and the Wizard of Oz. Arenāt those two semantically linked in your head, [unintelligible 00:04:55.13]
For sure. For sure.
Okay. Yeah, itās just two great movies. So the horse of many colors - I thought HorseJS would be the horse of many voices. And so weāve had a HorseJS on the show throughout the years, in order to just spice up the show.
Node.js will be dead in two years, and you shouldnāt learn Node at all.
Unfortunately, HorseJS died, and is nowā
Itās HorseJS glue nowā¦
ā¦glue, yeah. [laughs] No, we donāt know what HorseJS became.
So you have a zombie voice for us, is what youāre saying? Weāre right after Halloween; zombie voice is appropriate.
Well, I thought HorseJS was dead, but - remember in Lord of the Rings when Gandalf dies, and heās Gandalf the Grey, but then he comes back, and heās actually Gandalf the White, and heās even better? Well, what Iāve realized is that HorseJS, the horse of many voices, is actually just like Gandalf. Itās come back, itās even betterā¦
Everyone, JavaScript is so cool. Have you heard?
And it did not want to read these listener messages, but what it was willing to do was to sing us a song.
Oh, wow.
[00:05:59.27] If yāall could see Chrisās face right nowā¦ [laughter]
HorseJS ā
I think that should be the thumbnail.
ā¦was willing to sing us a song in collaboration with Amal.
Wait, what?!
The song is called ā
I didnāt consent to thisā¦ [laughter]
Just wait, youāre gonna love this. The song is called āHis beloved TypeScript.ā And I will play it now for the first time and probably the only time in human history.
I donāt know what it is, but Iām just digging the mood for this 300th episode.
[laughs]
I didnāt know this was the Nick Fest.
Iām just wondering if Amal isnāt the only one imbibing. [laughter]
Honestlyā¦ Wow. Wow.
Chris, your reaction?
I really ā I have no wordsā¦ [laughter]
Iāve left Chris speechlessā¦ Thatās a win. Thatās a win. Alright, well, thank you HorseJS and Amal for āHis beloved TypeScriptā, the first and only song written and performed entirely by a horse. Okay, letās move on. Kyle Beard, our first listener to write in.
āHello, Kyle Beard here. So many good episodes, but Iāve listened to number 267, which is āThe future of Reactā multiple times. Very useful to get the perspective of the team behind RSC, especially at the time.ā I thought that might bring out a topical conversation about React Server Components, and maybe server actions in Next.js 14, and maybe the use server directive, and - who put that sequel in my React component? What do you guys ā what are your thoughts on this? This is a hot topic - for or against, happy or scaredā¦
So I have a reaction. So Iāve long been in favor of making it easier for frontend folks to build full applications. And I think weāve moved in that direction for a lot of things, and I think generally thatās good. And that was the whole JAMStack thing, and weāre doing that by letting you just [unintelligible 00:09:35.20] React and write other things. Okay, all these things are good. And I have recently, for the first time, had the experience of having to jump into two large existing Next.js full-stack applications, and oh my God, they are terrible. This is great for building simple applications, this is great for I have to access a little bit of dataā¦ But this is not one of the places where separation of concerns and getting rid of it makes for better applications. These things are tangled nests of workflow-dependent mess, that are really, really hard to maintain and work with.
[00:10:15.01] So I think enabling this type of stuff for simple things is great, and I also think that this is a place where, from what I have seen recently, this trend of trying to mash everything together and say āYou know what, we can treat our backends the same way as our frontendsā, and all of these different things has led to some really awful application architectures, and maintenance nightmares, and all sorts of headaches. And I donāt know all the reasons, but it turns out thereās a lot of specialized knowledge in the frontend - weāve been trying to get that across to people for a long time, that this is a specialized discipline; thereās a lot of important things to learn. Itās not just simple things, itās not just - as one of my developers said, āTaking JSON and shuttling it at different places.ā Thereās a lot to think about. That same thing is true of the backend, and trying to mash it all together and not have to worry about it works great for small applications, works great for demos, leads to some really terrible, unmaintainable systems at scale.
My thought on it is that it does seem weird, it does seem like it would be a tangled mess to maintain, potentially. I havenāt really done much with itā¦ Iāve done some Next stuff and ended up abandoning it, because it wasnāt great at the time. And from what I see on Twitter, itās still not great. But at the same time, I want to approach this kind of in an opposite way of how I approached React in 2013, when it came out, with that separation of concerns. Bringing my HTML into my JavaScript - that seemed wrong and weird at the time. Now JSX seems totally normal and awesome. In 2033, is thatā¦ God, I hope Iām not still writing this stuff. [laughs] Iām kidding. I would love to be writing it in 2033.
Well, if youāre not writing it, Nick, somebody has to beā¦
I really want to hear from Chrisā¦ I have some thoughts, but I feel like Chrisās face is giving me like way more interesting things than what Iād have to sayā¦
I mean, really, I have no opinion. I donāt really know how to use React. Iāve never used Nest, or Next, or whatever the hell it is. So I have no idea. Iām sure it sucks, though. [laughter]
Chris, would you ever write a button where in the on-click you just put some SQL and run it immediately? Thatās what it is.
Would you ever write a button?
Iāve written many buttons. I used to be an Angular JS proā¦
Iām sorry.
But not anymore.
I mean, Angular was a leader in its day. Angular JS, specifically. Yeah, and I think even Angular in its current evolution is doing a lot of really interesting things as well. So yeah, no hate on Angular. But I think for me this trend of kind of RPC, which is an old pattern that was popular a long, long time ago, and back when single-page apps werenāt really a thing, you knowā¦ And so for me, it was really interesting, this old pattern of RPC coming back. So RPC - I think it stands for Remote Procedural Call, or something like thatā¦ But this is kind of a pattern that existed a long time ago, before single-page apps sort of thing; think PHP days and before. And so itās interesting to see this kind of resurgence of RPC in this Reacty/Nexty worldā¦ And then also I think Signals is doing some of that work as wellā¦ Thereās quite a few places in the ecosystem that I think are following this patternā¦ So I donāt know, I mean, itās definitely not something Iām personally excited about, but again, not having used it in production, itās hard to make an informed opinionā¦ Which, based on Twitter, you would think everyoneās using it in production, and has well-informed opinions, you knowā¦ [laughs] And yeah, RPC is definitely not unique to web tech either, exactly. Chris just typed that in the chat.
[00:14:14.04] So yeah, I donāt knowā¦ Not for me personally, but itās interesting. Iām eager to see how this plays out. Iām definitely curious to try it in production and see if it makes senseā¦ I agree with everyone, I think in the simple cases - okay; but as soon as it gets complicated and hairy, I would refactor that out very quickly. So thatās kind of where I stand. But again, not having used this in production, itās hard to have like a well-informed opinionā¦ Which, based on Twitter, you wouldnāt think that.
Well, Iām withholding judgment till I see it in a more serious way, I guess. Right now itās just like āHereās a demo of one lineā, but letās actually see that in use. It did give me that response of āThis is exactly how I was writing my index.php files when I was in collegeā, and those became giant piles of spaghetti code very quickly, and I needed something else. And so I donāt personally ever want to go back to that lifestyleā¦ But wait till we see more, because itās very much [unintelligible 00:15:11.14]
Lifestyle. Wow. It really does feel like a lifestyle, I agree.
It does, doesnāt it? Like, āHereās how I write my web apps.ā
Yeah. Youāre either writing it that way or youāre not, you know? [unintelligible 00:15:21.18] one camp or the other.
At least then you were writing it server-side and maybe like doing messed up stuff, but it was gonna be executed server-side and then rendered; not like youāre writing it and you donāt know if itās server, is it front end, is it gonna be part of my SPA? I mean, you do know, if you know what youāre doingā¦ But when you come to something else, youāre like āI donāt know.ā And that just seems somewhat more fraughtā¦
I think these are only available in Server Components. But it is kind of interestingā¦
Iām not sure about that.
We had this idea of āWeāre gonna have Server Components so we can write our same code on the frontend and the backend, and itās good.ā But now thereās some things that youāve got to use a client on, and thereās some things youāve got to use a server onā¦ And really, is there actually a benefit from having these things both look like React?
100%. Thatās where I come down on it, too. And I just feel like the messaging around like Next 13 and 14 and RFC has just been really jumbled, and really hard to follow. The Server Components stuff on the outset seems like a really good idea, and it seems like this is pushing you towards a better practice of shipping less JavaScript to the frontend. What is Server Actions ā whatās the best practice that itās pushing me towards there? Itās muddied to me. And it just ā I donāt know.
Well, it goes back to our conversation with the React team on the episode that Kyle was talking aboutā¦ I mean, that was like an hour and 15 minutes of which afterwards I didnāt come away feeling like spectacular about the story. I was just like āYeahā¦ā I mean, Dan was still kind of figuring out how to talk about it, and he gave us some analogiesā¦ I mean, you can go back and listen to that; youāll hear Nick and I trying to follow alongā¦ And we are not inexperienced developers. Itās just like the way itās been presented is not straightforward. And so it leaves you kind ofā¦
I mean, I think there is something here thatās interestingā¦ So for a long time, we lived in a world where we had these really great, ergonomic frameworks that were only available on the frontend. And we said āOh, okay, weāre shipping SPAs, we do all this stuff on the frontend, thereās a simple API in the backend.ā And then we said āOh, thereās all these downsides of single-page applications. We want to maybe be able to render on the server, send over HTML, maybe we send less JavaScriptā¦ Okay, letās do that.ā And we had server-side rendering. And then weāve got āOkay, these things are still kind of like a SPA, but theyāre server-side rendered, but theyāre still a separated frontend. Theyāre talking back to a backend thatās written somewhere else, thatās handling our data.ā And people say āOkay this is good, but now I still have to deploy two things. This is a pain in the butt. What if I could do all of my stuff in one application, I could have the benefits of the front, I could have the benefits of the back, I could do all these things togetherā¦?ā And so theyāre trying to kind of go back to this whole single-stack application that you had in the world of a PHP app, or Rails, or something like that, and kind of recreate that, but instead of going back to front, theyāre creating it front to back. Is that the right approach? For simple applications, that is great.
[00:18:21.10] I have yet to find something that is ergonomically beautiful and easy to work in as an old Rails application. Those are great. And they have technical limitations, and they only meet certain things, and at some point you want the power of a separated frontend, or something like that. So I think this is kind of in that same world. Itās great for simple applications; you can do everything in one spot, you only worry about one deploy, it goes out on your, Fly server or whateverā¦ But ā
Vercel.
Or Vercel.
I mean, letās be serious, thatās where it goes out, right?
Oh my God, Vercel is such a pain to deal with backends onā¦ It doesnāt do it. Theyāre trying to fit everything into this frontend-centric world, which works for some sets of things, butā¦
Right. For me, itās just like ā if we kind of take a step back and look at, okay, well, why are we doing this? Oh, because weāre not really handling these loading states gracefully, and weāre kind of failing users, weāre sending them stuff up from the server that looks like itās ready, looks like itās clickableā¦ When you try to do something, nothing happens. So itās like āOkay, well, how do we get away from that?ā Well, you can write code around that. Itās just kind of like, well, I have this little stain on my carpetā¦ Itās like, oh great, let me just bleach the whole room. I feel like this is taking like a mega hammer to a problem that can be solved in a much more graceful way just using like vanilla JavaScript and HTML, and CSSā¦ So itās just kind of one of those things where I feel like thatās the tool that we have as developers; weāre going to try to solve our JavaScript problems with even more complicated JavaScript, and I feel like we go down the complexity rabbit hole, because weāre just not incentivized towards simple solutions as engineers. I mean, itās kind of really ā itās a hot take, but thatās real talk. Thatās kind of where I stand.
I think we have an episode thatās like āWould you like JavaScript with your JavaScript?ā, or something like thisā¦
Youāre right. Yeah.
[unintelligible 00:20:15.03] JavaScript sprinkles? Itās like weāre still doing that, but weāre putting it on top of a JavaScript pasta.
Right. Yeah. JavaScript with a side of JavaSlwipt, right? [laughter] For anyone who caught the Easter Egg in one of our episodesā¦
Ooh, yesā¦ JavaSkwipt.
That was great. That was awesome.
Douglas Crockford calls JavaSkwipt ā JavaScriptā¦
JavaSkwiptā¦ [laughs]
Let me say that again. Douglas Crockford calls JavaScript is smelly languageā¦
Soundboard.
Says itās ā
Hey, JavaSkwipt. Oh, JavaSkwipt. I love me some JavaSkwipt.
[unintelligible 00:20:55.29]
Yes, you silly wabbitsā¦ [laughs]
Elmer Fudd says āJavaSkwiptās smelly.ā
[laughs]
Okay, weāre gonna break the showā¦
Sorry.
Do you have brownies for breakfast, or what?!
No comment, Iām on vacation. No commentā¦
Okay, we need to move on. This could be a whole episode, but it canāt be this episode.
Well, hold on, thereās one important thing, Jerod, though, which is ā
Noā¦
No, really, really, one, which is like, weāre announcing React features at a Next.js conference. Can we please ā can we talk about that?
The unholy alliance.
Like, āWhat is going on here?ā Yeah, itās just this weird murky waters, where itās like developers ā people have to understand, the React ecosystem is a Venn diagram, and Next is a circle within that. It is not encompassed ā like, theyāve got the order wrong. Soā¦
How big is the circle?
I donāt know, but Iām saying a lot of people who use React donāt use Next. For example me, you know?
How much of this is Facebook is trying to be profitable and Vercel is still flying high on VC money?
[00:22:07.13] I donāt know. Either way, itās sketch, and we should definitely talk about it in a show. So weāll see. We can move on now, but I just wanted to throw that out there.
Itās an entire episode.
Yeah, itās its own discussion.
But I want to hear from our listeners, such as Mykey G. Mykey G says āHello, this is Mykey Gā, which is how Iād introduce myself as well if I were Mykey G. āI started listening to JS Party last year and have no regrets.ā Thatās nice. āI enjoyed episode number 281, as it not only included Jerodās fantastic humor, but gave excellent arguments for a few methods of debugging, showing a different perspective.ā This was the Yep/Nope debugging debate, and Mykey G. knows how to make it onto the show; he gives me a compliment. And youāre going on the show when you compliment it Jerodās - fantastic? Or what was the word? Excellent. No. Fantastic humor. This is how Amal snuck around early on[unintelligible 00:22:57.23] and I said āYouāre coming back, Amal.ā
[laughs] Right, right, right. Your mind is a powerful weapon, Jerod.
Youāre on. Youāre a regular. So this was ā who was on that debate? It was Eric Clemens, I believeā¦
It reminds me just how little we do as kind of like engineers to test for like the non-happy paths; those assumptions are baked into so much code. I mean, you can look at failure statesā¦ And itās actually one of the beautiful things about being in the frontend space as a web developer, is that thatās a portable skill, of being able to work in the browser. You hand me a URL if somethingās going wrong, and Iām going to be able to look at these really rich tools that you donāt get when you console.log in Node. I can actually expand out variables, and copy to the console, like you mentioned. Itās almost always like at the network layer, where we see that some happy path assumption isnāt true anymore. And then thatās whenever all the problems arise.
And Nick didnāt show up, so I had to both moderate and debate. Aināt that right, Nick?
I think it was this one. Yeah.
That was good time. That wasnāt like the time that Amal just didnāt invite youā¦ It was different.
Oh, Godā¦
Remember that one? ā¦where you said anybody can come on except Nick.
Oh, I definitely have never uttered those wordsā¦
[laughs]
And yeah, youāre just a troll, Jerod. Thatās what I realized. I think itās taken me so many years to realize this about youā¦ And you love to troll on air, when people canāt really like roll up their sleeves and like punch backā¦ [laughs]
Oh, please do. I donāt ever stop somebody. I meanā¦
Iām a lady.
ā¦Chris has been coming at me for a long time.
Iām a gentle lady.
Okay. Well, thank you, Mykey G, for writing in about my fantastic sense of humor. Letās move on to our first audio clip. This is HorseJSā¦ No, just kidding. This is Jarvis Yang.
Oh, Jarvisā¦!
[unintelligible 00:24:45.11] We all know Jarvis, heās been a longtime listener and community member. Letās hear what Jarvis has to say.
Jarvis Yang here. Please include the āThis is going to be litā episode, but include at least one Louis Litt code. I was hoping for at least one reference from the TV series Suits. Interesting episode anyways. Keep it up. Thanks.
Okay two words. Macbeth. Okay? [laughter] There we go. Thereās a Litt quote.
So I confess to not being a Suits watcher. So Iām out on Louis Litt. Otherwise that probably would have made it into a subtitle, or something. But I donāt know Suits, so I had to go Google this after Jarvis brought it upā¦ But Amal, you must be a Suits fan.
Oh, Suits is great. Suits is amazing. Granted, itās taken me several years to get through the last season of the showā¦ I still think I have like four episodes or six episodes leftā¦ But yeah, great show. Louis Litt - great character. Thank you for bringing up that analogy, Jarvis. You rock.
Yāall will be shocked to learn that I have zero pop culture or TV awarenessā¦ So I didnāt even know this was a thing.
I am shocked.
We are not shocked.
I am shocked.
Thatās just right on brand for Kball. You donāt know Kball doesnāt watch TV or movies?
Weāve never had this conversation, because weāre always talking about careers and JavaScriptā¦ So I feel like we havenāt gone there.
[00:26:08.04] I tried Suits. I tried three episodes maybeā¦ And it just wasnāt sticking. So then I went and started Billions, and Iām on the final season of that now. And Rick Hoffman is actually in that as well, and he plays a [unintelligible 00:26:19.08] doctor who lost his license. Itās pretty funny.
I also havenāt watched Billionsā¦ But I did watch some Louis Litt quotes on YouTube, andā¦ Thanks, Jarvis; I might check that out, now with Amalās seal of approval as well. It might be next up on my list. This episode, 284, āThis is going to be litā with Justin Fagnani from Lit HTML.
There was a project at Google one time called Razor, which turned into a project called Sky, which turned into what people know today as Flutter. And it was a fast subset of the web that was designed to be embeddable into other apps, and be 120 frames per second fast on mobile devices, and whatnot. Flutter is good at what it does, but itās not the web anymore. And I actually think the web could really benefit like Electron desktop apps, like mobile apps, or whatever. I just want the web to have even more reach than it does nowā¦ And I really wish it had this kind of small, embeddable subset that, say, Servo could target as a thing it could support, without supporting the whole web, or something like that. People could embed into their super-apps in China, or whatever, where micro apps come into them, and stuff. I wish that there were ā yeah, kind of the web, the good parts, as a spec.
And that was Kball and Amal. Awesome episode, so thanks for shouting that one out, Jarvis.
Letās hit up our next listener, Lars [unintelligible 00:31:37.08] He says āThere have been so many good episodes that itās hard to choose. One of my favorites was the Yep/Nope debate episode on whether React is only good at being popular.
Good choice.
So yes, weāve been having this conversation before it was coolā¦ Thatās episode 244, with Josh Collinsworth, I believe, who wrote the blog post, came on and debatedā¦ That was, I think, called āThe spicy React debate showā, and it did get very spicy.
Do you know why React is so high in satisfaction? Because itās so complicated to use it makes you feel like youāre a total ninja when youāre using itā¦
I feel called out.
ā¦when really all youāre doing is using ten lines to solve a two-line problem. It makes you jump through so many hoops that you feel like youāre on American Ninja Warrior, reaching the top of that giant thing, just for writing a little bit of codeā¦ When really, they made you do this; this was just solving a web problem.
I enjoyed that one as just a listenerā¦ I think, Nick, you moderated. You did a mighty fine job.
Mm-hm.
Did I also win that one? I think I won somehow.
You never win if Iām moderatingā¦
I always win. He says āI had just been getting to the point where I felt more confident in React, and that episode opened my eyes to what else might be out there. I also really enjoyed the recent episode diving into Nick Nisiās toolbox, number 278, where for the first time I heard about WezTerm, which is now my daily driver. On a funnier note, the line that made me laugh the most had to be Amalās revelation that the sound DMX made on most of his songs was supposed to be him barking.
Honestly, that was like a very real revelation. It was like, I had no ideaā¦
What did you think it was?
I still have no idea.
I donāt know.
What is the sound? Do we have this on the board?
No, we donāt have it on the board. I did put it into the episode.
āElon Musk says X will fund legal bills if users treated unfairly by bosses.ā
Okay, Iāll keep it as true.
Amal?
Yeah, definitely true. I mean, itās so ridiculous, it has to be true. Itās how I feel.
So ridiculous it has to be trueā¦ But is it actually true? Did he actually say that, or did I make it up whole cloth? [win alert] It is true. He said that a couple of weeks ago.
I asked you to repeat the title because I was curious if you said Twitter or X, and you were trying to get us on that.
Oh, I wouldnāt be so malicious. You know I fully support x.com.
Is this where we start playing DMX? [00:34:13.26]
Thatās what I was saying ā if you listened to our show a couple of weeks back, I was saying DMX is rolling in his grave right now, because heās getting all of his cool songs again steamrolled.
[laughs] I never realized that what DMX was doing on so many songs was barkingā¦
What did you think he was doing? Coughing something up?
I had no idea that was a bark. [laughter]
He was just trying to DM us, on X.
Anyways, Iām sorryā¦
Oh, thatād be a cool new feature of X, if that was the DM sound anytime someone DM-ed you on Xā¦ It barks at youā¦
There should be like ringtones for DMsā¦ You know, where thatās a feature.
Yeahā¦
Amal, can you make that song?
I mean, it was basically like [00:35:07.08] And I donāt know, I just thought he was rapping and making sounds; like, how am I supposed to know that was barking? Thatās such a random thing. You donāt assume a human being is barking, you know what I mean? But alas, he was. I also have to say, for the React show, that was like my debut with that song, which I feel like has gotten so much general airtime, the dangerously set inner HTMLā¦
Oh, yes.
You know what my favorite - and when I say āfavoriteā, I mean favorite-not - feature of JSX is? [singing] Dangerously set inner HTMLā¦ Whatās so dangerous about HTMLās inner parts? I donāt knowā¦ [laughter] But theyāre dangerous on the internetā¦ Of React. Reactās internet, of course.
[00:35:58.12] That was a really fun show. Yeah, Kball, you were on the opposite side. You were on the opposite team.
We were going at it. It was great.
It was great. We were just like one ridiculous argument over the other.
I love those Yep/Nope shows. They are so fun.
Yeah, theyāre really fun. We should do them more often.
I agree. Itās difficult to come up with a premise that will be defensible on both sides, and not pylonsā¦ Weāve probably done five or six, and itās almost likeā¦ I just canāt ā like, whereas the JS Danger stuff I can just come up with new questions; itās seemingly infinite. But with Yep/Nopes I canāt come up with the debates often enough. And so Iāve tried to have Kball help meā¦ Maybe this is a good ChatGPT kind of thing, but if youāre listening and you have a good premise for a debate, just shoot me an email or hit me up in Slackā¦ Because I would do these more frequently if we had good premises more frequently.
SQL belongs in your React components?
Yeah, I was gonna just sayā¦ I was literally just gonna suggest that as like the [unintelligible 00:36:58.00]
Thatās a good one.
Iāll also say that we could probably reuse some of them, tooā¦ Because opinions change over time, and flipping sides, andā¦
Ohā¦ Same debate, different sides.
Yeah. We could redo the React one, actuallyā¦ Taking into account the new patterns, you knowā¦
Chris, have you ever been on a debate episode? I feel like you have, but I canāt think of which one it would have been.
I feel like I was on one a long time ago.
We did one about āShould we rebrand JavaScript?ā which was like because of Oracle, and becauseā¦
Yeah.
And I think you were on that one. Howād you come down on that one? I canāt remember.
I donāt knowā¦
[laughs] āDonāt know, donāt careā¦ā I think the answer was it should be rebranded as JS, and here at JS Party we are in full agreement that it should just be JS Party.
That was episode 101. Weāre out of scope for today to talk about that episode.
Okay. Sorry. That goes way too far back. Letās hear from our next listenerā¦ Somebody else who called in. This is Brian Zelip, whoās also been on previous shows calling in, so a familiar voice. Hereās Brian.
Hey, this is Brian Zelip from Baltimore, Maryland. Over the past 100 I realized the shows that resonated the most with me were co-hosted by Amal. I always look forward to her insights, experiences, questions, and especially her ethics. Some of my favorite moments included the ESM modules history, Web Components via Lit. The show with Alex Russell, the episode on Playwright, the !important CSS, and more. Thanks so much to JS Party and the whole Changelog roster for keeping an open, explorative and thoughtful discourse going. We really appreciate you. And Iāve already got a JS Party Tee, so please give mine to Amal if she doesnāt already have one. Cheers, yāall.
Oh my God, wow. That was ā Iām blushing. Thank you so much. Iām kind of like the grandma on this showā¦ I kind of [unintelligible 00:38:57.29] vegetable shows together, you knowā¦ Itās like, kids, we donāt really want to talk about our transition from CJS to ESMā¦ But granny Amal is gonna force you, okay? [laughs]
This is gonna be good for all of us. Yeah, exactly. Youāll thank me later.
Yeah. Exactly. So thatās just my MO. I really appreciate it. And yeah, thank you. Looking forward to the next 100, I guess, right?
I feel like in some ways that goes back to your first episode with us as a guest. Werenāt we talking about TC-39? ā¦which is another very vegetables show.
I was gonna bring that up. It was at Node.js Interactive, and Kball and I were talking to you about ā I think at the time you might have been at Bocoup and you were writing tests for TC-39. Like testing things. And you brought such amazing insight into that side of the process, andā¦ I just agree with everything that he said. Itās awesome.
Yeah, thank you, guys. Thank you. I love this show. Itās such a wonderful platform. You all are like such engaged listeners, andā¦ Itās a wild industry that weāre in; the constraints are always shifting, the requirements are always shifting, the web platform is always shiftingā¦ And we somehow still have to kind of get things to our users, as well as professionally developed. So kudos to all of you for listening, thank youā¦ And yeah, grandma out. For now.
That guy sounded like Steven Seagal.
True.
Really? How does Steven Seagal sound?
Are you really as good as they all say you are?
Every once in a whileā¦
I kind of want a voice like thatā¦
Gosh, how cool would be if Steven Seagal had an alias that he used just when he listens to JS Party? [laughter] He calls in as Brian Zelipā¦ Thatād be amazing.
I think we need to get Steven Seagal on the show now, to help corroborate the story, you know?
Yeah. Confirm or deny.
Exactly.
Next up we have Chris Torresā¦ Or is it? Or is it actually some other celebrity that poses as Chris Torresā¦ Okay, Chris says āConsole.log Hello Worldā¦ā Nice intro, Chris. āThis is Chris Torres, a web developer from Carson, California. Aside from the occasional Frontend Feud episodes, I love the playful banter between Jerod and Nick on the controversial topic of TypeScript.ā
Itās not controversialā¦ [laughter]
I beg to differ, Nick. I beg to differ. It clearly is. Listen to this; thereās more. āApologies to Nick, but I am and always will be on Team Jerod.ā
This sounds made up. Iām sorry. Youāre not a real person. [laughter] Nice try, Jerod.
Ohā¦ No, Chris says āI find it very entertaining and fun to listen to. Anyways, please bring back JS Danger, as Iām an avid fan of Jeopardy. Itās been forever since the last episode. Other than that, thank you so much for bringing me joy and awesome content every Friday. I truly appreciate it.ā Thank you, Chris. We appreciate you writing that in. Yes, I do want to bring back JD Danger. I started to do more feuds because we had a nice formula of like podcast versus podcastā¦ And because Frontend Feud is more communal, and less antagonistic. Jeopardy is one on one on one, and it really is how much you knowā¦ And if you go back and listen to those - I mean, I was under fire as the writer of those questionsā¦ Especially one time Suz and Emma were just coming at meā¦ And Iām like āI donāt need this in my life.ā
So the nice thing about Frontend Feud is itās the people versus the audience, right? The ones who filled out the surveyā¦ Theyāre the bad guys. And JS Danger, Iām the bad guy, because theyāre like āWhy would you write a question like that?ā And so I just shied away from it. But I do enjoy itā¦ We have all the code we need to run the gameboard, so I will ā
At least we agree that youāre the bad guy.
Oh, my goshā¦
Itās also ā I mean, itās rude when I also win every timeā¦ So no wonder. I somehow ended up pulling it out. But yeah, Iām down to bring back JS Danger in ā24. Weāre unfortunately booked through the end of ā23, but in ā24 Iām down for some JS Danger.
Yeah. And by the way, the fact that until this day Jerod still trolls Nick, and Nick still reacts like itās his first time getting trolledā¦ Itās pretty funny. Itās just such a Tom and Jerry situationā¦ Jerod loves to troll, and I think Nick loves to defend, so itās just like a match made in hell, reallyā¦ [laughs]
My favorite part is how Nick declares it not a controversial topic, and then right after that he gets owned by the listener who agrees with me.
[unintelligible 00:43:46.09]
[00:43:53.02] Chris, please directly contact with Nick with some form of government ID and let him know that you are indeed real. Letās hear from our next listener. This is William V, who says āI love the episode called āSpicy fonts and static sitesā, where they discussed the awesome use Eleventy, and just kept talking even after the pod was supposed to end; it pushed me to want to subscribe to Changelog Plus Plus, which is better, Iām toldā¦ā [Changelog Plus Plus. Itās better.]
That one was cool. Thatās Zach Leatherman. Of course weāre gonna keep talking to Zachā¦ Weāve known Zach for many years, and itās hard to stop talking when you get the three of us together, after a long time of not talking.
You know, a lot of these people, when we have them on the show itās like the only time we get to talk to them, just because life is busy, and weāre all doing our different thingsā¦ And so many times youāre like catching up with old friends, and then you feel obligated to talk about a specific thing, until the show is over, and then you can just chatā¦ So that is a good place for our Changelog Plus Plus extended episodes. I canāt remember if that one actually had an extension on it or not. It must haveā¦ But that was a long time ago.
I was looking for itā¦ That oneās even older than the last 100.
Oh, outside of scopeā¦
But it was a good one. It was a good one.
You walked off the end of an array and now youāre in-memoryā¦
I mean, we could be celebrating all 300. I feel like 300 is a pretty big milestone; it doesnāt just have to be the last 100 that are amazing.
Fair. Thanks for just bloating out our scope here. This is how feature creep happens, peopleā¦ Iām just looking out for the user.
We just keep expanding. [laughter]
Can I give a shout-out to someone, or someonesā¦ I think itās really been primarily one editor, but weāve just got to give a shout-out to Jason, our sound editor, whoās fantasticā¦
Yeah. Heck yeah.
ā¦and edits all our shows, makes us all sound way smarterā¦ And just does a fantastic job. We throw him so many curveballsā¦ Right now Iām in Amsterdam, using ā if I sound crappy audio-wiseā¦ And otherwise itās fine too, but specifically audio-wise, itās because Iām using Pixel earbud headphones that Iā¦ Because I forgot to bring my travel mic, and I havenāt had a chanceā¦ But heāll fix this up and make it sound way better. And so I just want to say thank you so much, Jason; we love you. You work really hard, and youāre a huge part of the show. So thank you.
Amen to that. Thank you, Jason. Alright, next listener message. This is from Mikhail, who says āMy favorite recent episode was on the TypeScript wars.ā
So yeah, I donāt know, should we pull up that tweet and read it out loud, Jerod? Iām not logged on to Twitter on this machine, and I will have to pull it up on my phone. Butā¦
Well, Iām sure Rich has it openā¦ Youāve got the quote tweet thereā¦
[laughs] Yeah. Rich is like, āItās embedded. Itās a feed embedded in my brain.ā
[laughs] Itās his biggest mistake over the last week. Itās gotta be right thereā¦
Heās like āIām recording this podcast through Twitter, through an iFrame on x.com.ā
So a little bit of context around ā so David Heinemeier Hansson, heās the creator of Ruby on Rails. Heās a very outspoken developer and business guy, quasi-professional contrarian, and heās very good at taking a contrarian viewā¦ And he has a library called Turbo, which is a JavaScript library that helps your website go faster by basically hijacking anchor clicks and replacing them with Ajax non-full page refreshes. Itās a long-standing thing thatās on its eighth version; itās gone through a lot of iterations. Actually, we use it, an older Turbo, 5 I think, on changelog.com. Iāve used it for many years. Itās decent softwareā¦ And itās an open source project thatās pretty much controlled and managed by him, and his company. And they took TypeScript out of Turbo; not the way that Svelte did it with type annotations, or with JSDoc comments, but just by actually removing it wholesale. And DHH wrote a blog post about why they did this, and he had a tweet about it, which Rich has now found, and Iām clicking on, which says āSo farewell TypeScript. May you bring much rigor and satisfaction to your tribe, while letting the rest of us enjoy JavaScript in the glorious spirit it was originally designed, free of strong typing.ā So thatās, I think, probably a pull quote from the blog post, as his typical fare is. So thatās the context. And then Richā¦ Do you wanna dunk on him again? [laughs]
[00:48:29.23] You should read this in your Jay-Z voice, or your Barry White voice. Either one, you knowā¦
Hang on, Iāve gotta find my own tweet nowā¦
Yeah, I liked the Barry White voice. That was good.
Okay, here we go. Do you want me to read out my own tweet?
Oh, I can pretend guitarā¦
Okay. So just, again, for context, a lot of people had already been attacking meā¦ [laughter] This sounds like Iām an absolute psycho. Okay, okayā
Itās just like being forced with your bad decisions like the morning afterā¦ āIām sorry, Iām sorry to make you read your naughty tweet on a large podcastā¦ā
If I had spent a little bit longer on this tweet and thought a bit more about the reactionā¦ I probably need to change some of the wording, but here we go.
Okay.
Did you know that you were gonna be reading it out loud? Iām just kiddingā¦ [laughter] Anywaysā¦
āRemoving types from your own code is clownish, epically misguided behavior. But whatever, to each their own. Removing types from a library that other people have to use, however, is just user-hostile *bleep*.
*bleep* - is that even a word that we canā¦? That might even be censored. I donāt even know.
Weāll have to find out whether or not it gets bleepedā¦ But itās a great turn of phrase, I think.
This was the one that Amal refused to bring Nick on, even though I lobbied for him. Iām like āCome on, he deserves to be here. He needs to represent his side of the argument.ā And sheās just like āNo, Iām just ā Iāve heard enough of him.ā
I understand.
This isnāt manufactured controversy. Okay? Nick was invited, Nick was the first person I invited on that showā¦ He just ā you know, his body just chose the wrong time to get sick. Soā¦ He just wasnāt able to make it. But that was a good show.
I mean, the rumor was all the hubbub actually made him throw up, because his beloved TypeScript was so under attack that he was literally ā
I was silencedā¦
ā¦he just couldnāt even show his face. [laughs]
Nowās your chance, Nickā¦ What would you have said?
Yeah, you tell Rich Harris how it is.
No, I listened to that show and it was great. I loved Richās take on it. Heās got a very level-set take on the whole controversy, and I thought it was great.
It was a solid show, and it was really great to be able to walk through that nuance with [unintelligible 00:50:38.09] and learn directly from him on some of the very nuanced decisioning, and also kind of the benefits of that decision for him and his teamā¦ It was fantastic.
It really did ā like, he was the perfect person for that too, because heās gone through the process of being in TypeScript, and switching back, and laid out the valid reasons for that. And I think it was different than the controversy at the time, because he still very much supports the end users of Svelte using TypeScriptā¦ And that is the most important thing. I understand why he wants a build step to be missing. Thatās totally fineā¦ Because it was like a double-build step in Svelte, right? And so that makes total sense. I thought it was a really insightful episode.
Itās a weird world, Nick, where the most important thing is that people use TypeScript.
Why is that weird?
But itās your world, and Iām just living in it. Why is it weird? Well, because thereās other tools in the toolbox. Maybe not in your toolboxā¦
No, I think his point is itās important that other people are able to use TypeScript. Right?
I know, but Iām trying to take his sentence out of context, Kballā¦ And I donāt need your help to recontextualize things. Iām winning over here. Iām winning.
This is what I do. I put things in context. Thatās my jobā¦
[laughs]
Oh, my Godā¦
[00:51:56.10] Kballā¦ I have a word for you. Itās called buzzkill. You know, back in the day thatās what theyād call Kball, with the contextā¦ āActually, guys, itās not the correct contextā¦ā Okay, back to Mikhailās message. So on that show I kind of went on a mini-rant about developer identity, and how we need to be able to detach ourselves from our tools, and float above the short-termā¦ And to that, Mikhail says āAs a new frontend dev, I love telling people why they are wrong for not liking the thing I was told to like.ā So there you goā¦
Oh, yeahā¦ And I want to say, Jonathan ā Iām sure this is Jonathan Creamer, right? The Jonathan thatās in our chat, he just said that he loved the recent āThe death of Node.js has been greatly exaggeratedā show, and he said that it was so much fun to hear from the folks like Matteoā¦ You had and provide context about what Bun is trying to do. Yes, I agree. And he also loved the show āAutomating the pain awayā, which he was on almost a couple years ago.
Oh, yeah. I remember that.
That was a really good show. John, we need to have you back, Jonathan. Consider this an invitation.
For 2024. Because unfortunately, weāre all booked out for 2023.
Yes.
Letās hear from Nelson. āHi. This is that kid. One of the best pods was āRecreating Node.jsā with Eric. The talk gave me inspiration to dive into the depths of Node. Iām not a contributor yet, but someday I will be. Thanks for the show.ā That was a crazy episode. Kball, wasnāt that you and I interviewing him, all about how he recreated Node.js from the ground up? A simplified versionā¦
I feel like thatās actually a key to becoming a good developer, and to going deep in all of these things. Itās like, once you get outside of the domain you know, itās gonna be hard. Thereās gonna be dead ends, thereās weird, esoteric knowledge that somehow has not made its way into the documents, or into ChatGPT, or into whatever else youāre using to teach yourself. And youāre gonna get stuck for a while. And youāve gotta not give up to easy, and keep banging your head, and try changing your question or your search phrase until you figure out what is the weird thing that somebodyās documented in a blog post that wasnāt picked up by whatever, that gets you past that barrier.
Itās kind of like a video gameā¦ Thereās two kinds of video game players. Thereās the ones who get stuck and theyāre like āThis isnāt fun anymore. Iām here to have fun. Iām gonna move on.ā And I totally understand that, because thatās logical. Like, if the goal is fun, and this isnāt fun - why am I doing it? But then thereās the kind of video game player that I am, where itās like āOh, Iām stuck right here. My life is gonna be hell for the next seven hours until I get past this level.ā And Iām just gonna go over and over and over until I get past it.
Sometimes I feel like programming has been like that, for me personally, where Iām like āIām just stuck. I donāt know my way out.ā This is pre-GPT tooling, pre-lots of helpsā¦ And Iām like āWell, itās me and the keyboard here. Letās bang our head on it until we finally figure it out.ā And it sounds like youāve persevered through some of that yourself, Erick, in getting this thing out there.
Yeah. In my case there is always some voice here, thereās a reasonā¦ Because why anyone hasnāt done anything that you are trying to do, right? My video on recreating Node - thereās no content on the internet; so this is why Iām building blog posts, making a lot of stuff, to try to get more people. But when youāre the first, this is very nice. Like, āOh, I was the first. Mad science.ā I actually implemented the WebSocket protocol using JavaScript from scratch, like binary data, and a lot of stuff, because I was making questionsā¦ And this is very nice when you reach the point. But the path - oh, my God. You think āIām gonna give up at some time.ā Your mind is like āNo, you shouldnāt do it. You have a lot of other stuff to do.ā
Right?!
[00:55:48.03] Yeah, it was a fun one. I think Erick does a really nice job of kind of breaking down these things that feel overwhelming and hard, and showing how theyāre not that different from problems youāre probably already solving, and kind of building things back up again. So yeah, I love having folks like that on. Itās a really important skill, because I think getting into this industry nowā¦ Thereās so many layers of stuff out there that it feels like you have to learnā¦ And really, most of it is like applications of the fundamentals, in one form or another. And so kind of breaking that barrier of āOh my gosh, this thing has been around for 15 years. How am I possibly able to dig into it?ā and saying ā you know what, itās using the same things that youāre doing in your applications. āLetās just look at how theyāre applied here, and kind of making it accessibleā is super-powerful.
Not to mention his enthusiasm for the content, and just all things is contagious, and he makes you want to go and try things as well that you otherwise wouldnātā¦ So we should definitely get him back on at some point as well.
Alright, last listener messageā¦ This is from Nathan P. āI loved the episode with Alex Miller, which focused on making web art through the affordances of grids and web APIs. The interview inspired me to start doing some creative coding in my free time. Some of my other favorite episodes were the interviews with Alex Russell and Evan You. Iām a big fan of JS Party. Thanks for all the hard work.ā
Alex is getting a lot of love today. Iām gonna have to message him and tell him that. Heās at Web Directions in Australiaā¦ I donāt know why I said it that way, but I didā¦ So ā thatās so cool. And thatās amazing that youāre making art. Have you considered making it in an NFT? [laughs]
Good question. Good question. Well, thatās episode 275, with Amelia and I talking with Alex Miller, aka Space Filler, about indie web art and the work that he did, which was an essay/artpiece/coded thing called Grid World.
āThe emptiness of a totally blank page intimidated me by demanding that I make the first move. But graph paper invited my participation by steering my pencil in the grooves of its strictly regular lines. The grid was like a friend who had already done half the work for meā, and I feel this exact same way, but I never really thought about it in those terms, of like āWhy do I like graphing paper?ā Or āWhy do I hate blank pieces of paper?ā Or an empty, white canvas that is a browser viewport before youāve actually put some HTML onto it. And itās like, thereās just ā you can put anything, anywhere. Itās like the ultimate paradox of choice, right? But with graphing paper, with grid paper, itās kind of just like āHey.ā Itās approachable. Hereās a starting place, right here where these two lines cross. Thatās pretty poignant.
Thank you. Yeah, I think itās something that I have thought about over the yearsā¦
I thought that was a really cool conversation. One thing about Alex that I learned on that conversation is that his dad made Myst, if you remember the game. Chris, you seem like the kind of guy who played Myst. Yes? [laughs]
Youāre trying.
I am trying really hard. You didnāt play Myst? It was epic. It was a classic. It was amazing. It was the dawn of the PC video gaming era.
You know, I think at the time I didnāt have a good enough computer to play it. Because I remember it was very graphically intense. I might have had a CGA monitor at that point.
Right.
You can still get it and go back and play it. My kids have actually ā I have one kid whoās really into puzzles, and my wife remembered Myst fondly from her childhood, and they went through it together.
Thatās awesome.
Itās super-fun still.
[01:00:05.23] Yeah, itās an exploratory puzzle gameā¦ And youāre trying to ā almost like Escape the Room, because you find yourself in certain areas of this island, and you have to get to the next area, and you have to figure out some sort of puzzle in the areaā¦ And man, the satisfaction I just remember as a young boy finally figuring out how to do it, the order of operations, or what I had to put this thing in that thingā¦ Itās just pure joy when you unlock the next section of Myst. For me, it was probably ā next to Zelda, probably like the game that really turned me into a video game fanatic back in the day. So I thought it was cool just knowing the guy who made Mystās son, and having a conversation with him, who is Alex Miller. And heās doing cool stuff, too. So that was a very ā I thought that was kind of a deep conversation. A lot about art, a lot about the creative processā¦ And yeah, happy to hear that it inspired Nathan to doing some creative coding of your own. Soā¦ Very cool.
Thatās really cool, Nathan. Itās really unfortunate that a lot of people ā their only experience of programming is kind of āSir, let me talk to a database and get things out, and show it on a screenā, or make an APIā¦ And thereās so much more to writing software. I would encourage everyone listening to this podcast and go do something creative. You want to do it the lazy way? Just go to scratch.mit.edu, and just use blocks to make a little game. If you want to get serious about it, you can look at ā was it PJS? Or P3? Am I thinking about the right thing, the right library? Itās escaping meā¦ Weāll put the link in the show notes.
Phaser?
No, not phaser.
D3?
Itās called P3ā¦
D3?
Well, D3 too, yeah. You can definitely have fun with ā the P3ā¦
R2-D2?
P5, sorry.
G6?
P5. I knew I had the number wrong. P5ā¦
Z-27?
.js.org. Yes. P5 is ā
x86?
Oh, my God. Okay, stop. p5js is a JavaScript library for creative coding, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners and anyone else. So check it out. Weāll put a link in the notes; do something with yourselves, your partner, your kids, your friendsā¦ Donāt talk to a database, basically. Do something thatās not that.
Right. Do not create, read, update or delete anything. Just create. Just the C. Alright, well, those are our listenersā favorite bits. What about yāall? What did you think of? What did you care for? What do you want to hear more of on the pod? What were your favorite moments, and why was I there? [laughs]
No, I think the real question is āAnd why was Amal there?ā, because it sounds like Amal isā
It sounds like sheās the star of the show, doesnāt it? Amal, your responseā¦
I mean, just ā vegetable grandma. Iām just peddling vegetables, you know? And the good thing about vegetables is they donāt taste great, but theyāre really good for you. [laughs] No, actually, they do taste great, too.
It depends on how you cook them, right?
Honestly ā yeah, I think weāve had a really great arc. I think, full disclosure, weāre definitely looking at expanding the panel. As you notice, we have a few people on our list that you donāt really hear from as much anymore; people who have had a lot of life changesā¦ And so Iām personally really excited to ā for kind of the next chapter of JS Party, as we expand the panel, get some new voices, hear new perspectivesā¦ Yeah, itās this fun show where we get to kind of talk about the thing that we love so much. I mean, weāre so privilegedā¦ So hereās to the next 100, I guess.
There you go. And while weāre doing the vegetables analogy, if you roast certain vegetables, theyāre amazing. Even the smelly oneā¦ Whatās the smelly one? Itās green, and is in a circleā¦
[01:04:01.23] Asparagus?
No, circular green.
Brussel sprouts.
Brussel sprouts. Asparagus is the same exact situation, although asparagus generally tastes better than brussel sprouts when done poorly. Like, a bad brussel sprouts - awful. Like, just steam it and it just smells like a foot. And then youāve got to put that in your mouth? Itās like, I donāt like feet my mouth. But roast brussel sprouts, roast asparagusā¦
That is not a universal truth, Jerodā¦
This is just one manās opinion, okay?
Okay, just putting it out thereā¦
Are you saying we need to be roasting Amal here?
Oh, my Godā¦!
Yes. The more you roast her, the better it ā no, my point is that when you take something thatās good for people, good for your health, good for your career, good for your life, and you present it in a way that makes it good to digest, you like it, you like vegetables - like, thatās a win/win, right? And I feel like, Amal, thatās what you do with JS Party; you take these conversations like the history of ES modules - āBoooringā¦ Donāt careā¦ Why?! Whatās the point?ā And then itās like āNo, this is good for you to know.ā You may not even know it yet, that itās good for you to knowā¦ And the way you do your conversations, the way you host the showā¦ You make it taste good, and enjoyable. And so itās not like dry, and boring, and smells like feet.
No, itās like Mr. Robin had a baby withā¦ Whatās that guy? The funny oneā¦
Tim Robbins? Or are you thinking about Mr. Rogers?
Mr. Rogers, sorry. Mr. Rogers had a baby with ā whatās that guy? Is his name Peewee Herman, or something?
Yesā¦ Both these men are dead, so this is going to be a bit strangeā¦
Okay. And then they had a third baby ā they had a third partner who contributed to the baby. That was ā I donāt know, who do Iā¦? Oprah. [laughs] Letās go with that.
Oprah. There you go. Okay, so Oprah meets Mr. Rogers meets Peewee Herman, and talks JavaScript.
Thatās me. I was gonna say Steve Jobs or something, but heās kind of mean, soā¦ Yeah, so I went with Oprah. But yeah, I donāt knowā¦
There you go. Put that on your LinkedIn.
Oh my God, thatās what I have to work on this week. I have to work on my LinkedIn. Itās like really outdated. I donāt use it.
Oh, boy. Ask Kball. Heās been working on his LinkedIn.
Ishā¦
Not now. I mean, youāve got a job now. But whenever you were between stuff, you had to work on your LinkedIn, right?
I was posting things on LinkedIn. Yeah, I still post some thingsā¦
Yeah. My job was recently impacted by restructuring. I donāt even think anybody here knows this, besides maybe Kball.
[unintelligible 01:06:31.13]
I think you do. Yeah, Kball does. Yeah, so not that I even want to be on the market again, but I will be. Iāve decided that Iām leaving, Iām not going to do an internal transferā¦ So itās good times doing that, that whole danceā¦ Yeah, I know. It does suck, but also, change fuels the soul, I guessā¦
Sure.
So yeah, I figured āOkay, well, I guess I should have an updated LinkedIn profile.ā Start there.
I donāt know about you, but I find that whole process kind of bizarrely funā¦ Because you get to talk to ā I donāt know, I geek out on companies. Maybe this is the entrepreneur in me, but I geek out on āOh, how are you setting up your business model? And what are you trying to do?ā And so interviewing places is kind of a chance to get people to tell you about all their different dirty laundry, and how ā theyāll probably just show you the clean laundry, but the ways that theyāre approaching thingsā¦ So you get to talk to a bunch of companies and be like āAlright, well, how are you doing this? How are you setting up your dev process?ā
And how does LeetCode prepare you for that?
I have never once in my life done LeetCode. LeetCode to me is teaching to the test, right? Itās like the equivalent of studying for your SATs. There is some correlation between your LeetCode performance and how well you program, but when you study LeetCode, it is not helping in how youāre going to do you regular job, generally. And there are people who are good at LeetCode, and good at software development, and generally there are people who are bad at LeetCode and good at software development, there are people who are good at LeetCode and bad at software development. That whole spectrum exists.
[01:08:10.25] So yeah, itās ā I mean, it can be worth it if youā¦ If you are bad at taking the test, where the test is software development interviews, particularly at companies that like to do LeetCode style, but you are good at software development; it can be beneficial for you to spend the time studying LeetCode, so that you can ace the test, so you get into the real work. But God, it drives me bonkers that that is how so many people run their interviews.
[unintelligible 01:08:38.06] for applying to jobs right now. Applying to jobs online sucks. Everybodyās got 5,000 applicants, and theyāre machine-parsing them and scanning themā¦ Always get a referral, which - you probably know that, Amal, but Iām surprised by how many people Iāve talked to that donāt realize that. Getting an internal referral is a low-barrier thing. Most people will just do it. You can reach out to people at the company and be like āHey, can we talk for a little bit?ā They get to know you, they realize youāre a real person, youāre okay, and you could say āWould you feel okay referring me into this position?ā It just gets you past the machine parsing, so you can actually talk to a human being, which is what the point really is.
Yeah, referrals for the win, for sure. Yeah, I think for me itās like ā Iām just kind of trying to decide where I want to land. Itās like, every place has its own set of problems. You just have to kind of decide on which ones youāre okay with living with, and which ones you want to try to tackle. Because youāre not gonna be able to fix everything. So itās like āWhat problems can I live with, and which problems am I interested in trying to kind of drive change for?ā Soā¦ An interesting time to be back on the market, but feeling of oddly optimistic, I think. So hopefully I end up in a good place. Iām really looking to kind of ā Iām looking for kind of like my retirement job out of tech right now. Itās kind of weird to say that out loud, but I just ā I kind of have like eight years of like wanting to work at a corporationā¦ So eight years left in my tenure plan, andā¦ So yeah, I donāt want to be working for a corporation in eight years, soā¦
Well, if anybody out there is looking for an awesome ā are you looking for manager jobs?
Engineering manager, yes.
ā¦yeah, an awesome engineering manager - I hear a rumor. Amal is going to be on the market. So maybe jump the queue and reach out to her.
Yeah, great job.
Well said. Nick, any thoughts from you on the last 100 episodes, on the next 100 episodes, anything thatās not vim or TypeScript-related that youād like to say before we call it a show?
Why do you have to box me in like that, Jerod?
Because youāre just so predictable, Nickā¦
[laughs] I will say, one thing that Iām really excited about ā or one of my favorite types of episodes or segments that we do, that I feel like might be going away, is the Explain like Iām Five piece. I think that those are so fun, and the stories that we come up with, and tell, and all of thatā¦ But no matter how we do those in the future, itās always tainted by āWell, AI could have generated this.ā
Rightā¦
It can generate it pretty well. So the creativity is always in question there.
Are you tipping your hand, or what are you saying here?
Oh, no.
[laughs]
I donāt know, I feel like when we try ā I tried to get ELI5 to reproduce your Mawana storyā¦
Monadās hookā¦
Monadās hookā¦ And it was so much worse. I think you have a future in ELI5 for as long as you want it, because AI is not taking that level of creativity away.
Right.
Well, thank you.
As long as you stay excellent, Nickā¦ Because all of its stuff is very average. And youāre excellent. Soā¦
Yeah. I eat my vegetables and write my TypeScript.
No, I said donāt talk about that. He snuck it in. Do you see how he snuck it in?
ELI5 Jerod trolling.
B0neskull? What would you like to do more, or hear more, or see more of JS Party in the next 300 episodes?
[01:12:02.29] So I was gonna bring up an episode, but it is too oldā¦
No, Kball expanded the scope, if you want to.
Yeah, Iāll bring it up anyway. So when we had ā I really liked the episode when we had Luis Villa on to talk about Copilot. And I would love to have more talks with that dude. Because itās incredibly interesting, if youāre doing open source, or have interest at all in any sort of licensing, that sort of thing, heās just fascinating to talk to. I donāt know if heās doing ā I think he retired from talking about open source licensing, and now heās looking at AI or something nowā¦ But yeah, very interesting guy. And definitely those topics, I think, are maybe more underserved. Certainly we talk about tech, and we goof around on the talk shows, but thereās this whole licensing thing, itās just kind of a topic that I like to talk about. But yeah, and I think itās useful.
Yeah. Actually, on that note, āWhatās in your pkg.json?ā I donāt know if that was in top 200, or ā I donāt know what number that is.
Yeah.
But that was a personal favorite of mineā¦ As was the recent show that we did with Matteo and James Snell, the Node show. That was fantastic. Yeah, Iām just trying to think of recent ones. And then we just ā itās not published yet as of today, but it will be by the time youāre hearing thisā¦ We just did a really great show with Valerie Phoenix, on Tech by Choice, an organization that she started to help marginalized folks enter, stay, thrive in techā¦ And it was just fantastic. It was like such a real talk show. I thought that was like ā Valerie kept it very real, and I hope you all enjoyed it.
Okay, weāre gonna try to take a real-time listener call, as weāre using shiny, new features of web-based toolingā¦ We donāt necessarily expect it to work, but if it does, this will be a first for JS Party, with Jonathan Creamer from the chat.
Hello.
Thanks for calling in. Your very first live caller-inner.
Iām excited.
So cool.
Yeah, this is rad.
What are you bringing to the party? Weāll put you on the spot. What have you got going?
Yeah, Iām at Microsoft now, since we last talked, andā¦ You know, Iāve been enjoying that for a while now. And still listening to yāall all the timeā¦ That Bun episode - thatās what I called out in the chat - was so good that I shared it everywhere I could inside the Microsoft teams network that I have, because I thought it was just awesome.
The one with Matteo and James? Yeah, that was solid. Agree.
Yeah, the one with Matteo and James, exactly. Yeah, it was so good, and it was prescient, because everybody inside all of our teamās chats was talking about Bun and everything, and I was like āHey, guys, listenā¦ Just listen to JS Party. Youāll understand whatās going on. Donāt freak out, itās okayā¦ā
And they dropped so many gems, Jonathanā¦ I listened to that episode three times, because there was so much that they dropped. It was just gem after gem after gemā¦ Itās like, manā¦
Yeah, yeahā¦ I felt the same way. It felt so good to hear from them. Because it was like - yeah, you talked about Bun, but then I also learned about how the Node.js ecosystem actually works, and all this cool stuff. So I thought it was really great. Yeah, thatās what Iāve been up to, just doing my same DevOps stuff that Iāve been doing. [unintelligible 01:15:49.29] who you guys had on the show, another old, old episodeā¦ He and I were just at Connect.Tech in Atlanta together, and we were talking about that DevOps stuff. He actually keynoted on DevOps, which was pretty cool, to about 400 peopleā¦
Nice.
Because I think you guys had him on first, and then me after that, and so now weāre talking about like partnering up on some more, and doing all thatā¦
[01:16:13.23] Yeah, youāre both overdue to come back, you and Ben> I spoke with Ben more recently, and Ben is like āYeah, Iād love to come back.ā And obviously, youā¦ So you have an open invitationā¦ But weāll have to coordinate with you at some point.
Yeah, definitely. It could even be fun if we both did the same episode together. Yeah, and talk about DevOps, and automationā¦ Because his keynote is basically about ā we love the idea of DevOps, and helping people understand frontend developers who donāt do frontendā¦ And it was all about all the different crazy tools that we use to do frontend stuff, even though weāre not technically like writing JavaScript all the time to do that. Weāre doing Docker, and blah, blah, blah, and blah, blah, blah, blah, blah. But yeah, thatād be great. Iād love that. 2024. Letās get it. Letās get it.
There you go.
Thatās great. I mean, I love this idea of combining guests, because our schedule is such that, you knowā¦
Yeah, kill two birds with one stone.
Yeah, thatād be super-fun. Kind of panel styleā¦
No birds are injured during the killing.
Well, thanks for having me. Let me jump in here. I donāt want to kill the party, but I wanted to say hey, and how much I still love listening, as both a caller and a speaker on past episodesā¦ Itās such a great podcast. Yāall keep up the good work.
We love that. Thank you, Jonathan. Appreciate the call.
See ya.
Bye.
[unintelligible 01:17:28.15] the best listenersā¦
Iām just happy that worked very well. I think that this may have opened up a new idea for future JS Parties, right? Live call-in shows. We have the technology nowā¦ Talk to more listeners, man. Just take some questions. Take some comments. Hot takes, warm takes, microwavedā¦
Yeah, but for Changelog Plus onlyā¦ [laughs]
Plus Plus. Come on man, youāve left a plus off of that. Was that on purpose?
No, I just wasnāt sure how many pluses it wasā¦ [laughter]
Yeah, I think for you one Plus is about appropriate. Youāve gotta increment that sucker. Itās an increment operator, Chris. You know incrementsā¦
Yeah.
That sounds like a good point to toss to Nick for the final word of this episode 300. If you do anywhere near the world you did last time I put you on the spot, weāll just have to close early. But Nick, I mean, here we are, episode 300, weāre at the end of itā¦ We have huge plans in ā24. We now know we can take live calls. We have games, we have debates, we have deep dives, we have vegetablesā¦ Thereās just so much thatās going to happen. What would you like to say as we close out our 300th episode?
Coming soon in 2024ā¦ In a world where Ruby on Rails is no longer coolā¦ Jerod tries Typescript, and he loves it! And he comes and says to Nick āThank youā¦ā
[laughs] Oh, that was spectacular. That might actually get me to do it. Probably notā¦ Alright, that is our show. Thank you all for listening. Thank you especially to our listeners who took the time out of their busy lives to write us a nice note, to record us a nice message, or to hang out in the chat while we record.
We donāt do these things on YouTube anymore, and weāre not keeping a set live schedule like we used to, every Thursday at 1pm US Central. Itās not like that. 1pm US Eastern actually it wasā¦ Weāre not doing it like that anymore. Weāre giving ourselves a little grace, a little flexibilityā¦ But we are still sharing the link to the Riverside now, with our JS Party channel in Changelog community Slack before we record. So thatās pretty much as far as weāre going to be putting it out there. That being said, itās still fun to hang out in the chat. Hear us record live, hear all the times I mess up, or have to cough and start overā¦ And be part of the gang. So if you are interested in that, head to JSParty.fm/community. Itās totally free, sign up, and hop in the JS Party channel of our Slack to discuss with us throughout the week, not just during our shows, but whenever something interestingā¦ Even join the #funny channel, where Amal tries to be funny daily, maybe even multiple times a day, with fun posts of other peopleās memesā¦
I was gonna just plug #funny.
You were going to plug that?
Weāre the fastest-growing channel in the Changelog community Slack. Almost 30 people strong, you knowā¦
[laughs] Okay, so letās get those numbers up, folksā¦ Weāve gotta keep going up and to the right of the funny channel.
We need the hockey stick, like any good new tech thing.
Alright. For Kball, for Nick, b0neskull, and Amal, Iām Jerod, this is JS Party, and weāll see you on the next 100 to 300 episodes.
Our transcripts are open source on GitHub. Improvements are welcome. š