Kenton's House
kentonshouse.com
kentonshouse.com
Past discussion (way back in 2011): https://news.ycombinator.com/item?id=3342044
I sold this in 2020 when I moved to Austin. I'm building a bigger, better one here, which will be done... in about a month! (4.5 years since I first saw the property... phew.)
I'll probably publish something about the new one ~next year. :)
I published a guide and helper code for netbooting Windows machines from a single copy-on-write image here (currently in the process of updating it, it has unsurprisingly bitrotted a bit): https://github.com/kentonv/lanparty/
I was curious maybe if you had some thoughts on the more social aspects of the project? Did you feel it made it easier to hang out on a whim for example?
I'd definitely say it served the purpose. We didn't really do them on a whim, but once or twice a month on a regular schedule.
It was also great for networking -- as in, people, not computers. Whenever I met someone new I'd invite them to a LAN party. People would bring their friends. Made some good connections that way. Hope to make more in Austin once the new house is ready...
I can guarantee you that you'll be able to start some conversations based on a cool house like this! Personally, LAN parties were something I always wanted to hold more of but just didn't have many friends playing on PC while I was growing up. It's cool you've made it into such a central component of your home!
The gaming landscape has changed a lot in the last twelve years, and I'm now a Linux-first gamer. Are you considering trusting in Proton and using Linux as the primary OS for the new house?
I _love_ the idea. I host LAN parties with friends, but it looks less organized than yours.
To be fair, that's just how much housing prices went up in Palo Alto over that period, not really anything to do with the specifics of the house. Got pretty lucky.
(The computers were a relatively insignificant cost compared to the house. Like $20k?)
In retrospect I often regret that I never once just randomly got on a plane and flew somewhere new for fun, when it would have been easy to do so. (Kind of hard now with two young children.) But if I'd done more of that maybe I wouldn't have saved so much money.
Secondly, have you followed Linus Sebastian's ultimate tech/gaming home videos at all? He has a slightly different objective, but he's done some creative things which you may appreciate.
That place was my dream home for a sliver of my mid 20s when gaming was the end all be all.
A half-sober iNcontrol casting on a couch with a bunch of the Koreans was just chef kiss.
It wasn’t so much the house layout or design. Just that feeling of getting everyone together for a weekend long LAN party.
flights be cheap nowadays, I could very well swing this.
If that is something you'd be okay with, happy to exchange details
Didn't realize it had been so long, but I suppose I left Cloudflare like 3.5 years ago and I know it was a bit of a pain in the ass just trying to buy the property here in Austin in the first place.
Now, there are some things I would do differently here. To be a true LAN party, people need to bring their own rigs. That's half the fun. Providing the computers really defeats the purpose and makes it feel more like an internet cafe.
The question I have is, are they all in one room? Seems like there might be two, so that's good. Because one of the things I really wanted to do was have two rooms, one for each team so there was no screen cheating. Because that kinda thing happened!
The other plan I had was to have Bawls on tap. I don't know how that would have been possible, but that was baked into the design along with a soda fountain. We didn't do alcohol.
But you know what, as I thought about it more, I realized that the ad hoc nature of the LAN party was the best part. Scrounging up a 16 port switch and putting it in the middle of the floor, duct taping down the cords. Balancing the loads between walls and the inevitable tripping of breakers when some extra guests show up. Accidentally unplugging a daisy chained surge protector and turning off someone's rig, prematurely ending a 12 hour session of Age of Empires. We still talk about that to this day.
I miss LAN parties.
He thought about it !
That said, in practice we don't do a lot of competitive stuff. Instead we tend to prefer to focus on cooperative games, like Deep Rock Galactic, Ark, Factorio, etc. This works a lot better when everyone is somewhere between a casual vs. hardcore gamer with very different skill levels.
The one thing we regularly do play versus is Left 4 Dead 2. I've gotten pretty good at assigning my friends to teams for that one such that the games end up reasonably balanced...
> Housing in this area is ridiculously expensive, though, and even after four or five years I had trouble finding anything I could afford. There are no empty lots here, so I'd have to tear something down, and even a run-down house in a bad neighborhood costs $450k in this area. I didn't even bother looking in Palo Alto -- it was way out of my range. That is, until something really lucky happened. A commercial establishment bordering an older residential area of town had some extra land that they weren't using. In 2009, at the low point of the recession, they put this sliver of land up for sale. I was lucky enough to look at exactly the time they did this, and with the help of a loan I was able to pick it up for a price I could actually afford.
[1]: http://kentonsprojects.blogspot.com/2011/12/lan-party-optimi...
The people favorites at the timeL: Quake 3 arena, CS1.6, and Duke Nuken 3d using Dukester to play in Lan
I wonder if/when he rebuilds it in Austin if he'll just use Linux, now that Proton has made Linux gaming more feasible.
I did that a few times but as soon as someone wants to play Valorant, you're out.
It's only an issue if we want to join an internet game but we usually don't really want to deal with internet people anyway.
That said I'm currently prioritizing Windows for the new house, because I know it works. Once that's all up and running I will experiment with Linux as well. Netbooting makes it easy to change OS on a whim. :)
One reason Linux would be nicer is that I know how to use a local disk (on the client machine) to hold the copy-on-write overlay, so only the base image need be served over the network (read-only). I have no idea how to make Windows do such a thing (if it's even possible) so I end up having to do all the copy-on-write stuff server-side. If I could use a local disk then it'd be much less of a performance issue when people decide to install extra games during the party.
People at LAN parties actually do log into their own Steam accounts, but logging the whole machine into a guest's Microsoft account feels worse. Then again, I haven't tried it, maybe it'll turn out convenient, if it lets people sync their settings between machines? Note that at the end of the party, all changes anyone made to any machine are wiped out.
That said it's definitely comforting to have Linux as another option if Microsoft makes Windows unusable for this use case!
This is all assuming you're not using a domain etc.. and have any of the myriad of other tools setup. We run lancache strictly for the fun-net segmented network.
So before each party I just have to install updates on one computer, like a normal person would. No need for a special cache. (Or arguably, the primary image is the "cache".)
Full details and code in this github repo: https://github.com/kentonv/lanparty/
https://learn.microsoft.com/en-us/windows/iot/iot-enterprise...
... but kind of annoying that it requires an Enterprise license.
Aaaaand this is why all the cool stuff has to happen on the Linux side, where everything is free.
TBH it's a miracle that Windows Home supports iSCSI boot, you'd think that would be an enterprise feature for sure.
Thanks for the tip though, it was almost really cool! :/
Not the right thing for me personally, since it looks like an end-to-end solution that replaces a lot of stuff I've already figured out and customized to my liking.
Would be interesting to know how they did that local CoW... did they write a custom Windows block device driver?
And of course, it lost some of its appeal when we didn't have to carry around and set up CRTs any more.
However, as an adult I just don't enjoy video games in the same way. Wish I had a SWE salary that could support a build-out like this!
I would also make the use of projectors to project live streams for different players in more social oriented areas of the house, where placing a TV would be impractical.
Pretty cool though that a LAN party house exists at all.
That said I actually think a round table design would be less social. With monitors along the walls, you can easily turn around to socialize between games with nothing blocking you from seeing other people. With the table and monitors in the middle, I think monitors would block people from socializing across the table.
We'll see though, the new house actually features both designs in different rooms... :)
All machines were initially connected via coax ethernet, all sharing one 28.8 dialup connection.
A house like this was basically the most amazing thing any of us could have imagined back then.
How much has changed since then.
Roll back 20 years and I could not have thought of anything better than a house designed for lan gaming, computing, movie watching.
Somewhere along the line that faded away.
Kenton's House - https://news.ycombinator.com/item?id=36002756 - May 2023 (2 comments)
Kenton's Weekend Projects: LAN-Party Optimized House - https://news.ycombinator.com/item?id=3342044 - Dec 2011 (24 comments)
No one ever did. The only time people ever even busted out a laptop is if all the built-in machines were occupied. But often at that point the others would just hang out until a machine became available.
The thing is, when you bring your own machine, you tend to have to spend time setting it up, installing games, updating drivers, etc. There's always that one person who has to reinstall Windows from scratch. I remember many LAN parties where we couldn't even get started until late at night. LAN parties had to be overnight affairs otherwise you couldn't get any gaming in.
With my house, I had all the machines ready to go in advance. All identically configured, all games installed, just sit down and go. It turned out really great. We could get more done in a 12-hour LAN party than most 24-hour parties, and we could still go home and sleep in our beds. (I did still have an annual 48-hour party, though.)
All this mean people were willing to do them on a monthly basis or more. Whereas in my teenage years 3-to-4 times a year was about all we could muster.
Having a bunch of people install cached games at GbE speed all at once, on a 100MBit/s internet line, was pretty nice :)
Obviously with 10GbE this is limited by disk speed. But a minimal Linux can buffer a few games in 64GB of main memory.
I had it cache Steam, Epic, Riot, Blizzard and Windows Update. The cache was warmed at home over night, based on our list of "games we might play". Though Steam was limited to games I owned.
(But yeah, I totally get what you did and would do the same!)
In old-fashion LAN parties, we were usually copying games from each other. (Which doesn't necessarily mean piracy -- Steam is pretty good about letting you copy game files and then use them under your own account.) I feel like bandwidth wasn't the issue as much as it was troubleshooting configurations and stuff. But it was a long time ago.
Though Steam now does support computer-to-computer transfers over LAN (added for Steam Deck). You do have to enable a setting to allow other users to download, but it's definitely less hassle.
Some CDNs use HTTP with post-download verification (I hope). I suppose local caching is the reason for that decision; think big LAN parties with a "only" a few gigabit/s of connectivity (if at all).
A nice solution is what Steam does: The client checks a magic DNS entry (lancache.steamcontent.com), which you're intended to override [0]. It then just works.
For Riot, Blizzard, Epic and Windows Update I've set 36 overrides in dnsmasq (they supply a script for that); those are branded akamai hosts and such. It supports more launchers and platforms/consoles, but from the big list [1] that's all we needed.
Now GOG uses HTTPS, so for the reason you stated that can't really be cached for random 3rd party machines. Subsequently, if LanCache gets an HTTPS connection, it simply proxies the encrypted connection to the correct server using SNI sniffing.
Regarding bandwidth: Two games on our list were CS:GO and LoL. IIRC four people had to install CS:GO and six people had to install LoL. We could have setup file shares, copied the data (as usual, with multiple people saturating the first share to come online, and nobody using the second or third share), hope laymen know where their steam library lives and to put the correct folder there... or just let them download the games directly from the client, except on a virtual 10 Gb/s pipe ;-)
Though to be fair: In Steam you can configure the client to allow others to download their games from you on the local network. If enabled, you can configure to share with "only me", "steam friends" and "everyone". They added the feature earlier this year[2]; probably for the Steam Deck? One of the attendees installed Baldurs Gate 3 (>100GB) from a friend that way. However, the local download feature wins over the lancache, which messed things up a bit when everyone installed CS:GO and pulled that from a single PC instead the server; so we had everyone disable that.
I'm now running a smaller cache on my home server. Additionally, I have a spare server sitting here that's collecting dust. I think I'll permanently designate that my LanCache server for future LAN parties.
[0] https://lancache.net/news/2020/01/14/steam-client-now-suppor... [1] https://github.com/uklans/cache-domains [2] https://help.steampowered.com/en/faqs/view/46BD-6BA8-B012-CE...
"
Exactly, that's half the fun of it :)