Hacker News new | past | comments | ask | show | jobs | submit login

For the hundreds of people reading this article right now - you might be amused to know that you're accessing it from a mac mini on my desk:

https://www.contraption.co/a-mini-data-center/

(The CPU load from this is pretty negligible).






What is HackerNews but a system to stress test everyone's hobby websites?

Before this Digg, before that Slashdot.

What else am I missing?


Kuro5hin was pretty big, back in the day. But /. was the biggie, along with need to know. We get the term slashdotted from there, after all.

Holy… I still miss kuro5hin. Wonder what is rusty doing nowadays.


thank you!

Before we were all on USENET, some lucky ones were on Compuserve and AOL, and BBSs were limited by phone lines, not really anything to test loads.

>Before this Digg, before that Slashdot.

>What else am I missing?

You are missing Reddit.


/u/seddit

del.icio.us

anyone?


Fark

Every time I share a project I provide two links, one for my vps and another one for GitHub pages. Usually my projects run on the client, so I have never experienced the hug of death myself.

I absolutely love this comment <3

back in my day kid we used to serve far more users from 40mhz CPUs. The only interesting part is that today you can get pipes fast enough to do this in your house, while back then dialup was all we could afford ($1000/month to get into the 1 megabit/second range, ISDN and DSL came soon after and were nice).

Of course back then we didn't use dynamic anything, a static web page worked.

Now get off my lawn!


My first company website was served of a 120MHz Pentium that also served as the login server where 5 of us ran our X clients (with the X servers on 486's with 16MB RAM)...

And it wasn't static: We because peoples connections were mostly so slow, we used a CGI that shelled out to ping to estimate connection speed, and return either a static image (if you were on a dialup) or a fancy animated gif if you were on anything faster.

(the ping-test was obviously not reliable - if you were visiting from somewhere with high latency, you'd get the low bandwidth version too, no matter how high your throughput was - but that was rare enough; it worked surprisingly well)


I love that so much. You just don't see wacky solutions like this any more. I guess it's a good thing, but this career has gotten a hell of a lot less fun and interesting.

I used to host 3,000 active daily users from a 33mhz 486 with a 56k modem.

Thousands and thousands of lines of quality conversation, interaction, humanity.

To be honest, I kind of miss those days.

I love to think that the web of the future is just going to be everyones' mac Mini or whatever.

Big Data™ has always irked me, frankly.


We need something that’s small, cheap, plugs into a power outlet (or a PoE port), and lets anyone serve their personal little node of their distributed social network.

I started thinking about that around an implementation that could run under Google’s App Engine free tier, but never completed it.


Everyone moved too fast into the future, and this is perhaps not that good. The whole ASCII and 90s/cyberpunk nostalgia is being a major cue.

I've tried to do so with a $9 pocket pc, but ended up frying it by accidently short-circuiting it.

I wrote a visualizer for the traffic that I think people will appreciate [1]. I will post it next month once I add it on github. It was fun to watch an article that went #1 on HN.

[1]: https://ibb.co/cXT3VNDR


I like that you're pointing out application longevity in the linked article. It seems that new SaaS apps appear and disappear daily as cloud hosting isn't cheap (especially for indie hackers). I'd much rather sign up for an app that I knew wouldn't randomly disappear in a couple of months when the cloud bills surpass the profits.

I took a startup from zero to 100k MRR as of last month over the last 5 years. I can tell you that cloud billing is the least of your concerns if you pay even the cursory attention to writing good queries and adding indexes in the right places. The real issue is the number of developers who never bother to learn how to structure data in a database for their use case. properly done, you can easily support thousands of paying users on a single write server.

A bit hand wavy. It obviously depends on the business and what "least of concerns" entails.

In most cases businesses justify the cost of managed databases for less risk of downtime. A HA postgres server on crunchy can cost over $500/mo for a measly 4vCPU.

I would agree that it's the least of concerns but for a different reason. Spending all your time optimizing for optimal performance (assuming sensible indexing for what you have) by continuously redesigning your DB structure when you don't even know what your company will be doing next year isn't worth the time for a few hundred a month you might save.


I use CQRS with /dev/null for writes and /dev/random for reads. It's web scale, it's cheap and it's fast.

> I can tell you that cloud billing is the least of your concerns if you pay even the cursory attention to writing good queries and adding indexes in the right places.

I read this as "in building your startup, you should be paranoid about team members never making mistakes". I really try to read otherwise, but can't.


What? No no, to be fast you need the whole database only in RAM! And SQL is hard so just make it a giant KV store. Schemas are also hard so all values are just amorphous JSON blobs. Might as well store images in the database too. Since it's RAM it'll be so fast!

/s


That's amazing. Mac Mini is very efficient and is a great little home server. Idles at 3-4w total for the entire machine. Plus, the M4 is a beast of a CPU. It might even be possible to serve a small LLM model like a 3b model on it over the internet.

Yeah, the mac minis can have up to 64GB of ram which would support some usable models. However, I accidentally got one with 24gb of ram, and my apps already use 12gbs. So, perhaps I'll get a second box just for LLMs!

A small model like 1B or 3B should be ok with 16GB. I was thinking in the name of savings, you can just use the same machine.

It's a cool project. I might do it too. I have an M4 Mini sitting on my desk that I got for $550.


I've been thinking about that article for the past week so much that I've been looking at $250 Ryzen 7 5700U 16/512/2.5G Ace Magician NUCs to move some of my properties to. They're known to be shipping spyware on their Windows machines, but my thought was that I'd get 3 of them, clear them out with Debian, and set them up as a k8s cluster and have enough horsepower to handle postgres at scale.

Get NUC, or one of those refurbished Dell or HP mini PCs. They have plenty of CPU power, consume very little idle power, and friendly to Linux.

I have been wildly happy with my EliteDesk mini pcs. Mine are the “G5” generation which cost like $60-150 on eBay with varying specs, obviously newer generations have better specs but for my “homelab” needs these have been great. I even put a discrete GPU ($60) in my AMD one for a great little Minecraft machine for playing with the kid.

I have a g5 elitedesk small form factor (about the size of a largr cereal box, not a book) pc, thats been runnimg my by media server and torrent download services for years now. It has a plucky little 10th gen i3 or something, and it has been more than enough. Can real time transcode 4K movies! Dead quiet and sips electricity. Uptime is on average about 8-10 months.

Glad it resonated with you!

If you're considering k8s, take a look at Kamal (also from DHH): https://kamal-deploy.org/

I think it makes more sense for small clusters.


It probably does! Kamal/MRSK has been on the roadmap for awhile. I have deliberately endeavored to keep the existing k8s setup as minimal as possible, and it's still grown to almost unruly. That said, it works well enough across the (surprisingly power efficient) Dell C1100s in the basement, so it'd take a migration to justify, which is of course the last thing you can justify this with.

Presumably CF is doing most of the work if the page doesnt actually change all that much?

Nobody's actually doing work because serving web pages is cheap.

Is it really cheap through ruby?

Yeah, but there's Plausible Analytics self-hosted on the mac mini that's getting more of the load right now.

What kind of Mac mini do you use (cpu and ram)? I’m really interested in making the same thing but I’m not sure if the base M4 mini is enough with just 16gb of ram.

I have the m4 pro with 24gb of ram. I wish I had increased the ram to 64gb - I'm at 50% utilization already.

The CPU is more powerful than I need. I didn't pass 8% utilization in the last 24 hours as HN slammed the box.


Depends what you're doing. If it's literally just serving up some static web pages though that is hilariously over specified, you're going to be constrained by your internet connection long before that Mac Mini starts breaking a sweat.

I actually read that blog post too last week (or the week before?) and I’m genuinely considering this.

Render is crazy expensive for blog sites and hobby apps.


Here's the core scripts I use for the mac mini. They're a bit raw, but hopefully useful:

https://gist.github.com/philipithomas/ed57890dc2f928658d2c90...


I was using an old Samsung s8, with a USBc ethernet adaptor it was more then capable serving allot of requests.

It's fun to host at home, I run docker on alpine VMs on two proxmox machines. Yeah, different docker machines for each user or use-case look complicated but it works fine and I can mount nfs or samba mounts as needed. Only thing I have on the cloud is a small hetzner server which I mostly use as a nginx proxy and iptables is great for that minecraft VM.

Why did you go for Cloudfare tunnel instead of wireguard?


Cloudflare Tunnel provides you a publicly routable address for free. With wireguard you would still need a VM somewhere, and if you are hosting your own VM, then whats the point?

It's a small cost of $4.50/month and allows me a lot more control. In regards to wireguard, that one VM I pay for is the central wireguard node for all sorts of devices that I use, allowing me to securely access home services when I'm not at home. There are services you don't want to expose directly via a Cloudfare Tunnel.

Not making Cloudflare more of a central point of failure for the internet? We hosted web pages before they MITM'd the entire web.

Public IPv4 address exhausted and NAT happened.

Even having IPv6 is not a proper solution because of laggy ISPs(currently reaching ~50%) and the even the ISPs who deploy, do not deploy it properly. (dynamic prefixes or inbound blocked IPv6)

Add to the mix that lot of people does not understand IPv6, internet became more centralized and will keep doing so for the foreseeable future.


I like how they have amazing great free services and people are upset so many people use it.

That's what we all said about various Google products many years ago, too.

> We hosted web pages before they MITM'd the entire web.

We also hosted web pages before the average script kiddie could run tens of Gbps DDoS on sites for the lolz. And before ISPs used CGNAT making direct inbound connections impossible.


But you are using someone else’s VM. You just don’t pay for it.

Is cloudflare tunnels really this free to support thousands of internet requests?

I run a windows server at my office where we connect to it using RDP from multiple locations. If I could instead buy the hardware and use cloudflare tunnels to let my team RDP to it then it would save me a lot of money. I could recoup my hardware cost in less than a year. Would this be possible?

(I wouldn't mind paying for cloudflare tunnels / zero trust. It just should be much smaller than the monthly payment I make to Microsoft)


Yup. Cloudflare's typical proxy already handles massive amounts of traffic, so I expect that the marginal cost of this reverse proxy isn't that high.

I do think Cloudflare has proven itself to be very developer/indie-friendly. One of the only tech unicorns that really doesn't impose its morality on customers.


I used Cloudflare Tunnels for a project that had hundreds of tunnels did roughly 10GB/day of traffic entirely for free. The project has since moved to Cloudflare Enterprise, where the project pays the opposite of free, but was completely expected as the project grew.

I'm pretty sure Tunnels supports RDP and if you don't use a ton of bandwidth (probably under a 1TB/mo), Cloudflare probably won't bother you.


Weirdly, that tower in the photo is also on the front page of HN right now

https://vincentwoo.com/3d/sutro_tower/


Ah - I took that photo on the way to Mount Olympus Park, which is one of my favorite little parks in SF. It has an interesting history:

https://en.wikipedia.org/wiki/Mount_Olympus_(San_Francisco)


Nice!

Now do it without Cloudflare :)

I wrote a blog post that generated a lot of traffic on HackerNews last year when it briefly was on #1 here. My blog was (and still is) hosted on a 9-year old Dell Latitude E7250 with Intel Core i5-6300U processor. The server held up fine with ~350 concurrent readers at its peak. It was actually my fiber router that had trouble keeping up. But even though things got a bit slow, it held up fine, without Cloudflare or anything fancy.

Perhaps some day.

My shorter-term goal is to switch my home internet to Starlink, so that all requests bounce off a satellite before landing at my desk.


Except Starlink uses CGNAT, which means you need some external SSHD port forwarding at least.

He could keep using Cloudflare Tunnel, but then he's still using Cloudflare

Trivial, even for a high traffic website to be served from a fiber connection.

Computers are stupid good at serving files over http.

I’ve served (much) greater-than-HN traffic from a machine probably weaker than that mini. A good bit of it dynamic. You just gotta let actual web servers (apache2 in that case) serve real files as much as possible, and use memory cache to keep db load under control.

I’m not even that good. Sites fall over largely because nobody even tried to make them efficient.


I’m reminded of a site I was called in to help rescue during the pandemic. It was a site that was getting a lot higher traffic (maybe 2-3x) than they were used to, a Rails app on Heroku. These guys were forced to upgrade to the highest postgres that Heroku offered - which was either $5k or $10k a month, I forget - for not that many concurrent users. Turns out that just hitting a random piece of content page (a GET) triggered so many writes that it was just overwhelming the DB when they got that much traffic. They were smart developers too, just nobody ever told them that a very cacheable GET on a resource shouldn’t have blocking activities other than what’s needed, or trigger any high-priority DB writes.

And nobody knows how stuff works at the web server level anymore... The C10K problem was solved a long time ago. Now it's just embarrassing.

If only my part of SF had fiber service. #1 city for tech, but I still have to rely on Comcast.

Sounds weird to read that from Western Europe where even the most rural places have fiber!

I understand that the USA is big, but no fiber in SF?


In the US, it’s not about money or demand. The more entrenched cities (especially in California, for some historic reasons/legislation) tend to have a much more difficult time getting fiber installed. It all comes down to bureaucracy and NIMBYism.

SF is mostly served by AT&T, who abandoned any pretense of upgrading their decrepit copper 20 years ago, and Comcast, whose motto is “whatcha gonna do, go get DSL?”

AT&T has put fiber out in little patches, but only in deals with a guaranteed immediate ROI, so it would mean brand new buildings, where they know everyone will sign up, or deals like my old apartment, where they got their service included in the HOA fee, so 100% adoption rate guaranteed! AT&T loves not competing for business.

Sure, others have been able to painstakingly roll out fiber in some places, but it costs millions of dollars to string fiber on each street and to get it to buildings.


Lived in an older neighborhood in Georgia a couple years back. A new neighborhood across the street had it (AT&T), but we didn't.

Caught an AT&T tech in the field one day, and he claimed that if 8 (or 10—memory's a little fuzzy) people in the neighborhood requested it, they'd bring it in.

I never did test it, but thought it interesting that they'd do it for that low a number. Of course, it may have been because it was already in the area.

Still, may be worth the ask for those who don't already have it.


> where even the most rural places have fiber!

No need for the hyperbole. I know for a fact that you don't get fiber in the remote countryside of France


we have fiber in half of SF via Sonic - where there are overhead wires. The other half of SF has its utilities underground making economics more difficult.

https://bestneighborhood.org/fiber-tv-and-internet-san-franc... has a detailed map, by provider, if you wanna dig into the gory details, but there is fiber, just not everywhere.

Not where I am

[flagged]


What?

Been using a setup following this for quite a while. Nginx reverse proxy on a cheap VPS with a wireguard tunnel to home.

A mac mini is pretty beefy for hosting a blog!

I’ve had a number of database-driven sites hosted on $5/month VPS that have been on the front page here with minimal cpu or memory load.


It's hosting a variety of apps - blog (Ghost), plausible analytics, metabase, and soon 3 Rails apps. It's unfortunately running Postgres, MySQL, and Clickhouse.

Love all the projects you have going. Do you use a template for the landing pages? Or DIY? They look great!

Thanks! Postcard was made with some help of TailwindUI.com. Booklet's homepage is based on a Webflow template: https://webflow.com/templates/html/gather-saas-website-templ...

I see you're serving a GTS certificate. Does GCP allow you to download TLS certificates? I honestly didn't know. I thought just like AWS, you get them only when using their services like load balancers, app runners etc.

Not OP but the site sits behind Cloudflare and Cloudflare uses Google Trust GTS and LetsEncrypt for Edge certificates.

https://developers.cloudflare.com/ssl/reference/certificate-...


How much does it cost to keep the mac mini on for a month? I’ve been thinking doing the same.

Pretty cool. Wouldn't work for me as my ISP is horrendously unreliable (Rogers in Canada, I swear they bounce their network nightly), but I might consider colocating a mac mini at a datacenter.

the article is AI-generated isn't it ?

Nope

Lol, by just reading I knew it was. Then I used an AI detection tool and it says 100% sure it is AI-generated. You know how hard it is to get 100% sure it is AI-generated ?

Most "AI detection tools" are just the equivalent of a Magic 8 ball.

In fact, most of them are just implemented by feeding an LLM the text, and asking "is it AI generated?". You cannot trust that answer any more than any other LLM hallucination. LLMs don't have a magic ability to recognise their own output.

Even if your "detection tool" was using exactly the same model, at the same exact version... unless the generation was done with 0 temperature, you just wouldn't be able to confirm that the tool would actually generate the same text that you suspect of being LLM-generated. And even then, you'd need to know exactly the input tokens (including the prompt) used.

Currently, the only solution is watermarking, like what Deepmind created:

https://deepmind.google/discover/blog/watermarking-ai-genera...

but even that, it requires cooperation from all the LLM vendors. There's always going to be one (maybe self-hosted) LLM out there which won't play ball.

If you're going to accuse someone of pushing LLM-generated content, don't hide behind "computer said so", not without clearly qualifying what kind of detection technique and which "detection tool" you used.


I am starting to believe this is a lie spread by AI companies because if AI-slop starts to be detected at scale, it kills their primary use case. True, AI detection tools are not perfect, like any classification algo, they don't have a 100% accuracy. But it does not mean they are useless. They give useful probabilities. If AI detectors are so wrong, how do you explain that passing AI generated text on gptzero and it gets it all the time, same when I pass human written content it recognises it as such almost 99% of the time.

It's the false positives that make it useless. Even if it's generally very good at detecting AI, the fact that it can and does throw false positives (and pretty frequently) means that nothing it says means anything.

You can kind of tell it's not AI when it gets beyond the generic stuff and on to say

>Today I'm working on Chroma Cloud, designed for exploring and managing large datasets, and Next.js powers its advanced interactions and data loading requirements.

which is unlikely to have been written by an LLM.


you can inject personal stuff to make it feel original, but huge chunks are still AI-generated. Just get the first 4/5 paragraphs and paste in gptzero

Well on the one hand you have gptzero saying it's in the style of AI which I don't count as reliable and on the other you have the author saying it's not which I weight higher.

And it mostly makes too much sense apart from "most drivers don't know how many gears their car has" which has me thinking huh? It's usually written on the shifter.


Hosting from home is fun, I guess, but it actually was a money-saving exercise before the cloud. I've done it.

Now, however, what is the point? To learn server config? I am running my blog with GitHub pages. A couple of posts made it to the top of HN, and I never had to worry.

Always bewilders me when some sites here go down under load. I mean, where are they hosting it that a static page in 2020s has performance issues?


Very cool! Do you have a contingency in place for things like power outages?

Not really . . . Cloudflare Always Online, mostly.

I had 2m35s of downtime due to power outages this week.


A MacBook Air solves this problem very nicely!

Not only does is have a built in UPS, but also comes with a screen, keyboard and trackpad for you need to do admin tasks physically att the console!


That makes sense, because serving a web page to a few hundred people is not a computationally expensive problem. :3

I self-host analytics on the box (Plausible), which is using more resources than the website. There are a few apps on there, too.

Plausible is hardy compute intensive

Nice



Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: