We chat with Cassidy Williams of Netlify and Ceora Ford of Apollo GraphQL. There are some spicy takes on image compression, super resolution, and the enduring value of your oldest screen names. Plus, a dive into the metaverse and fond memories of neo-pets and Farmville.
You can send ideas for blog posts to Ryan Donovan at our pitch box.
You can find Cassidy on Twitter here and read the newsletter she helps us curate here.
You can find Ceora on Twitter here and check out more about Apollo GraphQL here.
Cassidy's piece on GraphQL, the first item she ever wrote for Stack Overflow, is here.
Want to learn more about AVIF and how it compresses images so well? Check out good read from Netflix's tech blog here.
Instead of a lifeboat badge we're highlighting an amazing question: Can celestial objects be used in cryptography?
Cassidy Williams There's this one girl I went to high school with where her mom was so into Farmville, that she would take my friend out of school to go like harvest her raspberries and stuff, because that had to happen every four hours. Just, it's a whole other level.
Ben Popper Visit is linode.com/StackOverflow and see why Linode has been voted the top infrastructure as a service provider by both G2 and TrustRadius. Linode makes cloud computing fast, simple and affordable. Visit linode.com/StackOverflow, and you'll get $100 in credit. Alright, head on over there. Let them know the podcast sent you and support the show.
BP Hello, everybody! This is Ben Popper. I am... I haven't done this in a while. I guess I'm the Director of Content at Stack Overflow, just getting back from two weeks of vacation. And I'm back to podcast at the Stack Overflow Podcast, which is all about software and technology. But mostly, hopefully, the art and practice of software development. I am joined today by three wonderful co-hosts, I will let them mostly introduce themselves. But today we have Ryan Donovan and Cassidy Williams. Hello to the whole crew. Let's throw the hat around.
CW Hello! I like how you say you "guessed" that you were the Director of Content.
Ryan Donovan Lucky guess.
BP I always do that intro but it's been two weeks.
CW I guess this is who I am? [Cassidy laughs]
BP Yeah, sometimes I just say Director of Content, because I don't like to say marketing.
CW Well, I guess I'm Director of Developer Experience at Netlify. And I'm Cassidy. Hello!
RD I'm Ryan Donovan. And I reckon I'm editor of the blog and Stack Overflow.
BP Okay, this is a troll now.
RD This is super troll. Yeah.
Ceora Ford Cool. Cool. Well, I'll jump in and end the trolling now, because I'm new. So I'm just gonna do a regular introduction. [Cassidy & Ryan laugh] I'm Ceora, I am a Developer Advocate at Apollo GraphQL. And as I said, I'm the newest addition to the podcast. And I'm really excited to be here with everyone today!
BP So great to have you here. Ceora, I was remembering the first time I ever met Cassidy and she came to New York, and we did an episode, she extolled her love of Apollo GraphQL.
CW Yeah, that was my first blog post on Stack Overflow was about Apollo GraphQL.
BP Yeah, exactly. So maybe we'll link that in the show notes. But I guess for folks who don't know, what is Apollo GraphQL? What is it used for? Where did it come from? And yeah, like, in your work, what do you do?
CF Yeah, yeah. Okay, cool. So Apollo GraphQL is basically a company that makes it easier for people to build GraphQL API's. And eventually, each member of our developer advocacy team kind of has like a niche that they focus on. My niche is going to be basically back end developers or people who maintain API's, GraphQL API's, that kind of thing. So I'm hoping to rent myself up to the point to live with proficiency with GraphQL where I'll be able to do that, which I'm happy about, because I actually prefer back in development over front end development. If I'm being completely honest, I'm excited. I get to like explore that. But with GraphQL API's this time around.
RD So I've done a lot of REST API documentation, and just heard about GraphQL. Can you tell me a little bit like, what's the difference?
CF Yeah, so the main difference is, which I've been learning, it's funny that you say that, because this is something I just learned recently. So the main difference between GraphQL and REST API's is that, I guess, GraphQL API's are supposed to be more efficient than REST API's in certain ways. And they're usually better for companies that have or websites to have higher traffic companies that are bigger or larger. Because usually, with REST API's, when you're trying to retrieve data, you have to make multiple calls, sometimes for something that's like in the same category is what I'll say, with one of the benefits of using GraphQL is that you don't have to do that. You can make one call to retrieve a bunch of data at one time.
CW What I like about GraphQL, and Apollo GraphQL specifically, is it really empowers me to get the data that I want and the format that I want. And so when I'm building some kind of application, and let's just say I want to build an avatar component or something, I can pull in just the data, I need to build my avatar component or my user profile component. I don't need everything. Whereas with REST, you might get everything.
RD You get the whole JSON.
CF And that's another great point.
BP You're just giving us like more modular and block and sort of a little bit just more flexible, right Cassidy? Like, you can get just the data you want. Or then later if you wanted to change the schema, you could do that easily?
CW Yeah, exactly. And so like, if I wanted to extend my avatar to have the username or something, you can just add it in GraphQL. And it just works.
CF Yeah. Another really cool thing about graph qL, too, is that it kind of acts as the bridge between front end and back end. I think, like a lot of front end developers have experienced with graph two Or opposed to like, I don't know, if too many front end developers are super familiar with, like REST API's, because that's something most people will kind of like, we'll leave that to the, to the back end team to like build out and everything. But GraphQL kind of allows front end developers to be more empowered in the whole process of like, building applications, because it gives you more control over like, what kind of data you can get, and how to format it and all that kind of stuff.
CW Right? It leads to really modular teams, because I can be like, I don't care if the backend is written in rust and Go and Ruby, and whatever, as long as I can get the data, that's what matters. And then with a GraphQL schema on interface I can pull from, I can just get what I need. And Apollo is really, really great at that.
BP And so wait, is Apollo GraphQL, is that like, a company that does want like, is one of these open and one of them private? Are those two things always go together?
CF They're separate. So GraphQL is separate from Apollo GraphQL. Apollo is actually an open source company. But yeah, they're they're two separate things. So because I'm kind of like learning both together, I'm like, okay, which part of this is like Apollo? And which part of this is actually GraphQL? Hopefully, I'll become more clear on that over time. But, yeah.
CW Especially because like, they make so much sense together. So using it without it, you'd be like, why would I use GraphQL alone? I could see that's, that's a learning you might come.
RD Ben, you're taking notes here?
BP I mean, I think it's interesting. Like that is, I don't know too much about this specifically. But that's something happens, right? Like, people come to associate a certain set of more open source stuff with the company that does the best job or has, you know, like, the best tooling for it or whatever. And then they kind of interchangeable in people's minds.
CW That's how I first learned to because I first learned GraphQL with Apollo. And then when I switch projects, switch companies and entered a whole new world where it was just GraphQL on the project I was using, I was like, oh, oh, no, did I actually learn something? And it was a bit of a relearning, but not too bad. Because luckily, they are pretty true to the language, but it's a thing.
CF Yeah, yeah, definitely.
BP Well, Ceora, it's great to have you here. So for today, I'll kick us off with a topic that we had a little blog post on, which is we're all living in the metaverse, we just don't know it yet. Raise your hand on the call. If you own an NFT or some crypto, or have an avatar or a digital artifact. I guess that could be anything that you really care about, that you like sunk some money into.
BP Oh okay, Ryan's the only holder here.
RD I'm the old man of the group.
BP I probably have several $1,000 worth of digital collectible cards that exists only in the digital universe.
BP Magic cards and Hearthstone cards. I guess another thing that I was saying about the metaverse, that I have this screen name, s i e n r k that I've been using since the AOL Instant Messenger days. And so I always try to get that one and it's almost never taken and so it's persistent. Like it's like wherever I go I have the same even though it's like across many different platforms.
CW It's an identity.
BP Exactly. So I feel like for me for sure there's like obviously things that I care about in the digital world that I collect that I think have you know value and then for my kids last year we're doing remote school like Roblox was was life like you would meet somebody one time and then you go remote and then you'd meet up in Roblox and you'd hang out there but you'd be on a FaceTime and like, it was probably more important to them like what car you had in Roblox than like what car you showed up at school in. Like the clothes you have in Roblox are way more important than like the clothes you wear to school. So for them is definitely just like, yeah, part of growing up is like thinking about that that's natural to them, but just throw it out to all of you. Like what has been your interaction with kind of this burgeoning world of NFTs and metaverse talk and what do you make of it?
CW You're talking about Roblox reminds me of Neopets back in the day. [Ceora laughs] Being able to like paint your pet.
BP People are paying hundreds of 1000s of dollars for digital rocks which made me think of Pet Rocks we'll see which one retains its value for longer.
CF That just made me think of in between between like Neopets and like the Roblox on DS he used to have there was this one game where you had a pet dog that would like wait for you and wait for you to feed it.
CF Yeah Nintendogs!
BP That's a really good name.
CF Oh, yeah. Yes. And I used to like rush home like let me feed my dog to make sure he's like still alive and everything.
RD It's like the old Tamagotchi.
BP Tamagotchi was the OG of that right?
CW It reminds me of Farmville too, because I remember there was this one girl I went to high school with where her mom was so into Farmville that she would take my friend out of school to go like harvest her raspberries and stuff because that had to happen every four hours, just it's a whole other level.
BP So yeah, I feel like when it comes to write like people valuing digital objects and being, you know, as invested in their digital life like the Sims or whatever as their real life to people of maybe our age cohort, that seems totally natural. Spending, you know, what seems to me like a fortune, I know for people who are like early in crypto, that's the thing, it doesn't feel like if you have 1000 eth than paying five of them doesn't feel like a big deal, even though in the real world to ton of money. But I guess, you know, yeah, the thing is, like Farmville, everything lives in Farmville, you know, Tamagotchi. With the NFTs it's supposed to be, you own it, even though it can get onto the digital universe. I emotionally personally can't get over that, like hill, it's like, I would never pay this much money for a bunch of pixels that anybody could copy.
CF That's the part of it for me this like, huh? Because people can still use it. So it's not like you have like the right—but I, I don't understand how like, you own the rights of this image that people can freely still use, or this GIF people can freely still use it that just to me is like, I don't know if I can really process that too well, in my brain.
CW They can screenshot it.
RD And you can resell it. It makes it a resalable object.
CW Well, and what was interesting to to see was, I saw this whole article where this person got an NFT and wanted to print a poster of it, because they really liked this NFT that they bought. And the original artist was like, no, you can't do that. You don't have permission. And they're like, I bought this thing for like five grand, and I can't make this poster for my home? And they're just like, no, you only own the digital version. You don't can't do this. And that part, really, I was starting to try to get on board with my understanding. But that just totally put them back to square zero.
RD Wanted to kind of touch back on something you said, Ben, you're going back and using screen names? Is that still a thing that people do? have this kind of invented screen name?
BP That's a good question.
CF Me? I do.
RD Because I think that in the early internet days, like the internet was an entirely separate thing, right? You had this mediated secret name. And that's how you existed, you didn't exist as yourself. And I think now the internet is more yourself on there. So of course, you're buying, you know, pieces of virtual real estate.
CW I think it depends on the community you talk to? I'm in a part of like many discord channels, for example, where, yes, there's some people, you're just like, Oh, yeah, I recognize your username from various places. But there's some people who are anonymous on purpose. And they don't need people to know what they look like, their faces. They're perfectly nice people. We chat with them regularly. But yeah, you don't know anything about them.
BP I do think, yes, social media, like from the Facebook age onward. A lot of people just were their public selves, like on Facebook and Twitter and Instagram, you're just the same person you are in real life. And even like building up your following, there won't be the point of doing it anonymously. Like, that's kind of counterintuitive.
CW And that was the novelty then because it was just like, oh, we used to be all anonymous. Now we're real. And now I think maybe it'll swing back in the other direction.
CF Yeah, actually, I think you're right, I can see it swinging back in the other direction. Because I think a lot of people now are seeing like, the drawbacks of being super present online and putting yourself out there a lot online. Sometimes you can run into like a lot of harassment, like tons of different things. Yeah. I even now can like see the appeal of being totally anonymous online. Like I get why that that would be appealing for some people.
RD I know, we have a couple of community managers here that don't use their real names.
BP Yeah, I'm not saying that I do this. But I do think that I'm not saying don't do this. But I do think that they're like, I'm very on Twitter, I think mostly because like as a journalist, once upon a time that was like, necessary for the job. And that's kind of like as your Twitter followers go with, like, some some status symbol of your career or whatever. But there's a lot of accounts that I follow on there in media and finance and technology, where to be brutally honest, and to like, call, you know, call out what you see and to take aim at people who are powerful. If you create a pseudonym, and it has a personality, you can just say exactly what's on your mind, you know, and those accounts become very popular because they're just like speaking truth to power. Whereas if you're like, yourself, and you have a career or you know, you have peers, you have alliances, you have whatever, like you can't be that blunt.
CF Yeah. Because people will hold you accountable.
CW Yeah, I've often thought, yeah, it'd be kind of fun to make some kind of alt account just so I can actually speak my mind on subjects. Because there's some times where, like, I want to call out this person for harassing people or something like that, but I don't want to be on their target list next, and that sort of thing. And so it's tempting. Did you did you all see that Yik Yak is back? Speaking of anonymity.
BP Ahhh, Yik Yak!
CF What is Yik Yak? I feel like I heard this but I'm very confused.
CW It's like Twitter. But actually, it's more like Reddit. I guess. It's fully anonymous. You make a little post, people can upload it and people can comment on it, but you don't have a username or anything. You can just post anonymous.
RD So like 4chan?
CW Yeah, so that's the thing. Yik Yak existed in like 2013 to 2015 ish. And then they took it down because of a ton of harassment.
CW You're remembering it.
CF I think I remember this because, like, I know, there was a thing where people were using it in like school.
BP It was big on college campuses.
CW Yes. Huge on college campuses.
CF People would say like, oh, like, I did such and such was so and so like, really put their name out there. But like, no one are like, I have a crush on so and so. And nobody would know who it was. Because your name is not tied to. I'm remembering. Okay!
CW It was super local and stuff. So it just came back like last week or two weeks ago.
BP The Yak is back.
CW The Yak is back. And it's been interesting. I have it. And it's not the same as it was in college just because I live in a big city. And so my local radius covers probably 100,000 people. But it is kind of nice to just like, have that anonymous thing. Even if it's just to like troll people. Sometimes I'll just like make a poop joke or something that I wouldn't normally tweet. And it's very fun to just kind of put it out there and be just like, ah, yeah, okay.
BP Just test out the jokes. You know, you just put it out and see how it does.
CF The only thing is, I don't think most people are going to use that way. [Ceora laughs]
CW Oh, yeah. No, it is not used that way. I am one of very few. But anyway, they Yeah, they shut it down for harassment. And now they have a lot more rules, like they have no real name policy. So you couldn't say who you had a crush on or anything. You can't say these names. And they have basically lots and lots of reporting mechanisms now where if something is inappropriate, it's shut down.
BP The tweets that I'm seeing here embedded on the news stories, buckle up, there's a chance that it's back if you were there at its prime, you know, the chaos that this app raw and you know, people yeah, we're doing bomb threats. And then after shot the college down, and it just became—it's like, the human instinct to like, pay attention to gossip and drama is so strong. And then if you combine that with like, the viral mechanics of social media and total anonymity, it's like, yeah, it's just, it's a recipe for disaster.
CF Oh, yeah.
CW What's been interesting, in in my little area of Chicago is, it's really just a lot of people organizing, saying, you know, the redline really needs reform, does anybody want to host a community meeting and stuff like that?
BP Sometimes I do think social media would be better if like on Stack Overflow, let's say you run Yik Yak, like your first couple of posts didn't really, they could only get like the minimum of organic engagement. And then after like three months, if everything you posted was like, didn't violate any rules, then you get a little bit more of like the algorithm juice. So like, if you're a responsible user, over time you like build up, you know, whatever.
RD You get the tutorial level.
BP Yeah, exactly. And you have certain permissions and not others. And it feels the same about misinformation. Like, it's so easy to spin up an anti-vax account, and very quickly get huge, which is like, you know, you could be anybody you could be a troll or a bot or a nation state. But it's like, well, what you'd have to like earn the audience like go six months or a year with no, you know, flagrant violations, and then, you know, you might start to get some reach or whatever. I'm gonna fix the internet.
CF I never even heard of that model before. That's interesting.
RD I think Ben just made it up. [Ceora laughs]
BP Yeah, and I mean, you know, like, the downside then is that like, that favors, you know, the old guard. And so, you know, what we deal with a lot on Stack Overflow, it's like, how do we bring new people in? And people who answered questions in 2009 have millions of points worth of reputation now, that could downvote as forever because like, just over time, their their reputation keeps stacking? So the question is then how to balance that out and not like, you know, the old guard have too much power, I think.
CW Yeah, that's kind of like I have a Wikipedia account from like high school. And it was purely because I wanted to like edit a super small thing. But because I have an old edit. That's like still on the website from like 2008 or something. I have like a credible Wikipedia account. I only have like those two edits, but I'm like, able to make pages and stuff because of those permissions.
BP Whoa. What were your high school edits? What did you need to fix?
CW I edited a summary of a book I read. And then I fixed a quote for like DNA replication or something. It was when I was in biology class way back.
CF Wow. That makes me think about all the times when I was like, a teenager and like in my little fangirl phase, and I wanted to like, edit some facts about Harry Styles like "this is incorrect!" This is what happened and I just never did. I probably should have! I would have been like super reputable!
BP Yeah. I have some points on Genius for trying to interpret rap lyrics at one point in my life. [Ceora laughs]
BP Yeah, I was like, I think I'm pretty sure this is what Lil' Wayne really meant. It's like I have no idea.
RD I think I have some posts on everything too way back in the day.
BP Alright, we've been talking about, yeah, digital pixels being worth a lot of money, you pay like $1, a pixel for these NFTs at least. What do we know about file formats? Cassidy, you wanted to talk to us a little bit about a cool one that allows you to really compress things, save a lot of data, load your stuff faster. Everybody always loves that.
CW Yeah. And so there's this file format, that's it's around a year old now, AVF. And it's an image format that's like, slowly growing around the internet, and browser support is starting to get better on it. And if you look at the Stack Overflow newsletter, there's an article that goes into this in much more depth. But you can have a high resolution image something that is super comparable to your average JPEG or PNG. But it's super small, like I think the comparison I saw was, if the JPEG is 80 kilobytes or whatever the AVF is 16. And so it's, it's quite the difference. And it could make for really, really performance sites and everything, once it gets more popular in browsers.
RD Do you have any idea how does that?
CW Algorithms? [Cassidy & Ryan laugh]
BP I don't know how it works. But there is a big post up on the Netflix tech blog, which is typically really good. Talking about AVF for next gen image coding. So I'll link that if you want to dive a little deeper, it seems like they explain it and why they like it. Oh, along with a brief A Brief History of image coding formats. But is this related to the Avi like the old music and video format? Or no?
CW I think that's where the name comes from.
RD I think the little I read it says it takes frames from av1 files.
BP av1 just makes me think of like back in the day when I could right click on a video on the internet and download it. And then I would just like, rip all these videos and keep them for later. No? Nobody? Speaking of images, Ceora, you wanted to chat a little bit about super resolution? Was that yours? Or no?
CF That was! I actually came across this on Twitter, about like Google doing something with AI and image resolution, which is I think a conversation we see happen every, like, couple months about like how to, you know, clear up the pixels in a blurry photo to like, make the resolution better or whatever. And it was interesting, because on Twitter, people were having a conversation again, about how like, a lot of times this technology doesn't work out as well as we think it should. And I think like we just talked about earlier how a lot of times, you know, we might create something with good intentions, like Yik Yak, and then people totally misuse it, or it doesn't turn out the way we want it to. And I think that's something a lot of people anticipate with, like these image resolution technologies that like do it by machine learning. I think there's like one popular image of like, a blurred image of Obama, who has like tons of images online. So there's tons for like machine learning technologies or whatever to like—
CW Data sets and stuff.
CF Right, yeah, but even still, the image when it was resoluted, like corrected, it pulls up a picture of like a white guy with blue eyes. So and that's Obama. So you know, people always refer to that as like, this is maybe not something that will turn out so well. But Google is saying that, like this time around, it's gonna be better than it normally is.
BP Right. This time around.
CW Well, we've heard that before.
RD A post we had with Intel was was doing machine learning on just a single image to kind of up resolution. And it was pretty good. You know, it got this text on a flag that was in a tiny, tiny corner. Yeah. But I think, you know, you're right. If you're using, you know, a huge corpus of data that is Obama. Maybe he only got half of it.
CF Yeah, it's like, ah! Not Obama. But yeah.
CW This is why we need diversity in AI. Because if we keep having the same people training, these data sets, people are going to start looking the same.
RD I mean, there's a famous data set that is notoriously racially biased.
BP The old image net data set or whatever, the one that everybody used.
RD Yeah. Where, you know, people of color can't unlock their phones, right?
BP Yeah, yeah, we had this discussion with the guy who was kind of behind the super resolution demo. He built it for Intel. And he was like, a very galaxy brain kind of guy. He was like, "You know, sometimes I just sit around. I'm thinking like, people are seeing this photo. It's so good. But it's not real. Because like the computer made it so it's like what the computer made is better than what was really there. And it's like, what is real?" [Cassidy laughs]
BP Yeah. Like, this isn't our usual sponsor blog content. But sure, like, let's talk. But, yeah, no, I do think that's interesting because like, the amount of like, artificiality, you know, that goes into a photo is like, you know, you could go down a rabbit hole with that debate and never add like a photograph is not real, you know, the colors of a 70s or 80s photograph don't look the same as now. But it is interesting when you get to the point where like, it's replacing a lot of pixel or clarity or even like substance in an image that wasn't there. It's guessing what you know, you saw.
CF Yeah, this just made me think of to like how with like photo editing apps and like, even stuff like Snapchat, where you can add filters and stuff like that, like, we don't really look that way. And like, some people will edit their faces to look like unrecognizable to make themselves look younger, taller, whatever. Which is just a strange part of like, living on the internet. I'm even thinking about like, Zoom has a lot of like filters and things like that, where you can clear your image and make your skin appear—
CW Update my appearance.
CF Yeah! And I'm like, you know, if I meet my co workers in person for the first time I they're going to be like, whoa, like this is actually how you look? So yeah, it's like, it gets really meta when you start thinking about like, images and pictures and videos and how we present ourselves online and like versus how we present ourselves in person and all that kind of stuff.
BP I keep it real straight edge, like what you see is what you get. There's no filter, filtering anything here.
CW Hashtag no filter.
RD If you if you really want to go like bonkers on it, you know, any camera lens distorts an image. And I read some stuff that our brains are not designed to accurately perceive reality. They're just to do it in a way that helps us survive. So what is real?
BP There is no past or future. There's only now because like what I'm understanding now actually happened six seconds ago, and I just had to process it. Right?
CF My brain is doing back flips right now.
CW Right... now! Right... now!
BP Alright, y'all, let's wrap up. I wanted to shout out a great question that I saw on the Hot Network Questions. It was from the cybersecurity Stack Exchange. And the question was, can I sample celestial bodies for my randomness in cryptography? Meaning like, I need a source of like random data? That will be truly random data? And I guess the answer is yes, you can gaze up at the stars and gather some random feedback that will make your crypto pretty secure. I thought that was a great question. I'll throw it in the show notes. If you want to catch up with any of us after the show. You can always email us podcast at Stack Overflow with questions or suggestions. If you liked the show, please do leave a rating and review. I am Ben Popper, I'm pretty sure I'm the director of Content Marketing here at Stack Overflow. And you can always find me on Twitter @BenPopper.
RD I'm Ryan Donovan. I'm content marketer here at Stack Overflow. I am a ghost on twitter at @RThorDonovan. And if you have a great idea for a blog, for the Stack Overflow blog, you can email me at firstname.lastname@example.org.
CW I'm Cassidy Williams, Director of Developer Experience at Netlify. You can find me @cassidoo most places on the internet. And feel free to send me a joke sometime.
CF And I'm Ceora, I'm a Developer Advocate at Apollo GraphQL. And you can find me mostly on Twitter. I spend way too much time there @ceora_.
BP Very cool. Alright. I think our mission for the next six months is to get Ryan to start using Twitter.
RD If I can monetize it.
BP Just when you have a joke you want to test out, you just try. Oh yeah, give them all your super follows.
CW There you go.
BP Alright everybody, thanks for listening.