JS Party – Episode #232

Sophisticated Cornhole

with Jerod, Nick & a taste of Ali

All Episodes

Jerod, Nick & Ali partake in a few rounds of Story of the Week, TIL, and I’m Excited about $X. Oh, and is TypeScript the new Java? Nick responds and emotes all over the place! 😆

Featuring

Sponsors

RaygunNever miss another mission-critical issue again — Raygun Alerting is now available for Crash Reporting and Real User Monitoring, to make sure you are quickly notified of the errors, crashes, and front-end performance issues that matter most to you and your business. Set thresholds for your alert based on an increase in error count, a spike in load time, or new issues introduced in the latest deployment. Start your free 14-day trial at Raygun.com

SourcegraphTransform your code into a queryable database to create customizable visual dashboards in seconds. Sourcegraph recently launched Code Insights — now you can track what really matters to you and your team in your codebase. See how other teams are using this awesome feature at about.sourcegraph.com/code-insights

SquareDevelop on the platform that sellers trust. There is a massive opportunity for developers to support Square sellers by building apps for today’s business needs. Learn more at changelog.com/square to dive into the docs, APIs, SDKs and to create your Square Developer account — tell them Changelog sent you.

Notes & Links

📝 Edit Notes

Chapters

1 00:00 Opener
2 01:00 Sponsor: Raygun
3 02:32 Intro
4 03:16 Story of the Week
5 24:47 Sponsor: Sourcegraph
6 26:09 Today I Learned
7 38:58 Sponsor: Square
8 40:14 I'm Excited About $X
9 53:13 Goodbye
10 53:49 Outro

Transcript

📝 Edit Transcript

Changelog

Play the audio to listen along while you enjoy the transcript. 🎧

Hello, friends. Jerod Santo here, your internet friend, and I am excited to have a fun segments show for you today. Joining me are JS Party regulars, Ali - what’s up, Ali?

And Nick. What’s up, Nick?

Hoy-hoy. Glad to be here.

Glad to have the both of you. Today we are playing Story of the Week, we are playing Today I Learned, and I’m excited about X, where X is literally anything. Should we hop right into it?

Definitely.

Here we go.

[03:48] to [04:02]

Just when you think that jingle’s over, there’s a little coup de grâce… Story of the Week. This is where we share various news stories, discuss them, and then rank them by best to worst, or – I just made that last part up. We just move on after we’re done. We don’t do the ranking part. Nonetheless, we shall judge your submissions, even if I may have collected the most of these, and just handed them out to people to talk about. So Nick, what did I hand you to talk about today?

Well, Jerod, there’s this Deno project, and it raised $21 million in funding, so congratulations to them. Let’s discuss.

Congrats to Deno. So we’ve talked about Deno previously, we’ve had shows with Deno folks, go back in the feed… Ryan Dahl on the Changelog Podcast, and…

Kitson Kelly.

Yes, Kitson Kelly on the JS Party podcast… We’ve also used Deno a little bit… I’ve used it a little bit. Have either of you tried Deno out?

Yes, a little bit.

I have not, but I did see a conference talk about it at Remix Conf and it was really interesting, especially – it was on Deno deploy, and the speed at which you can deploy stuff on there is like unreal. It’s like basically instant to get something relatively small deployed, which is wild-wild.

That is wild. And I think that is part of their commercial offering, or their planned commercial offering, is deploy service. But then also other things… Maybe I’m wrong on that. Is the deploy stuff part of their commercial offering, Ali?

Yeah, definitely. That to me seems like their big business model. From all that I can tell is that they have this serverless function deployment platform, and that seems to be their big business model. But it seems like people are already using it, too. I think Netlify is using them for their serverless functions.

Netlify also listed on the group of people who invested in this round of funding. So 21 million from Sequoia Capital, Nat Friedman, former CEO of GitHub on the list, Netlify on the list, Automattic, creators and purveyors of Wordpress.com, amongst other things. Tumblr… Tumblr owners… What else? Pocket Casts?

Are they really? That’s so funny.

Yeah, Automattic owns tons of stuff.

Wait, they own Pocket Casts?

They own Pocket Casts, yes.

Interesting…

Yeah. It’s a conglomerate now. Weird times.

Wow, that’s so funny.

So Ali, one thing you were saying before we started was that Deno kind of had the initial hype cycle and a lot of interest, because of course the pedigree, the fact that Ryan Dahl had these regrets about what he did with Node to begin with, and now it was like his chance for the big rewrite, rearrange the letters, change things up, have it be similar, but different in many crucial ways… And that, of course, generated a lot of interest and a lot of early use, and people checking it out… And it seemed like for a little while things got quiet, and people kind of quit, kind of went back to just – well, it was nice. I mean, I checked it out, but Node and Deno, at a surface level - I’m not building big, complex applications; there’s not too much different between the two. But here they are, they’re still raising money, they’re still doing stuff… So what do we think? Are people going to start to use this in real life soon, or are they? Thoughts?

It seems like the serverless thing is a compelling use case for it, and it’s just really fast. I’m excited about that. I think that that’s where they can stay afloat with things. I’m also really excited about specifically the way that you can compile Deno into executables, that you don’t need a runtime for… Kind of like Go in that way. So it’s like a JavaScript solution to a runtimeless binary that you can ship. So you can write your command line scripts in it without having to “Here’s the script. Go npm-install 10 million dependencies, and then run it.”

Right. So you just install all the dependencies first, and then ship those to them as one big blob.

[08:03] Yeah.

Yeah. I think it says a lot that the Twitter hype cycle doesn’t really mirror everything, right?

Yeah.

People aren’t tweeting about it 24/7, so it falls out of the front of your brain, I guess. But then they’re still doing stuff, they’re still building a tool that’s clearly going to help in some facet of the industry… And maybe it’s not going to be overnight that everybody’s moving from their Node Express apps to Deno, but it seems like for building really complex things, that need to be really performant, like deployment pipelines, maybe Deno’s a really great option.

Noteworthy that Deno did just receive one of its first big full-stack frameworks in the open source world, Fresh. A next-gen web framework for Deno. So some of the stuff that Node has, of course, because of the years and years of community building things, it’s just like all these tools that you can just get going with. Anytime you start brand new, fresh, you have to go – oh, I didn’t mean to call it fresh again, but it’s called Fresh. Anytime you start fresh, you need some fresh tooling, and so people are starting to build things, and get inspired by Deno, and do frameworks etc. So that’s a starting place.

What was interesting to me is like in this tech scene, which you all talked about recently with Kball - the downturn, right? All of a sudden money is expensive and scarce, and here comes $21 million thrown at Deno. So that’s kind of impressive. They convinced people to invest in them now. My guess is what I’ve learned a lot with these startups and announcing rounds is that a lot of that - maybe all of it, I’m not sure; this is just conjecture - was probably locked up, an already invested. A lot of times these rounds are closed for a while, but the companies just wait for like a strategic moment to make their announcement. So quite possibly, this money was all dedicated prior to the downturn. Maybe not, but likely.

Yeah. There’s a pretty good chance, I would say. Normally, these announcements come after they get all the legal approvals and all that, and it was already on paper quite a few months ago. At least that’s been my experience working at different startups, is that you hear about these things way after they happen internally.

Which is great timing for the team, and it hopefully gives them a good runway to continue to build new stuff… Because they are consistently putting stuff out, and so this’ll probably carry them through.

Alright, there you have it, Deno raising money, building cool stuff, and time will tell. Are you using Deno? Are you checking it out? Holler at us, @JSPartyFM on Twitter, or reply in the comments. We’d love to hear from people who are actually using it. Maybe they’ve left Node, and now they just reach for Deno every time. We’d love to hear from you.

Alright. Ali, what have you got? Story the week.

GitHub Copilot is no longer just a free beta type of product; they introduced the pricing model, so it’s a real thing now. It’s going to be $10 a month, or $100 per year. And they do have free tiers for big open source projects and for students.

I think this is interesting in making waves on the internet, because it’s basically a model that’s trained on the code that’s hosted on GitHub. So all the code that’s kind of uploaded by not GitHub themselves, but all these different contributors. And then they’re charging for it.

So I think in general, I’m a very big proponent of like charging for developer tools, because I think people get locked into this like free open source model, and then it becomes that – open source is just something that people do on nights and weekends… But there are actually a lot of companies doing this. But then on the other hand, there’s this kind of ethical, weird, gray area of – it’s basically just a model trained on everybody else’s code, and they’re charging for it.

[11:58] Yeah. Well, I think you probably win this time, because I think this has been the story, as we record, June 23 - this has been the biggest story of this week, with everybody commenting and sounding off their thoughts, whether or not they think it’s worth the money, whether or not they think it’s ethical of what GitHub/Microsoft have done here etc. Nick, where do you stand?

Yeah, it is also kind of an interesting place, because this is a tool that is – it’s not really behind the scenes at all for a developer. It’s right there, in your face, all the time, suggesting things to you once you get it set up. So they’ve been pretty much auto-approving everyone who wants to join the beta… And I think that it’s free until August, sometime, as well. It’s the classic like drug model - you get a free taste, and it’s right there…

Yeah, the first one’s free.

Yeah. And there’s still a 60-day free trial, even after they start billing for it.

And free for students, I think.

Oh, yeah.

Yes, students and big open source projects are gonna continue to be free.

It’s something that once you get used to it, and you get used to the way that it suggests things to you, or like how to prompt it in certain ways… For me, it solves the blank canvas problem of just like I need to do something, I don’t really know how to do it, I’ll start at Stack Overflow and maybe think about how I do this. I can just write a comment, see if it gives me anything good… But it’s something; it’s not a blank canvas to go from. It’s something.

So on the whole training on open source code… So go back in the feed, we have a whole episode; we asked a lawyer about GitHub Copilot, so we have like the legal ramifications covered… And it’s very fuzzy in that regard. He doesn’t actually think they’re doing anything that’s illegal. That was my summation of Louise’s take on that. But definitely go listen to the detailed conversation.

In terms of just like – I mean, there’s legal and then there’s ethical. And these things overlap, but they’re not one-to-one.

And so we’re talking about whether or not it’s ethical. So from my perspective, I think they should have limited it to permissive licenses. I think they opened up a can of worms by training against GPL licenses. That being said, I don’t personally have a problem with “Let’s train a model on all the open source code and create a cool tool around that.” I feel like they’re adding a lot of value. They’re not simply reusing. And as an open source denizen, I can’t get worked up about this. I know, there’s lots of people that are worked up… It just doesn’t really bug me that much.

I kind of agree too, especially since so many GitHub projects are on the free tier, that people are not paying for GitHub to host their code in the first place… So I think that’s another argument as well.

I’ve worked at companies that have had like GitHub Enterprise, or a professional GitHub instance, or whatever, and I think that that’s something that a lot of companies are doing, but a lot of these projects that it’s training off of might not to fall under that, too.

Right. And something I learned from Natalie Pistunovich on Go Time is that because it’s OpenAI’s model, and GitHub is creating the tooling using OpenAI Codex, a bunch of other companies can build their own Copilots, and are building them, using the same data, the same models. And so that is not going to be like a GitHub/Microsoft competitive advantage. That’s like, everybody can have that, build from there, and then compete on integration, compete on the way it works, etc. And so we should be seeing maybe compete on price, come out with free/cheaper. And so I think that’s going to be good for all of us, is to have that competition.

Yeah. It’s probably not that hard to build either, to be honest.

I could do it in a weekend. [laughter]

I feel like you’re teeing up my next one there, Jerod.

Alright, go.

Along those lines, AWS has announced now in preview Amazon Code Whisperer, an ML-powered coding companion, as of today.

That’s just fresh today. I haven’t heard of this.

Yeah.

So disclaimer, Ali works for AWS, so put that out there… Opinions all your own, I assume…

Yeah. And I’m also very removed. This is the first time I’m hearing about it too, so…

[16:08] So you’ve just found out about it on this show. [laughs] You didn’t get the memo, okay. So Nick, is this using a OpenAI Codex as well?

I don’t know. I didn’t see that as I was scamming –

You were scamming? Why are you out there scamming people, Nick?

Scanning the article… [laughs] As I was scanning it. I scanned quickly to see if it would support my workflow, which it does not, because unlike Copilot, it does not support Vim, or Neovim, so I won’t be trying it anytime soon… But the prompts and the way that it responds does look very similar.

So quite possible. We will try to follow up. Maybe if somebody knows the facts on that, let us know for a follow-up. One thought I had about for the people who are super-mad that all of this stuff is trained against open source publicly available code is couldn’t you react to that by creating some sort of a subterfuge campaign where you just upload thousands and millions of really bad programs to GitHub? Maybe write a bot that would just write bad code. Or you know, hire me. I can crank it out.

I’m Pretty sure that’s happening.

And then just upload all that and be like “Take that, Codex! Train on this.” And then you’re just tanking the tool, aren’t you? I mean, couldn’t you do that?

I’m pretty sure that they don’t need a bot for that. There’s plenty of bad code out there.

That would be awesome.

Bad code.

I prompted, I was writing a shell script just two days ago, and in the shell script I wrote a comment like “Now I’m going to clean up the home directory”, with like all of the extra files added in there, and it suggested a function that was literally rm/rf$home So there’s lots of bad code out there.

So you ran that, and then what happened?

I started seeing the matrix. It was amazing.

That reminds me of that episode of The Office where Michael and Dwight are driving directly into that lake. Have you guys watched The Office? And the AI assistant, the car GPS was telling him to go straight. And Dwight’s in the passenger seat, yelling like “Stop, stop!” and Michael just drives directly into a lake because the turn-by-turn directions just told him to… So kudos to you for not actually running that thing against your home directory…

Alright, moving on… We have our third story. This one I thought was kind of cool. The Brave search engine – the Brave browser now has a search engine. That’s not news. They’ve had it for a little while; it’s been kind of experimental, trying to compete with Google, DuckDuckGo and friends… And I used it for a little while, it was kind of like ho-hum, it’s there… It’s I think maybe the default in Brave now, but you can switch to the other ones… Until I learned of Brave Search Goggles, which is a brand new offering, an open source deal where you can actually modify and filter and apply some sort of goggles, so to speak, to all your Brave searches. And not only can you create these filters, but then you can package them up, share them with the community, and then have like single-click buttons where you search Brave search function with these filters on. And so the examples that they have on the homepage is you can create a Brave search, where it’s called “No Pinterest.” So you can basically rerank the results to remove all pages or threads hosted on Pinterest. That’s just one example. You can have a search that’s focused around left-leaning sources, if you want to just continue an echo chamber. You could also do that on the right side, and you can only have right-leaning sources, by ranking results to boost content from one of these new sources.

There’s another one that focuses in on tech blocks. There’s one called One Case Short, where instead of showing like the 1000 biggest sites that it hits, it shows you the 1000 smallest sites.

And so all these different ways that you can tweak and change the results, and then save those off as sort of like bookmarks, to kind of invent your own little search engine each time… Which I thought was kind of interesting. What do you think about that?

[20:17] Yeah, that’s really cool.

Yeah. I have solved this in many ways, not like by tweaking what it returns, but just by hiding what gets returned in other search engines, with like extensions and such. I don’t want to name any websites, I guess, that start with W, or 3, or a combination of that…

[laughs] You’re pretty close now. Do you want to just close the loop on that?

W3schools.

Thank you.

Or Experts Exchange.

Expert Sex Change. I mean, sorry, Experts Exchange. That’s literally how it’s spelled; I mean, talk about a domain hack… It’s like hacking yourself. Alright, so that’s Brave search goggles, check it out. We will link to the GitHub page that explains how it works, how you can create your own syntax, how you can share the goggles with the world… It’s kind of cool. It’s just like a custom URL that you pass in in front of the actual search query into the URL. So these things are very web friendly, the way they built this, which I think is kind of neat. You know, nobody’s really been able to chip away at the dominant search engine, even though their results are like demonstrably worse.

I’ve used DuckDuckGo for years… It’s just kind of been like – it’s there, it’s just not Google, so I appreciate it, but it’s not like it wows me with its results. And I end up having to do the ~g quite a bit to get to a Google result, because I just know it’s gonna be the first hit, and then it is…

So there hasn’t been much innovation. Like, that was privacy-focused, this one’s also privacy-focused… It feels like that’s becoming a thing that’s going to be needed to go up against Google search. But it seems like this, like hyper-customization, hackery, providing like a completely different experience than what Google is providing might be a way that we can get better searches in our lives. So I thought it was cool.

Okay. Should we do one more? Let’s do one more. Ali, close us out here.

Yeah, so one fun one… Or I guess it’s more nostalgic than anything, is that the Atom text editor is shutting down. I haven’t used it in the years and years since VS Code took over, but I used to use it as my primary text editor for years. And so it’s a little bit bittersweet, it makes me feel old that my first text editor – or it definitely wasn’t my first text editor either, but an old one is shutting down.

Yeah, this was kind of one of those things where it’s obviously eventually going to happen, but the day it did, we are kind of like “Oh, no.”

Yeah, as soon as Microsoft acquired GitHub, it seemed inevitable that they weren’t going to keep developing VS Code and, at the same time. But Atom did lead the way for VS Code and for Atom Shell, which became Electron… And Tree-sitter is another thing that came out of Atom, which is like a syntax tree for source code for like a single file… And that’s now built into Neovim. So the fruits of that labor have expanded beyond just that editor, which is fantastic… And it was a great project.

Yeah. Super-innovative, leading the way, especially in like browser, or web tech-based native tools, and the fact that it gained a lot of interest… It was used by many people. I used it for a little while. It was never quite as fast as Sublime Text, just like VS Code isn’t either. So it never stuck, but I super-appreciated all the work there. And I agree with you, Nick, as soon as we knew that Microsoft owned GitHub and VS Code was so, so dominant in terms of developer interest, it just didn’t really make sense to continue both.

[23:57] Yeah. But it does look like the team behind Atom have started a new editor written around Rust, and it’s called Zed.

Yes. Zed is not dead, despite what hope fiction might tell you… It’s also not ready for primetime yet. We had Nathan Sobo on the Changelog years ago talking about Adam, and he’s agreed to come back on to talk about Zed when he’s ready. And he says Zed is not quite ready yet, so… That’ll happen, but we’re always interested for people who are innovating in the editor space, because even if you don’t use it, that innovation ends up pushing other people to change, adapt, improve their editor, so it will be interesting to watch.

[24:43] to [26:23]

Alright, we’re back. Ali had to hop off during the break because she wasn’t feeling well, so feel better, Ali. I hope you’re not too sick, and if you can shoot Ali some kind words, she’s @aspittle on Twitter. See how she’s doing.

Nick and I are going to power through and we’re going to share things that we’ve learned.

[26:41] to [26:54]

Do you wanna go first, or do you want me to go first?

You go first.

Okay. So today I learned - technically, yesterday - by way of Simon Willison, who actually shared this on his TIL subdomain of his blog, where he shares things he’s learned… This is really cool. It’s a one-liner for running queries against CSV files with SQLite.

So I’m not going to share the entire one liner, but basically, as long as you pass to SQLite 3 the command line tool this argument for the mode to be CSV, and then take a CSV file and import it, you can then pass that in; without any sort of modifications, just pass the CSV file, and then just run an in-memory version of SQLite that will just store it in memory until the command executes and then disappear immediately… And run arbitrary SQL queries against it. Just like it was a database.

And so it goes and makes all the tables in memory, and stuff… And I don’t know, it’s fancy-fancy. And then it just all disappears when you’re done, and it just gives you your results of running that query.

So Simon found that out, it’s super-cool. I’ll share the actual link in the show notes, so you can see the one-liner itself, but… It’s one of these things where I was like “Dang, I wish I knew that before.” I’m glad I know that now.

[28:16] Yeah, that’s awesome.

One thing I do often for – is it JS Danger? No, it’s for Frontend Feud, is we get all of the responses in via Typeform. And then Typeform allows you to export to CSV, or .xlsx, or whatever. Actually, I think it is a CSV. And then I’ll open that up with numbers, and I will clean it up and normalize… Because we’re trying to aggregate - in the case of a survey like that for Frontend Feud, we’re trying to aggregate the top answers. But it’s always a text field. It has to be. Like if we say, “Where do you go to code when you’re not at home?” we can’t provide dropdowns. It has to be free text. And so we get back ridiculous differences. So there’s like this normalization step, where it’s like maybe you said, “I go to the beach” and then somebody else just wrote “beach.” It’s like, well, those are both beach. But one of them said, “I go to the beach”, and the other one said “Beach”, right?

So there’s like this data cleansing process that I go through and just kind of like manually massage things into right order. And then I want to query it. Well, now it’s a stinking numbers file, right? So I export that to CSV, and now I have everything clean in a CSV file, but I want to query it with SQLite. And so then I take the CSV and I convert it to a SQLite database, and then I open it in the SQLite command, and then I run my queries. And then I do this over and over for each column, because each column is a question. And so it’s just too many steps. And TIL I don’t have to do all those steps. I can just take that CSV, I can run this one-liner and put my queries in there, and it just can immediately spit out the answers without having to go through conversion, enter a program, run a query, exit the program, conversion. So I’m kind of excited.

Yeah, that’s really cool. I love tools like this, that just make it easier to work with data in different ways.

100%. And SQLite is so versatile, and so old. I mean, it’s been worked on for so many years that there’s all these little hidden features in it that you would never know, because they’re hidden behind this command line flag, you know?

Yeah.

That’s neat. So I’m very thankful for Simon Willison for exposing that to the world and teaching all of us, so that we can do things a little more productively, and share that with you all as well. Hopefully, it’ll help you. So that’s mine… What about you?

Mine is kind of along the same lines… Tell me, Jerod, have you ever used a command line utility called fzf?

Fuzzy File Finder?

Yeah.

Yes, I have.

Fuzzy Finder. Yeah, I integrate that into everything. So I can hit anywhere to get like command – as I’m typing, if I want to autocomplete like a path to a file, I just hit Ctrl+T, and then I just start typing the file name, and it’ll fuzzy-find a list down to exactly what I want. And then just, once I hit Enter, paste the path to that file in right there. Or I can hit Ctrl+R, to search through my history, fuzzy-find through my history and find things.

Oh, okay. So you replace like where grep would be, or – it’s not even grep, because grep goes into files. Does fzf search inside the files, in this context, or just the file names?

It doesn’t do any of that, and it also kind of does all of that, because it doesn’t do any of that…

Okay, I’m intrigued. [laughter] It does nothing at everything.

Yeah. [laughs] You can just take anything and pipe it to fzf and then fuzzy find through that.

So you can take your grep results and fuzzy-find through that.

So if you take a directory list or a list of directories and then fzf it, you’re basically doing a file name search, or directory search. Gotcha.

Yeah, exactly.

But if you take the contents of your file, like if you cat a .ts file and send that to fzf, now you’re searching word for word, or whatever.

[32:14] Yeah, exactly. I do do that through – I use a tool called ripgrep to find things. It’s like a Rust based, you know, ack, or Silver Searcher, or one of those variants; like a beyond grep, not better than grip. And you just pipe the results.

Well, they’re trying to be better than grep though, right? Otherwise what’s the point.

Yeah… I think xurl used to be better than grep.com, or something like that… And now it’s beyond grep. Just a–

Yeah. It’s a little nicer.

Because it doesn’t need to have that rivalry…

Right.

Anyway, that’s just so cool. And my TIL is not fzf, because I’ve been using that for years… But I was teeing that up as a way to visualize what I’m about to show you. Have you ever heard of another tool called jq ?

jq for searching in JSON?

Yeah.

It’s like a query language, so it kind of ties into what you were talking about a little bit… But it’s for JSON files. And so you can type the syntax and search through a JSON file, and get out like a specific piece of ,that you could modify in the JSON file in different ways… But when I use that, I constantly have to have the reference open to figure out what I’m actually doing. There’s also online tools that let you like paste some JSON in one side, and then write a query, and it’ll show you the results on the other side. Kind of like a tool that you’d use for doing regular expressions. And that’s really cool, but kind of marrying the two of those together is a tool that I just found the other day called jqq. And it is a visual wrapper around jq, that kind of does the fzf type thing where as you’re writing out your query, it’s live showing you like a preview in like virtual text of exactly what would get returned by what you’re querying as you go. So you can kind of use that as a nice tool to build out your jq syntax, or your jq query, and in real time get that feedback.

That sounds super-useful, because I’ve never found jq syntax to be good for me… Or how do I say it…?

I didn’t want to say it…

Easy…? Well, just for me; it’s not like blaming anybody. It just doesn’t make sense in my head. I’ll just cat my JSON and pipe it into grep and find what I’m looking for. Or open it up in Sublime Text, which handles JSON files quite easily, and do Command+F inside of there.

Yeah.

Because every time I have to use jq, I have to feel like I’m learning the query language for the first time, because I use it infrequently. I think if I used it daily, it would be less so. So it sounds like this is really great for discovering how that query language works more in a tactile way.

Absolutely.

So that’s cool, jqq. Alright, in lieu of Ali’s TIL, I have another idea, which is today I responded to Mikeal Rogers’ tweet. So Nick, I would like a live response from you, an admitted TypeScript fanboy, from a tweet by Mikeal Rogers, former JS Party panelist - maybe even future JS Party panelist, but he hasn’t been on a while - when he today said “TypeScript is the new Java. If that makes you happy, it’s because it’s true. If that makes you angry, it’s because it’s true.” So first question is, does that make you happy or angry? Second question is do you agree or disagree? Hot takes. TypeScript is the new Java.

You put me on the spot like this…

Your thoughts.

You know, when I first started learning TypeScript, or being forced to learn TypeScript, I thought the exact same thing. I was like “This is Javafying my code, and I don’t like it, because it’s too verbose, and I’m not being productive.” And I was especially salty on it because you spend a lot of time writing this type of code that doesn’t actually get run, and it doesn’t have any effect.

Right.

But that said, I don’t know, I don’t have a healthy relationship with Java, if I’m honest… So I don’t like comparing those, because I love TypeScript.

So this makes you angry.

It does.

The answer to the question is angry. He’s angry.

[36:16] Yeah. [laughs]

Because you like TypeScript, but you don’t have a healthy relationship with Java.

Yeah. My only Java experience is working on a struts 1 application, which was not fun. I quickly went over to the JavaScript side, because I didn’t want to – I just did not like it at all.

I used Java just enough to know that I never want to use this language again, and I quickly went to other things, and stayed elsewhere, and have managed to avoid it my entire career since that point. And so that’s also my tactic with TypeScript… [laughter]

Okay, so that’s your hot take, it makes you a little angry. But you thought that yourself, so you think his comparison — do you think him saying “TypeScript is new Java”, do you think that’s inappropriate, or do you think that he’s onto something there? Whether you like it or not, is there something to it?

I mean, I don’t know… You don’t have all of the baggage of Java, right? I don’t know… I don’t know.

Okay, so there’s your hot take. He doesn’t know. He’s angry, he doesn’t know.

You get the benefits of – like, to write TypeScript, what do I have to know? I have to know how to use Node a lot. I have to know JavaScript. It’s not going to save you from learning JavaScript. You know what I don’t have to know? I don’t have to know Maven, I don’t have to know Gradle. I don’t have to public static void main, args string array… I don’t have to know any of that. I just start writing a script, and if I want to add some types to it, I add some types, and it makes it better for me when I come back to it, for sure… But all of those bad things aren’t there, so… I’ve come around; I also think that TypeScript has gotten a lot better with its tooling. It was pretty rough in the 1.0 days, for sure.

Can you tell me what you’d have to type in TypeScript in order to export a default function that has a certain return value, or something? What would that be?

It would be export default function, and then you can name it, or not name it… And then you could just implicitly let it figure out the type of the return based on what you return. You don’t necessarily have to give it a return type.

So export default function main and then some sort of – doesn’t that sound a lot like public static void…

You forgot the in there… [laughter]

Yeah, yeah… Alright…

[laughs] But that public static void main is inside of some class that you have to have, right? Because everything has to be a class in Java.

Truth.

Alright, you’ve acquitted yourself quite well. Take that, Mikeal Rogers. They’re different, okay? Nick Nisi says so. Alright, let’s take the next break. We’ll be right back.

[38:49] to [40:25]

Alright, we’re gonna close up this conversation with a fun little segment where we just share things that excite us currently. So we call this “I’m excited about X”, where X is literally anything. Nick, what are you excited about these days?

Well, I just got back from Amsterdam, and the JS Nation and React Summit conferences, where I was there for JS Party… And one thing that was introduced there that was really cool - and it’s out on YouTube now - is the Svelte Origins documentary. I think that it’s a fantastic watch. These types of documentaries that are just like really high quality, interviewing people that we’ve had on this show… You know, Swyx is prominently interviewed in there, Amelia Wattenberger is also interviewed in there…

So that’s really cool. And it’s just super well done, and it gets you excited about these things. And I’ve never used Svelte, but I’m excited about Svelte, and I’m happy that it exists, and I want to use it… But even though I’ve never used it before, I was fascinated by watching this half-hour documentary, and I think you should check it out.

Yeah. Is this by the Honeypot team, or is this a different one?

So I don’t know the story, but yes, it’s OfferZen, and I think that it’s like they’re now doing those documentaries for OfferZen instead of Honeypot, or something like that.

Yeah, super cool. I have been very impressed by these documentaries. I know there was one about Elixir, I think there was one about – was it Node.js? I know they’ve done a handful. Vue… I’m pretty sure Vue has one. Vue.js, the documentary.

So they are practiced at this. It’s like a professional video team. This is like a documentary, right? I mean, you could throw it on Netflix. Netflix for programmers… which is basically YouTube, I guess. [laughs]

And they go like all over the world for these, to put these together. As far as YouTube videos go, it’s a high budget YouTube video. They went and interviewed Orta Therox, formerly of the TypeScript team, and they interviewed him in his office at home, and you could see how he works, you could see how other folks in their offices work, and it’s just a really high-quality documentary.

And they take a long time to produce as well. I know when we had Rich Harris on the show last, which I’m just frantically searching to find out when it was… Back in December, episode 205, “So much Svelty goodness”, Amelia and Amal were on that episode. And when we were recording it, Amelia had already been interviewed for this.

Oh, really?

Yeah. So I just know that it takes a long time for these to finally get put together, especially if you’re traveling around the world getting these interviews. And I think Rich had already been interviewed for it back then as well, and that was like six months ago.

Oh, wow.

So who knows how much effort, time and thought have been put into these? A super-cool thing. How fun would it be to have an open source project that’s so beloved that somebody makes a documentary about it? It has to feel pretty good?

Absolutely.

We should start one. What should we do?

I’m thinking of something funny… [laughter]

Okay, let’s not start one. That was our big chance, Nick…

Yeah, I know… [laughs] Kind of along these lines though, I’ll throw out another YouTube channel that does similar things, but not like developer-focused, although it is kind of very adjacent… It’s Noclip. Have you ever watched any Noclip documentaries?

No, I don’t know about this.

These are video game documentaries, and they are fantastic. I watched one about Doom. It’s just called Doom Documentary, and there’s a couple of parts to it.

[44:05] But they also have one that’s like the story of CD Projekt, Red, or a Half-Life documentary… And it’s not just like them documenting themselves playing a game… For the Doom one, they went to id Software, and they interviewed John Romero, and talked about what went into it. And they talked to the composer of the music. I think Mick Gordon is his name. And just talked about what went into that.

And as I’ve been playing games, because I’m very late to the video game scene, I’ve been watching these Noclip documentaries for these games that have been out for years that I’m just now getting around to, and it’s just a fun supplemental to it. And I’m just fascinated by the stories that go into how those games get made, how they get the voice actors that they want…

Totally.

…or things like that. And so, yeah, some of my favorites are the Doom one, the Hitman one… And there’s a fun paranormal game called Control that they have one on as well.

Definitely we’ll have to check that out. Link that up for us, we’ll get it into the show notes for folks. Noclip video game docs. Very cool. Well, I brought a couple of things that I’m excited about - one online, one offline. Let’s start in meatspace… I’m excited about Kan Jam. Have you ever played this game?

Kan Jam… Yes. Is that with a frisbee?

Yes. And the trash cans?

Yeah.

It’s so much fun.

I have that in my garage right now. It’s super-fun.

Yeah. It’s summertime here in the States, and people are starting to have barbecues, and here comes the 4th of July, so it’ll be a lot of outdoor activities going on. And this Kan Jam game couldn’t be any simpler. It’s effectively two trash cans - they’re not actual trash cans, they’re just like plastic. But you could make it with a couple of trash cans. With a kind of a mailbox-looking slot cut out of the side of each, and you set them anywhere from like 15 to 25 feet, depending on how good you are frisbee, apart from each other, with the mailbox lats facing each other. And it’s two teams, you stay on either side of the of the cans, and you have a Frisbee that you’re just throwing, and you’re trying to throw it either into the slot, which is an instant win, or into the top of the deal, the trashcan… [laughs]

The can…

The can… [laughter] I just forgot how to use words… Which is like three points or something, or hit the outside… Anyway, there’s a point system. On the other side, you’re trying to work with your teammate to help direct it to the can. So like if the person misses with a Frisbee - because it’s not very easy - you can like slap at the can to get points as well. Just one of these games that are so simple that you think “Why didn’t I think of that?” and yet so brilliant that you’re like “I want to play this all day long.”

And so Kan Jam - we’ll link up the main website, if you haven’t heard of it. It’s cheap… It’s actually easy to travel with, because the plastic cans just like unconnect, and they can lay flat, and then you’re basically just carrying a Frisbee with you. So it’s really portable. Take it to the beach, take it camping, what have you. Kan Jam, so fun. So exciting.

The sophisticated cornhole.

Yes. For people who prefer to throw at trash cans…

Yeah. [laughter]

The sophisticated folks. So Kan Jam is my offline, and I’m excited to play that here over the summer break. And then my online is lofi.co. Have you heard of this website, lofi.co?

I have not.

So if you are into LoFi music while you’re coding or while you’re writing or while you’re studying, or whatever you’re doing, there’s always playlists on Spotify, and there’s YouTube channels that are just like 12 hours of LoFi, right? Well, lofi.co is an in-browser experience where you can set up different circumstances… So it’s like a cool coffee shop, and it’s all hand-drawn and kind of animated, or it’s like a street corner… And you can play LoFi music, as well as like turn on rain, and traffic, and people typing… And just right there in a browser tab craft your own environment for productive work in the browser. You can also upgrade for like 20 more scenes, and sign up, and blah, blah, blah… I haven’t done any of that. I just load up lofi.co, hit Play, turn on the rain, and forget about it. Very exciting.

[48:25] I think potentially they can turn this into a money-making endeavor. Pretty cheap, it’s like three bucks a month, or $100 for lifetime access. It gets you like wallpapers, a Pomodoro timer, a notepad… Stuff that I don’t really care about, but like cool add-ons to support their work. And it’s just a really cool in-browser little web app that plays LoFi music for you.

Yeah, that’s really cool. I have never really coded to LoFi music…

No? How about like rain sounds, and lightning, and stuff?

Yeah, occasionally… Although, I don’t know… I’m very random with my music. Lately, it seems like I’m –

I’m never out of a meeting long enough for me to turn on anything like this…

That’s kind of sad. I have a similar struggle where, you know, I’m editing or producing podcasts so much that it requires me to actually be playing those sounds. So like I’m playing our music, or I’m listening to conversations and I’m editing and stuff… And so that’s like very workflow similar to coding, in that you zone and get into it, and you’re engrossed, only it completely requires your ears to be the entire time… Whereas coding is kind of the opposite, right? You can disengage your ears if you want to. And so when I do have a coding session set up, I’m like “I’m ready for something” because I miss my music. I don’t get to listen to music as often anymore because I’m so often producing a podcast that when it comes time to actually code, I’m ready for something like this.

Yeah, I love it. It seems worth checking out just for the wallpapers alone, even if you’re not going to you use that. You said that you can get these as wallpapers?

Yep. If you sign up, you can download them as wallpapers. What’s cool about it is it’s completely ad-free. It’s unlimited music streaming. So it’s not the kind of thing where they really hold you hostage right away. I found another cool one a while back called maybe brain.fm, or something. And there’s a lot of studies that like this stuff actually does help you be productive and get in the zone. This kind of background noises, and music like this…

Yeah.

And so brain.fm I think was like one that gets you – but it was so much like always upselling you on buying the thing… And I like how this one’s like “Hey, just chill, listen to it…” I mean, they’re competing with – there’s YouTube channels that’s just this all day long. It’s completely free. Maybe with ads. And then Spotify also free, but with ads, unless you’ve upgraded… This one is just like completely free, completely unlimited… Come, come hang out, listen to our tunes, and then like “Hey, want some wallpapers?”

You know, occasionally I listen to other podcasts…

How dare you…?

I know. [laughs] But one thing I did learn from one of them was like somebody – I can’t remember exactly. I’ll try and find the link for the show notes, but on the podcast she mentioned that she puts on like a four-hour video from YouTube that is just a guy working at his desk. And it’s just like if you were on a Zoom call.

They don’t talk. He doesn’t talk, she doesn’t talk to him, but when he gets up to take a break, she stretches, or takes a break…

So she takes a break when he takes a break?

Yeah, yeah. It’s just like the–

Like they’re co-workers.

You know, they’re working from home, but feeling like you’re actually there.

Gotcha.

You’re maybe working with – working alone, but with someone else, if that makes sense.

Yeah. What if you have to use the restroom and he’s not ready to get up yet? I mean, you just kind of – you don’t want to be rude… Hold it?

Yeah. That’s the benefit, you can just pause.

Pause the video, yeah.

I wish I could do that in real meetings. [laughs]

That’s kind of interesting. A little weird, I’m not gonna lie, a little bit weird… But you know, whatever floats your boat, whatever gets you productive, I guess.

[52:01] That’s the thing though. I love that there’s so many different ways to, like…

…fight the procrastination or the sense of feeling isolated or alone. There’s different ways to do that, and there’s different ways to help you with your focus, whether that’s brain.fm, whether that’s LoFi, whether that’s heavy metal video game music. I mentioned Doom before… I’ve been listening to the Doom 2016 soundtrack, which is like – it’s okay. There’s a lot of cutscenes with like demons speaking, which is not super-great, but…

That might ruin your flow. I can’t go really high BPM when I’m thinking, because they tend to get me agitated, or too excited. I think I kind of need it a little bit more mellow.

Yeah, yeah.

And the demons - that I don’t like the demons while I’m trying to think either.

Yeah, yeah. I’ve mentioned it before, I know I have, but like my go-to soundtrack is the Westworld TV show soundtrack.

Oh, you have mentioned that, yeah.

It’s like piano versions of popular songs.

Yeah, that’s super-cool. Have you ever listened to the String Quartet?

Yes…

It’s the same thing, only it’s all strings. They’re always doing popular songs. Very cool. Plus, most of the good songs, you take the lyrics out and the song’s actually better. That’s just my that’s my opinion.

Absolutely.

Very cool. Well, we will link up all the things. Kan Jam, LoFi, jqq, Svelte Documentary, other things… I can’t remember, we’ve talked about so much. And that’s what we’re into right now. If you are excited about something that’s an X, where X is literally anything, you can tell us about it. We’d love to hear from you. Let us know in the comments. You can tweet at us as well at jsparty.fm. Nick is @nicknisi, I’m @jerodsanto… And that’s all I’ve got. Nick, do you have anything else?

That’s it.

Alright, on behalf of Nick Nisi, I’m Jared Santo, this is JS Party, and we’ll talk to you all next week.

Changelog

Our transcripts are open source on GitHub. Improvements are welcome. 💚

Player art
  0:00 / 0:00