The new home team—Matt, Ceora, and Cassidy—discuss Visual Studio’s 25th birthday, how to create a sustainable revenue source for open-source frameworks, why open-source business models contribute to a lack of diversity, and why NFTs are so unpopular with K-pop fans.
The team pays tribute to Microsoft’s Visual Studio, an IDE and source code editor that turns 25 this month.
Read Simon Willison’s article on how companies can financially support the open-source contributors they rely on.
Learn more about open source’s diversity problem, and how to address it, here and here.
Why are K-pop NFTs so unpopular with fans? The Atlantic digs in.
ICYMI: Listen to our conversation with HashiCorp cofounder Mitchell Hashimoto: Moving from CEO back to IC.
Cassidy Williams I think this is something that companies really need to reflect on themselves saying, "We're using this code. We need to figure out how we can say it's a license, a corporate license, or some way of contributing monetarily to these libraries." Otherwise, if someone decides they want to quit and take it down, which has happened, your company is just like, "Oh, well, we’ve got to fork it. We've got to get the archive and now we have to maintain it."
[intro music plays]
Matt Kiernander Hello everyone, and welcome to another episode of the Stack Overflow Podcast. My name is Matt, I'm a Technical Advocate here at Stack Overflow. And I'm joined by my two lovely co-hosts Ceora and Cassidy. Hello!
Ceora Ford Hi!
MK I'm really, really excited to talk about the plethora of things that we have going on today. We've got Visual Studio turning 25. I'm going to be talking about some K-pop. We have some really interesting topics of the day which personally I'm very invested in. And we also have a little thing from Playdate, too. So we're gonna start off. Visual Studio is turning 25. Now, I don't think we should sing Happy Birthday, but happy birthday, Visual Studio. Do you guys use Visual Studio?
CF I do. I can't believe it's this old.
CW I use Visual Studio Code. I haven't used Visual Studio in a while.
CF Oh wait. What's the difference?
CW Oh, great question. Let's get into that. So, and granted, this is something where there have been debates on the internet, but here is the high level, because there's debates about everything, of course. Visual Studio is an IDE. It is a way of writing code and compiling it and being able to navigate everything. It is a full integrated development environment. Visual Studio is a full-on IDE where you can do all kinds of things. Visual Studio Code is a code editor, a text editor. If you add enough plugins and stuff it can have IDE functionality, but otherwise it's just a text editor where you can write something, save it, and it works. With Visual Studio you can do much more in depth things. For example you could say, "Ah, here's this variable that we imported." You could do a command and it'll say, "Go to definition" and you could go to the definition of this class and then navigate that and compile code in it and stuff. And typically to write C++ or Java or C-Sharp or some of those much more heavy languages that actually need to be compiled, you need to use an IDE or have a separate compilation step. That is my high level understanding of the debate and the difference.
CF Okay. Okay. I think I get it. I think I get it.
CW When Visual Studio Code came out it was around the time where Atom was really popular and Sublime Text. And some people still use those. I don't think Atom as much. I think it's pretty much been mostly deprecated in favor of Visual Studio Code, because you know, Microsoft buying GitHub and everything. But yeah, those editors were popular because you could just write the code, save it, and done. You didn't have to set up a whole project environment file and system to write things.
MK I've used IntelliJ, Visual Studio, and Visual Studio Code, and Sublime Text and a lot of the people were in favor of those kinds of more lighter weight text editors, essentially, like Visual Studio Code and Sublime Text, because they were quite heavy to run on your system. And you didn't need a lot of the functionality, especially doing web development and stuff like that. You could more pick and choose exactly what you needed. So make it a little bit more streamlined and be less resource intensive on your system and that's something that I really liked. But I'm a big fan of Visual Studio and Visual Studio Code. I think they're pretty great products.
CF Yeah, I agree.
CW They're really cool. I admit Visual Studio just kind of brings me back to my traditional computer science background days, where I was actually having to compile my C++ and OpenGL code to make certain things run and everything. And so it's not all entirely pleasant memories, but at the same time, there are some really incredible tools that are built-in when you have a project file like that. Especially if you're doing something like C-Sharp where it's very native to the tool, and you can do everything from the actual code itself, to drag and drop stuff to, again, going to definitions, to running certain aspects, and compile time versus runtime, debugging, all kinds of stuff.
MK You mentioning the compiling and C++ days. I was using Eclipse at that stage.
MK One of the things I realize now is that I need my tools to actually kind of look pretty and be something I want to open up and Eclipse was not that. It was a utilitarian brute of an IDE. It worked, but I did not enjoy opening that.
CF Oh, this is so me. If it's not cute, I'm not using it.
CW What's the point?
MK Yes, exactly. Let's move on to the topics of the day. These are two I'm really keen to talk about. There's an article from Simon Wilson, which basically documents how to support open source creators, maintainers, everything that comes with the technology that we use day-to-day that is free. And one of the things that they hit on there is monetization mechanisms where we don't actually actively contribute or support these projects. They are operating at the goodwill of the creators and that's it. There's no Patreon specifically for open source frameworks. People buy coffees and $5 contributions every now and then, but that's not a sustainable business model. And this is something that I think is a problem that needs to be solved. Because we have all these libraries, all these fantastic libraries that are being used by enterprise level companies for profit and they're not seeing a single cent or any kind of restitution for the work that they provide. And Simon's solution to this particular problem was to pay these maintainers and creators to come and do talks for their companies. I like this idea, but I also think there are much better ways to go about creating a sustainable source of revenue for these frameworks. Doing a speaking engagement is great. It's a nice kind of one-off payment. But I think it would be easier from a business perspective to set up something like a monthly subscription or some kind of service where they were contributing or some kind of something else that would help make the lives of these open source contributors, who are heroes in our industry, better. Please discuss thoughts, opinions.
CW I have so many thoughts, so many opinions.
CF I'll let you go, Cassidy.
CW Let's go. So first of all, so many companies need to support open source and you can say, "Oh yeah, we'll have them come give a talk. Oh, we can have them consult for us," but you're still using their labor even outside of that. And you could say, "Yes, we'll pay you if you come give a talk," but that's an extra set of work that they have to do, even though you're already profiting off the work that they have. So I understand that as a model, but it's still kind of frustrating to see. I used to work at a company called React Training before the pandemic. Sadly they had to lay off all staff, which was why I left. But the folks who ran that company, they created React Router. And React Router is the router for React and is used in millions of projects. And they have millions of downloads and they made something like $200 a month or something dismal off of that. And Ryan and Michael, the folks who made it, they were just like, "This kind of sucks. We're happy to do this for the community. We are happy with the opportunities we've gotten because we've made this, but there's so many people using our code around the world and [we] can't make a living off of that." And they went on to create Remix, the Remix framework, and they started it with being a paid framework because they were like, "You know, we know our code is good, so many people use it. Let's make this a paid model and maybe it'll be sustainable." But unfortunately, when you make a framework that's paid, people don't adopt it because people do want things for free. And so ultimately they did open source it and they got investment from a VC firm, and that works, that gets them paid, but it's frustrating that open source has to be funded by VCs and not by companies who are actually going to be using it or folks who are actually going to be using it. And I think this is something that companies really need to reflect on themselves saying, "We're using this code. We need to figure out how we can say it's a license, a corporate license, or some way of contributing monetarily to these libraries." Otherwise, if someone decides they want to quit and take it down, which has happened, your company is just like, "Oh, well we've got to fork it. We’ve got to get the archive and now we have to maintain it," when you could have just supported them financially and have some guarantees attached to that. Anyway, rant over. I'm frustrated by this whole topic.
CF Oh yeah. I think it's definitely a huge problem. I'm going to say I don't know much about it. I've only been able to really observe the pain points that other people have expressed on Twitter and elsewhere. Obviously open source is very valuable to the community. Obviously this is the case. So many companies have an open source business model. The company I work for does and that's very common nowadays. I've worked at startups where the product started out as an open source project, but because it's so hard to work full time and then maintain a side project, you kind of have to end up choosing between the two. Which shouldn't really be the case, but like you said, then you end up having to sacrifice one or the other. And then if you decide to maintain the open-source project, you basically have to go to VC funders to support yourself and possibly other people who work on the project as well.
CW Or just hope your company is generous enough to let you dedicate time to it.
CF Right. Exactly. Which is not always true.
CW It contributes to the lack of diversity in open source too.
CF Oh, absolutely.
CW Because let's be honest, a lot of the family and home work is put upon women and put upon folks who have to support their whole families. And those people don't have an opportunity to work on open source and have that be a thing that boosts their resume and stuff because there's no financial benefit. And that's a very real reality and reason why open source has dismal numbers in terms of diversity.
CF And then it trickles down to other things as well. I saw something about this recently where there's a survey or something like that about what's the most popular coding language or something like that. And the way that they get feedback for it is by basically analyzing popular open source projects. And there's no representation of women, or people of color, or black people, because most of the time most of the people who can afford to spend time on open source are not people who fit those categories.
CF So it's a pretty huge problem. And even if your company is generous enough to allow you to spend time on your open source project, or they I guess buy it from you or whatever, you still lose a level of control a lot of the times, because now it's not really your thing anymore. It's the company's thing. So it feels like every solution to this problem is still not a 100% win for the open source maintainers, even though they're doing the noble thing of building something that's useful for people and allowing people to use it. So it's definitely a problem. I wish we had better solutions to it, but I don't think I've seen too many that, like I said, are a 100% win for maintainers.
MK Yeah, I think you're really right there. A lot of the solutions that have been proposed so far, they've been by a case by case basis. We need something that is able to scale, something that's sustainable, and that works in the long run. I mean, we had a chat with Mitchell Hashimoto, one of the founders of HashiCorp. And I was curious around how he moved from maintaining this open source framework outside of work hours. He was saying he was getting burnt out, it was really stressful, it was impacting his lifestyle and relationships, all this kind of stuff. And making the move to do that full-time required monetizing it. That was the only way he could shift from having a full-time job to doing this full time, and not everybody can do that. Not everyone has the financial backing to take the risk in order to do something like that. It's an issue. And I hope it's one that people are working to solve at the moment. Because I know personally, I'm not going to spend 10 to 15 hours of my free time on something that's not going to be able to be sustained long-term or I'm not going to get any kind of financial restitution from that. I'm not in the position in my life to do something like that at the moment.
CF Yeah. And I think the biggest issue is when these big enterprise companies are using this free open source software and aren't compensating creators in any way, shape, or form. That's when it really becomes unfair. Like, you're making money off of this. Exactly. So you definitely could.
CW People shouldn't rely on the individual GitHub sponsors. Like you said, a $5 coffee here and there or something. The money comes from the companies that are making money off of your work.
CF Yeah. And that's the thing that's bothersome.
MK It's an enterprise product with no monetization plan, which is bizarre.
CF And you would think morally speaking, they would be like, "Oh, we don't want to just use this person's stuff. We would like to compensate them." But we just talked about the NFTs and the big companies and how they just want money, so yeah, it is a pretty sticky situation and I hope that we'll come to a solution soon.
CW Right. And I've seen companies where they're just like, "Oh, well, we don't want to rely on open source because of that, and so we'll make it in-house." But the thing you make in-house will almost always be sub-par. It's much cheaper to give $10,000 to an open source project than to pay developers to build their own version of it that's reinventing the wheel.
MK Right. I agree. Okay, let's move on. We're moving on to the rec corner. This is quite an interesting little device. Was one of you two involved?
CW The Playdate. Yeah, that was me. Or not involved, but I shared it.
MK Okay, cool. Cassidy, would you please take the lead on this wonderful little device?
CW The Playdate. I think that this is the coolest thing. So there's this company called Panic. I think they are really, really cool because what they do is they just make whatever they want and it works. And so they started by making cool Mac apps, like you might know the Coda code editor. That was another one pre-Sublime Text and stuff. And they've made some testing tools and then they made stuff like Untitled Goose Game, which was that viral game of the goose that ran around.
MK Oh! That was them?
CW Yeah, that was them! Yeah.
MK Oh my God!
CW They've made so many cool things. And then they were just like, "Hey, what if we made our own game console where it's regular buttons and stuff like a game boy, but we'll add a crank." And so you can spin a little crank, like a fishing rod or something. And they did wildly well with pre-orders and stuff, and it's going to be manufactured and just this month they released their SDKs for it. And so you can develop games for the Playdate for free with their whole development kit. I love what they do as a company because they seem to just say, "What if we did this?" And then they go for it. And it's very, very cool. And it's a cool example of a business where they kind of just don't rely on massive growth and VC funding. They just kind of make good software that works well and is cool, and here they are making the Playdate and this software development kit where people can just make silly games that use a crank.
CF That is so cool.
MK One of the things I absolutely love, just having a look through the article before the podcast, was the way that they structure the games. So basically they do it like a season. So every week or so you get a game delivered to your device and that's the game you play for the week. And so they call it a season. So 24 original Playdate games delivered weekly at no extra charge. And that's kind of how it works. I think that's absolutely amazing. I haven't seen anything like that before, and it's also USB-C.
CW You can add whatever you want to it. And so if you end up making a game you could just throw it on there and try it out, and it's easy. It's the coolest little device and I love how open they are with how they've been building it and how it's been largely experimental and then kind of ran with it. It's such a cool concept.
MK It looks like, I'm not sure if I'm dating myself here, but they used to sell these Pikachu GameBoy Colors or GameBoy Advances way back in the day. And that's the vibe that I'm getting. It's a little yellow device with its little crank on the side and I've got a wave of nostalgia for Pokemon at the moment.
CF I have no idea what you're talking about.
CW Ceora, please! Please, Ceora!
MK Pokemon's still relevant, come on!
CW But yeah, it's exactly like that vibe. And I think that's what's fun about it. So many people are just like, "Oh, this kind of reminds me of my old consoles that I had 20 years ago." But it's still got the modern twists to it and benefits and it's just a really fun little device.
MK So if you want to check that out the URL for that is play.date. We'll have it linked in the show description as well. Is anybody going to be checking out the API? Cassidy, are you going to make a game with the Playdate API?
CW I genuinely want to. I did not get in on the pre-order fast enough and I was like, "I'm just going to wait for them to come out," because those sold out immediately. But I would love to. I think it'd be so fun.
MK They look pretty cool. Anyway, let's move on to something near and dear to one of our hosts’ hearts. Ceora, do you want to take the lead on this one?
CF Absolutely! So this is a combination of two things that I spend a lot of time thinking about and talking about. Recently, K-pop record labels have started to kind of tease that they're getting involved in NFTs, and it's been really interesting to see.
CW It was an NF-Tease? Sorry.
CF Yes! Exactly! Oh my goodness. So it's been interesting to see it roll out because since I've been a fan of K-pop, little by little, first some K-pop artists were kind of like, "Yeah, I love NFTs." And then now the labels themselves, which I haven't really seen in the American music industry, the record labels themselves are starting to partner with Fintech companies. And the article that I have here from The Atlantic is interesting because it discusses the response of fans. So, generally I would say that most K-pop fans are on the younger side of things, like Millennials to Gen Z is usually the target audience. And so it's not a surprising thing that a lot of them are activists and concerned about the environmental impact of NFTs. And the interesting thing about the article was that it was mentioning that a lot of these record labels have decided to do their NFTs on platforms is what they call it, that are more environmentally friendly. One of them being Solana. They mentioned a couple of other ones that are not nearly as environmentally destructive as Ethereum or other ones. But despite that, it's interesting to see how the response has still been very negative, because initially, the information that a lot of K-pop fans were told was that they're bad for the environment, they use up tons of energy, it's horrible, it's horrible. And I don't know if NFTs will ever be able to recover from that stigma, especially in the K-pop community. So it's been really interesting. Plus I'm like, if these labels decide to go ahead with the NFT thing, how are they going to go about it? And I wonder if other music industries in other countries are going to imitate them as well, which is just interesting to me. It's interesting to see these two things crossover in a really kind of cool way. Is it cool? I don't know if it's cool, but if you have any thoughts or questions feel free to throw them my way, because I'm like an expert in both of these things basically at this point.
MK I will add I saw the same thing with, I guess your K-pop is my gaming, I guess. I love that side of things. There were a couple of companies that were starting to push NFTs and those kinds of things within games and the feedback was very much the same. Nobody was on board, everyone was angry. A couple of companies backpedaled, whereas others kind of said, "No, we're going to try and do this the environmentally friendly way." So it's been really interesting just looking at how certain companies have responded to that feedback. And personally, I have no idea where this is going to go. I'm not too involved in the NFT realm.
CW What I don't really get is that a lot of the things that they're doing with it, it feels like they're not actually solving any problems. They're just like, "Oh, maybe this will be another avenue for making money." Which is fine, businesses need to make money and stuff. But it almost just kind of grinds my gears a little bit. There's so many other things that you could do. You make enough money. Do something else.
CF Oh, K-pop labels are so money hungry it's ridiculous. They take advantage of fans so much, me included, as you can see. But this is evidence for me that NFTs were never about art. If they were then we wouldn't be seeing this happening. I think the primary use of NFTs has always been making money and being able to sell whatever you bought for more money to somebody else. And we're kind of seeing that infiltrate other realms. So it's just interesting.
CW Yeah, exactly. I don't see artists being just like, "This is it!" And granted, I've seen some where they're just like, "I have made a living because of NFTs. Yay." So more power to them. Great. But the people who are majorly pushing them are the labels, the VCs, the people who will be making the most money.
MK The other thing I'll add to that as well, is that traditionally with NFTs as far as I understand, a lot of people were confused by the value that they provided. And now with K-pop specifically, if they're starting to attach real world benefits to NFTs, I think it'll help increase the adoption for people who maybe don't understand or don't care, because they'll be like, "Oh, so I just need to buy this thing and then I get front row tickets to a thing, or I get access to this club or venue or community or whatever else that might be." And I'm not sure how I feel about that because I haven't done enough research with NFTs to properly understand the potential climate impact, or understand the different blockchains and Solana and all that kind of stuff. So I don't know how to feel about it at the moment, but I do think when they start attaching tangible benefit to owning an NFT in the real world, that's where adoption might kind of pick up and people might start being more open to buying things once they're like, "Oh, I can actually do something with it."
CW This problem has been solved. You can buy a ticket and get a front row seat at a concert. You don't need an NFT to do that.
CF But it's a way to make more money. That's really essentially what's happening.
CW I probably sound like an old man shouting at a cloud.
CF No! You're right though. You're absolutely correct. And I've said this before, and it's so true. These big companies, not just exclusive to K-pop, are really out to make money and they don't really care if they're solving a problem as long as they can trick you into thinking they are, they're okay with that. Right? So I don't know. I'm not a huge fan of it. I'm not a huge fan of any company taking advantage of their audience or whatever, but that's essentially what's happening here. And it's just funny to me because in order for NFTs to have value to their audience they have to attach it to something else. Which means that do the NFTs actually have value? I don't know.
MK True. Good point.
CW Right. And then it's just the whole thing with NFTs is digital ownership. But if you're making the digital ownership mean something physical, once again, it's been solved. I'm sure we'll get plenty of people messaging us saying like, "You just don't get it." Maybe I don't. That’s just it. I don't get it. I don't.
MK That's going to be one of my goals for the next couple of weeks. Because I'm involved in the motion design community and a lot of them are kind of hopping on the NFT bandwagon and producing stuff. So I want to come back with some opinions, some things, and be able to contribute in a better way.
CF I was just going to say, we have tons of episodes where we've discussed NFTs and crypto, too. So you can re-listen to those.
CW Go check out the archive.
MK I will. I probably should. It's my job after all.
MK And with that, that is a wrap for the podcast. We've got a lifeboat to hand out. A lifeboat, for those of you who don't know, is an answer score of 20 or more to a question score of negative three or less that goes on to receive a score of three or more. And this badge can be awarded multiple times. And the lifeboat that we're giving out today is to Mohammad Yusuf, who answered the question, "How can I convert a Python dictionary to an HTML table?" Didn't realize that was a need, but you can convert dictionaries to Python tables. And it's great. It converts the dictionary into a raw HTML table with all the appropriately gathered cells and everything else there. It's pretty great.
CW That feels like an interview question the way you're kind of parsing it and stuff. I'm just like, "I could do that I think." You could loop through the cells.
MK They were definitely sitting on a timed 60-minute tech test, and they asked the question on Stack Overflow.
CW Just like, "Please! Please!"
MK And little did they know, two years later with a score of negative three, some hero comes in. Anyway, that's a wrap for us today. Thank you so much for joining us. I've been Matt Kiernander. I'm a Tech Advocate here at Stack Overflow. You can find me online and all the places at @MattKander.
CF I'm Ceora Ford. I'm a Developer Advocate at ApolloGraphQL. You can find me mainly on Twitter. My username there is Ceeoreo_.
CW I'm Cassidy Williams. You can find me at @Cassidoo on most things, and I'm the Head of Developer Experience and Education at Remote.
MK Cool. Thank you very much everyone, and see you next time.
[outro music plays]