Hacker Newsnew | past | comments | ask | show | jobs | submit | koito17's commentslogin

Merry Christmas, everybody!

Love seeing the custom HN theme every year. Sometimes after Christmas, I avoid refreshing an HN tab, so I get to see the theme just a little bit longer :)

This year is a bit special to me. I recently moved countries for a new job, but I moved a bit too soon. Now I am spending the holiday season alone for the first time in my life. Learned a lot of lessons the hard way over the past week.


> Sometimes after Christmas, I avoid refreshing an HN tab, so I get to see the theme just a little bit longer :)

There's always browser extensions/scripts.


Indeed, I needed it longer than one day so wrote myself an extension. HN didn't seem to care but I still love it :-)

https://news.ycombinator.com/item?id=46266496

https://github.com/FreedomBen/hacker-news-christmas-colors-b...


Wow, perhaps my "too early" assessment was wrong?

https://news.ycombinator.com/item?id=46379541


Indeed, I didn't notice on desktop (due to my browser extension) but when I saw it on mobile at around 2 or 3 PM Mountain Time I was thrilled!

Thanks for continuing such an awesome tradition :-D


Yeah, I'm aware of extensions like Stylus and use it on a few sites. But my brain is irrational and doesn't treat it the same as having a snapshot of HN during Christmas.

Where did you move from (and to)?

United States to Japan.

I was a bit eager to start work after three months of waiting for the HSP 1b visa. Tried to keep myself busy with side projects, and got quite far with embedded Rust. But the lack of a "regular schedule" from a job was making me eager to start "proper work" again.

So far, it has been a mixed bag of trade-offs. Made it in time for various events, got to see a few friends for the first time in a while, etc. However, nothing beats the comfort and security of one's parents home, especially during the holiday season.

Probably obvious to everybody, but seriously do not schedule a move in December. If it is feasible, spend the time to make memories with your family and loved ones.


> nothing beats the comfort and security of one's parents home, especially during the holiday season.

A bit morbid, but reminds me of this passage by John Quincy Adams:

> Everything about the house is the same. I was not fully sensible of the change till I entered his bedchamber [...] That moment was inexpressibly painful, and struck me as if it had been an arrow to my heart. My father and mother have departed. The charm which has always made this house to me an abode of enchantment is dissolved; and yet my attachment to it, and to the whole region around, is stronger than I ever felt it before.

Hope you get to spend the next Christmas with your family!


Welcome to Japan!

This reminds me of a story where an OCR error[1] likely contaminated training data (and the English language) with the term "vegetative electron microscopy". The article I linked also shows that some journals defended the legitimacy of the terminology.

I'm not sure if this class of error really counts as a hallucination, but it nonetheless has similar consequences when people fail to validate model outputs.

[1] https://news.ycombinator.com/item?id=43858655


I think the same will happen over time with the AI voice over slop that people don't bother correcting. These include weird pronunciations, missing punctuation that leads to weirdly intonated run-on sentences, pronounced abbreviations like "ickbmm" instead of "icbm", or the opposite, "kay emm ess" instead of "kilometers" and so on.

If I recall correctly, many of those are "Carbon-related" errors and mostly represent legacy baggage of Mac OS.

Not defending the design, but this website is sometimes useful for disambiguating OSStatus error codes: https://www.osstatus.com/


Bun disables post-install scripts by default and one can explicitly opt-in to trusting dependencies in the package.json file. One can also delay installing updated dependencies through keys like `minimumReleaseAge`. Bun is a drop-in replacement for the npm CLI and, unlike pnpm, has goals beyond performance and storage efficiency.

Not sure what your analogy is trying to imply.


> I don't think I've ever seen a crate or production codebase that documents infallibility of every single slice access.

The smoltcp crate typically uses runtime checks to ensure slice accesses made by the library do not cause a panic. It's not exactly equivalent to GP's assertion, since it doesn't cover "every single slice access", but it at least covers slice accesses triggered by the library's public API. (i.e. none of the public API functions should cause a panic, assuming that the runtime validation after the most recent mutation succeeds).

Example: https://docs.rs/smoltcp/latest/src/smoltcp/wire/ipv4.rs.html...


I think this goes against the Rust goals in terms of performance. Good for safe code, of course, but usually Rust users like to have compile time safety to making runtime safety checks unnecessary.


In the case of Japanese, there is 午前・午後 for 12-hour time. e.g. 午後9時に着く (arrive at 9 P.M.). If it's obvious from context, then only the hour is said. e.g. in「明日3時にね」, the flow of the conversation disambiguates the hour (it's also unlikely the speaker means 3 A.M.)

There are also other ways to convey 12-hour time. e.g. 朝6時に起きる (wake up at 6 A.M. / wake up at 6 in the morning).


I was hoping the site itself would be an XML document. Thankfully, it is an XML document.

  % curl https://xslt.rip/
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet href="/index.xsl" type="text/xsl"?>
  <html>
    <head>
      <title>XSLT.RIP</title>
    </head>
    <body>
      <h1>If you're reading this, XSLT was killed by Google.</h1>
      <p>Thoughts and prayers.</p>
      <p>Rest in peace.</p>
    </body>
  </html>


This is actually a clever way to distinguish if the browser supports XSLT or not. Actual content is XHTML in https://xslt.rip/index.xsl

The author is frontend designer and has a nice website, too: https://dbushell.com/

I like the personal, individual style of both pages.


> https://dbushell.com

Heh, I honestly thought the domain name stood for "D-Bus Hell" and not their own name.


I guess we've both been traumatized by modern linux distros?


Chuckling at the disclaimer 'No AI made by a human.' I doubt many web devs could tell you that because so many use AI now. I was speaking with a web dev this summer and he told me AI made him at least twice as productive. It's an arms race to the bottom imo.


Which begs the question, are people consciously measuring their productivity? If so, how? And did they do it the same way before and after using AI tooling?

Anecdotal, but I don't measure my productivity, because it's immeasurable. I don't want to be reduced to lines of code produced or JIRA tickets completed. We don't even measure velocity, for that matter. Plus when I do end up with a task that involves writing something, my productivity depends entirely on focus, energy levels and motivation.


One of the only studied made so far showed lower actual productivity despite higher self reported productivity. That study was quite limited but I would take self reported productivity with a huge grain of salt.


I tried Github CoPilot for about a year, I may try Claude for a bit sooner or later.

It felt like it got in the way about half the time. The only place I really liked it was for boilerplate SQL code... when I was generating schema migration files, it did pretty good at a few things based on what I was writing. Outside that, I don't feel like it helped me much.

For the Google search results stuff, Gemini, I guess... It's hit or miss... sometimes you'll get a function or few things that look like they should work, but no references to the libraries you need to install/add and even then may contain errors.

I watched a friend who is really good with the vibe coding thing, but it just seemed like a frustrating exercise in feeding it the errors/mistakes and telling it to fix them. It's like having a brilliant 10yo with ADD for a jr developer..


…that never stops asking you for more work.

And doesn’t bother you when the tab is closed.

I can see why a lot of high school and college kids are going to need to claw.


The issue is that you can't give AI a task and let it go off and it actually performs said task in a couple hours and then comes to ask for more... you have to pretty much baby sit it.

Now, I could see a single person potentially managing 2-3 AI sessions across different projects as part of a larger application. Such as a UI component/section along with one or more backend pieces. But then, you're going to need 2-3x the AI resources, network use, etc. Which is something I wouldn't mind experimenting with on someone else's dime.


Are you using project architecture, and rules documents?


> he told me AI made him at least twice as productive.

He’s not only lying to you, he’s also lying to himself.

Recent 12-month studies show that less than 2% of AI users saw an increase in work velocity, and those were only the very top-skilled workers. Projection also indicated that of the other 98%, over 90% of them will never work faster with AI than without, no matter how long they work with AI.

TL;DR: the vast majority of people will only ever be slower with AI, not faster.


for those wondering: No, its not "d-bus hell" ^^


It's David Bushell


Same here. This is f..n hilarious.


funny segmentation.


> This is actually a clever way to distinguish if the browser supports XSLT or not. Actual content is XHTML in https://xslt.rip/index.xsl

I agree it is a clever way. But it also shows exactly how hard it is to use XML and XSLT in a "proper way": Formal everything is fine to do it in this way (except the server is sending 'content-type: application/xml' for the /index.xsl, it should be 'application/xslt+xml').

Almost all implementations in XML and XSLT that I have seen in my career showed a nearly complete lack of understanding of how they were intended to be used and how they should work together. Starting with completely pointless key/value XMLs (I'm looking at you, Apple and Nokia), through call-template orgies (IBM), to ‘yet-another-element-open/-close’ implementations (almost every in-house application development in PHP, JAVA or .NET).

I started using XSLT before the first specification had been published. Initially, I only used it in the browser. Years later, I was able to use XSLT to create XSDs and modify them at runtime.


To me XSLT came with a flood of web complexity that led to having effectively only 2 possible web browsers. It seems a bit funny because the website looks like straight out of the 90s when "everything was better"


But this is wrong.

It was not rendering that killed other browsers. Rendering isn't the hard part. Getting most of rendering working gets you about 99% of the internet working.

The hard part, the thing that killed alternative browsers, was javascript.

React came out in 2012, and everyone was already knee-deep in earlier generation javascript frameworks by then. Shortly after, Google would release the V8 engine which was able to bring the sluggish web back to some sense of usable. Similarly, Mozilla had to spend that decade engineering their javascript engine to claw itself out of the "Firefox is slow" gutter that people insisted.

Which is funny because if you had adblock, I'm not convinced firefox was ever slow.

A modern web browser doesn't JUST need to deal with rendering complexity, which is manageable and doable.

A modern web browser has to do that AND spin up a JIT compiler engineering team to rival Google or Java's best. There's also no partial credit, as javascript is used for everything.

You can radically screw up rendering a page and it will probably still be somewhat usable to a person. If you get something wrong about javascript, the user cannot interact with most of the internet. If you get it 100% right and it's just kind of slow, it is "unusable".

Third party web browsers were still around when HTML5 was just an idea. They died when React was a necessity.


Conveniently, all three of the major JS engines can be extracted from the browsers they are developed for, and used in other projects. Node and Bun famously use V8 and the WebKit one, and Servo I believe embeds SpiderMonkey.

If you want to start a new browser project, and you're not interested in writing a JS engine from scratch, there are three off-the-shelf options there to choose from.


Servo and SpiderMonkey: https://github.com/servo/mozjs


This tracks - most simpler browsers run great, until anything more than basic JS is introduced. Then they slow to a crawl.


I have the same mixed feelings. Complexity is antidemocratic in a sense. The more complex a spec gets the fewer implementations you get and the more easily it can be controlled by a small number of players.

It’s the extend part of embrace, extend, extinguish. The extinguish part comes when smaller and independent players can’t keep up with the extend part.

A more direct way of saying it is: adopt, add complexity cost overhead, shake out competition.


This is also the argument against overregulation.

A little bit can be very good, a lot can strangle everyone but the biggest players


Yes, it is. Complexity is a regressive tax.


We can only thank the millennials for killing the whole XML tech stack for good. That and blood diamonds industry.


It's far from dead, though. XML is deeply ingrained in many industries and stacks, and will remain so for decades to come, probably until something better than JSON comes along.


Yes, kind of like COBOL. Dead.


You have no idea. New projects with XML-based formats and interfaces are being implemented all the time. XML isn’t going anywhere.


There was fresh COBOL code written up until early 1990s too, long past its heyday.

Thing is you couldn't swing a dead cat in 00s without hitting XML. Nearly every job opening had XML listed in requirements. But since mid-2010s you can live your entire career without the need to work on anything XML-related.


Apple’s operating systems to this day make heavy use of XML by way of plists. You can’t have an app without it.

https://en.wikipedia.org/wiki/Property_list


I guess? Although in the few iOS/watchOS apps I made I never edited it manually.


But it’s still there and needs to be supported by the OS and tooling. Wether you edit it manually isn’t relevant (and as counterpoint, I do it all the time, for both apps and launchd agents).


Of course it's there. Expecting all the stuff laid in 00s disappear overnight would be unrealistic.

COBOL code is also still there.


There's still epub and tons of other standards built on xml and xhtml. Ironically, the last epub file I downloaded, a comic book from humble bundle, had a 16mb css file composed entirely of duplicate definitions of the same two styles, and none of it was needed at all (set each page and image to the size of the image itself, basically)


On the web. I, among other things, make Android apps, and Android and XML are one and the same. There is no such thing as Android development without touching XML files.


I did Android Developer Challenge back in 2008 and honestly don't remember doing that much of XML. Although it is the technology from peak XML days so perhaps you're right.


Flutter? React Native? Maui?


None of that is what I would call "Android development".

But even if you use one of those terrible technologies, your app still needs a manifest and some native resources.


RSS, MusicXML, SVG, Docbook, Epub, JATS, XMP, ...

Sorry, web frontend is not the "whole XML tech stack", despite popular belief.

And yes all of the above are mainstream in their respective industry.


Some of it deserved to die, mostly because it was misused.

I don’t know how many times I had to manually write <![CDATA[ … ]]>

I know all markup languages have their quirks, XML could be come impressively complex and inscrutable.


It has, I think, one nice feature that few markups I use these days have: every node is strongly-typed, which makes things like XSLT much cleaner to implement (you can tell what the intended semantics of a thing is so you aren't left guessing or hacking it in with __metadata fields).

... but the legibility and hand-maintainability was colossally painful. Having to tag-match the closing tags even though the language semantics required that the next closing tag close the current context was an awful, awful amount of (on the keyboard) typing.


Ironically, that text is all you get if you load the site from a text browser (Lynx etc.) It doesn't feel too different from <noscript>This website requires JavaScript</noscript>...

I now wonder if XSLT is implemented by any browser that isn't controlled by Google (or derived from one that is).


> now wonder if XSLT is implemented by any browser that isn't controlled by Google (or derived from one that is).

Edge IE 11 mode is still there for you. Which also supports IE 6+ like it always did, presumably. They didn’t reimplement IE in Edge; IE is still there. Microsoft was all in on xml technologies back in the day.


Firefox haven't removed XSLT support yet.


I should've worded differently. By the narrative of this website, Google is "paying" Mozilla & Apple to remove XSLT, thus they are "controlled" by Google.

I personally don't quite believe it's all that black and white, just wanted to point out that the "open web" argument is questionable even if you accept this premise.


The problem is that the web is no longer really "open". Google kind of controls most of it right now. Just look at all the admoney influx.


Pale Moon still has XSLT support and has no plans to remove it: https://outerheaven.club/notice/AxFlFCfzzgRRpvubVw


It’s a joke.


I suspect that it wouldn't actually be that difficult to add XSLT support to a textmode browser, given that XSLT libraries exist and that XSLT in the browser is a straightforward application of it. They just haven't bothered with it.


The page works fine in Mobile Safari.


Opera.


> You are doing embedded development or anything else not as mainstream as web dev? LLMs are still useful but no longer mind blowing and often produce hallucinations.

I experienced this with Claude 4 Sonnet and, to some extent, gpt-5-mini-high.

When able to run tests against its output, Claude produces pretty good Rust backend and TypeScript frontend code. However, Claude became borderline unproductive once I started experimenting with uefi-rs. Other LLMs, like gpt-5-mini-high, did not fare much better, but they were at least capable of admitting lack of knowledge. In particular, GPT-5 would provide output akin to "here is some pseudocode that you may be able to adapt to your choice of UEFI bindings".

Testing in a UEFI environment is quite difficult; the LLM can't just run `cargo test` and verify its output. Things get worse in embedded, because crates like embedded_hal made massive API changes between 0.2 and 1.0 (the latest version), and each LLM I've tried seems to only have knowledge of 0.2 releases. Also, for embedded, forget even thinking about testing harnesses (which at least exist in some form with UEFI, it's just difficult to automate the execution and output for an LLM). In this case, you cannot really trust the output of the LLM. To minimize risk of hallucination, I would try maintaining data sheets and library code in context, but at that point, it took more time to prompt an LLM than handwrite code.

I've been writing a lot of embedded Rust over the past two weeks, and my usage of LLMs in general decreased because of that. Currently planning to resume development on some of my "easier" projects, since I have about 300 Claude prompts remaining in my Zed subscription, and I don't want them to go to waste.


This is where Rust's "if it compiles, it's probably correct" philosophy may come in handy.

"Shifting bugs left" is even more important for LLMs than it is for humans. There are certain tests LLMs can't run, so if we can detect bugs at compile time and run the LLM in a loop until things compile, that's a significant benefit.


My recent experience is that llms are dogshit at rust, though, unable to correct bugs without inserting new ones, going back and forth fixing and breaking the same thing, etc.


A while ago I gathered every HN comment going back a year that contains Rust and LLM and about half are positive and half are negative.


Sounds like the general "LLMs are net useful or not" sentiment here too. Personally Rust+LLMs work great, and workflow is rapid for as long as you can get the LLM to run one command to say "good or bad" without too much manually work, then it can iterate until it all works. Standard advice for prompting like "Don't make tests pass by changing assertions" tends to make the experience better too, but that's not Rust specific either.


Aren’t we all though?


> Also, for embedded, forget even thinking about testing harnesses (which at least exist in some form with UEFI, it's just difficult to automate the execution and output for an LLM).

I think this doesn't have to be like this and we can do better for this. If LLMs keep this up, good testing infrastructure might become more important.


One of my expectations for the future is the development of testing tools whose output is "optimized" in some way for LLM consumption. This is already occurring with Bun's test runner, for instance.[0] They are implementing a flag in the test runner so that the output is structured and optimized for token count.

Overall, I agree with your point. LLMs feel a lot more reliable when a codebase has thorough, easy-to-run tests. For a similar reason, I have been drifting towards strong, statically-typed languages. Both Rust and TypeScript have rich type systems that can express many kinds of runtime behavior with just types. When a compiler can make strong guarantees about a program's behavior, I assume that helps nudge the quality of LLM output a bit higher. Tests then help prevent silly regressions from occurring. I have no evidence for this besides my anecdotal experience using LLMs across several programming languages.

In general, I've had the best experience with LLMs when there's plenty of static analysis (and tests) on the codebase. When a codebase can't be easily tested, then I get much less productivity gains from LLMs. So yeah, I'm all for improving testing infrastructure.

[0] https://x.com/jarredsumner/status/1944948478184186366


Additionally, the "r" and "l" may lead one to incorrectly guess that rvalues and lvalues are related to their position in an expression. But alas, they aren't; there are lvalues that cannot appear in the left-hand side of an expression.


Are you referring to consts? Besides those, I can't really think of a counterexample.


https://en.cppreference.com/w/cpp/language/value_category.ht...

There’s some weird examples here involving functions, function pointers, template parameters, and a few other things.


> cannot appear in the left-hand side of an expression

Do you mean assignment?


On this site, I've seen these kind of takes repeatedly over the past years, so I went ahead and built a little forum that consists of a single Rust binary and SQLite. The binary runs on a Mac Mini in my bedroom with Cloudflare tunnels. I get continuous backups with Litestream, and testing backups is as trivial as running `litestream restore` on my development machine and then running the binary.

Despite some pages issuing up to 8 database queries, I haven't seen responses take more than about 4 - 5 ms to generate. Since I have 16 GB of RAM to spare, I just let SQLite mmap the whole the database and store temp tables in RAM. I can further optimize the backend by e.g. replacing Tera with Askama and optimizing the SQL queries, but the easiest win for latency is to just run the binary in a VPS close to my users. However, the current setup works so well that I just see no point to changing what little "infrastructure" I've built. The other cool thing is the fact that the backend + litestream uses at most ~64 MB of RAM. Plenty of compute and RAM to spare.

It's also neat being able to allocate a few cores on the same machine to run self-hosted GitHub actions, so you can have the same machine doing CI checks, rebuilding the binary, and restarting the service. Turns out the base model M4 is really fast at compiling code compared to just about every single cloud computer I've ever used at previous jobs.


Just one of the couple dozen databases we run for our product in the dev environment alone is over 12 TB.

How could I not use the cloud?


12TB is $960/month in gp3 storage alone. You can buy 12TB of NVMe storage for less than $960, and it will be orders of magnitude faster than AWS.

Your use case is the _worst_ use case for the cloud.


The most consistent misunderstanding I see about the cloud, is disk I/O. Nobody understands how slow your standard cloud disk is under load. They see good performance and assume that will always be the case. They don't realize that most cloud disks use a form of token tracking where they build up I/O over time and if you have bursts or sustained high I/O load you will very quickly notice that your disk speeds are garbage.

For some reason people more easily understand the limits of CPU and memory, but overlook disk constantly.


At one time I had a project to run a cryptocurrency node for BSC (this is basically a fork of Ethereum with all the performance settings cranked up to 11, and blocks centrally issued instead of being mined). It's very sensitive to random access disk throughput and latency. At the time I had a few tiny VPS on AWS and a spinning drive at home, so I evaluated running it there. Even besides the price, you simply cannot run it on AWS EBS because the disk is just too slow to validate each block before the next one arrives. I spent a few hundred dollars and bought an NVMe SSD for my home computer instead.


Even without that, you are still at the heart of it accessing over a SAN like interface with some sort of local cache. Getting an actual local drive on AWS the performance is night and day


Sure, you can work around it; but it blows up the savings alot of people expect when they don't include this in their math.

Also, SAN is often faster then local disk if you have a local SAN.


How is a SAN faster than a local disk? Any references / recommendations?


Probably comparing a HDD SAN (with data spread across many drives) to a single local HDD.


I would expect by the magic of parallelism?


What could I read to inform myself better on this topic? It is true I had not seen this angle before


This looks pretty informative. The terminology can be hard to follow. https://medium.com/@bounouh.fedi/understanding-iops-in-aws-w...

I/O is hard to benchmark so it's often ignored since you can just scale up your disks. It's a common gotcha in the cloud. It's not a show stopper, but it blows up the savings you might be expecting.


First of all, if you have a dev DB that’s 12 TB, I can practically guarantee that it is tremendously unoptimized.

But also, that’s extremely easily handled with physical servers - there are NVMe drives that are 10x as large.


that's what I always brag to my devs, why is our DB 1TB, and only 20 users are working in our app. They are collecting all garbage and saving it to DB. Poor development skills I would say. Our old app did the same thing, and after 15 years it was barely 100GB with tens of users. devs today are SELECT *. If it does not work, they say we need more resources. Thats why I hate cloud.


Nothing like piling transactions, analytics, and logs to the same database. /s


Eh, please find me a 120 TB NVMe.



> Just one of the couple dozen databases we run for our product in the dev environment alone is over 12 TB.

> How could I not use the cloud?

Funnily enough, one of my side projects has its (processed) primary source of truth at that exact size. Updates itself automatically every night adding a further ~18-25 million rows. Big but not _big_ data, right?

Anyway, that's sitting running happily with instant access times (yay solid DB background) on a dedicated OVH server that's somewhere around £600/mo (+VAT) and shared with a few other projects. OVH's virtual rack tech is pretty amazing too, replicating that kind of size on the internal network is trivial too.



> one of the couple dozen databases

I guess this is one of those use cases that justify the cloud. It's hard to host that reliably at home.


Not too push the point too hard, but a "dev environment" for a product is for a business (not an individual consumer). Having a server (rack) in an office is not that hard, but alas the cloud might be better here for ease of administration.


My understanding is that aws exists because we can't get any purchase approved in under three months.


I don't think so. An organization so big and bureaucratic that needs 3 months to authorize a server purchase will for sure need a few weeks of paperwork to authorize a new AWS account creation, and will track the spending for OU and will cut budget and usage if they think you deserve it.


And plenty of datacenters will be happy to give you some space in one of their racks.

Not wanting to deal with backups or HA are decent reasons to put a database in the cloud (as long as you are aware how much you are overpaying). Not having a good place to put the server is not a good reason


If anyone's curious about the ballpark cost, a carrier-owned (?) DC near me that publishes prices (most don't) advertises a full rack for 650€ per month, including internet @ 20TB/month @ 1 Gbps, and 1kW power.

Though both of which are probably less than you'd need if you needed a full of rack of space, which I assume is part of the reason that pricing is almost always "contact us". I did not bother getting a quote just for the purpose of this comment. But another thing that people need to be less afraid of, when they're looking to actually spend a few digits of money and not just comment about it, is asking for quotes.


12 TB fits entirely into the RAM of a 2U server (cf. Dell PowerEdge R840).

However, I think there's an implicit point in TFA; namely, that your personal and side projects are not scaling to a 12 TB database.

With that said, I do manage approximately 14 TB of storage in a RAIDZ2 at my home, for "Linux ISOs". The I/O performance is "good enough" for streaming video and BitTorrent seeding.

However, I am not sure what your latency requirements and access patterns are. If you are mostly reading from the 12 TB database and don't have specific latency requirements on writes, then I don't see why the cloud is a hard requirement? To the contrary, most cloud providers provide remarkably low IOPS in their block storage offerings. Here is an example of Oracle Cloud's block storage for 12 TB:

  Max Throughput: 480 MB/s
  Max IOPS: 25,000
https://docs.oracle.com/en-us/iaas/Content/Block/Concepts/bl...

Those are the kind of numbers I would expect of a budget SATA SSD, not "NVMe-based storage infrastructure". Additionally, the cost for 12 TB in this storage class is ~$500/mo. That's roughly the cost of two 14 TB hard drives in a mirror vdev on ZFS (not that this is a good idea btw).

This leads me to guess most people will prefer a managed database offering rather than deploying their own database on top of a cloud provider's block storage. But 12 TB of data in the gp3 storage class of RDS costs about $1,400/mo. That is already triple the cost of the NAS in my bedroom.

Lastly, backing up 12 TB to Backblaze B2 is about $180/mo. Given that this database is for your dev environment, I am assuming that backup requirements are simple (i.e. 1 off-site backup).

The key point, however, is that most people's side projects are unlikely to scale to a 12 TB dev environment database.

Once you're at that scale, sure, consider the cloud. But even at the largest company I worked at, a 14 TB hard drive was enough storage (and IOPS) for on-prem installs of the product. The product was an NLP-based application that automated due diligence for M&As. The storage costs were mostly full-text search indices on collections of tens of thousands of legal documents, each document could span hundreds to thousands of pages. The backups were as simple as having a second 14 TB hard drive around and periodically checking the data isn't corrupt.


Still missing the point. This is just one server and just in the dev enviornment?

How many pets do you want to be tending to? I have 10^5 servers I'm responsible for...

The quantity and methods the cloud affords me allow me to operate the same infrastructure with 1/10th as much labor.

At the extreme ends of scale this isn't a benefit, but for large companies in the middle this is the only move that makes any sense.

99% of posts I read talking about how easy and cheap it is to be in the datacenter all have a single digit number of racks worth of stuff. Often far less.

We operate physical datacenters as well. We spend multiple millions in the cloud per month. We just moved another full datacenter into the cloud and the difference in cost between the two is less than $50k/year. Running in physical DCs is really inefficient for us for a long of annoying and insurmountable reasons. And we no longer have to deal with procurement and vendor management. My engineers can focus their energy on more valuable things.


What is this ridiculous bait and switch. First you talk about a 12 TB dev databases and "How could I not use the cloud?". And you rightfully get challenged on that and then suddenly it's about the number of servers you have to manage and you don't have the energy to do that with your team. Those two have nothing to do with each other.


Why do people think it takes "labor" to have a server up and running?

Multiple millions in the cloud per month?

You could build a room full of giant servers and pay multiple people for a year just on your monthly server bill.


Found the "AWS certified cloud engineer".



Buy a pretty basic HDD? These days 12 TB isn’t all that much?


My friends run hundreds of TB:s serviced onto the Internet for hobby and pleasure reasons.

It's not all HA, NVMe, web scale stuff, but it's not like a few hundred TB:s is a huge undertaking even for individual nerds with a bit of money to spend or connections at corporations that monotonically decommission hardware and is happy to not have to spend resources getting rid of it.

This summer I bought a used server for 200 euros from an acquaintance, I plan on shoving 140 TB in it and expect some of my future databases to exceed 10 TB in size.


What's your cloud bill?


A high end laptop now can come with double that amount of storage.


Sounds more like your use case is like the 1~2% of the cases a simple server and sqlite is maybe not the correct answer.


what are you doing that you have 12TB in dev??? my startup isn't even using a TB in production and we hands multiple millions of dollars in transactions every month.


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

Search: