The Stack Overflow Podcast

What can you program in just one tweet?

Episode Summary

This week we chat about coding like it's 1985 with BBC BASIC and a delightful Twitter bot that will run your BASIC code and publish the results. After that we take a deep dive into the quantified life, with a year-in-review from a blogger who logged every single thing they did in 2020...in 15-minute increments. Also, Svelte, lifeboats, and some predictions for the new year.

Episode Notes

If you're interested in learning a bit of BBC Basic, there is a fun introduction here. You can tweet at this bot, and it will run the contents as code and reply with a video of the results.

If you are interested in life-logging and want to see it done with a lot of very pretty graphs, check out this post, My Year in Data.

Last but not least we chat about Svelte, which lets you create "cybernetically enhanced web apps." Shout to Murali, a listener who suggested this topic.

Our lifeboat of the week goes to koekenbakker for answering the question:  R plots: Is there a way to draw a border, shadow or buffer around text labels?

 

 

Episode Transcription

Paul Ford Coding like it's 1985, like tweeting like it's 2009. Come on, let's get 2020!

[INTRO MUSIC]

Ben Popper Are you spending too much time debugging instead of writing cool new features? Want to debug up to 40 times faster? Embold's code quality engine will not only pinpoint exactly where your bugs are, but also tell you which ones you need to fix first. Find out how at Embold.io/bettercode. 

BP Hello everybody! Welcome back to the Stack Overflow podcast. Hi, Paul. Hi, Sara.

PF Hey! How are you? 

Sara Chipps Happy 2021. 

NP We're here in the new year. I hope all of your apps and services aren't broken. You know, time is difficult, things turnover. 

PF Things do. 

BP Yeah, time turns over. But I have a few topics for us to chat about a few things that jumped out at me. The number one thing which I thought both of you enjoy was Coding like it's 1985. Apparently, retro coding fun with BBC BASIC is hot. Have you seen this at all? Have you seen this Twitter account? 

PF Ohhh yeah I know, I know, this little guy. Like if the Raspberry Pi is too overpowered for you, which I mean, the Raspberry Pi is an incredibly powerful machine. Britain has its own culture of micro computing with the Sinclair computers and stuff like that. And so they made a little educational computer that's like the size of half a credit card that's got some little lights on it that you can use to learn to program and I think they gave it to millions and millions of kids.

SC Millions of kids in the US?

PF No, in the UK. 

BP Yeah. What's the relationship to BBC the broadcasting?

PF Well, because the BBC is a beast like BBC Micro was early computer. I mean, they they have always been on the forefront. Actually, a lot of the early influential web people that came out of the UK were former BBC people, because they will say, oh, yeah, 'case they got early into the web. They were big adopters of rails.

BP And you get a little bit of tax when you sell every like TV or computer and then that goes flows back into making that stuff, right? 

PF That's right.

BP That's how they fund all that stuff. The thing I liked about the BBC one is there's this Twitter account, BBC Microbot, and it runs your tweet as code and replies with a video. And so people have created over 10,000 basic programs in I guess 140 characters or less, which is a nice little constraint, you know, pieces of art.

PF 280 characters now. 

BP Oh, excuse me. That's right. 

SC Oh, it's so interesting. Look, this bot has like 7000 followers, and people tweet code at it. And it's very ugly, the code, but what comes back is very cool. It's like an emulator. 

BP I like it. It's kind of like --you got to like, squeeze it in there.

PF Well I love that you can tweet at it and get an animation back. That's very fun.

SC Yeah, that's awesome!

PF It's like the world's, this is the world's worst supercomputer. This is like the absolute wrong way to do client server, sort of based programming, but it's pretty great.

BP Yeah, when you're ready to upload and get the Enterprise Edition just tweet it at us, and we'll get that wrapped and send it back to you.

PF Yeah, somebody wrote a ray tracer. That's, wow. Okay, this is very good. So I love these little code golfy things. And actually, what I love are the, I love little constrained environments where you can think thoughts about programming that aren't the regular thoughts that you think, like the regular thoughts you think are "I need to parse the HTML on 2 million web pages in order to extract key values and put that into a SQL database" Right? And this is like, "I want to make 3d letters dance. I only have five, five lines to do it." There was one I'll look it up while we're talking. There was one in JavaScript It was like this. It was like you had 140 characters of JavaScript. And it's a little tiny, constrained environment where you can only really set a few variables and so anyway, this stuff is great. I love this stuff.

SC Well, so I can speak for myself that those things that really, I feel like I kind of start from the place of "but does it scale?" You know what I mean, for any of these, the answer is no. But there's a lot of really amazing art online built by coders that never think that question like never are considering answering that question. Just want to do something cool and walk away from it. And Paul, I find that you really, that that's something that you do a bunch, you just do something cool. And then you're done. I wonder what that is. I wonder what that difference is in coders. 

PF For me, that's because every time I would do something cool and people get excited about it, it would become this, like lifelong commitment. And so I learned to just literally run away. 

BP What was the one where people were sending all their health information, Paul? That one sounded--

PF Oh, that was anxiety box. No, that's right. I got 7000 people telling me what their world their worst anxieties are? 

SC Oh, that sounds awful. 

PF Yeah, that was a rough one. And then tilde.club where I had 1000s of people asking for a login on a single UNIX server on AWS and eventually someone adopted that. If you don't say "this is just a fun experiment" you will live a life of guilt.

SC But do you start off like, like what I feel like when I start a project, my thought is, I want to this thing to grow, when you start off, or like I don't ever find myself like hacking around and like, what if I could do this thing and it would be cool. And then that would be the end. Is that what you're thinking when you do these things?

PF Oh, thinking? Ah, look, it's not saying, right, I'm like, "Oh, this will be fun." The web has a way of destroying people.  

SC I think I've observed that there's like people that, I don't mean to beat a dead horse. But I've been trying to figure this out for a while. There's people that are like, "Oh, I can build a game, the game of life with 12 drones. That's so exciting, and I'm going to do it." And then there's other people that are like, "Why would I? That's, that's dumb."

PF The classic "Boy, you seem to have a lot of time on your hands" which is one of those things that makes my entire body just like just shake.

SC Yeah. Like if you have a lot of time on your hands, your entire body shakes? Or if people--

PF No, no, no, it's when people say that, right? It's just folly, just like there's room for folly in this world. And most things, actually most things we do are our folly. I think like, you know, these are just funny, shiny, pretty pictures that people enjoy making. To me, I look at this almost in exactly the same way. And this is a this is a loaded comparison, because our society is broken. But I look at people doing weird little animations in the same way that I look at knitting, or I look at other crafts, like it's just craft.

SC Yeah. Oh, yeah. I love that. I love looking at it that way. 

PF Right? And so it's just like, what are the, when you go to BBC microbot on Twitter, what you see is the effect of craft and I mean, frankly, the difference between this and like a complex knitting pattern is like it starts to approach zero. It's just people think about the patterns and they they get the they get the materials or you know, say with embroidery, like you're following patterns, you're using techniques and craft to generate an aesthetic effect, which frankly, might be about as long lasting or less so than a throw pillow or a picture that you put on the wall. It just is what it is. And that what happens is everything is prioritized as what's going to be big and make an enormous amount of difference. And I feel that because we prioritize that, that sort of like venture capital culture, we just miss a lot and very few people are going to get the chance to like have a breakout hockey stick growth company that has to scale infinitely in the cloud, right? So like, are all the other experiences they're valid too. They just don't come with enormous amounts of money trailing them. 

SC Yeah, that makes sense. I like the idea of comparing to art.

PF It's craft, its craft, its knitting, it's computer knitting. I wish they would call it that. 

BP Sara, you mentioned like taking you know a little bit of time to do something you know, like breaking off, maybe focus work for a while. Create a little something, send it to the Twitter bot. I wanted to share something with you. Do either of you, have you ever participated in sort of life logging as one of the functions of being an engineer or programmer?

SC I try not to.

PF What's life logging?

BP This is from the Sample Size Blog, it's my year end data, which is, you know, a nice thing to do. Good way to wrap it up. This person measured their life in 15 minute increments on a Google Sheet for a year. [Ben chuckles]

PF They have too much time on their hands. 

SC Yeah, that's another one of those things. [Paul laughs] It's really interesting. I think this is something being in this field for 20 years I've seen, I mean, this is excellent. And this is what this person that is done is great. And I bet it has benefited their life a bunch to learn these things. I've seen lots of iterations on this in the last 20 years, I think, the real challenge, what you end up with a picture. So one thing that they did is they pulled out 15 minute intervals, and color coded them of their life for a whole year. And the thing that I have seen people always struggle with, when they end up with this much data is okay, now what? Like what does this mean? And so, the good thing is that this person, this blog is great, because this person really digs down into, yeah, there's a lot of experience, this person is doing some experiments to change things based on this data. 

PF God it's beautiful. It is like they did a Google spreadsheet. And I was joking when if people want to log your life in 15 minute intervals, bless them. That is great. And it's a kind of they chose lovely colors. And it is you can see their sleep. 

SC Yeah, thank goodness, they did that. Because that's sometimes it's really hard to stomach if they don't.

BP Right. Well, they knew that to really optimize, they have to gamify it. So then there's you asked, they also created a point system, and then gave themselves points, which it says "my monkey brain is crazy about points." So once you get the data, there's so much you can do with it.

PF So you know, what is the fundamental, I'll go meta for a second. And because I think about this a lot, right? Like, I think whenever you start to do things repeatedly on the computer, you kind of do start to quantify a little bit, you look at your GitHub commits, and you look at like, you look at the amount of email you received, like we all have a sense of generating all this data. And this person did something about it. And frankly, I've seen this done a lot before, but they really have a great eye for color. 

SC Yeah, thank goodness.

PF You know, here's what I love about this is you actually see it's, it's a work of philosophy, right? Like, it's what is the purpose of a human and because the computer lets you track 15 minute intervals, you can see them and sort of categorize themselves as to what they are and what they do. And so you know, human function, the boring stuff I need to do to stay alive, showering, making food, eating and things like that on trips, also setting tents, etc. And so like, you see, this person is using the computer to interrogate the actual meaning of their life as they live it.

SC We all have ways of doing it, asking the computer is one of them.

PF That's right. That's right. I mean, I you know, I celebrate this where it gets risky to me is then you see, you know, I'm not gonna read the Hacker News thread. But then it's like, everyone starts to out quantify each other.

SC Yeah I've seen that.

PF You know, when all of the problems of data science get brought down to the human level, it gets really tricky.

BP Yeah, I appreciated your blog post, but have you tried wearing a Fitbit and correlating that to resting heart rate? Because otherwise? Yeah, no.

PF Yeah, exactly. Exactly.

BP I did think that that was very soylent of them to say like, I spent one hour and 20 minutes per day doing the human functions, eating and showering, is that a lot or not? I don't know. [Ben laughs] The procrastination time on average, 10 minutes per day is definitely less than most people, so very productive human being here despite writing this elaborate blog post. And they've even got a drop down here. You can go a nice little drop down here on the blog. 

SC I love that.

BP Different categories and graph them against one another. I love it. 

SC Yeah, that was the, so it looks like they did a lot less procrastinating after the beginning of the pandemic. If you look at her data, she there's a drop down, you can choose procrastinating. And it looks like the beginning of the year, lots of procrastinating. I wonder if that's when this project took up more time, watching documentaries.

PF Well, that's the beautiful irony of this. There's definitely hours and hours spent getting this right. You know, we're getting back to there's a consciousness here that's really interesting, which is I'm going to use the computer to be more aware of my time. It's a good tool for that. Right? Like it's what's tricky is then it's, where I think we get in trouble is we decide that this is a predictive system, and it's like, "Okay, well now I'm gonna get rid of all procrastination." You know, very rarely do you see anybody say "We should celebrate our time procrastinating. Because that is joyful time in which we are playing and exploring and getting ourselves ready to do other kinds of work" right? Instead, it's like, "how do I get straight to work and get more done?"  And yeah, I mean, I wrestle with it. I'm a terrible procrastinator. Here's the thing that happens. I don't know. Maybe this isn't as you get older, but I bet everybody's experienced this, where you're like, I couldn't figure out why I couldn't get that thing done. And then and I was procrastinating and procrastinating, and then finally, I felt ready to get it done. And it just flew by, right. You're like well if I wasn't such an idiot, I could have just done that at first. But the answer is no, of course you couldn't have.

SC Oh, I heard such an interesting quote about this recently, the time you've been procrastinating is when you're passively, when you're doing the passive work to get things done. You're working things out in your head, you're thinking about, like, if you just did it from the beginning, it possibly would have taken you a few hours, but the time you're done thinking about it, while you've been, you know, we call it procrastinating, but maybe you know, prioritizing other things. You use that right path--

BP It's called mulling things over, yeah.

PF You make yourself miserable, right? You make yourself miserable doing it. If it wasn't a miserable thing, if you were just sort of like, "Oh, well, I'm gonna go for a walk." That's always the great thing, right? Like, go for a walk and think it through. And we've been told to do that for like, 14 million years. And everyone is like, "I will go for a walk once I'm done."

SC Yeah, I've spent a lot of time in my life thinking about that, and about how much better it is to just forgive yourself. Rather than being angry at yourself for procrastinating. And I found out to be really helpful, just not anymore. I find myself very rarely mad at myself for putting something off.

PF No, that's good. That's really important, right? Because guilt is so counterproductive. And guilt is a big part of our industry. We're very guilt driven industry. You need to know more languages, you need to know more things, you need to get more done, you need to be more productive. The flip side is like you kind of do. Yeah, right. You can't be like, well, I don't know. COBOL is a great language unless you want to go program COBOL. I don't know, maybe there. I mean, there's good work there, too. I don't know is the answer that I have here. I have no solutions. 

BP I read a story, Sara, that reminded me what you were just saying, I can't remember. But it was one of my favorite pieces, probably like Oliver Sacks or something on the brain. And it was saying that, yeah, they kind of like measure the electrical activity or whatever. And those moments of inspiration that come to you, you know, you sort of get to the idea of how to solve it. Or maybe, yeah, you decide, okay, now I'm ready to work is when you relax, and then the whole brain kind of works in concert. Like when you're focusing on something, you're using these little specific parts of the brain. And when you manage to sort of like, relax in the background, all this activity kind of, they start to work together and synthesize things in a way. I thought that was really cool.

SC Yeah, that's great.

PF What are we all thinking about for this year? It's 2021. Here we go. What do you think is gonna, what's gonna change? What's going to be different?

BP Well, I will say, I didn't want to bring it up, because we talked about the end of the year, but I do have to bring it up. It does seem like I've been thinking that maybe crypto, this is like going to be an even bigger year for crypto, just because with all the money printing, and the devaluation of like fiat money, it feels like there's just such a strong cohort of people who are ready to like, hold the line and get invested in this stuff. I don't know. For some reason. I've been thinking a lot about like, yeah, it's a little bit unfair when software is money because the people who make software already quite well off, but like, I don't know, I've been feeling like there's gonna be a lot in the first six months of this year.

SC Money printer goes brrr until does it.

BP Yeah, I like that tweet. [Ben laughs]

PF Look, I think the way that people react to and trade and deal with with especially Bitcoin makes that very realistic, right? Like they're gonna continue to double down. The thing that's wild to me is that you almost never heard the word blockchain anymore. Like everybody was like No, no, it's not about Bitcoin. It's not about Bitcoin. It's about the blockchain. That is where it's exciting. That's where the action is.

SC People got tired of being like, "what if my daughter's ballet recital on the buck chain?" [Sara & Ben laugh] And you're just like, everyone calm down.

PF Yeah no, and in the next in 36 weeks, it's actually going to be there on your computer ready to live? 

BP Yeah, well, that's that's the game when Bitcoin is going to be talking about Bitcoin and Bitcoin is going down, you say, "No, no, no, it's all about blockchain." That's just how you, you know, when your party is in power, you cut taxes. And when your party's out, you complain about deficits. You know, it's the game.

PF It's a sign wave hype cycle of blockchain. That's right, it's one or the other. We're back to a currency cycle this year. And then maybe 2022 will be the year of blockchain again, if Bitcoin crashes. What about you, Sara?

SC Well, this year is the year the world doesn't fall apart, is kind of my hope. Like, I just think that like, I mean, like, hopefully, great technology will come of it and that kind of thing. But I think, just like seeing what the new normal looks like, and like this has been a really good time for technology to be like serve a support function, when I listen to stories about how states in the US or countries are coming together to deliver the vaccine. And you think about the technology that was built in order to facilitate that or not, right, like some some places, it's just, you know, we give this guy a box and he gives people the vaccine, but in other places, it's, you know, we're very thoughtful and we track these things and how many people have had to step up over the past year and jump in and build supporting technology. And so my hope is that I see that continue and for technology to, you know, to help folks as they start to learn what the new normal is, and maybe return to seeing family members and seeing it like that. So this is the first year that I'm like, kind of not really bullish on any particular technology. But more like, looking into, you know, what will become what, how can we make the world better, or, you know, not fall apart this year? 

BP I like it. Bullish on life this year.

PF I like that combo, too. Like, there's an implication there of like, sometimes it's giant databases. And sometimes it's a guy on a bike with a notebook. And and like, whichever one is going to work, because then we should go with, you know, maybe we're past the era of total techno solutionism. I mean, not Silicon Valley. But in general, I feels like everybody's going like, okay, you know, we're going to use the we're going to use Google sheets for some things, and then do other things, just with by sending each other a couple emails. So, maybe!

BP In Israel, where they're doing really well, that that seemed to be the case, because everybody has a digital medical ID, I guess. And so they've been doing a really good job. But then, like you were saying, once you have that efficacy from the technology, they're like, once we finish with everybody who's supposed to come today to get their vaccines, we just got signed, if there's a pizza delivery guy, we're like, "Do you want the vaccine?" He's like, "Yeah! Give it to me." So like, right, it frees you up to just do the the human stuff if your technology is working well.

PF Yeah, that's right. That is true. You get your baseline done. And then you go, and you see what else you can do using those same tools. That's pretty, that's great. For me, I really do. I'm predicting, like a hangover year. I'm just sort of like, I think there's a lot of like, cold light of morning stuff that's going to happen, where we're like, oh, okay, that didn't go well. I mean, we're just like, we're in a real spot. And tech is about to be relentlessly, essentially sued by the government, like our largest organizations, and the government are kind of going to war. So there's gonna be a lot more sort of legal stuff. But you know, it's literally like the hangover like, wow, that was rough, boy that got out of control last night. And then you kind of like sitting there like, oh, boy, it is a lot to look at right now. Like just the lightest too much. And you know, somebody who's like, "Hey, do you want the oysters?" You're like, "No! No, my God, what are you talking about?" Like, just, we are about to be in a, I think we're gonna have a little bit of that in our industry. So you know, and then you know, everyone will still say that rust is very exciting, then that'll keep opening.

SC So there's, I think, when the smoke clears in the light of morning, we're gonna see just how bad this inequality has gotten during the pandemic, right, like, because I think, for the technologists, coders in this field, in general, were relatively untouched. But there are many of us that have family members that are very far away from that and have been really affected financially. And so I'm hoping that we can see folks take some responsibility for the inequality and step up and help other people. That's what I would really love to see this year.

PF I mean, I think that it's just the conversation has changed in your and I think after once the once things are in the light, there's just facts rather than conversations and debates, just like wow, you know, different communities kind of hit so hard by the pandemic, tech didn't. Tech got off almost scot free. And so how are we going to bring that to everybody else? 

BP Alright. I want to shout out a email from a listener because I promised myself that I would start doing that I've been getting them and saying to myself, okay, this will be the episode but we never get around to it. So starting off 2021. Do a dip in the mailbag here. It's from Murali. So thanks for the email Murali. It says "I was listening to the React view episode and Paul's frustrations about the virtual DOM. I recently ran into Svelte, which is a JavaScript framework, which explicitly makes two different decisions to most no virtual DOM, tight coupling, HTML, CSS and JavaScript top to bottom." So maybe we'll talk about this in a future episode. I'll send you guys the links, but just off the top of your head. What do you think svelte.dev it says here.

PF Well, we've we used it at work. And actually people are starting to really like it at Postlight. If you go to textmoji.app.

SC Oh I love textmoji! 

PF That's all svelte. Yeah! So I think what people have said, I've watched the many a Slack conversation about svelte is they're like, yeah, it takes a minute. And then you get it and you're like, yeah, okay. I think it feels just very web like, like, just like, okay, the things I learned about the web, apply here too, as opposed to being like, we've turned the web into an abstraction, which is a state machine that you can register in a zizuzazzle. And you're just like, oh, right. I think I think that's it like svelte is like, "hey, what if HTML was a first class citizen of your reality?" 

SC Wow, this is wild. Very cool. Definitely check this out. 

PF Svelte!

BP I like to, I like to dip in the mailbag. I think we should make the podcast a little bit more interactive if we can.

PF We need the producers to get us a mailbag theme. 

SC Yeah, we need a mailbag theme! That's our request.

PF [Paul makes beeping noises] Mailbag!

[MUSIC]

BP We have dozens of lifeboats, I actually noticed that this really picked up over the holidays. So I'm thinking, I don't know. So you'll have to let us know, look at the data. But like, maybe when people were off for the break, they did a bit more contributing to Stack Overflow than when they're regularly working because the the rate of lifeboats picked up a lot. I'm not sure why.

SC That makes a lot of sense. 

BP From like December 23 on. Yeah, yeah, we got a bunch. So yeah, we can put a bunch of these in the bank. This is from koekenbakker, awarded December 15, actually, "R plots: Is there a way to draw a border, shadow or buffer around text labels?" You better believe there is. And we will include it with the code in the show notes, all credits to Greg Snow. Thanks everybody, for listening today. Like I said, you can always email us podcast@stackoverflow.com and this year, I will read from the mailbag. So if you have something to share, a cool language, a cool framework, a cool whatever you want to shout out, send me an email, and we will try and get it on the show. I'm Ben Popper, Director of Content here at Stack Overflow. You can always find me on Twitter @BenPopper. 

SC And I'm Sara Chipps, Director of Community here at Stack Overflow. And you can find me on GitHub @SaraJo.

PF I'm Paul Ford, friend of Stack Overflow check out my company Postlight.

[OUTRO MUSIC]