Do you honestly think that every article posted on a product's blog should include a disclaimer that the post may contain information highlighting the usefulness of their product?
To be fair, it seems from the article that it's their interactions with the community using the feature that shits on it. Or do you have specific counterpoints to their arguments made against tiered storage in kafka? As far as I can tell there are two points being made against tiered storage: operational burden is increased and networking costs (which if you've read any of their other posts or visited their homepage, is a primary motivation for the existence of their product) are not reduced.
> I agree but I hate it when at the end of an article I realize it was just an ad.
If you wanted to be reductive: if the domain ends in .com, you can assume the submission is an ad. Some ads are better quality and worth discussing and some aren't.
More and more blog posts that make it to the HN front page are content marketing.
Nothing nefarious about it -- it's just a deliberate strategy on the part of companies like Retool or Supabase or Fly or whatever to market their services to this target market.
I have no idea how many actual sales conversations it leads to, but it sure is effective at convincing many HN readers that those are cool companies selling cool things...
How do you deploy updates of your app without downtime? (I know not all web apps need that but in case you do I would love to know about your approach)
I don't! I take the moment of downtime. It's usually instant — only as long as it takes to stop and restart the server. Occasionally a DB migration will take longer — the longest I've so far was 10-15 seconds — and the site is down for that time. I think this is acceptable, but it would be nice to have a more seamless automated solution.
How do deal with horizontal scaling or failovers in general? These are two of the reasons I am still unconvinced about using SQLite in production:
- if only one process can write to the db, how do you architect your system so that writes are performed by just one of the instances (the writer)
- how do you gracefully upgrade your app without any downtime?
> How do deal with horizontal scaling or failovers in general?
We prefer vertical scaling over horizontal. The entire company is one server, which works for us since most of our customers are close to it.
In the future if we needed geographically distributed read replicas and failover protection I would probably go with LiteFS [1].
> if only one process can write to the db, how do you architect your system so that writes are performed by just one of the instances (the writer)
For multiple machines, LiteFS has ways of dealing with this. But the general idea applies to our system as well. All of our SQL is in either a read.sql or write.sql file. On startup, we open a connection pool for all the read queries and open a single connection for all the write queries. This keeps things clean and separated.
> how do you gracefully upgrade your app without any downtime?
We use a systemd socket and service. When the service is restarted with a new binary, systemd delays request processing until it's back online. It's really simple (thanks to our monolith setup) and entails zero downtime except a 1-2 second delay on unlucky requests. But as far as I can tell, no requests are lost.
Yeah, I tried ChatGPT too. It did offer some good alternatives, but then it started hallucinating. It literally told me of several existent books, except that the names of the authors were incorrect, or the plot was not quite the same, etc.
This is precisely my worry. I do use tailscale but I have this itch in the back of my mind... I have a lot of sensitive and personal stuff in my machines, and even though it would be hard for someone to get into my VPN, tailscale themselves could easily add a node and join my VPN without me even noticing.
Received my paperd.ink display. I have no experience with programming directly on these kind of boards so I'm planning on building/documenting small projects to teach myself and others how to do it.
Lately I have been migrating all my self-hosted stuff into a raspberry pi (instead of running a public instance in the cloud). It gives me a bit of piece of mind knowing that it adds an extra layer of security (to hit any of my endpoints/apps you would need to infiltrate my VPN). And it will save me a lot of money on hosting.
I don't need to expose my computers publicly or enable upnp or anything. It just works.
The conflict of interest should be disclaimed in the very first sentence of the post.