software sessions

Bringing GeoCities Back with Kyle Drake

Kyle Drake discusses what GeoCities was, why it failed, the technical and legal challenges of creating its spiritual successor Neocities, and how he's working to preserve and curate sites from the old web.

Kyle is the creator of Neocities a free web hosting site that encourages people to build creative personal websites in the spirit of GeoCities. He's currently working on restorativland where people interested in the history of the web can discover websites originally hosted at places like GeoCities and Myspace Music.

Kyle Drake

Projects

Timestamps

Music in this episode is VHS s k y l i n e by Crystal Cola.


Transcript

Jeremy Hey, this is Jeremy Jung. In this episode of Software Sessions, I'm talking to Kyle Drake, the creator of Neocities about the challenges of building a content delivery network and being an independent hosting provider for personal sites all around the world.

But before we discuss Neocities, we have a conversation about GeoCities it's spiritual predecessor. If you aren't familiar with GeoCities, it really defined the web in the 90s. We talk about what made that era different, why it ultimately faded away, and how Kyle's trying to bring the spirit of those times back to the web.

We also go into Kyle's efforts to create a museum like environment to explore webpages from the 90s. It was a fun conversation and I hope you enjoy it.

Kyle, welcome to the show.

Kyle Hey, it's good to be here.

Jeremy So to start, for those who aren't familiar with GeoCities, what was it?

Kyle GeoCities was a web hosting service that was started in the early nineties by Dave Bohnett. I think they were in Beverly Hills, California and I think it started as some kind of internet service provider or something like that.

And then they decided to make it a more open thing where anyone could create a personal home page. And people started creating HTML and their little portals on the web to express themselves.

That was how back in the day you expressed yourself online. You didn't create a Twitter account or Facebook account or whatever, you would make your own webpage.

So yeah, that's sort of how Geocities started. And then more and more people started making websites there. I think at peak it was the second most trafficked site on the internet.

This was in the mid to late nineties at the top of the .com bubble. They sold it to Yahoo for like $1 billion or something like that and became part of the Yahoo franchise, which was gutted by corporate raiders, and no longer exists.

Most people I've talked to that know what Geocities is had a page on Geocities. They either don't know what it is because at this point, there's just people that are young enough that they've never seen it before, in their usage of the internet or it's people that are like, Oh hey, uh, did you find my site? They think that out of the 8 million sites that are in the collection that oh yeah, I found your site. I know all your secrets about Final Fantasy 7 cheat codes or whatever.

So yeah, the original social component of the web was GeoCities. The social component of the web before that, like back in the sort of research days was college universities. The only people that could actually afford to connect to the internet were college universities basically.

It'd be usenet groups or mailing lists or they'd talk about Star Trek or something like that, you know, just super nerdy stuff because, you had to be a super nerd to be able to use the internet back then. That sort of late eighties, early nineties, they sort of started interconnecting it with the context of commercializing it and being like, hey let's make this more of like a thing where anyone can access this and use it.

Jeremy So it was this community where people could go and build their own webpage and kind of express themselves. Was that with static HTML and CSS?

Kyle Yeah, people would just take out a text editor and write HTML. Create basic webpages, these documents that would have images and stuff and then link to other documents.

People weren't learning PHP or Perl or C or any of this stuff. They were just making these markup documents there. There certainly were HTML editors and stuff too that made it so people could use a graphical interface to drop stuff into a webpage or whatever. But, at the time, HTML was just sort of simple enough that you could just do it from scratch. I mean, you still can, but it's a lot more complicated now than it used to be.

So, it was just very simple text based documents with some images attached to that and that was it. That was the original way that you expressed yourself and it required a little bit of technical prowess.

It had sort of a monetary hurdle because you had to be able to buy a computer and connect it to the internet, which was a much more expensive thing to do back then than it is now. There was a certain technical component to it even for sites that didn't look very good. Like they were generally pretty savvy people building these things.

And I guess now the bar has just been lowered so that anyone can participate. Which isn't necessarily a bad thing, but I dunno people that are more thoughtful tend to be better contributors I guess is what I'll say about that.

Jeremy Yeah. And if you look at it from a technical perspective we have the same technology that we had back then in terms of HTML, CSS, JavaScript, the ability to upload our page to a site.

And in some ways it's actually gotten easier right? Because you don't need as much expertise. Oh sorry, you were going to...?

Kyle Oh, yeah. well, I was gonna say actually CSS wasn't around at the time for most of the these sites.

It did exist, but the problem was that there was three different browsers and they had a completely different interpretation of what CSS was.

This was way before everybody got things standardized so that a website worked on the same browsers. I think Netscape 4, and internet Explorer 5 had CSS support even.

But I actually tried to use it, recently because I was working on a gallery of GeoCities sites and I was trying to figure out if I could use CSS for a modern sort of table style display of pages. It would work in Netscape 4 and then it would do something completely different in Internet Explorer 5 and so like this was the problem with CSS back then, so no one used it for anything because it was just not standardized at all so you couldn't get it to work.

Jeremy I had forgotten about that. How we have different browsers now, but back then they were like really, really different in terms of rendering.

Kyle Yeah. They were different beasts and they had different agendas. When Microsoft came into the space with Internet Explorer their objective was to create their own standard or their own interpretation of the standards so that developers would have to buy their development software because it wouldn't work on anything else. Their strategy for monopolizing the web is basically just making it nonstandard enough that you had to use their software instead of the stuff that everyone else was using. It was an intentional strategy even to do that. I think they did it on purpose.

Jeremy And so what do you think makes the current internet different? Because people are still able to make the same kind of sites that they made back then. What's stopping people from doing that now?

Kyle What the modern web has revealed is that when you make something simpler to use people don't really care about the autonomy of homesteading. They just don't really care that much about it because fundamentally what they were just trying to do was just post pictures of their kids eating ice cream and stuff just sort of share with a small group of their friends or in Twitter's context blast out globally to like people that are your followers or whatever.

A lot of the reason why the original web failed to a certain extent in terms of why doesn't everyone just make a website now instead of using Facebook and Twitter. Well, I mean people do, but it tends to be more of like a resume or more like a page on the web that links to these other sort of social media things.

One of the really big flaws with the original web was that it was pretty hard to cross communicate with people that were following you and interested in what you were doing.

We had RSS available but RSS was sort of push only. You couldn't get any feedback from your followers or anything.

I guess they could send you emails, but it wasn't the sort of like public square of discourse the same way something like Twitter is. And if you're a journalist and you're trying to do a bunch of research and trying to communicate with people it's more useful for them to have something like Twitter where it's more interconnected in terms of you post stuff, people immediately can see that stuff, and they can reply to it, comment on it and add more information.

That was lacking in the original web, because back then you'd make a webpage, but you didn't really know who was actually going to your webpage. It was very invisible. There was hit counters, right? Remember the hit counters? They're all broken now because they were always like CGI bin C programs people would embed into their page and so all of them are dead.

But then the ones that aren't dead are the ones where it's like a fake hit counter. It shows oh this site's got 8 million views. And it shows the view counter slowly turning the numbers or whatever or there's the ones where it's just a joke and it's constantly rolling all the numbers as if you're getting trillions of hits or whatever.

But yeah, you never really had a perspective on what sites were popular and what sites weren't. One of the unfortunate things about the original GeoCities pages is because all of the hit trackers are gone and deleted we have no information on which sites were more popular than other sites. Even that basic metric of how many people are going to a site is no longer available unfortunately so you just have to guess whether a site was popular or not.

But yeah, most of the sites you'd get maybe 200 people go to the site or maybe less than a thousand and you'd make little updates here and there but without that feedback mechanism of more people coming to the site and getting more feedback it wasn't something that was a big motivator for people as a longterm project because it wasn't really giving you that feedback required to update your site and be like oh yeah, people like this and they think it's interesting.

I've tried to resolve a lot of those problems with Neocities actually. We do have a social network of sorts for people that make websites. That was the big redesign we did for Neocities. When we first launched Neocities it was just a hosting service with not a lot of other stuff. Then we added sort of a social networking component to that where you can make page updates and then have comments with people about stuff on the page.

We ended up implementing that on the Neocities side of things and not in a way that they could embed on their websites. And the reason I did that was because of the hit counters breaking. If I allowed people to embed stuff that is custom to Neocities onto their own sites and then like Neocities went away for some reason or broke or something happened then all of that functionality would break.

So my philosophy has always been to not provide anything for static websites that could break in the future. Because then it makes it so the sites don't work anymore because of my fault. But, people when they use Neocities can tell if people like their sites or not and I've actually been working on some stuff to improve that and be like, Hey, you know, you're the fifth most popular site on Neocities. People like your site or something like that.

I've been kind of working on ways to provide that feedback so that people do understand if their site's popular or not, but it's a harder thing to do than it is on something like Twitter.

Jeremy Yeah. That's a really interesting point in that my understanding is in the past when people were building their own personal sites or building sites on GeoCities a lot of times they would put this work in and they would build a page and it might be really cool.

But you didn't really have a good idea of who was coming and who was interested. And so I feel like there was a tendency to build the site and then it just stagnates and it's this really cool capsule of what this person was thinking at the time.

But they tended not to continue to update it. And, I think you made a good point about not having that feedback cycle that you get when you post on, say, Twitter or on Instagram or whatever, where you can immediately see like, hey, people are interested in my stuff, so I should, keep making new stuff.

Kyle yeah. You'd have guest books or whatever, but then like, you'd get like maybe one, one update a month in the guest book or something like that, you know? Uh, but yeah, that feedback mechanism is really important. I mean, there's ways to do it without things like Twitter. you know, there's been some work, on, potentially creating a sort of decentralized social networks and stuff like that, but, you know, it's. It's hard to make stuff like that because, you know, if you make mistakes, they're permanent. A lot of the time it's hard to like adjust the decentralized network so that it works well without sort of a central entity able to sort of deal with problems like spam and stuff like that, you know? still, you know, I've worked in the space for years and I'm still not convinced whether it's, uh, it's going to work or it's a pipe dream. Yeah, because, because there's just the, the, the technical hurdles are so overwhelming but, you know, at the same time, um, and this is sort of a weird tangent, but, um, I work in emerging technology a lot, and, I am extremely skeptical of most of it to the point where like most people are always like, why do you work in distributed web and decentralized stuff if you don't think it's gonna work and why would you do that? And it's just like, well, you don't, know it's new, right? Like it's a new technology. And there's this sort of. Thing about the nature of emerging tech right now that I really hate, which is that you have to be a true believer to get into something. if you think Bitcoin's interesting technology, right? You have to be the Bitcoin pumper, you know? It's just like, Oh, everyone should, everything is Bitcoin's going to be used by everything. Everybody is going to use Bitcoin. It's going to be perfect. It's gonna get rid of all of the evils of capitalism. You know? It's just, and if you disagree? You're a heretic and you're crazy, and it's just. , I hate that mentality. Like I love when people are in emerging tech and they're extremely skeptical of emerging tech. And so I love distributed web. I think it's a great idea. I'm friends with all of the people that do distributed web stuff, but at the same time, I'm also skeptical of like, whether it's going to work or not because it's hard. It's a hard problem to solve.

Jeremy Yeah, for sure. It's definitely a, a very hard problem with a lot of unknowns because, with a centralized system, whether that's Twitter or Facebook or Instagram, like you have, um, you know, you have a private company with a lot of resources and a centralized location and they, they have so much staff, to deal with content moderation and things like that. And as soon as you kind of break that into, you know, this sort of magical, decentralized world, there's like so many questions that need to be answered. I, I think it makes sense to, to be skeptical and, you know, who knows. Well, we'll see what happens in the future.

Kyle Yeah, the context of neocities for me, uh, in like why I created it, was really because, we're switching to this online world of everyone is, you know, signs up for Twitter or Facebook or whatever. And. What did they give you? And they give you a little text box. You can update they give you a, Facebook, you can upload a photo or a video or a little text box. and. it's kind of like if you didn't own land and all sudden I was like, Hey, there's some land over here. There's like a hundred acres and you can do whatever you want with that land. You can, you know, put a house on it. You can like, you know, turn it into a crazy hot Springs you can do anything you want, with this land, , you can bulldozer it into a, terrible parking lot. You know, it says you can do anything and. , they would have like, tons of space and freedom to sort of like figure out how to express themselves and in what way to express themselves, what information to provide, as sort of like a completely open choice to them. you know, more of like a blank canvas like a, you paint where you want, uh, versus, you know, the newer social networks, which is sort of like. Twitter, you know, where you sign up for it, and it's like instead of massive megabytes and megabytes of like space to do whatever you want. it's like tiny little text box and, in, instead of getting like a hundred acres of land, it's like you, you get like a, uh, it's like a Stasi apartment, you know, like a tiny little, like Soviet union apartment block. It's like made out of just like sad concrete. you're in this room that's like, a hundred square feet or something and it's just like super, like efficiently designed and like just sort of sad looking and it's just, that's the big trade off for me, that's, that's such a problem with the new social networks is just that they completely constrain your ability to be creative on these platforms because you know, they don't want you to be creative. They want you to sort of use them exactly as they intend them to be used. and so that I guess is the thing that I really miss about the old web and why I don't like the new web as much is just that, like we've sort of traded off. this sort of creative ability, uh, the sort of space, for the these, sort of like tiny little blocks within this like super centralized, government like entity that, has these weird algorithms that sort of decide what you should be and what you shouldn't be looking at. Back in the 90s. when you used the web, it was a choice and it's no longer a choice. And I guess the big reason why I created Neocities, was to sort of give people that ability to sort of have land, to be creative again. , because virtual land is cheap, it's, it's like almost free. Uh, and so it's, it's very easy to give it out to people. Uh, the only consequences that, you know, with that freedom comes responsibility. Yeah. If you know, if you get like, real land on the real world, you have to do things like, you know, figure out how to hook it up to the electrical grid. You know, like, uh, putting up a, well, so you can like, have access to clean drinking water. So it's a little more work, but then like, I dunno, you get more control and then you can make really cool stuff with it. And that's, that's sort of my philosophy for like bringing back the sort of nineties web. It's not the dancing baby gifs and like the Limp Bizkit midi files and stuff. It's, it's the creativity component that like I'm trying to bring back, if that makes sense.

Jeremy that's, that's really great. And I think there is room for both though, I think, right? Like, you know, there are people who they just want to post a picture of, you know, something funny they saw today. Or, you know, they want to make a comment that fits in a tweet and they don't necessarily want to spend the time to, to build their own, page.

Kyle Oh, totally. Yeah. I mean, I, my proposition. I mean, maybe, maybe it was different back then. but my proposition has never been to just like get rid of Twitter or Facebook or whatever. it's more just to like remind people that sort of, that creativity still matters. making webpages still matters. And, people still use the web. i think Facebook and Twitter still are a relevant thing. I don't think that, Neocities is proposing to get rid of them. I think it's just providing space for people that want to be creative and still make web pages and web pages still do matter. the web is not going away. You know, one of the big reasons why is because Google is still incentivized to make webpages like the thing that most people get their information from, uh, because if it goes away, uh, then it will just evolve into people using apps for everything. Uh, and Google doesn't make any money that way. And so they obviously don't want that outcome. And so they're going to sort of . Work on making sure that their monopoly likes, I guess, supports the web. So, you know, interesting bedfellows sometimes when it comes to the web, you know, I mean, people generally like to think of Google as like very dangerous too for the web. And there's certainly things they do that are not great for like the health of the web. but, you know, I think the biggest problem that, companies like Google have is that they don't treat the people that produce that content very well. I think Google should do a better job of like, recognizing. That. Oh yeah, this is like, these are like our people. we wouldn't exist without them and we should probably like, you know, be more communicative with them bring them more into the process and like take their feedback and maybe even have like, representatives that like, these sites, can email if they need to talk to us about something. I don't think they have that. That mindset yet. And, uh, yeah, there's a lot of problems we have where like, we can't get things done because Google decided, you know, Oh, we're just going to arbitrarily change something. And, we're not gonna have any feedback. You know, you can't talk to us about it or anything. And this, it's been a big problem for actually me at Neocities, uh, have a lot of problems with Google specifically where like, I can't even like. Find a person to email, uh, except for like friends that I know that work at the company, which, you know, isn't kind of weird. I don't like doing that, you know, but, I, I'd love it if they had like an account representatives so like i could just Lea at least email somebody over there and be like, Hey, this is like really bad for websites. You need to stop doing this or something. Yeah.

Jeremy what's an example of that? Are you, are you talking about specifically about issues where, um, you don't end up in Google search index when somebody's searching for a site or kind of, what's an example of a problem.

Kyle Well. So one of the big problems with, providing a web hosting service, with, with Neocities, you can't actually like store data as in like dynamically. There's no back end on Neocities. There never will be. If I have any control over it. Uh, you know, there's no PHP or nodeJS or any of that stuff on the back end. And this is certainly one of the things that separates us from a lot of the other sort of hosting services, uh, like free websites for creatives. or just like generic web hosting in general, is that all of them have sort of, taken that steering of like, Oh yeah, you can, we have a backend that runs nodeJS and now you can use nodeJS on your app. That's all fun and everything, and certainly more powerful. But with that power comes deep, deep problems because people can do things on the backend, like, they can start doing things like, you know, like sending arbitrary network requests to like random computers. They can do DDoSs attacks. they can, you know, punch into your infrastructure by like, figuring out how to like, get through the nodeJS stuff or whatever. you know, there's just all these sorts of problems with like running back end stuff. People can, you know, tie up your resources by like, making something that just like endlessly loops and like computes, you know, CRA crunches data or something. . It just creates all these problems. but , despite the fact that no one can really do like storage of information with Neocities, we still get people that will use us as sort of the front store for like, phishing sites and stuff like it, there'll be like a login form and then you type in your standard password and that, that form goes to some other hosting service that like does let you store data. but then. We are the ones that get flagged as like a phishing site, despite the fact that it's not even like you can't store that data on our, our end, it's on a back end thing, but their so sort of detection scripts are too stupid to realize that. And so they sort of assume that it's being stored on my stuff my stuff is the phishing page. And so I, ban those sites, but then the backend the other portal remains up and they can just like, point it to another site, and continue to receive information or whatever. And so, like, you know, that's a great example of like a, you know, Hey Google, like it doesn't matter who's providing the front page. It matters where the data's being sent, The other problem with that too is that, when it gets reported to me, I have to go through this manual process to click buttons on their webpage to tell them that I've dealt with it. Uh, and you know, there's no API. And so it's just like, well, if you made an API, then I can implement, integrate it my system and indicate to you that I've banned it as like a dynamic process as part of banning it. Uh, instead of having to do this manual thing every time. It's just like these little things. It's little stuff like that, but it all adds up and makes like also, you know, they always claim, Oh, page rank doesn't matter anymore. We don't do page rank anymore for indexing stuff, but you know what, I get a ton of page rank spam. So, I guess someone didn't get the memo that they don't do PageRank anymore. But again, it's like, you know, if I could report PageRank spam to Google, then they would stop doing it because they would know that if they posted it to Neocities, then, uh, it would get flagged this page rank spam within Google. And. there would no longer be an incentive to do that. if Google provided the interfaces to actually do stuff correctly, like we can eliminate phishing and spam for most web hosting services. Like we could almost get rid of phishing attacks completely like it, but they, but they just won't give me the tooling to be able to do it. And I, there's no one to contact. And when you try to talk to anyone that knows, they're just like, Oh, it's a secret department. We can't talk about it. And, you know, can't, you know, he can't, can't know anything.

Jeremy when you mentioned page rank spam is, is that people creating sites on Neocities and linking back to some other site they want to drive people to, or what does that exactly.

Kyle Yeah. It's tends to be these like really basic looking page, I can visually identify them almost immediately, which by the way, hint, hint, you know, I might be doing some machine learning stuff related to this in, in the near future, , because you can classify. , spam and phishing attacks, compared to the sites that aren't spam phishing attacks. And I've actually done some testing on this already, with just image classifiers, not like text classifiers, but image classifiers. And they are almost a hundred percent accurate, uh, without me doing any tuning or tweaking of any kind, uh, which is kind of interesting. Uh. That's coming later. I, that's a, that's an ongoing project, but, uh, w it's funny actually, it's a lot of like, links to like, weird factories in China that make, like, really, really specialized components. So like, you know, I think one of them was like an ad for like, um, menthol. That's it. Menthol. it was like a menthol factory they just make like big hunks of menthol crystals and then like sell them to like, cough drop companies or something like that. And, uh, and, and it's just an ad for that. you just see these spam sites and you just, I just sort of ban them but, yeah, it's always just like a bad description of the company and then like a link to like their actual domain name of that company or whatever. Um, and so the spam has been annoying, it's just kind of something I don't rather not do. Uh, but the really existential problem at neocities has always been phishing sites. Um, phishing sites are really, really, really bad. they're not treated well, by hosting providers one of the biggest problems we had at Neocities early on was If we got any phishing sites on Neocities, they would assume that we were running a hacked WordPress blog and they would just. Turn off the server. And so like, yeah. One of the first things, one of the first things I recognized really early on was, Oh, yeah, this is like, you know, the actual front store, the thing that like serves Neocities and the and the servers that actually store that data should be, very different. Providers, and so actually I haven't done like a write up of the infrastructure of Neocities ever. So I guess this is like the first time describing it publicly, but, the servers that run the sort of web application and the like site storage and like the database and all of that sort of core infrastructure stuff that is all on a completely different, provider. Than. The CDN that actually, sends web data to the end users, , are, they're at different companies. And, and the reason the reason for this is because if I ever get into some weird hot water with the service provider, related to some data that was being served and they decided to just like, ban us mean you'll just be like, Oh, you can't be our customers anymore. And it'll take out our CDN, , but it won't take out the core infrastructure and we have backups for the CDN. So we can actually move to like other providers in the event that like this happens. Uh, but this has been the big problem with uh web hosting as like a small entity is that, when you get things like phishing attacks, you get reports of it. These providers they just sort of assume like, Oh, you're running a, you know, you know you've got like a WordPress blog. Cause I'm just using these like low end VPSs, you know, these like cheap sort of like. virtual servers to do with the CDN stuff. And the reason why is because, you know, if we were to like, do like, dedicated servers with like our own, like data center racks and stuff, it would be very expensive and we wouldn't be able to, um. We wouldn't be able to last long, you know, like spending that much money on infrastructure. Uh, you know, Neocities doesn't make a lot of money and again, but be careful about how we spend it. Uh, which I guess is one of the things that separates us from these like monster VC companies that just have like hundreds of millions of dollars and they just spend. Tons and tons of money and just throw it away and just, you know, not think about like the costs of these things at all. Um, versus Neocities which is just sort of this small, slowly growing sustainable entity that has to kind of live within its means. and. The problem with living within your means is that you're also kind of a shitty customer. So, so these people like, you know, like, our first VPN was just a bunch of Digital Ocean servers, right. And again, they just, they would get an abuse report and the, and the way abuse reports get reported is to the IP address, not to my nice contact email that I provided. For reporting it. they just sort of send it to whoever, whatever ISP controls the IP address, and then you're sort of expected, they're sort of expected to deal with the problem. And so DigitalOcean gets report and they can just shut down your servers. So yeah, one of our first major site outages, uh, that we had when we started Neocities was just that there was like, it wasn't even, you know, it wasn't even a phishing attack. I think it was like a DMCA takedown request for like a copyrighted image. And I'm pretty sure it was the NRA. Actually, that's that sent, that sent, the take down the National Rifle Association, like it was somewhat, I don't remember if it was something like being critical of the NRA or something, but they send the the DMCA takedown to Digital Ocean and Digital Ocean was like, Oh yeah, no, and they just shut all of our, we have like Eight servers and they shut all of them down. Not just the one that like they got the report on, they shut all of the servers down and they said, we are blocking this until you remove this. And, I, if I remember correctly, it wasn't even a valid, DMCA takedown. It was like about an image that like wasn't theirs or something. It was like, it was not, there's something um not right about the DMCA take, but yeah, for one DMCA complaint, they shut the entire thing down and yeah, Digital Ocean was, is, yeah, they're bad at that too. Like I've heard a lot of other stories from people where like, it's, it's like that where it's like a, simple. The DMCA complaint or like a phishing attack or whatever happens and then they just shut the whole thing down. and so that has been a really existential problem for dealing with the technical complexity of, with Neocities. So the way I solved that problem and it was insane, and it took a year and. I still can't believe it worked is I figured out how to actually use my own IP addresses, to, run our CDN. you, you can get IP addresses. Uh, they're kind of expensive now because they ran out. Of IPv4 addresses, you have to buy them from private providers. and I think it was like $4,000 to buy the IPv4 address block that we're using, which, which at the time, I'm pretty sure it was worth more than my car. but then the other thing is then you have to find providers that are okay with you routing your own IP, uh, IP address block. Cause most of them don't, right? Like Amazon doesn't let you do it. you know, none of these other providers let you do it. we can't use Amazon anyway because they charge like 30 times more for bandwidth. than like, the market rate is, it's just like, like our bandwidth costs would be more than we make. If we like used Amazon for anything, which is why we never use that stuff because it's just the, the transit's too expensive. but yeah, we, we did finally find a provider that let us use a Vultr specifically that let us use, uh, our bring our own IP addresses, uh, with the VPNs. Or, I'm sorry uh VPS is a virtual private servers, little rental, cheap sort of servers. Uh, and the other thing that happens, the the other problem with running your IP address is though, is that you have to know how to use BGP or border gateway protocol. Which is the sort of actual thing that makes the internet work. I mean, I think people think like, Oh, TCP IP. That's, that's, that's the internet. Uh, I would actually say that BGP is like a more important protocol for like how the web actually works and how data actually gets moved around. Um, TCP is more of just like this abstraction layer for BGP. Uh. I, I mean, that's probably not technically correct, but you know, it's just like the way I think about it, and BGP is really strange because, you know, when I first turned on BGP, I had like 10 servers all over the world and I wanted to like the data to route to like the nearest servers or like requests rather to route to the nearest servers. And. What would happen is that I launched 10 servers and all of the traffic in the United States, which would go to New York. And it was just like, why is it all going in New York? It's like going out of its way to go to New York. And the reason why is because they have some like peering agreement with Comcast in New York. And so, Comcast looks at that traffic that, BGP. interconnection stuff, and it's just like, Oh, we have a, we have a transit deal with them in New York, so just route it all there. Uh, so you have to do these things called BGP communities, which is sort of this way of like. Moving the traffic, like telling the traffic, don't do that. Don't go through exchanges. Only go through like a few of these, like, pure tier one providers that like actually have like connections in all of the cities and stuff. and there's, and there's no books on how this on, on how to do this stuff. There's no guides, on how to do, like, it's called an Anycast network an anycast CDN, you know, the only information you ever get when you Google, like, you know, BGP Anycast is basically, you get like promotional blog posts from CloudFlare saying that they have the best one and that it's complicated. No one else can ever do it as well as we do it and blah, blah, blah. Um. And so the last BGP book that was written like on just the topic of BGP itself, uh, predates 9/11, I think it was like an published in like 1999 or something like that. and it doesn't discuss anycast CDNs at all because this is just not what people use BGP for back then. Uh, and so yeah, I had to learn all of this from scratch and it was very difficult.

Jeremy So BGP is that kind of, is that related to DNS? Is that how it, when I try, I go to Neocities.org um, how it determines which server's gonna handle my request or what is BGP exactly?

Kyle Uh, BGP is, it's hard to describe. Uh, BGP and I still, you know, have for using it for years, still don't really understand sort of the premise of it. And how well, I just don't understand how it works. Uh, completely. But basically it's like you get IP addresses and you assign them to like a BGP server. You say the BGP server the server just sort of announces to other BGP servers that, Hey, I have these IP addresses and there I, you can route your traffic for if you're looking for these IP addresses, you can send the data here and, the only way that the network knows to trust you it's just through that just trust. It's, it's a completely trust driven system. And so like when I have an IP Address block. Uh, a bunch of IP addresses and I wanted to route them, like, make it so that you can route to them over the internet. Uh, I have to white list them with my upstream provider uh, there's an organization that like manages the IP addresses and they check to make sure that I actually own the IP addresses and they're like, okay, yeah, you can route these. That's cool. And, uh, and so then they white list it and then my servers announce to their servers and then their servers announce to like their servers and then their servers announce to their servers, and it just sort of cascades over the entire system. I don't know how many BGP servers there are, but there's like, I don't know, hundreds of thousands, if not millions of BGP servers out there. And basically They get updates through this thing called, I think it's called a routing table, uh, which is a pretty large table these days. I think it's like over 500,000 records or something. Um, it's getting bigger because people are splitting up the big IP address blocks into smaller IP address blocks, uh, because they're getting more expensive. And so, like, it's, you know, they're splitting them off and selling chunks of them and then making them smaller for that reason. But all of these machines get these updates and they sort of update their routing accordingly, uh, by adding sort of your routing stuff to their sort of table they have inside their router. And, um. And so all of a sudden, like you announce a BGP route or whatever, and within five or six seconds, the entire internet knows exactly how to route traffic to your machines. Uh, it's pretty incredible actually, like how that it works, you know, like that within seconds, like, you make a change to the BGP, you know, routing and all of the routers on the internet, get this information and the can then start routing traffic. It's really an incredible system. Uh, and it works. You know, for the most part it works pretty well, but every once in a while someone hijacks a BGP block or announces, or sorry an IP address block, uh, uh, or, or like, you know, starts routing BGP traffic that they're not supposed to be able to route. but it's a completely trust driven system. It's sort of like, you know, AT&T and Verizon. You know, trusting each other and saying like, Oh, you know, I'll accept your, your IP addresses and they better be right. Cause if they're not, like, it's going to screw a bunch of stuff. Uh, but yeah.

Jeremy And, and in your case it sounds like, say you purchase like a set of IP addresses and then, um, you have to get these IP addresses added to these, uh, you were calling them like BGP communities. Is that say like a Comcast or Verizon? Like

Kyle Well, also the, the, the naming is terrible for this stuff. So, BGP communities aren't actually communities. They're, they're like commands. they're sort of like codes that you punch in. And actually it's just a number usually. but basically it's just a way of sending commands to the upstream BGP servers. Uh, so it has nothing, I don't know why they're called communities. I hate the, they're called communities. they're, they're commands. They're BGP commands. And, for example, one of the commands that you can S, uh, communities you can use is, uh, don't announce to. Uh, internet exchanges. , so when you're doing an Anycast CDN with BGP, , one of the really important things you need to do is use providers that are more or less in all of the data centers that you have nodes in PO, they're called pops points of presence. And, . So want a transit provider in all of those, data centers that is like the same one. So for example, our two big providers are, uh, NTT, uh, which is a Nippon telephone and Telegraph. They're actually one of the bigger transit providers in the world. Uh, and, as a backup, I use a. I think it's some German GTT is what they're called there. They're all like . So yeah, it's a GTT, so it's just like, you know, but it's like Deutsche Telekom or something. Uh, I, I don't like using them as much because their routing is much. Less clean than NTT's. Uh, NTT does a better job of routing stuff to the correct location. Uh, but NTT also does a great job of like, occasionally fighting with like certain transit providers, uh, like this one in India in particular that I don't remember the name of. Uh, can be a situation where, if you're only have NTT as your provider, uh, your site will be inaccessible to certain parts of the internet, that are like, related to like an Indian, Telekom or something like that. Um, and so you have to have at least two providers. So I I S I tell my upstream provider, don't announce to internet exchanges because the internet exchanges means things like the, um, peering with Comcast that makes it so all the Comcast traffic goes to New York, right? So like, I don't want that. So I'm like, don't do that. Don't, don't announce to those exchanges. Usually if you're just doing unicast and you don't care, uh, you want those exchanges because they're cheaper. Like, it's presumably cheaper. to to connect to a provider for free, uh, than to go through like NTT or whatever, because they sort of charge for bandwidth. Yeah. Usually you want that, but in this case, we don't want that because we're we're trying to even out the traffic. Um, the other thing, uh, is I say, like, don't announce to any providers at all except for NTT and GTT. So whichever, like random, like transit providers are there that aren't in all of the data centers, uh, those don't get the memo that. the data's like routable through them. , and then, the other thing I do is I do this thing called a prepend, , , AS prepend to, uh, GTT, so the way that BGP does routing is it there's these identifiers for networks called uh ASNs, or, uh, I, I think they're called like, autonomous system numbers. And so like, Comcast has an ASN, like, Neocities has an ASN, because we do BGP and have IP addresses. If you do any IP address routing, you have to have an ASN. uh NTT has an ASN, et cetera, et cetera. and they have one ASN for the whole organization, usually. the way BGP does traffic routing, in terms of like figuring out which, provider to send the traffic to. Cause like you can get announces from multiple providers. In my case, networks get announces from NTT and GTT and it has to decide which of those two it wants to like route with, right? Because it has a choice and that choice a lot of times is a business choice there'll be like, Oh, route through uh GTT because it's cheaper than NTT and we don't want to. Pay as much for NTT or whatever. but what I can do is I can, I can sometimes have control over that and be like, I want you to route through NTT in instead, but the only way that I can really do that is uh, we're, we're just adding more ASNs to the routing for GTT. So what I do is I just sort of add my own ASN three more times, uh, to their announcement. Of the route, and then it looks like a longer route because there's more ASNs attached to it. and then, BGP just says, Oh, well the NTT one is uh less ASNs which in my thought process means that it's closer. So I'm gonna route through this instead. it's not a guarantee that it's going to work that way, but that's like what you're supposed to do to like make it so that it prefers certain kinds of routing. Uh, but you know, it's, it's all dependent on what their routers want to do. And this is whole like a drop list. Uh, all this stuff is Cisco routers by the way. Like 90% of this stuff is Cisco. And so there's this like guide from Cisco on how BGP routers decide the optimal routes. And it's kind of the standard for like, how to figure out, like, where your traffic can actually go. And there's like a whole like, drop list of like, you know, step one, it does this. Step two, it checks for this. step three is checks for this. Um, it's very complicated and weird. I really should just make a guide on how to do BGP Anycast stuff. But, I, I dunno, I just haven't done it yet. I mean, a lot of the reason is that I don't want people to get into doing BGP stuff just because it's, they think it's a cool, technical problem to solve because it's, you shouldn't use it unless you have to. so the reason why I did all the BGP stuff is because. When we route our IP addresses, it wasn't about saving money on transit, which it kind kinda does. It wasn't about making it so that like providing custom domain support is easier because it does do that. because we can just have domains switch to a single IP address that we control. Uh, and so, you know, that's a lot easier than, cause then I don't have to tell everyone with a domain on Neocities to switch their IP addresses anymore. So that's, that was nice. . And it's not really about making my own anycast network, uh, you know, which has kinda been an interesting thing to work on, but not, not something I would do by default that I would like be interested in doing. The reason why we did it fundamentally is so that when we get uh phishing phishing up complaints, or if we get DMCA complaints or if we get malware complaints or we get any kind of complaints, they get sent to. My email because I control the IP address.

And so when I control the email IP address, then the complaints go to me and not to a internet provider that I'm not paying enough to not shut down all of our stuff. that's the reason why we built this Anycast CDN. And it had nothing to do with like performance. It had nothing to do with like even the domain stuff. It was just to make it so that we can safely host millions of sites without getting shut down instantly. Every time that some dumb complaint comes in about some piece of content that we're helping to provide. That's the only reason why we did it. I would have never done it if that was not the case. But yeah, if you are doing real infrastructure shit and you're hosting like. Millions of sites where people are doing any kind of stuff with like a lot of third party content. Uh, that's kind of the point when you really do have to start running your own IP addresses and infrastructure, uh, because otherwise people don't treat you like an internet service provider. They treat you like a, again, like a WordPress blog. You know, and if you look at all the big companies out there, uh, most of them do run their own infrastructure and have their own IP addresses and stuff, you know, like, GitHub does a, Uber does, you know, like all these sort of major sites, like they do ultimately, do we actually run, run their own IP addresses at the end. Yeah.

Jeremy so if you were somebody who, let's say you were hosting your infrastructure on AWS or digital ocean, if you got like a take down notice that would go to . Amazon or that would go to digital ocean. It wouldn't come to you, so you would have no control over how to deal with it.

Kyle Right? And they have their own policies as to like, whether, you know they're going to allow that content or not. And you know, their policies Trump yours because, it's their infrastructure. And so, yeah, if they get a, a sort of a DMCA take down and let's say it's not even a valid, DMCA take down, let's say that it's like, you know, it's not formed correctly or it's illegitimate. Uh. They send the complaint, you send the complaint to Amazon and they're like, Oh, if you don't take this down we'll take your, your sites down. And, um, that's a weird system because, you know, it also doesn't allow you to push back on it, right? Like, you can't be like, uh, I disagree with you. This is not a valid DMCA take down. We're not going to enforce this, you know, like this, or, or it's like, you know, you're just trying to silence someone that's critical of your business and we're not going to do that. We've had that before where people come in and they're like, they file complaints that are just like DMC take-downs or like, you know. The slander. You know, one of the recent one is that someone's like, there's some like Italian car parts company or something and someone had like a bad experience with them or they got ripped off or something and they made a webpage on Neocities that was like, Hey, these guys like rip people off and they're scammy and this company has been like losing their minds. They keep sending me emails. They're like, you've got to take this down. Immediately the Italian police told me to email you and stuff and it's just like the Italian police, or it was just like, well, that's not. Well, first of all, we're not an Italian company, so that doesn't mean anything to me. Uh, secondly, uh, this isn't a legal request, but again, it's just when you don't have control over that, It goes to the, Digital Ocean or abuse staff or whatever, and then they're just sort of like, whatever they decide ends up being like, what you have to do, because otherwise they're going to shut all your shit down. Uh, and that was a really bad position to be in. You know, I like to be able to like actually control that stuff. Um, legally, uh, you're in the clear for hosting almost anything. I mean, when you host content, the way the law works is that I'm not liable for third party content. So if someone posts something, even if it's illegal, uh, I'm not liable for that content necessarily. Uh, the person that posted that content, holds the liability. So like, if someone writes a complaint about a company or whatever, or, you know, as critical of somebody. Or, you know, even if it's like a death threat against somebody or something, I'm not liable for that. I'm not, I'm not the one that goes to jail for that. verizon executives don't go to jail if someone uses a Verizon cell phone to help commit a robbery or something. Right? Like, it's, that's, it's sort of that argument. and actually has been some talk recently of revisiting that law and removing some of that, like liability protection, uh, which I'm. Very concerned about because, uh, you know, if they make it legally liable for the providers to host content, that's, that's a real big problem for companies like Neocities because we don't really have the resources, to sort of prescreen all of that content and make these sort of arbitrary decisions based on the legal side of it. , and, I do have some concern about that, that proposal. I think people are kind of like, Oh, yeah, let's, let's stop Yahoo from like, you know, being a platform for hate or whatever, and yeah, I feel you on that. But, you know, you have to understand that like, you know, these kinds of laws benefit companies like YouTube or Google because they have the means to deal with them. And we don't, you know, like, uh, it would, it would be very devastating to the future of Neocities if we could be, or like arrested for stuff that other people post to Neocities, you know, like, that would be bad, you know, that'd be the kind of thing that would make me think about not running Neo cities anymore. You know?

Jeremy You were talking about how you got your own IP addresses and, you were hosted on Vultr.

I think that's, that's interesting because, when I heard that you had built out your own CDN. I was under the assumption that like, Oh, does, you know, does that mean that they're racking servers at data centers around the world?

So you can actually use a, VPS provider and then provide your own IPs and then make that sort of, connection between your own IPs and these providers. Like you were mentioning NTT and GTT and that way, like a take down request, it doesn't go to Vultr. It just goes straight to you.

Kyle Do you want to guess how much I'm running? Uh, how much it costs to run our, our anycast CDN right now? Take a guess.

Jeremy How about, Five grand a month?

Kyle No, it's a, it's $130 a month. Yeah, yeah. For 100 million views a month, it's about $130 and we're like, eh, that's, that's under our capacity. Like I think we could like push twice as much transit before we'd have to like spend more. Yeah, yeah, yeah. , you know, it's like the, the sort of nature of, of venture capitalism and like these startups and stuff is that they're like, Oh, Oh, we've got a bajillion, you know, customers or whatever. And, you know, ooh, we get 8 trillion hits a second or whatever. Um, it, , it's the wizard of Oz wizard, you know, like, he, he's like behind this curtain, you know, pulling the buttons and pushing things and there's like steam coming out of it or whatever. the actual like story behind most of these startups when they're not trying to just sort of sell numbers because they don't make any money. And so the only way they can like get more money is to sell numbers to investors. Uh. The, the sort of reality of these service providers it's pretty, underwhelming, you know, because, because, if you actually like, do research and you like implement it correctly, you know, pushing 30 terabytes of traffic a month, it only costs like a couple hundred bucks. Like, it doesn't cost like $20,000, or you know, $100,000 or whatever. Um, you know, you can certainly make it, you know, if you make the wrong choices and you'd go with overpriced transit providers, yeah. You can spend that much money. Um, in fact, GitHub recently, I think switched to like using Fastly as their CDN and I think Fastly. Uh, it's a similar vibe to like CloudFlare or whatever. It's just like a, I don't know, like a CDN provider, anycast network or blah, blah. Um, and, uh, and, you know, and, and, and, you know, all tons of respect to the Fastly team and everything. Like, I actually know a lot of people that work at Fastly and like, they're, they're good friends and whatever, but, yeah, we, we could never use Fastly because they charge like. It's like 9 to 20 cents per gigabyte or something like that. And I think if you ran the numbers, maybe we, we push about, I don't know, 20 or 30 terabytes a month on average. yeah, let's say just 20 or 30 terabytes. I mean, I, I is that, I don't know if that's a big or small number, right? It just, it's what we do. Um, and if I, but if I did that on Amazon or like Fastly or any of these other providers. Like I, I don't remember what the numbers are. It'd be like $5,000 a month or something for and so $200 for our transit bill. And it's just when you, when you, when you run, you know, when you run a business like that, you don't make a lot of money. That's like how you fail, you know? And, uh, but yeah, like the, I think the actual market rate. I think so we get, yeah, when you use the VPS with Vultr, I think they give you, like, I use like the $10 a month ones for the VPSs like it's, it's, I think it's like that, I think it only has one CPU on each of the servers. The thing is, is it runs nginx.

And so nginx is this like ultra efficient, uh, P like HTTP server. And then there's like, some code that I've written in our, our nginx file is ridiculously complex, uh, but it's basically just like, you know, running the CDN for us and it uses almost no CPU and it, you know, basically just pushes out transit. pushed out webpages and, you know, it's just a big IO machine input output. Um, and I think we get like three or four terabytes for instance, or something like that. they give us a certain amount of transit prebuilt in to the sea uh VPS. And so we don't pay that. Like we just pay for the VPS. And then like I think any bandwidth over that, that is like a, I think it's like a cent per gigabyte compared to nine to 20 cents per gigabyte. It's a cent per gigabyte and . Uh, I, I think it's like, maybe it's 2 cents in, in Asia or something like that, but, you know, it's, it's so much so, much cheaper than that. if you actually rack servers into data centers and you get IP transit from like NTT directly or whatever, uh, they charge you a lot upfront because it's like, they don't, they don't charge you based on bandwidth. They just give you a hookup, like a pipe. You know, they're just like, here's a 10 gigabit connection to the internet and we'll charge you $2,000 a month for whatever. Right. Um, but if you look at the rates for that, uh, that transits like point, it's not even 1 cent per gigabyte. It's like 0.001 cent per gigabyte. It's like a 10th of a penny per gigabyte or something like that. So that ball gets way cheaper than that even. Uh, and so, uh, you know, like a cent per gigabyte. It's like, that's like not even the market rate for this stuff right now. You know, like, it's cheap. Uh, and it's one of the, it's one of the brilliant. Brilliant business strategies of companies like Amazon with Amazon web services and like Google cloud and all this other nonsense is that they've somehow snookered like deceived everyone in the space into thinking that. Nine to 20 cents per gigabyte is the correct price to pay for transit. And it's, it's the, it's the con of the century. It's really amazing to me but, but it's also their business strategy, right? Like their business, you know, how much does it cost to put stuff into Amazon? Zero. They charge nothing to put to move it into their system, but then they make it extremely expensive to get the data out. And it's no surprise to me that the first service that Amazon web services provided was S3, which is just like the way to store mass amounts of data or whatever, and then make it so that all the other stuff has to be in the same data center in order to get reasonable access, speed access to that. Uh. And then charge an enormous amount of money to bring it out. And I just see these companies make this mistake over and over and over again. Like, we even have some, you know, just like, you know, like web hosting companies and like, you know, a lot of the VC backed ones, uh, you know, even some web hosting, I guess sort of like, you know, creative web hosting providers, like alternatives to Neocities. There are few, um, yeah, they, they all, when I look at their network and I like, you know, trace route, their servers, they're all using Amazon web services and they're always in Google cloud and they're, their bandwidth bills must be just absolutely astronomical. And it just drives me crazy because it's like, they're pretty much just making an. unsustainable, like infrastructure for when they realize that, you know, sad, but also correct truth that there's just not a lot of money in this stuff. , there's been this weird thing recently where. There's actually has been venture capitalists getting interested in sort of like Neocities, like web hosting recently, which is really weird to me. Uh, yeah, and they've invested in certain, like static web hosting providers. Uh, I'd rather not name names, uh, but I've had a few investors come to me now and be like, Hey, do you want to take investment for Neocities? And like, you know, and like real numbers, like millions of dollars. Uh, I, I'm sure that I, I could've said yes to some of these agreements and like, you know, Neocities hire like a bunch of people, but if. You know, and I thought about it, you know, cause I think about any offers I get, but if you look at the offers, you know, none of them are all that great on paper. Uh, but also they sort of put your company into the sort of treadmill where it's like, if you don't create 10 X growth, um. That your company fails, right? And so when you get that money, when you raise that kind of money, you're sort of putting yourself on a track, you know, and that track has to have like 10 X growth. And if it doesn't have 10 X growth, then you, you'll just explode. And like, your company will fail and you'll have to like shut down all the websites and stuff, right? Or like all the infrastructure. Um, and you know, a lot of people have taken that money. In the space, and I don't know how well that's going to go for them because, uh, you know, I love providing creative web hosting for people. I love having a community of people that do awesome stuff. but I also, I also, you know. Realize that, you know, I don't think that there's an Uber here. You know, I don't think that there's like this massive growth startup here. That's that, . Is going to make it so that you know, you, you to justify as that kind of investment. And so I guess my newest strategy is just sort of been to, uh, just tell, actually, just tell investors, just be like, you know, Hey, thanks for the offer. But honestly, like, I, I don't think this is a VC space and I don't think it's appropriate. , for this to be a VC space, but at the same time, it's that, that stuff also is kind of an existential risk to providers like Neocities, because, in their attempt to create like a monopoly for like web hosting or whatever with VC money. which is the only way this stuff ever works by the way, is if you actually create a monopoly or whatever. , but at the same time they can sort of like starve out the space long enough that, you know. Providers, like Neocities can't, can't exist. , but I, I'm not worried about that at all, just because of like, again, so much of my time has been spent on like, how can we cut costs? How can we cut costs? How can we make this sustainable? And, , that really paid off in the sense that if you look at other web hosting providers, uh, especially in like the sort of business kind of like, you know, GitHubby kind of realm. . they, there's just providers that just give it out for free. So for example, like one of the sort of common, , web hosting solutions a lot of people have for like, just business static sites is they host the page on GitHub, GitHub Pages or whatever, right? And then, um, and then they just put CloudFlare in front of it. So, so they like, they like have GitHub is like sort of the, the, the web page provider, which is free. They just give it out for free. Uh, and then you put CloudFlare in front of it, and then that's free and you've got a free website. You know, you don't have to spend money on it, you know, and. So, like, you know, there's just not a lot of actual, I guess, money in that space for a lot of that reason too. Um, so yeah, like, I mean, it's never been like a more of like a, it, Neocitites has never been focused on like, um, the money side of this stuff of like, Oh, how can we make money doing this? It's just, it's always just been like, you know, there's, there's way cheaper providers for like, you know, I mean, well, I mean, our main web hosting is free, but then you can become a supporter and, you know, it's $5 a month and it's always been $5 a month, and there's. There's like a bajillion web hosts out there that will give you more stuff for less than that. Right. Uh. And like, I think, I think GoDaddy has a one where it's like you get a PHP and a MySQL database and the SSH access, and it's a dollar a month or something like that. Like they don't even make, like if you look at credit card fees, like it's 30 cents plus 2.9% so I think it's like, They're only getting like 60 cents of that, or 50 you know, like half. They only get like half of that, but dollar a month credit card charge. Right. So there's like, they're, they're making it, they're, they're not even making money on it. They're just losing money on that. And I guess the reason why is because they want people to like. You know, move their dom buy their domains from them and, you know, like buy other stuff. That's not just the web hosting. So a lot of it's just the, like, they just subsidize it so that, uh, people will buy their other stuff or whatever. Right. Um,

Jeremy Right. It's a, it's a loss leader

Kyle Yeah, exactly. And so, yeah, like it's never been, I've never thought to myself like, Oh, I should drop, you know, our supporter plan should be $5 or a, a dollar a month, or a year or whatever. Cause like, again, it's just, there's no reason to go down that treadmill and, and you know, we do have enough people that are supporters on Neocities that like, you know, sustain, the existence of the site and, and, and, and I think a lot of it is just because I think . You know, it's not just a raw numbers thing too. A lot of people, it is still a lot of the damn developers, like the people that, you know, the GitHub people or whatever, like they just, it's just a big numbers game and just like, they don't, Uh, if I can be a little critical, they tend to be very entitled and very like numbers oriented and very like, um, kind of expect. You know, they have a lot of expectations of getting things for free. And it's been a really big problem in the open source community in general, is that you've got all these people, you know, making six figures at these like fancy internet companies and then like all of the tooling and software that they use to make that money, uh, is done by these sort of like, you know, freelance, like sort of. Developers and they just sort of like take the software for free and they don't pay for any of it or pay the developer that works on it. And then when anything goes wrong, they go into their GitHub issues and they just scream at them as if like, they're entitled to the software, like, Oh, how dare you, you need to fix this immediately. It's destroyed, you know, why aren't you fixing this? What's you're bad? You know? And it's just like, it's like you're not even paying them, you know? It's just

Jeremy Yeah, it's, it's, it's pretty remarkable actually, like how much, you know, in terms of the tooling and infrastructure out there is just being built by people who, they have no obligation to other people. They're, they're not being paid. And yet, um, that's basically what, you know, the internet and what most of the apps we use today are built on. It's pretty, pretty amazing that it works at all.

Kyle Yeah. So it's just, you know, it's just, and there's all the big tech companies want to like hyper focus on developers and like get them into their little, like their squadrons, you know, like, you know, every, every, every major tech company has its own, like, you know, web application framework, you know, like stuff. Facebook has react and like, um, Google has, you know, views or, I don't know, some other one that I don't remember. Angular, that's it angular. Yeah. And. you know, and then Microsoft comes in And now they're like, Oh, here, a visual studio code. You know, like it's, you use, use this. And, and all programmers immediately, like, they forget about internet Explorer 6. They forget about Microsoft's like, pretty awful practices, uh, historically of like trying to monopolize developers and like, use that to like, you know, make money. And they're just like, Oh, here look, there's a free thing. Let's use visual studio code. It's like basically the same thing as like textmate and Atom and sublime text, except it's made by Microsoft and it's, you know. And, and, and, and, and again, this is like another one of these, like, things were pretty much just hate me for pointing this out, but it's like, you know, Microsoft is not giving you a code editor for free, you know, because out of the goodness of their hearts, you know, like they have an agenda in mind. they go to their shareholders meetings and they talk about how they're like gonna capture development markets and stuff. You know, like you're, you're being led to the slaughter, you know? And so I won't use stuff like visual studio code, because again, it's like I don't know what Microsoft's agenda here is, but it's not to give you a free piece of software out of the goodness of their hearts. You know, like they have an agenda here. They also acquired GitHub, you know. So again, it's just like. That whole developer market a, I just don't ever really feel myself ideologically close to that group of people. I think they're kind of like, they're just kind of cold and calculating and just like and cheap and, and that, and then also like. Uh, so, so yeah, like I, Neocities as a strategy is always focused on people that want to use websites, , for creativity, for like, you know, artistic expression, , for, , sort of new ways to like, provide content. That's interesting. And, I'm not looking at this sort of like, Oh, how can we acquire developers, uh, to Neocities or whatever? Right. I just sort of consider that like its own world and we focus on the creatives and I think because we focused on the creatives of the web and not the developers of the web, I think that's been the major reason why a Neocities has been so successful. Yeah.

Jeremy Cool. Is there anything else that you'd like to mention or, or think we should've talked about.

Kyle We haven't talked about the GeoCities restoration project I've been doing.

Jeremy Can you go a little bit into your work on that and why you feel like that's important.

Kyle Yeah. it's something I've always been interested in is just sort of the original, uh, GeoCities archive and, uh, making it so that people can kind of uh, see the, the history of the web, and be able to sort of like understand it and just kind of surf through it because there's, you know. There was millions of, there was like six or 7 million sites on GeoCities that are gone. but the, the information they provided was still kind of interesting. You know, like the, the, the web pages are kind of cool looking. They're, they're kind of artistic and creative and weird. Um, sometimes by accident they just sort of, you know, goofy. But, um. You know, they were still cool. And I've always like found it really interesting to kind of go through them and look at them and just sort of explore them and see what's there. Um, it's like you're a hiker, right? And you're just sort of hiking through this like weird part of the woods, like mountains that no one's ever been through before or walking in, you're walking and all of a sudden you discover this just sort of massive set of just crazy ruins. Like they're like, I don't know, like Roman style, like, you know, ruins or something like that, you know? And you just kind of walk through it and you're just like, look at all these, like, there's all this cool stuff, and you're just kind of like walking through and looking at it, you're like, this is amazing. Like, this was all really, what is this? Right? Like, this is fascinating. Um, and that's sort of the vibe I've always gotten when I look at the, the GeoCities stuff. and so. What I said to myself last year was, Hey, you know, I, I want to spend some time, restoring it. Like, I want to restore it, , to, to sort of a surf surfable conditions. What I've been describing it as like a, so it's easy to kind of look at a lot of the sites and kind of like go through them. . And a lot of this has just been taking stuff I learned from Neocities, like having a visual gallery of the websites for example. Right. and, sort of making a visual gallery of the original GeoCities sites too so that you can, it's like easy to kind of visually look at them before you go there. Cause, you know, being able to see them visually gives you cues as to like, Oh, this could be an interesting site. the other really interesting thing that happened as part of this whole process, , was that, uh, this, this amazing developer down in, uh. the Bay area, uh, he goes by fero, feross on Twitter. , and, um, he ported a mini synthesizer to web browsers, uh, using, uh, a web assembly, uh, and he made it, so he actually made this awesome web portal called bitmidi.com, it's, it's, it's a website where you can actually listen to too midi files and there's like millions and millions of midi files there. Uh, I actually, I actually, uh, export it all the mini files out of, uh, GeoCities and gave him a copy of it when I was hanging out with them at this summer, uh, just to like, like add added to the database if he wanted to. So now when you go to the, uh, GeoCities sites in our archive that we're about to launch, we're going to probably launch it in the next couple of weeks here. uh, it actually plays the midi files on the sites again. So when you load like the GeoCities sites, it will play the music. You have to click on the sites before they'll start playing. Um, because, uh, Google doesn't let sites auto play anymore. Uh. Or like sorry Chrome doesn't, uh, because you know, new sites were like starting to autoplay videos and we're driving everyone crazy, so they, they got rid of that. So I haven't quite figured out the best way to do that interface yet so that people know that they can start playing music or whatever. I might just put like a, I might actually like, just inject like a weird, uh, audio, like looking like thing on the top right or something. I don't know, figure it out, but, when it's launched, it'll basically just be a giant museum of all of the, GeoCities sites, we're not building this for people that have like old computers running, like Netscape 4, this is for new web browsers so that anyone that has a web browser now can actually load the HTML of these sites that were in the GeoCities archive that were GeoCities sites before it shut down. And lo and behold, most of the sites still load. But they still work. Like they still render that, you know, the, the, the size of the page might be incorrect or something. Right. There might be some, like, you know, UI like glitch, that makes it so it doesn't look as cool as it used to or whatever. But for the most part, all the sites work and, , that's something that's, I will say is also like a really cool thing about the web is that. It's, you know, about HTML specifically is that, you know, it tends to age really gracefully, right? Like, sites that are 30 years old still work in new browsers, and you know, how many other languages, platforms can you say that about? You know, like when you make an HTML page, you know, 30 years later it's still loads. It's still works

Jeremy Yeah, it's pretty incredible.

Kyle so that staying power of HTML to me is one of the more interesting things about it, when you make a site on Neocities or on when you made a site on geo cities or when you made the first website ever, , with Tim Berners-Lee on this, like a test computer, 30 years from now, every site that's on Neocities will probably still work in whatever web browser they're using at the time. And that's, that's amazing. You know, like, that's, that's cool. Like, yeah.

Jeremy that's like in direct contrast to, iOS apps made now where, a lot of apps, as the operating system gets upgraded, there's old apps that just no longer work at all. And the only way to get them to work is for. The original developers to go in and change code, but they're, you know, they're long gone.

They've, they've moved on. And so it's pretty amazing that, , with the web, like something that somebody made in the 90s you can still open it up 20 years later and have it all, all work.

Kyle Oh yeah, I was actually, I saw there's a viral tweet this morning of a guy that's chastising another guy because he built a Hackintosh, uh, a Hackintosh is like a, it's a Macintosh. It's like, it's a PC, but it's like, runs MacOS like there's hacks where you can actually like run MacOS on a PC instead of like a, you know, Apple's hardware or whatever. , and one of the big problems, I guess that Hackintosh people have is that. if Apple upgrades like to a new operating system and it won't work with the Hackintosh anymore, , it can make it so. If you're an iOS developer, , you can't publish your, your software because sometimes they make it so that you have to upgrade Xcode. Otherwise you can't like publish to like. IOS anymore. the software in that space is so brittle and it doesn't even last a single development cycle sometimes, software just tends to erode very quickly, um, but HTML doesn't, you know, HTML has the sort of magic staying power. And, it's my hope that it continues to have that magic staying power, um, and well into the future. And I think the way that you. Improve that is that you make it. So it's easier for people to just make static HTML documents and not have to sort of depend on all this sort of backend goop, uh, and, uh, very complicated JavaScript stuff even, uh, in order to, for it to work. I, I wish web browser people would be a little more focused on like, okay, how can we just. Make life better for people just making static HTML. But yeah, in terms of, uh, the, the archive stuff, um, we've launched a new project, called restorative land, uh, which is just sort of the base plate for, , a series of, . Archive restoration projects that we're planning to do in 2020. , one of them is the restore of the GeoCities archive, which is like the first obvious one to do. , there are some GeoCities archives out there, but they haven't been updated in like 10 years. They're kind of falling apart and they've got a lot of problems and they're not very accessible. you know, we're also working on, uh, some other, uh, web properties that are going to get restored. AOL had web pages. I don't know how many people know that, you know. Yeah. Yeah, yeah. AOL users had their own web hosting space too, and uh, the internet archive has backed a lot of that up. So, , a lot of that information is, is there, you know, a lot of stuff that we're going to build for storing the GeoCities pages is also stuff that we're going to be able to use on. You know, other properties like AOL and also Netscape had a web hosting service for awhile. Uh, there was a bunch of them, and they're all fundamentally the same kind of HTML, , because they're designed to work for the browsers of their period. And so, anything we use to like. Clean up and fix up uh GeoCities pages can also be used on these other portals too. And so we're going to just sort of provide all of these. It's like a weird museum of like historical websites. that's, that's a, I'm going to be doing a lot of work on that in 2020. So I'm looking forward to that. And there's gonna be a lot of interesting new web platforms to surf. So, uh, look forward to that.

Jeremy Yeah, I think that's super exciting because, you know, I remember like there were all sorts of different GeoCities pages and sort of being able to, , curate or create this environment where people can kind of discover, um, they can look up specific topics or be able to see like, what were people thinking in that time.

Um, you know, having a user friendly way of kind of diving through that. That sounds like, that sounds super fun.

Kyle Yeah, yeah, exactly. And one of the interesting things about GeoCities, which, you know, at the time, and I thought that it was stupid, but, um, the neighborhoods, so like when you had geocities sites, they had neighborhoods, uh, which are sort of these like, sub sections of GeoCities sites that were sort of vaguely. Uh, related to the content of the sites themselves. So for example, there was area 51 and area 51 was like, conspiracy stuff, aliens, like any kind of cyber punk kind of stuff. . , but then there was like, Tokyo, which was like, Asian culture stuff, but then also involved a lot of anime and stuff like that. there was a, I think it was called . , pets Berg, which was just like webpages for people's pets. there was a West Hollywood, which was, , uh, the LGBT community of GeoCities . Uh, and in fact, uh, David Bohnett, the founder of GeoCities, , was gay. in an interview he did later on, I don't remember, uh. Who did the interview, but it was very illuminating, he said that one of the big reasons he started GeoCities was cause he wanted to create a platform for the LGBT community to be able to express themselves and communicate with each other. And so, uh, David was, uh, I think internally, probably a very strong defender of the sort of LGBT community on GeoCities, uh, and in the West Hollywood section, which, you know. Could tend to get a little racy, uh, particularly for like the sort of, sort of standards of the 90s. You know, there's some, there's some stuff on there that's like, you know, pretty, uh, pretty adult, not safe for work. I'll, uh, even to this day, and, and there was also a cause, like a lot of these neighborhoods were named after like weird parts of LA. I've never been to, , one of the neighborhoods, it's called rodeo drive, I think. And now you're from, if you're from, you're from, you're from the area, so you might know this, but, uh, I thought rodeo drive until like, you know, four months ago was like. I thought it meant like Cowboys or like, you know, like, you know, like I don't know, like cow cattle rustling or something. Cause like I, but, but like when in fact rodeo drive is, I guess this like really fancy luxury shopping mall district in LA or something.

Jeremy yeah. It's rodeo drive in Beverly Hills.

Kyle right. And I had no idea, cause I'd, you know, I'd never been to Beverly Hills. the fanciest place I ever, you buy stuff is like, REI, you know, like, that's

Jeremy which can get pretty pricy to be fair

Kyle yeah. Oh, yeah, yeah. That's like, that's my idea of luxury shopping. You know, like, I'm not really into like Gucci handbags or whatever, you know, so.

Jeremy Right. But some smartwool.

Kyle Yeah, yeah, exactly. Oh, go on. That's just survival tactics there. Yeah, for sure. Now, I grew up in Minnesota. The first thing they do is teach you how to like, not die in cold weather.

Jeremy That's a good skill.

Kyle Yeah.

But, um, the cool thing about those neighborhoods is that they've really helped to sort of separate the interests of the sites. it gives you a way to kind of fine tune the sort of stuff that you're looking at. And. That's actually been very helpful, uh, for trying and trying to provide a visual gallery of the sites, because, , you know, with GeoCities, you can be like, yeah, Tokyo is the weird anime section and like Japanese culture and stuff. But then if I ever make a museum for like, I don't know, let's say angel fire, right? Because like, I mean, are they going to be a site in 10 years? . They're, you know,

Jeremy Oh, are they still around?

Kyle They are still around. Yeah. They are still around. Um, the internet, uh, they have a, uh, I don't know if the internet archives done this yet, but one of the neat things about, uh, angel fire's that their robots file, uh, provides a site map for all of the sites on angel fire. And so it's actually pretty easy to archive angel fire because they just give you a list of all the sites on, on, on angel fire, which is pretty awesome. I actually actually did that with Neocities recently. After looking at it, I was just like, Oh yeah, I should make a site map file. But, uh, anyway, um, but when I, if I ever provided a museum of like, uh, of angel fire sites, it would just be like a hundred, a hundred million just sites are just alphabetized from a to Z. Uh, with the username, right? Because there's no neighborhoods, it's just usernames. And so like, uh, that categorization used to be a lot, you know, more important back in the 90s, like when you had things like Yahoo, which didn't, you know, was a search engine of sorts, but it was sort of like a categorized, curated search engine. So there'd be like a sub sections of Yahoo that were like, you know, anime. And then the subsection of that would be like sailor moon, right? And then there'd be a bunch of Sailor Moon sites, uh. The, they don't do that anymore. Right. And, um, so I don't know how I'm, you know, arrange like angel fire or Netscape sites or whatever. Right. Because like, what's the best way to provide that content without having that sort of like way of fine tuning the sort of nature of that content a little bit. Um. Yeah. I haven't figured it out yet to be honest with you. Like I, I, there might be some programmatic way to be like, Oh yeah, like, this is the, these are the most important. Like, these are, you know, to like separate outside based on like, you know, search terms or something like that. Right. Like, like, look for the word, anime. And they'd be like, Oh yeah, it has anime in it it's probably an anime site or something. Right. But I haven't quite. Figured out the best way to do that categorization yet. So the GeoCities stuff's kind of easy in that sense, because I kind of got that for free. But when I start looking at these other data sets, it's going to be a challenge to kind of figure out how to like make the surfing of this like an interesting experience. And like, that's, um, that's the problem that like, we're going to be running into a lot of, uh, once geo cities has done. Yeah.

Jeremy That sounds like that's going to be a, yeah, an interesting concept to tackle. I mean, if you think about it, that's kind of the same problem that someone like, say Google or Twitch or whatever, all these kind of groups have in terms of . They have so much content, but, um, they have to have some way of driving people to the content that might be interested interesting to them.

And you're sort of kind of dealing with the same problem, but with even less metadata. Right? There's no tags and no, uh, topics, things like

Kyle Yeah. there's a certain truth to this too, that a lot of the reason why a lot of these platforms have failed, uh, or a lot of these like mediums have failed is simply because. They didn't do a good job of aggregating this content in a way that was actually useful to people. Uh, that was actually interesting. So, for example, uh, one of the things that I did where there was a big terabyte or a dump of like a bunch of myspace music recently, um, it was just a big pile of random files that like, were named weird and. I, made a Pandora like music player for it that would just like, play random files from that. But it was like in a continuous way, like similar to like when you like start a radio station on Pandora or I guess like, um, maybe people don't use Pandora anymore. Uh, Spotify radio or, you know, seeing any kind of like a radio state. You know, you type in, I'm into, I don't know, like Sonic youth and it's just like, plays, like, you know, music related to Sonic youth, of which there is almost none. So maybe try a different, you know, it's just like, you get like all of the three or four like bands from like grunge era, like New York, where they just like, you know, record five minutes of an amplifier overloading or something like that. But, um, but yeah, it was, if my space music had decided to do that and was like, Hey, let's make myspace radio with, we have like hundreds, like millions and millions of these, like awesome bands making this really cool, like music that's like, you know, independent. And no one's ever discovered it before. If they had made like a radio service for that or some kind of way to get people to kind of start listening to it more actively, then, you know, maybe maybe they wouldn't have like completely failed like they did. Right. Um, maybe if, maybe if Yahoo had done a better job of like curating and providing like a list of the sites, Uh, that were available. Maybe Yahoo would still be around. Right. It was just, um, you know, typing in stuff you're looking for into a text box is not the only way that people. Want to or should discover content, right? Sometimes they don't know what they're looking for. And this to me, is the really critical lesson and mistake that everyone in the tech industry makes. It's that it's not just about what the person wants, it's about understanding, . What they might find. Right. And it's, I think that's a skill that's really lost right now, and that, you know, more people need to understand is that, um, you know, sometimes you're looking for something, right? I'm trying to find a recipe for, I don't know, like a vegan, uh, hippy bowls or something. Some, but like, sometimes you don't know what you're looking for. You're like, Oh, what do I want for dinner? Right? Like. I don't know, like, and you just want to get a list of just stuff. You know, you know, it's why, why cookbooks exists, right? It's not you can open it up and kind of like, look and be like, Oh, just look at the pictures and be like, Oh, that sounds that. That's interesting. Maybe I'll try that. Right. Um, and, and, you know, so the web needs to be better at that, at providing ways for people to explore, uh, to surf, uh, to discover new things. And I think that's something that's like, you know, were there, a lot of these companies fall apart and have failed. It's just that, you know, they've had this content that was on their platform, but then they've provided terrible, terrible. Um, they've, they've just not provided good ways to actually explore that content and, and,

Jeremy Yeah. It's the discoverability, right? If you think about it, um. Sites like YouTube or Twitch or Instagram, or even like tik tok right there. What kind of makes them sort of so appealing to people is that they go to the page and they immediately start getting. Um, suggestions or a list of things that like, Hey, this is something we think you'd like to look at.

Um, and I, I think you're right in that the, the web just for regular webpages doesn't really have that same kind of, um, I guess homepage or, or, or dashboard or

Kyle Yeah. And even, you know, the algorithms of companies that are supposed to be good at this or can be pretty bad at a lot of this stuff. You know, like one of the weird problems I have actually, uh, so like my, my YouTube just give you like a background on this. Like the things I use YouTube for are like trying to figure out how to like put tire chains on my car car. If I'm going like. You know, snow zone, like, so again from it, but like, he actually did this yesterday, uh, because I was, uh, I went off skiing yesterday and you know, the mountains are, uh, here are just like ice sheets of ice whenever there's like a snow event. And, uh, I'm from Minnesota and you know, you think, Oh, you use tire chains all the time. We'll actually abandoned Minnesota because they tear up the roads. Uh, and so, um, you're just sort of expected to drive correctly in that weather, uh, which is just to be safe. Slow down, it's really all you. But, um, so I'd never actually put chains on my tires. And so, you know, YouTube is a great way to like, figure out how to do things like that, like installed chains on your tires. Uh, so I do a lot of stuff like that, like how to use and how to do things. Um, I watched a lot of like, weird skiing documentary and sometimes like in stuff like that, and, you know, just like stuff like, you know, there's like a lot of these weird, Japanese city pop stations, which is just like, city pop is like eighties weird, like pop music from Japan, and it's really just J-pop that's been like rebranded, so that people like don't like, are embarrassed to admit that they like listen to J-pop or something like that. but then like, I don't know, YouTube, like, suggestions. System gets like sick it's like mine. Mine always just, it gets sick. It starts to get dark, it starts, it starts to work around like, like weird, like racist, like alt-right people and like, and just in all this crazy like global warming is a hoax, videos and stuff. And I'm just like. What, uh, what did I do? I'm not looking at any of the stuff. And you why, why are you recommend I'm watching skiing, documentaries and listening to Japanese pop music, like what is, what is going on? And then I always have to like nuke my history settings to just like kill the disease. So it stops like recommending all these like. Nasty videos and stuff. And it's just like, and, and you know, even with Neocities with site recommendation stuff, I've never been able to make an algorithm that's any better than just users saying that they like sites. So like, so like the best display of Neocities sites is just the one that has the most followers at this point because it was just kind of weird cause it's like, doesn't really, it makes it harder for like, new sites to emerge, but I haven't found an algorithm that's like actually better at it than just doing that. So it's just, yeah. Um, so yeah, this, you know, just be aware when you and I, I hope that's, you know, if anything like restoring a bunch of cool old sites and making them really visually accessible is. Is the priority of like this project, the restorative land project. Um, but I think, you know, actually restoring the sites is the least interesting thing to me. It's the thing that we're, we're going to learn the least lessons. Uh, the thing we're going to learn the most lessons is in how we discover new ways to, , provide discovery of content. That you're not necessarily looking for. Like, that to me is the real interesting thing that's gonna come out of this project. And there could be implications for , uh, you know, major, you know, social networks and service providers and YouTube and stuff like that because they suck at it, you know, like th yeah.

Jeremy Yeah, it's, it's kind of surprising, but I feel like when you look at things like, Reddit for example, or Hacker News or things like that. It's basically just a leaderboard, right? And,

Kyle I love hacker news, by the way. It's like my favorite site. Yeah.

Jeremy Yeah, I do as well.

Um, and it's so interesting that over, you know, it's been over 20 years and it seems like the best we can get is, having people just upvote stuff, and I guess they do have a moderation team, so that's actually pretty important too.

Um, but it seems like so far that's the best solution we have is uh, humans, you know, doing the moderation, uh, and having people just up-vote the stuff that they're interested in.

Kyle Oh yeah, you know, yeah. At hacker news specifically, Dan G is the, the moderator that does a lot of like cleaning up whatever the algorithm doesn't catch, um, and does a really good job at it. You know, and it's not, it's not an algorithm it's not a, secret algorithm. It's like a human being that's a thoughtful human being that's like actually thinking about what the site should have on it. And what. It shouldn't have.

Jeremy um, yeah, it'll be interesting to see if, you know, when you work with the dataset, like geocities or something like that, Can you find a better solution? is that something that you're gonna open up to other people to see, um, if other people can try and tackle it, or what's your approach?

Kyle All the, all of the work, uh code that we're going to write to restore the data or to do anything with it. Uh, all of that is going to be open source. Like we are going to publish all of it, uh, in our GitHub repository. Uh, I, I just made a restorativeland, GitHub repo. There's nothing in it yet. Uh, cause I'm just doing it on my personal GitHub right now. But, um, all of the code that we're going to do for that is going to be open source. And so anything that we sort of learned and kind of interesting ways to like go through that data, um, will be, uh, published and freely accessible to anyone that wants to do whatever they want with it. Um, you know, there's no reason to make that closed source. You know, there's just. I I'd rather have people like help improve the, the, the restoration stuff and, you know, work together, people on it then, you know, keep it a secret or anything. So.

Jeremy Cool. Yeah. That's, um, that's really exciting. So, um, you know, to kind of wrap up where, where should people look to kind of see when restorative land's going to be, you know, operational and kind of, you know, follow what you're doing and things like that.

Kyle Well, there's a, there's restorativeland.org, which, you know, in a, in a humorous way, it's just sort of links to other social networks and stuff. Any kind of updates or anything like that that I'll be doing, I'll be putting on that, that site. , or, or we also have a Twitter account, restorativeland, and, yeah. when I do releases announcements and stuff, uh, it's, I'm going to be doing it on that. And hopefully we'll get the, the first release of the GeoCities gallery out the door soon. Uh, that's kind of the last thing I'm working on. I'm just sort of working on cleaning up the interface a little bit before we launch it, but that's the plan.

Jeremy Very cool. And for people who are interested in checking out Neocities, where, where should they head?

Kyle Uh, Neocities.org

Jeremy Cool. thanks for agreeing to come on.

Kyle Oh yeah. Thank you.

Jeremy You can get show notes and the transcript for this episode at softwaresessions.com and if you had a GeoCities site, let us know. We'd love to hear about it. Our theme music is by Crystal Cola. We will see you next time.