On this episode we chat about the way in which remote learning has brought so many kids even closer to computers and code. Later we explore what is left of "nerd" culture now that programming and AV Club are both completely mainstream. Finally we debate the pros and cons of using the Go To command and how to tell when your scope creep is out of control.
Despite its reputation, there is a Go To for every language. You can dive deeper with the Summer of Go To.
There is a lot you can learn from it as a beginner, even if it is worth avoiding as a professional.
Paul's children have learned to inspect the element and the document object model. Being deep into computers seems normal in an era of remote school and omnipresent devices.
Who doesn't like making tree maps of memory usage or cropping and splicing footage on TikTok?
If all kids are into computer hacking and AV Club activities like film editing and music producing...what does being a nerd mean anymore?
Google has a whole slew of online certificates that allow you to find entry points into a career in data analysis, UX design, or project management.
Ben Popper Summer of Goto is that a teen--like a teen romance film? Or what is Summer of Goto? I don't know what that is. [Sara & Ben laugh]
[INTRO MUSIC]
BP Hello! Good morning Paul. Good morning Sarah.
Paul Ford Gooooooood morning!
BP Alright.
PF High, high energy, technology chit chat! With Paul and Sara! [Ben laughs] Drive time.
BP Sara, we're here on the Stack Overflow Podcast to talk about software and technology. You're back in Brooklyn? You're not in Florida anymore? Yes,
SC Yes! I'm back in Brooklyn. The beautiful BK.
PF You know how we can tell you're back in Brooklyn from Florida? Everything behind you is gray and boring with no palm trees. [Sara laughs] That's how I feel.
BP You're back in the supply closet!
PF I have so enjoyed--people at home can't see it, only I can see it and Ben--but I've so enjoyed your tropical background, and they have helped me feel alive.
SC I know. Imagine leaving them. it's kind of sad.
PF Ahh, I know. You've got to be going through right now.
SC Yeah, definitely.
PF I can see your split system AC output and your fire extinguisher nozzle above you.
SC Which is always helpful.
PF And yeah, it looks, like it looks like a bike that you brought in from outside. So you know.
SC It's a Peloton. [Sara laughs]
PF Welcome back. Oh, you got your Peloton. Yes, now, instead of being outside in the beautiful tropics, you can be inside pretending to ride a bike. And isn't that what it's all about?
SC Exactly. Crown Heights, Brooklyn, three and a half stars, needs more palm trees.
BP So Paul, I know you had an experience you wanted to share about kids and the web. I had this weird experience the other day where my son came up to me he's like, "Dad, why do I keep seeing ads for dad jokes?" And I was like, "Where? What?" He was like, "Yeah, you know, I'm playing Roblox. Like I'm looking around the web. And it's telling me about, like dad jokes." I was like, "I don't know. I'm really sorry. I guess my cookies are now your cookies." I don't know what to say about that.
SC I'm sorry, Ben. I'm retargeting your son with dad jokes.
BP Yeah. [Ben laughs] Like they know that you are the only person who laughs at my jokes. I don't know why. I really, it was confusing. But when kids start to like, understand that the web is not just like a static thing, but something that responds to them. How do you, you know, how do you teach them?
PF I'll tell you what, like, what I've noticed is with everybody doing remote schooling and children are aware of computers in a way that you would have previously really had to, it would only be the kids who were very motivated towards technology,where they would get this level of innate understanding. So I'll give you an example, neither one of my kids is actually particularly nerdy, like they're not into computers in the same way I was. But my son discovered that there is a thing called Crosh inside of the Chromebook that is a little command line utility. Apparently, it's written in Rust, this is where I came in. That gives you access to command line access inside of your Chromebook. And it's very limited in what it lets you do, but it is absolutely a shell, right. And so I saw him poking around. And what he's trying to do is figure out how he can hack through the blocks we've put in on YouTube.
SC Ohhh oh okay.
PF Because we've blocked it using family link at the Chromebook level, then we've blocked the Youtube Kids app, then I've also blocked all YouTube URLs with a Raspberry Pi Pi-hole at the router level, and then sometimes I'll even do it at the router level. So we had some issues, and we've worked them through together. But you know what else has happened? And this is both son and daughter. They get on and chat and they do the regular stuff. They play a little bit of Minecraft, they've got Chromebooks, they're not the fastest computers, whatever. They're pretty locked down. But they learned about inspect the element. And they learned that they could change the headlines on newspapers by going in and messing with the document object model.
SC Ohhhh, that's great.
PF And so they really do, like that was cool. And they came and we did we did a session where I changed like, you know, I changed the New York Times headline, probably about immigration or at that time, Donald Trump to you know, my daughter needs to take a shower. You know, things like that really good stuff. Kids love inspecting the element. It turns out, they want to know how it all works. And they don't see it as overwhelming and confusing, kind of because the whole world is overwhelming confusing. They're like, oh, yeah, here's another baffling thing that's enormous that I don't really understand, fine, like they're kids, right? The last bit is just this weekend, my son came in and was like, wanting to inspect the element. And I was like, let's poke around for a minute. And we found you can make tree maps in Firefox of memory usage on your JavaScript apps. And that turned out to be super motivating to a nine year old to see which, it's always what's big and what's little. So it's like, which website uses the most memory? Now, I'm gonna tell you, I never felt more aligned with my son. [Paul & Sara laughs] Because we went, we hit the New York Times, there's this website called restofworld.org. We've had the publisher on this. So they actually when they built that site, they built it for an international audience. it's incredibly tight, like it's a really clean ad free experience. And so that one is, it is it's like it's like a 10th of the memory usage of others. And then I was like, alright, what's gonna really ramp this up? An emulated Macintosh on the Internet Archive got me to like 160 Meg's of memory.
SC Oh, ohhh, cool.
PF Yeah, it's good stuff. Draws you a little map. What you see is that document object model. Oh, boy.
SC So like when we were--when we were young--
PF We were. [Sara laughs] You still have a minute, Sara. It's done for me.
SC But yeah, the anti social, like the quiet kid in the corner with the computer kid. Like the computer kid, the anti social, you know, I have not a lot of, I don't have a big social imprint is the computer kid which I think probably likely we were/
PF Well it wasn't social in any way. Like even in your best friend. You wouldn't take them aside and be like--maybe you would once maybe you'd be like, "Hey, check this out. You can you can program a computer" and they'd be like, huh? Right? Like, it just wasn't their thing. Even if they were nerdy about their own stuff. But yeah, this is like, raw material of their lives.
SC Yeah. So what is that kid doing now?
PF I don't think, I think the Internet has changed the social isolation aspect of weird hobbies. Like I like you know, they're, you know, 11 year old cryptocurrency traders and if you're into trains, or and sometimes this is to our disbenefit, like people get really into, I don't know, some TV show. And then you're just like, that owns the discourse. And they're like, how can you not care? Right?
BP I feel like the the sort of barrier between like, I'm into computers, and I use them every day has completely broken down. Like my kids often plan a playdate for after school in Roblox or Minecraft. And so they're like, I'm gonna hang out with you on FaceTime and in this virtual world, and they're already bothering me all the time. Like, when are we going to build our game? Like they're like, super into the idea of making their own. And I think in Roblox for, you know, it starts out as just like, drag and drop, but like, yeah, I do you think a lot of that sort of like computers, something to do in isolation is gonna go up.
PF Also programming, it's just an incredibly normal career, like half of, you know, everybody knows someone who works in technology. And so like, it doesn't register. I don't know what true nerdiness is anymore. I don't think it exists in the same--because it was so associated with like math, science and tech, that, you know, and I don't feel that it's quite the same. Like it just doesn't, like when you look at the patterns emerging. And part of it too, like we're in a big, I'm in New York City, right. And so like, if a kid is good at math and science, they can find other kids in the 1400 person in middle school or high school and kind of make their little community and stay away from the other kids. I think it's a little more living let live where if you're in a mid size high school in a suburban area, I'm sure someone is still throwing cardboard flavored pizza, your head if you're uncool. [Ben & Sara laugh] You can't get rid of--
SC The pizza stays the same.
PF Yes, savage, middle school dynamics are still there, right?
SC Yeah, this weekend, I was on a panel for a organization called Code/Art. That is for teen girls that are looking to pursue computer science as a career or just the sciences in general. And I was so surprised. So these are girls from ninth grade to 12th grade. All the questions that I got, or like that the panel got, were questions that I'm used to hearing from the adult audience of like, how do I find my mentor? You know, like, what is your day to day like? What part of this career should I prioritize? It was just fascinating. I was like, we are, wait, here comes the army of programmers that are unstoppable.
BP Right. And I saw we talked about this before, but certificates and like this idea of being like certified for a certain job has grown even since that episode we talked about it. Now, these Google certificates are being advertised by them in a very prominent way, like right up on the web, you know, right up on the search bar, and everything. And it's like, hey, when I get into technology? We've got like, 10, easy on ramps for you.
PF I think that is, that is really wild to me, because it used to be like you kind of have to pick your team. 'I'm a Perl web programmer' or I'm, you know, 'I work with Microsoft'. And now it's like, 'click these buttons and start your certification process towards cloud technologies, which kind of all overlap.' And just like if I was, you know, 19, getting my English degree, again, I used to I my work study was at the computer lab, and I would I was into Macs. And so I always kept a balance between the writing and the tech side, because I felt that I always needed the tech just to kind of have a job. Like, I just, I could tell that. But I think that that's like almost going to be default, right? Like, everybody's gonna be pretty good. And then some people are gonna be really good. I'm going to imagine that everyone coming up today, who goes and gets a white collar job is going to be able to use, let's say, Air Table, right? Like they're going to have like a little bit of data modeling. They're going to be comfortable. You know, spreadsheets are going to be familiar to them. They're going to have used Google Docs in middle school. My kids use Google Docs now and they're in, you know, they're in a Brooklyn Public School.
BP Yeah, I mean, I think there's other careers where this has happened. Like everybody is a video editor now. Like it used to be AV club and you could do these nerdy things and like if somebody needed it. Now it's like if you've had TikTck for 10 minutes, like you know how to cut up a video and splice it and add some audio and loop it and like you just know how to do those things.
PF There is somebody online, I can't remember who was, but it was they just pointed out like everybody's like, 'what is TikTok's secret?' It's a really good editing tool. And teens like to make things. And they want to make things that are better than the other teens, right? And they'll put the time in. So instead, it's like, and everyone else is like, 'well, you know, we have this platform over here'. No, it's like tools and the social network, you need those two things.
BP I had a question. We had talked about GoTo on an episode a while back when we're talking about NASA's rules for like safe code in space. And then you know, it comes up in an email, somebody emailed the podcast and asked us to discuss it. And then I was listening to the CoRecursive show, it was about somebody who has built up a pretty good following doing live coding on Twitch, teaching how to make games, and this person was making the argument that it gets a really bad rap. And it's actually really good for explaining programming at a fundamental level, because, and I think we've talked about this before, it's like, it's about like, what actually happens in the memory or in the hardware, like you want to tell the computer to go from one place to another to make a jump? And that like, helps you to sort of understand that what the instructions mean, at the machine level. Does that sound right? Did I get any of that?
PF No, you got that right.
SC Yeah, it's a coda of programming.
PF I mean, look, when you get down to assembly language programming, it kind of is all it's you label things. And then you say jump back to that thing. And then you've got GoTos all over the place. The GoTo considered harmful article, I can't remember which year it came out, but it was written as a memo by Edsger Dijkstra, who is a kind of a legendary curmudgeonly computer genius. [Sara laughs]
SC Aren't they all?
PF Oh, no, he was extra. He used to write these memos, and often handwritten and send them out and just had very, very strong opinions. The argument being and this, this just feels almost like ancient history at this point. But you know, as we're getting away from assembly, which is I'm going to put commands in the memory of the computer, and then I'm going to label them and then I'm going to say, if I hit a certain situation, go and evaluate that sequence of operations, that was very close to the metal. And his argument was like, no structured programming will keep you away from this sort of loopy spaghetti as things scale up. And it's, if you're counting from one to a million and printing out the numbers, or you have like, you're moving one pixel on the screen, GoTo is not your problem. It's if you are doing a banking system, and there are 1000s of functions, suddenly, you're in a world where you're not clear what's pointing to anything else at any given time. And so you want to encapsulate things into functions and have them point from one to the other and just kind of have order. Like computers are chaos. Like they're just, it's just chaos in there. Because it's all sequential. It doesn't actually work like brains do. And the argument was, can we get one level up and actually start to talk about what we want the machine to do instead of dealing with its little memory chip all the time. So absolutely learn, because it is how it works, right? But I'm not suddenly gonna be dropping GoTos into my Python.
SC Yeah, that's what I was wondering. Why do you think that GoTos haven't made it. And these other languages--
PF They're always in there if you look!
SC Oh really?
PF Oh yeah, yeah. I'm gonna bet--let's see--JavaScript GoTo. Probably an NPM module. Oh, what a surprise. It's a Stack Overflow question. Oh, wow. People have basically.
Oookay, there's a project called Summer of GoTo. And there is a GoTo.js which lets you know, jump on labels.
SC No. [Ben & Paul laughs] Yeah, that doesn't mean it's advisable. Like there's like a PacMan.js I'm sure. And, oh, this is Alex Sexton. He has a web page called Summer of GoTo. And if you click on it, it's just another WordPress site. So I don't know if--
PF You know what Ben may not know is about Summer of Code.
SC Yeah. Summer coat is a program by Google.
PF It's been around, it's been around for long time, it's like 16 years old now.
SC Yeah, for internships, where you can teens can intern for summer.
PF Yeah, it's like the in the summers, right, like Google sponsoring. And it's, it's, they sponsor open source projects, and you know, you apply so it's like, it's actually been one of their real ways to build big open lines between open source and in Google. They sponsor people working on the projects. It's not like you're working for Google you're working on you know, Project X. Summer of GoTo is is a little bit of a joke.
SC Yes, apparently came of PHP adding GoTo.
PF Ohhh! I mean, we're all just standing on the shoulders of giants here. I don't know. I don't know. If people want to GoTo in their programming. Let's not fight. Let's just get along.
BP Right. It's sort of useful at the very beginning as a way to help people conceptualize what's happening, and then along the way, it becomes something that can trip you up. But I guess, right, what was being argued in this podcast was that like, people don't want to teach those anymore because we know once you get to a certain level that it's going to trip you up. But if but skipping over, it makes it harder at the fundamental level to understand certain things makes it harder for beginners, like it's a great concept for beginners.
PF No, that's true. It's worth learning I'm gonna find, and then we should share it in the show notes. So there is a whole world of emulators for computers that run inside of the browser, and where you can like write some assembly and see how it works. And it just, it's a good way to see just what a bananas thing your computer actually is. [Sara laughs] I need to find one, there's one that's so simple that has, like, you know, 2k of memory, which is really all you want. It's a good way to see just like, 'Oh, that's what it is.' 'Ohh, I never want to deal with that. That's terrible.'
SC Yeah, who builds those? Maybe that's what the kids are doing. Maybe that's what the kids are up to, the ones that are anti social. They're building those computers that live in emulators.
PF You know, if you were to say were kids who weren't knocking it out of the park socially were going, emulating old systems might be it. [Paul laughs] Yeah. Yeah, Sara, I think you might have zoomed in on it.
SC It builds character.
PF That's what we need. We need kids with character out there.
BP I had a question, which is that I started working in Glitch to build my dog park app, and I got pretty far. And it gives you a little database to work with automatically, which is nice.
SC Coo!
BP But then, we had that lovely woman on who had built the MA COVID vax, and she was talking about how she did it with no database. Do you think I should go that route? Do you think that that's like a better way to do it when you're just building a simple web app? Should I forget about learning that database side of thing?
PF Yes.
SC Yeah. Yeah. [Sara laughs]
PF You should just serialize your JSON somewhere.
SC Yeah, you don't need too much. Unless you're trying to sell the data to big corps.
BP Yeah. Well, that's what, Chewy and I had a deal. [Paul laughs] Yeah, everyone who, who signs up to go to the dog park unknowingly consents to me selling all of their personal information to Chewy.
PF Including the dogs, you know?
BP Most of the dogs, I become their agent. Like if they ever get a contract to do any commercial work--
PF 'That's your paw print right there, Rex.'
BP But it did also introduce me to like scope creep a little bit, which is like, immediately, I was like, okay, maybe I should have a drop down that, you know, list the hours. But what if you want to go the next day? And then I was like, wait, what if I put on a module so people can see what the weather was doing? And then I was just like... oh no. Here it comes.
PF So this is how it happens, then you're like, well, this could connect. What if I can help people adopt? [Ben laughs[
SC Yeah. What if I pulled in tweets about dog park?
PF What do you need to do with any, any concept for a startup or a website or whatever, is allow your brain to wander until the point that you have directly destroyed Google with the power of your platform like, 'Oh, well by, by aggregating dogs, which is an enormous $2 trillion market, I will be able to blah, blah, blah.' And then you'll know that you've kind of gone all the way to the end of your like--'cause there's a narcissistic explosion that happens with every project, you're like, I'm sure you had it with Jewelbots, Sara. 'Well this will be the next Microsoft.' [Paul laughs] Right?
SC Yeah, we call that the Ford principle, like every startup will, at some point, try to overtake Google. Or imagine it could overtake Google.
PF You just tell yourself that story, and then you tell it to other people. I've heard, I remember, I, you know, I talked to somebody who had like a little art program. And they were like, "Well, you know, eventually, this will be how everyone will communicate and search." And it was like, you just, you know, you just you see all that power. And you're like, "Well, why why not me?" And that's just normal. I've done this like, 20 times, like, well, clearly, if we just you know, organize a notebook this way, we'll be able to take over the world. And so yeah, Ben, work that through. Figure out how your dog park, you know--see that's the thing. Don't worry about scope creep. Everybody does it, just take it to his absolute logical conclusion, which is that your dog park scheduling app is the only thing that can prevent nuclear war and save the world. And then once you've allowed it to get there, then you go, okay, what is this thing? What's it really? It's for people who want to take dogs to the park.
BP I'm only halfway through my, my presentation on the SPAC about the total addressable market. So I think maybe now, I'm still I could still rein it in from here.
SC I had the most fascinating meeting yesterday, because I I'm hacking on something with like three other people. And I remember a world where like, super early into my career, doing hackathons and like hacking on projects and getting together with people, we'd all get really hyped. And we all like hype each other up and talk about where where you're going to build and, you know, like dream of the future and all these things. And most of the people that I'm working with on this have lots of experience. So we all just kind of gone on a Google Hangout. We're like all like "uh huh, okay, what is the least difficult version of this? Uh huh. Okay. Alright. Well, we're gonna do XYZ by next week. Okay, okay. Alright, let's do it. Okay, goodbye." [Sara laughs]
PF Yeah, no, it's horrible--
SC We all know what we're getting into.
BP If you let even a little bit of that excitement out, it just runs--don't let it out.
PF Well, this is the thing, right? But as you get further and further, you realize it's a horrible lesson. Because basically, you've spent all this time looking at people with power and authority going, man, if I had that power and authority, I would do really, I do something good for the world. And then you get on the other side, and you're like, I have both--
SC Turns out you're just tired.
PF It's basically I have responsibility, but much less power than I ever assumed. [Sara laughs] So can I make things incrementally better? While disappointing everyone in my life? I hope so... [Paul & Sara laugh] Oh are you kidding? I am going to retire and contribute documentation to open source projects. That is going to be my 60s. Just give me 15, you know, no, 15 years--and I just got hopeful, like, could it be 20? No. No. No. And I'm just gonna be like, 'hey, I could help you with this documentation!' And a 25 year old will be like, 'get out old man! You squandered your chance!'
SC They're like, 'what's documentation?'
Yeah 'I don't need that, the code documents itself and it should be visual anyway!'
[MUSIC]
PF I have two wonderful stackexchange questions that I would enjoy asking this group.
SC Let's talk about it.
PF Okay, so the first one is, is Sesame Street canonical to the Muppet Show?
SC Fascinating! That's a really good question.
PF It's a trick question, though. I'm gonna, I'm going to skip ahead to the answer. The Muppets don't have a cannon.
SC Wait, what?
PF Yeah, the Muppets, there's no cannon, it's not Star Wars. It's a bunch of Muppets.
SC No. But I mean like, there is--
BP You're telling me there isn't 50 spin off novels?
SC But like they have relations, like established relationships and back story.
PF Yeah of course, but that's the that's different from like, Muppets: Dark Moonlight, The Awakening, where they, you know, they like Star Wars, or Harry Potter, where, you know, a wizard attended Hogwarts in 1935 and then got to know FDR and started World War Two, like, we don't have that. So bad news. And then the second answer is in a word, yes. [Paul laughs]
SC Okay. So we have two answers.
PF The non canonical is 47. And the canonical is 25 upvotes. So it's a tricky one there, right? Because it's now, we're in a position where like, can the the democratic q&a style of stackexchange actually determine the answer to this question?
SC Yeah. [Sara laughs]
BP So there's no accepted answer yet. There's still time to change the future.
SC There's still time.
PF So that, but that is actually a good like when we are allowed to go out and hang out again. That is a great argument topic.
SC Yes. I'm going to remember it.
PF Because it's like, you know, especially like Sam the Eagle. Like there's a lot of Muppets where I'm like, is that canon? I don't know. Okay, and here's the other one. Sara, this is for you. What were paper airplanes called before airplanes?
BP Ooff.
SC What on earth?
BP Did they exist?
SC Did they exist?
PF Yes. Yes.
SC What were they--is there an answer? Oh, my goodness.
BP Paper birds?
PF Paper dart or paper arrow.
SC Woowww! That is so cool! Who knew?
PF It's a good one. And there's some, there's some nice old, there's some scans of paper dart folding patterns from back in the day.
BP But did they look different? Like were they--
PF Mmm, pretty similar. Of course, a piece of paper cost $26. So really wasn't for--
BP Yeah, that was something you asked for for Christmas. One, one paper airplane. [Paul laughs]
SC These facts will be great for us when we go out in the world and be social again. These are my two facts I'm gonna carry with me.
PF This is true. The pandemic has destroyed fun facts.
SC It has, it has. Yeah, this will last 10 minutes and then we got nothing again.
PF That's right. That's right.
BP Alright, after several weeks, we hit a little bit of a dry spell. We do have a lifeboat today, so shout out mrinalmech. Thank you, mrinalmech. "What is a less file?" If you've always wondered, now you can know. This is a great question. What is the less file, asked three years ago. 'I started recently working on a react js library.
PF Good job!
BP 'In the entire codebase that I've to work upon, I see *.less' . Alright. Thanks for the lifeboats. Thanks for sharing some knowledge and helping folks out. Alright, everybody. I'm Ben Popper, Director of Content here at Stack Overflow. You can always find me on Twitter @BenPopper. You can always email us podcast@stackoverflow.com. You might get in the show like you did today with GoTo and if you enjoy the show, yeah, go on to your platform of choice leave us a rating and review does help.
PF Three, four, five...starts.
SC Great! I'm Sara Chipps, Director of Community here at Stack Overflow and you can find me @SaraJo.eth.
PF And I'm Paul Ford, friend of Stack Overflow, check out my company Postlight. That's all I ask.
[OUTRO MUSIC]