The Stack Overflow Podcast

San Francisco? More like San Francisgo

Episode Summary

Ben and Matt discuss how tech workers’ preference for remote work is driving a near-exodus from cities like San Francisco, where the office vacancy rate has jumped to 19%. Meanwhile, smaller cities like Tulsa, Oklahoma are literally paying remote workers to relocate. Also under discussion: a D&D-inspired AI image generator, the search engine designed to make developers more efficient, and 3D-printing projects to improve your oral hygiene.

Episode Notes

San Francisco’s Mayor London Breed says a seismic shift (definitely not an exodus) is underway as tech workers continue working from home and companies like Salesforce (the city’s largest private employer) reduce office space. Breed says San Francisco lost $400 million in tax revenue in 2021, as companies shuttered offices or moved to other cities. San Francisco offices haven’t been this empty since 2009.

The Wall Street Journal reports that 71 cities (and counting) are offering cash grants and other incentives to lure remote workers from Silicon Valley to, say, Tulsa, Oklahoma.

If you’re a member in good standing of the Hellfire Club (or any D&D group), check out the free AI image generator from AI Dungeon.

Customizable open search platform You.com debuts YouCode, a specialized search engine intended to increase developer efficiency. You.com allows users to deploy AI to customize the sources they want to see, the order in which results appear, and how private results are, reports VentureBeat.

Matt is the proud owner of a new tongue scraper (TMI?), and Ben is 3D-printing him a customized holder. What are friends for?

Today’s Lifeboat badge goes to user LuLuGaGa for their answer to the question Is there a way to create BottomBar using SwiftUI?

Episode Transcription

[intro music plays]

Ben Popper Tonic.ai’s synthetic data platform equips developers with the data they need to build products effectively while achieving compliance and security. Shorten development cycles, eliminate cumbersome data pipeline overhead, and mathematically guarantee the privacy of your data with Tonic.ai. Please visit tonic.ai/stackoverflow for more information. Head on over to that link and let them know the show sent you. 

BP Hello, everybody. Welcome back to the Stack Overflow podcast, a place to talk all things software and technology. I am your host Ben Popper, Director of Content here at Stack Overflow, joined as I often am by my wonderful colleague and co-host Matt Kiernander. Hey, Matt.

Matt Kiernander Hello, everyone! How are you doing? 

BP Doing pretty good. We have some interesting news items today. I want to start with the first one which we've discussed many times– San Francisco mayor says city faces remote work challenges, tech workers leave town or stay home. And within this she noted a $400 million drop in tax revenue last year. I guess I don't know how big of a deal that is for San Francisco. It sounds like a large, meaningful number.

MK I'm a little bit questionable around how she says that there hasn't been an exodus from the city but definitely a big change. $400 million to me seems like quite a significant amount of cash and that's huge. I mean, it's good because there are probably other areas now getting that 400 million which previously haven't seen that level of tax revenue before, but yeah, that's quite alarming I would've thought.

BP Definitely. I mean maybe the idea here is that the difference between the exodus and the impact is that people are not going into the office, they're canceling leases, they're working from home like she said. Even if they don't leave San Francisco they can impact the tax base by going fully remote because almost a quarter of the office space in San Francisco is vacant. I would assume before the pandemic that was not the case at all, that it was very competitive to get office space.

MK Yeah, I think in the article they mentioned that one of the Salesforce buildings has reduced significantly and is now trying to lease out. They have a 43-storey building in San Fran and they're really reducing. I was talking to a real estate agent somewhat recently and she was saying that because of the pandemic, renting out offices and stuff like that is just very, very difficult because a lot of people, a lot of companies now don't see the need to have much more of a dedicated office space. And I'm assuming that the reduction in revenue, like you said, it's not just salaries from tech workers. It's a lot of the flow on effects or collateral around people not going out as much, they're spending more time at home. I would've thought that would mean they're spending more on subscription services and other stuff that may be not local. 

BP This says that the historical vacancy is 10%. So it's more than double, it's up to 24%. In the financial crisis it didn't even reach 20%, it was at 15. So it's way above the 2008 crisis. It's way above the historical average. And then you made a good point which I hadn't thought about there. Every person who leaves is taking income tax that would go to the city with them. Like, I left New York City. I paid income tax on the first half of 2020 and not the second half, because I was no longer a resident of New York City. And so for every extremely well compensated tech worker that leaves for Tulsa, Oklahoma, that really changes the composition of the tax base for SF. Which brings us to our next news story. This one's from the Wall Street Journal, “71 cities and towns are paying tech workers to abandon Silicon Valley. It's working.” So this piece was about the sort of incentives that local governments will offer, including $12,000 in cash, a subsidized gym membership, free babysitting and free office space. So free babysitting– that alone is like a $20,000 bonus. I mean childcare is ridiculously expensive. So 12 grand to go, $20,000 in childcare, couple thousand in gym membership, couple thousand in office space, that is a fairly lucrative enticement they're throwing at people to come to their small town. 

MK Yeah, that's insane. I was aware when I was figuring out what country I wanted to settle in there are a few countries that offer some tax benefits. So for example, the Netherlands, they have this thing called the 30% rule, they basically kind of cap your income tax after a certain level. Portugal as well, I think they have like a flat 20% cap on all of your income tax. And so I'm curious, because this is done at the city level whether or not this is going to make its way up to the government and the country level for them to realize that they could potentially get a lot more revenue by catering towards the high-paying tech folks. 

BP I'd be interested to see if this is a permanent pendulum swing, or quickly the young and more ambitious folks will move back. There was interesting stuff in here about two folks, one from IBM and one from Meta/Facebook. One saying he loves living in Tulsa. His girlfriend recently moved in. He's paying less for a three bedroom house with a yard than he did for a one bedroom with no air conditioning or dishwasher. His girlfriend can move in, that's great. So when people make a decision like that, it's kind of long term. It's not necessarily long term, but you buy a big house, your girlfriend moves in, that's in some ways putting down roots. It's not a, “Hey, I'm going to go to an Airbnb for six months and see how this whole thing shakes out.”

MK I'm looking at moving apartments as soon as I can living in Vancouver. And I've been through this process where I'm like, “Cool, I'm in Vancouver, a very expensive, high cost of living city,” but I'm working remote, so really what needs to be here in order for me to pay that elevated cost of living when I could go off to Coquitlam or somewhere else in Canada that has got a far less high cost of living. I could get a three bedroom with a nice yard, settle in, do the whole dog thing, have a nice little garden. It's going to be interesting seeing that dynamic and as you said, whether or not this is just a swing of the pendulum or whether or not this is kind of institutionalizing and setting a standard for what work is going to look like in the future.

BP Alright, you had a good story link you dropped in here about AI image generators for D&D. Cue me up here and then I'll give you some feedback because I've played around with a few of these things and gotten some fun.

MK I love seeing this kind of stuff. For those who are unaware, there is an AI Dungeons & Dragons campaign creator. And Dungeon & Dragons for me is something that I've always been very interested in. I, with a lot of people who have been interested in Stranger Things, it's picked that up. For anyone who's watched the latest season with Vecna, I got really into the backstory of that and so I'm like, “Oh cool, I want to give Dungeons & Dragons a go.” And this popped up and it's essentially an AI Dungeons & Dragons campaign creator where it's acting as the dungeon master and it's also generating AI images around that. So when you are going through a forest or a lake or a field, or you're facing an enemy of some sort, it will actually create AI-generated artwork for you to kind of follow along with a screen. And for me, this kind of brought on another question of, this is absolutely rad and I wonder how this is going to impact the future of procedurally-generated stories and games. You can get a bunch of friends together, sit down, and then have a different campaign every single session. What are your thoughts on this, Ben? Is this something that you'd be into? 

BP I let my son play around with this because I thought it was so neat and I was like, “You're doing a story and it will write back to you, so tell it what you're doing and it will respond.” And it was fascinating to him, but I guess there were no safeguards so at a certain point he ended up like making out with a version of himself and then he was confused and he wasn't ready for that. So I don't know how age appropriate it is. It was like, “There's a clone of you and now he's kissing,” and that kind of freaked him out. But you make the point about Stranger Things, like what is Stranger Things? It's like a mishmash of a bunch of different stuff. It's like an ‘80’s high school romcom mixed with the Stephen Spielberg, ET-inspired sci-fi flick, mixed with the Stephen King teenagers against the town horror movie, mixed with some of our love for Dungeons & Dragons. So you feed all those things into an AI generator and it will also spit back to you some interesting combinations. It won't have the art and nuance and story arc of Stranger Things, but just as a foundation for you to play off of to be like, “Here's essentially a random prompt and then you as the human and the dungeon master and the players take it from there” I think is really nice. It's like a random number generator. Like, “How big is this monster? Oh, we'll roll a random number.” Now it's like a random story generator. Like, “We need an encounter,” and it will just take you there or whatever. So I think that part is kind of cool. 

MK I think it is as well. It'll be interesting if you could start to say for example, if a buddy can't make it for a particular night or something like that, and then you have an AI player kind of come in. 

BP The NPC takes over for him, right? Yeah, exactly. 

MK Yeah, that would be quite fun. And I'm also kind of interested to see whether or not AI as a creativity tool, whether that's for programming or for creative stuff like this, whether or not that will actually inspire or have any impact on the creative work that actual humans do. You might be playing a D&D campaign and be like, “Hey, this wasn't quite right but I really like that story so I'm going to take that and then build something around that that's more concrete and tangible and has more of a flow.”

BP I also think that the visual element is important. That always gets people into it. In prior ages you would always buy these great books or you'd ahead of time find some great fantasy art. It's cool that it can generate it based on exactly what's happening in the campaign and that keeps it more engaging, you're more in the story. Right now the art is kind of one of those knockoff DALL·E 2’s where things are a bit blobby sometimes, a bit like melted clay, but some of it has the look and feel of a medieval tapestry. I would buy it. It requires you to use your imagination a little bit which we need obviously as part of this.

MK Yeah, the art style is at least consistent from what I can see of these. But yeah, you're right. It's very much the rough foundations of an image and some of them are better than others. Also for anyone who is listening, play.aidungeon.io is the URL that you want to hit.

BP And I see in this article, turn on AI dungeon and then there is a safe mode. So I guess they've gotten that feedback from some other parents maybe. 

MK Yeah, because I'm sure things could get wild very quickly depending on how you progress through things.

BP All right, I have something I wanted to touch on here. It's called you.com. They have a search engine trying to compete with the very, very large search engines that kind of dominate the space. It’s using AI to customize it for you but the first demographic they're going after is developers and so they offer up a couple of key features here, code snippets in the results, generating code based on a search with code complete, skim through documentation and it highlights the most useful and most read parts, access tutorials and academic publications, catch data errors, validate any JSON file, find colors, grab your hex or your RGB, and speed through websites with 13,000 banked shortcuts. So I have a lot of thoughts on this but I thought it was interesting. Like, what is a way a search engine could stand out? We know from Stack Overflow, people who are doing development are constantly Googling. So we'll put it in the show notes. If any of those things sounded interesting to you it could be worth checking out.

MK I was having a think about this earlier and one of my first thoughts was, “If it's using AI or some kind of interpretive thing, how can I trust it to actually get a replicable result out of it or use it in the way that I want to use it?” And then I realized that that's essentially what Google is doing anyway. I don't have much control over Google and a lot of the search engines that I'm currently using so why is this any different? 

BP Yeah, you've come to assume that Google has validated and the results are to be trusted because it's so omnipresent. 

MK Yeah. I think a lot of people, myself included, have just put a lot of de facto trust in the Google search queries that I make on a day to day basis, and I'm very curious. I think this has got a lot of promise and I'm excited to see how it evolves, especially if they're making programming and solving developer-focused problems at the forefront. 

BP Yeah. Well I mean it's kind of mashing up a few things here. You mentioned this the other day when we were talking about the dev survey, what's the first thing you're going to do? Google. If you go to Stack Overflow and you don't quite understand then you're going to dive into the documentation. All right, what if we could annotate documentation to get you the right part first? Seems useful. And then the code complete or the auto suggest, this is the big thing with GitHub Autopilot or the folks we had on from Anvil with a great autocomplete. This is something that you're getting into every day. So I guess it seems like they're identifying common pain points that we've discussed on the show. The questions are like, really can you trust it? Are the results good? Would using this save you time or are these just kind of gimmicks where the results that you get are not really going to serve you.

MK The good thing about this as well is that you can A/B test this quite quickly. If you have the same problem you can run through how it would work on Google and then run through how it would work on UCode and kind of go from there and A/B test it and figure out what things UCode might actually be good for and whether or not it just becomes another tool in your tool belt essentially. You know that UCode will be good for something specifically so you use it for that purpose and Google for another thing. 

BP Yeah, you sort of have it in one of your tabs, I like that. All right, I have two more links to shout out here. This one was in the newsletter this week. It is Go Proverbs redone for computer programming. So if you are interested in a zen cone or two, simple, poetic, pithy, concurrency is not parallelism. Channels orchestrate; mutexes serialize. Make the zero value useful. These are fun, we'll put them in the show notes. They're fun to say. They make you seem wise, wise beyond your years.

MK I'll do a proverb every standup and people will really start to respect my technical capability. 

BP Yeah. It's a good way to open a standup, with a saying. And then there was a good piece up on The History of the Web. It's 1997 and you want to build a website. There is no Stack Overflow. So this is a fun just walk through history. The book you might’ve had to read, how you would've taught yourself HTML and CSS, the very amazing sites like WebMonkey, a how to guide for web junkies, that were teaching you how to build your own website. Just kind of a fascinating look back at how difficult it was back then and how sort of low-fi everything was. Everything was very simplistic. We've all seen the Geocities pages or whatever and they're crammed with all kinds of information and animations and color but the reality is that the level of information that would've been available to you if you wanted to build was so minimal. 

MK It's very interesting reading through a piece like this because viewing what the web is today through that lens and going back and being like, “Oh, I could’ve just built an ecommerce store or something like that and made bank and done all that kind of thing,” but realistically a lot of those use cases weren't around back then. The web had very different use cases in the 70’s, 80’s and 90’s. And also, on a side note as well, kind of very much made me appreciate some of the low code and no code technology that we have today and how easy it is to get up and running. 

BP Yeah. This was like you had to stumble on somebody and then through trial and error learn that you could trust them. It says, “You might find yourself at Glen Davis's Project Cool or Dori Smith's Backup Brain or Nick Heinle’s Webcoder, other small sites maintained by a single person full of excellent code examples and tips.” But this is this one person's recipe book for how to do it. It's not complete in any way and it doesn't harness the crowd. It's just kind of like stumbling into a library and picking one of a hundred books off a shelf for how to do something and if you get the right one you can kind of learn from that.

MK It would've been very, very difficult to find. I'm imagining the community back then would've been very kind of like how the podcast community operates today where the searchability is quite low and you have to kind of be like, “Hey, I heard about this thing. You should go check it out.”

BP Yeah, word of mouth.

[music plays]

BP All right, everybody. We are going to do some recs. I have a rec. Do you have a rec?

MK I will find a rec very, very quickly. 

BP I got my Ender Creality 3D printer up and running. It is quite affordable. It's I think $250 and it's so nice, when it's on sale it's only 200 bucks and it's great for that price. I've been printing figurines with a lot of detail. Jabba the Hutt looks like Jabba the Hutt which makes my seven year old extremely happy. And I will pass along one tip. The thing that solved all of the problems for us was hairspray. Before you do the print, cover your print area in hairspray and you'll get a great first layer. It will adhere and everything builds from the first layer so you need to have a great first layer. So yeah, after setting up my printer and going through all this high technology stuff and leveling the bed and all this stuff, the answer to how to get a good print turned out to be a 99 cent can of hairspray. But that's how it is.

MK Wow. I would really like to see your Jabba the Hutt print. 

BP Yes, I will take a picture and put it in the show notes. Jabba the Hutt came out great. Things that are like layers of blobby fat, that's like what a 3D printer is made to do. Just stack 'em. 

MK I'm very curious around getting into 3D printing. Just as I've been doing stuff around my apartment I'm like, “Oh, you know what? That would be a really nice, nifty little thing to make.” So say for example, I have a new lamp which is bare bulb and it's very, very bright and what I wanted to do was just make some 3D printed clips or something like that so I could put some paper or some lantern paper or something like that around it to diffuse the light. And it's little things like that where I'm very much aware I'm becoming a dad, you know? Like I just want to tinker.

BP Yeah. I watched one really amazing video. The guy had a resin printer which has a lot of fumes so he put it in a special closet with a little fan at the top that pulled it out. But then he went on like a 10-minute diatribe. He was like, “I printed this hook so I can hang this thing, and this tray fits exactly in here, and I printed this and it's exactly the size you need to close the door.” It’s like you're saying, you could buy this at the store, you could make this, or you could 3D print the exact piece you need for this closet. Every time you think, “That's a little annoying,” or “Wouldn't it be nice if,” you just print it out.

MK This is a very weird stretch, but I bought a tongue scraper recently. There is a local company in Vancouver called Gunky that sells tongue scrapers which is supposed to help with oral hygiene, bad breath, all this kind of stuff. It could be my recommendation for today, Gunky. It works incredibly well and it looks like a U and I was like, “There's no dispenser or something else that I could use in my bathroom that will hold my toothpaste, my Gunky, and the other little knickknacks.” If I could 3D print something that could just stick on the mirror and I could clip. You know?

BP That's what it's perfect for. That's really what it's perfect for. 

MK I do have a tech rec that is actually technical and not just for oral hygiene. So if anyone has been interested in game development, there's been a few things happening recently in the world of game development around acquisitions and mergers and some people are not quite happy with the state of a couple of companies. There is, however, one company that people are very happy with and that is Godot. Godot is an open source game engine that’s got a 3D pipeline, it also has a 2D pipeline which is a lot more solid. And so I've been looking to contribute to open source in some way and I think Godot is going to be one of the things I'm going to investigate being able to contribute to, spend some time with it, it looks like a lot of fun. There's a very good YouTube channel called devduck, which is making an environmental conservationist 2D video game about going into an island and doing a whole bunch of stuff. There's some really good DevLogs. So my recommendation, if you're looking for any open source work, if you're interested in game development and Unity and Unreal are a little bit too intimidating or you're wanting something a little bit more lightweight and streamlined, I would recommend checking out Godot. It looks like a hell of a lot of fun. 

BP All right, very cool. Yes, a quick search on Thingiverse tells me there are about four or five tongue scrapers you can print out and not one, but two tongue scraper holders. So people have had this challenge before, they're out there. You would just download the file, maybe size it, you could scale it up and down. You know what? I'll print one out. You’ll have to send me your specs. I'll print you. I'll mail it to you. 

MK I find it very telling what interests are in 3D printing. You're doing Jabba the Hutt, I’m doing tongue scrapers. I'm very curious what Cassidy and Ceora would be printing as their first print. But thank you. Yeah, I'll send you the Gunky dimensions and we'll see what happens. 

BP Send me the Gunky dimensions. We'll see if we can hook you up. All right, everybody. It is that time of the show. Let me look up a lifeboat badge. “Is there a way to create BottomBar using SwiftUI?” LuLuGaGa was awarded the lifeboat badge two days ago for helping to answer this question and get a great accepted answer. It's been up for two years and has been viewed almost 8,000 times. LuLuGaGa, thank you for sharing some knowledge. You've got a great screen grab in here plus an image of what it looks like on an iOS device. So thanks for sharing your knowledge with the community. Oh, one more thing I just have to say. Once you get into 3D printing, then you learn how to use the slicer whatever, and then eventually you're like, “I want to make my own 3D thing from scratch.” So then you download Blender and then immediately you land on the stack exchange for Blender, the second you Google something. So shout out to that stack exchange which is full of great information. 

MK I've actually used Blender a few times in the past just for modeling stuff and doing some animations as well. I think Godot and Blender are two open source tools that are just absolutely fantastic. Blender has got a very, very interesting history. 

BP I can't believe how powerful it is for something they give away for free. I mean, it's awe-inspiring.

MK We should try and get the creator of Blender on because he is a very interesting fellow. He could have monetized Blender very, very easily, but the whole point of what he wanted to do was to create something that was open source and free and be industry standard. I've got friends who work at Weta Digital, which is the VFX house that did all the Lord of the Rings, King Kong, for all that they use Blender, which is a free tool for a lot of their 3D modeling. It is incredibly good. 

BP Right. They're not using some fancy pants software. They're just using good old Blender. All right, everybody. Well thank you for listening. We hope you enjoyed the show. As always, I am Ben Popper, Director of Content here at Stack Overflow. Hit me up on Twitter @BenPopper. Email us, podcast@stackoverflow.com with questions or suggestions. And if you like the show, leave us a comment or a review. It really helps. 

MK Thanks everyone. My name is Matt Kiernander. I'm a Developer Advocate here at Stack Overflow. You can find me online, YouTube, Twitter, all the places, @MattKander. 

BP Quick shout out to Marcello who wrote into the show. Matt and I had been talking about Git and folks who don't use it at work and how I was a little bit surprised Matt had had that experience. So Marcello shared a few of his experiences about using ABAP code and working with ServiceNow and other areas where SAP plus decades of customization, he was not able to use it. So we always appreciate people listening and sending us information. All right, everyone. Thanks as always for listening and we will talk to you soon.

MK Bye!

[outro music plays]