skysight-inc/HackerNews huggingface dataset:
Ask HN: Do you run databases on Kubernetes?
I'm curious if development teams prefer to run databases in or out of Kubernetes. For those who do, how to you make it work? What are the key points you think anyone who is considering doing the same should think about before going for it? For those who eventually decided against it, what were the main factors for the decision?

I was at Kubecon earlier this year, and the impression I got was that in general, persistence on Kubernetes is still somehow a challenge, and I think that's true given what I see first hand.

I work in a very small team that, sadly, do not have enough expertise with maintaining databases. I mean, we can use them, but we're not at the level where we can make databases sing. I think somewhere in our organization, there are database people, but currently none of them are involved directly in our project. We are, at the moment, running MongoDB in our Kubernetes cluster, but we recently ran into some issues with it causing problems for the rest of the deployments. I was wondering if it's time for us to consider moving it elsewhere so Kubernetes doesn't have to worry about it.
I find it hard to believe they were really unaware. They either overestimated the durability of their devices or were running a quasi scam.
> with a binary format you can transmit NaN, Infinity, -infinity, and -0. You can also create two NaN numbers that do not have the same binary representation. You have to choose single or double precision (maybe a benefit, not always). Etc.

Boy you are really stretching to make this sound complicated. It's not. You transmit 4 bytes or 8 bytes. Serialization is a memcpy().

You don't have to think about NaNs and Infinities because they Just Work -- unlike with textual formats where you need to have special representations for them and you have to worry about whether you are possibly losing data by dropping those NaN bits. If you want to drop the NaN bits in a binary format, it's another one-liner to do so.

It's funny that you choose to pick on floating-point numbers here, because converting floating-points to decimal text and back is insanely complicated. One of the best-known implementations of converting FP to text is dtoa(), based on the paper (yes, a whole paper) called "How to Print Floating-Point Numbers Accurately". Here's the code:

http://www.netlib.org/fp/dtoa.c

Go take a look. I'll wait.

dtoa() is not even the state of the art anymore. Just in the last few years there have been significant advances, e.g. Grisu2, Grisu3, and Dragon4...

Again, in binary formats, all that is replaced by a memcpy() of 4 or 8 bytes.

(A previous rant of mine on this subject: https://news.ycombinator.com/item?id=17277560 )

> > Length-prefixed binary formats are almost trivial to parse

> They definitely are not, as displayed by the fact that binary lengths are the root cause of a huge number of security flaws. JSON mostly avoids that.

Injection (forgetting to escape embedded text) is the root cause of a huge number of security flaws for text formats. Length-prefixed formats do not suffer from this.

What "huge number of security flaws" are you referring to that affect length-delimited values? Buffer overflows? Those aren't caused by values being length-delimited, they are caused by people deserializing variable-length values into fixed-length buffers without a check. That mistake can be made just as easily with a text format as with a binary format. In fact I've seen it much more often with text.

> JSON currently dominates large parts of that ecology.

JSON wins for one simple reason: it's easy for human developers to think about, because they can see what it looks like. This is very comforting. It's wasteful and full of pitfalls ("oops, my int64 silently lost a bunch of bits because JSON numbers are all floating point"), but comforting. Even I find it comforting.

Ironically, writing a full JSON parser from scratch is much more complicated that writing a full Protobuf parser. But developers are more comfortable with the parser being a black box than with the data format itself being a black box. ¯\_(ツ)_/¯

(Disclosure: I am the author of Protobuf v2 and Cap'n Proto. In addition to binary native formats, both have text-based alternate formats for which I wrote parsers and serializers, and I've also written a few JSON parsers in my time...)
I learnt about the Haiku package management system when I had already developed distri for several months.

I do actually reference Haiku, but in the referenced post https://michael.stapelberg.ch/posts/2019-08-17-linux-package..., not in the distri introduction post itself.

I think it’s very telling that the two approaches look so similar, so I was really happy to learn about the similarities with Haiku!
Because it's so obviously a fraud that to say so doesn't add anything to the conversation.

On the other hand the fraud is wrapped in the most delicious of absurd flfftery that it's a pleasure to try to ape it.
I think the best for societies is solar roofs. Much better surface availability. Solar roads, filled with thousands of cars cannot suck energy from sun so well as houses' roofs.
This is a great point. I did move from Wells Fargo to a credit union, and this was a move from unhappy to happy. But as the larger point, I cannot boycott every business I have a bad experience with, or that is somehow unethical, I'd starve to death, so to speak.
I'm all for trying things out, but this idea was always pretty crazy. It sounded nice at a very superficial level. Good solutions usually solve multiple problems, and this "solution" combined some problems... Seems like a smaller trial would have been just as effective
As fucked up as it is, I see society changing in terms of attitude. If someone were to anonymously mail me nudes of one of my co-workers, the first thought is this person's privacy has been violated and this is abhorrent. Yes there are folks who will use it for further hurtful purposes, but compared to a generation or two ago I feel there is less "slut shaming" these days.

People fuck. People take pics of themselves and others naked while fucking. It is fun. It is part of the human experience. It is really fucking lame when someone weaponizes those natural behaviors against someone out of pure hatred or spite.

People who do such things have serious psychological problems and should seek counseling.
It's not obvious to me that cars will destroy a surface faster than bikes. Yes, cars weigh a lot more, but that weight is distributed over a larger area. The force on a given square millimeter of the surface that the vehicle is on is actually 2-4 times as high for a bike than from a car. This is why bike tires typically are inflated to 2-4 times the pressure of car tires.
> "DJIA" (which turns out to just be an acronym for the Dow Jones)

Dow jones compiles indices on several sectors, not just the Industrials. Hence the four letters in the acronym.
iPhone 7 iCloud Lock
There has to be a way to bypass it. She no longer has access to her iCloud, the phone has been wiped, and we can't do anything with it. Apple is useless, and I've heard rumor that you can get through it, but it's some highly locked down trade secret that no one wants to tell.

Anyone want to help? Reddit just deletes anything that mentions or asks, since it's "illegal" even though it's the phone owner trying to get help.
French officials said the road, made of photovoltaic panels, would generate electricity to power streetlights in Tourouvre, a local town.

I don't know how reliable they are, but solar-powered streetlights are already common in some areas --- and being mounted high above on the lights themselves, the panels are far less likely to be damaged.
At work we avoid package manager altogether following the mantra that the best package manager is no package manager at all.

All the software is installed in a global directory /cvmfs and distribute to all the clients using FUSE and simple http servers.

Then different departments have ownership of different subpaths. General software that can be useful to everybody is installed in /cvmfs/sft.cern.ch software that is useful to only a specific collaboration is installed in, as an example, /cvmfs/lhcb.cern.ch
I never managed to see the advantages of having a solar road compared to just having a normal road with solar panels next to it. Or above it. Or literally anywhere else. In fact I can't think of many areas that still get direct sunlight that would make for a worse place to put solar panels than on the road...
Impressive arrogance + ignorance, congrats.
I'm curious how you arrived at that conclusion? Common wisdom, at least a few years ago, was "cleaning isn't worth it".

(https://phys.org/news/2013-07-solar-panels-worth.html)
They should also accept most of the blame for any problems, because anything higher level than "my code won't compile because the syntax is wrong" is an architecture problem.

You want to be the architect and me just a lowly coder? Ok, I'll fix my own compile errors, all other problems are on you.
An ideal cache implementation would transparently recognize the need to update itself when required, and do so efficiently and transparently.

In the particular case of the font cache, I’d say that the library which uses the cache should recognize that an update is needed. I.e., the update happens at next use, not at package installation time. On server systems, where fonts might never be loaded, this saves some compute :)
> We're the country of ruthless self deprecation coupled with perfectionist universalism.

I wonder if there traits make you good at nuclear power. Perfectionism and ruthless self criticism seem like they'd engender the kind of thorough and methodological approach that keeps reactors from getting explody.

The Russian "can't duck it, fuck it" attitude seems to have the opposite effect judging from the Geiger counter readings.
I have a couple of friends working for WeWork. Should they be worried about their jobs?
> but who argued against solar roads because of leaves killing the efficiency?

I had my concrete driveway pressure washed recently. It looked really good for about a week. Then leaves fell on it, and the leaves stained it brown again.

All the engineers had to do was look at flat concrete.
This is very interesting as this is almost identical to how the Haiku Operating System does package management using their own packaging format (hpkg) which uses packagefs. [0] [1]

This format is used more than just to package applications, but to update the whole OS in a consistent manner [2] as it is also versioned in with shared-libraries and this was implemented in 2013.

[0] - https://www.haiku-os.org/blog/zooey/2011-01-08_package_manag...

[1] - https://www.haiku-os.org/guides/daily-tasks/install-applicat...

[2] - https://www.haiku-os.org/blog/bonefish/2011-06-20_package_ma...
Eh... not really if you're referring to call stacks. Rust at one point had growable stacks. That was removed for performance reasons. Haskell with GHC kind of has growable stacks (basically IIRC most function calls occur on the heap) and its stack overflows take a different form. SML I think at one point also had an implementation with a growable call stack.
Thanks for sharing, this sounds cool! I hadn’t heard of cvmfs, but we use a similar system at work, and it works really well.
Right. But we are talking about how modern computers come with development systems too. While I'm sure the percentage of hobbyist programmers on modern machines is far smaller than in the 8-bit era, it's not like modern machines don't come with at least some development tools too.
Clojure is the only language I've been excited about since the early days of Ruby. I wish so much that it would catch on, and especially I wish it would supplant Javascript.

Clojure is such a sane, elegant, and expressive language. Elixir is pretty ok, especially on BEAM, but it looks like Perl compared to Clojure. It's just a tragedy that for the best career options one must basically choose between Python or Javascript. (js because that's what everyone uses for front end, and python because that's what's apparently eating the world via AI, ML, etc.). To be nice to Python, it's a very practical language. It just is completely inelegant compared to Ruby and especially Clojure (and even Elixir).

Every couple of years I tell myself, "I'm going to do my next project in Clojure; reality be damned!". But always I give up and fall in line.
That's super interesting! I've been pondering better package management tools for a while as the current landscape seems stagnated.

I hope some ideas from distri will make their way into mainstream distros. Maybe the more agile ones (Gentoo, Arch) would be interested?
There’s been some related work lately, too.

- Nix packages are still archives, but they do have separate roots, and use runpath to hardcode shared library paths into the Nix store.

- rpm-ostree provides something of a hybrid between images and packaging, allowing for more seamless OS upgrades while still supporting more or less traditional packages on top.

I hope that in the near future, Linux package management can jump into the next phase. Package management on UNIX likes already offered some neat advantages with their complications, but it’s interesting to watch this occur while Windows and macOS largely maintain the same model they’ve had basically forever, for better or worse. (I guess on Windows and macOS there’s an increased focus on an app-store-based distribution model, but it’s not really full system package management. The most interesting bit is probably the sandboxing.)
There is no logic behind it, only blind idealism. Unfortunately the couple who invented solar roads poured a lot of time and money into this idea and couldn't back down. Many people followed their enthusiasm.
I think one of the most difficult things you can do as a person is to be honest with yourself and admit when something has failed or won't work and to abandon it, but stories like this are reminders to really self reflect.
Thanks for sharing! Repeating my comment from the other thread for visibility:

I learnt about the Haiku package management system when I had already developed distri for several months.

I think it’s very telling that the two approaches look so similar, so I was really happy to learn about the similarities with Haiku!
Last time I checked, the default WPA passphrase for Virgin Media routers was always set to eight capital letters, making it trivially crackable with a reasonable amount of GPU compute.
Immediately before that in the article:

>My clients, all aged 18-22, had answered deceptive bikini-model ads and had become embroiled in a conspiracy to perform porn that resulted in some of them being raped before and during the shoots.

Should victims have to take responsibility for the impact of the crimes committed against them? And in any scenario, I think the article brings up a good point:

>But even if we do something “negative,” to use Lieu’s term, should that mean we deserve to be connected to it for the rest of our lives?

The Internet makes it possible for descriptions of your past, truthful or not, to follow you forever. The idea of a "right to be forgotten" tries to balance against this.
Urban areas are also where electricity is needed.

What do you mean by the "sunniest parts of the planet"? You mean the deserts? Not all countries have that luxury and maintenance might prove challenging, depending on the desert.
FTP is not a secure protocol. That's why SFTP was made, even though it isn't really anything like FTP.

In any case, integrating FTP in your browser absolutely increases your chances of an exploit, though. When was the last time the FTP code was tested? Or worked on at all? I suspect it will have been a very long time.
Wells, Fargo, Bank of America were purchased by shady operators specifically for their reputations, which the acquirers have been slowly spending down since.

The good news is that all the good banks have already been strip-mined so that there won't be a second wave of this.

The bad news is that all that's left in the US is shitty banks. I use a credit union for my personal money, but for my companies SVB is about the best I can find. At least they don't engage in shenanigans like this.
Thanks! Yeah, I certainly hope many distros can pick it up. I have heard from someone at SUSE: https://twitter.com/fleming_matt/status/1162819502050070528
How great would it be to have a roof of solar cells above the city's bike paths. No problems with precipitation or sun and less maintenance.
This is for rooftop panels though. Having regular activity on top of something is, I would assume, very different than just letting it sit.
Those aren't caused by values being length-delimited, they are caused by people deserializing variable-length values into fixed-length buffers without a check. That mistake can be made just as easily with a text format as with a binary format. In fact I've seen it much more often with text.

Especially since text can be arbitrarily long. From that perspective, length-delimited text (I've seen that before in a few file formats, and more notably HTTP) is probably the worst of both worlds.
”Remember that the book was written in the 80s”

Nitpick: 1975 (had to look it up to check whether my memory “it must be older” was right)
I do not recollect the name, but there is an Indian restaurant with that concept near New Brunswick NJ.
I use alliant federal credit union -- setting up the account took but a moment.

I hear good things about tech federal and Stanford credit union (I think you need a Stanford connection).
This was a PR stunt from the beginning.

We can't even make roads last 20 years with the most durable materials we can find. We make them out of rock and they still fall apart.

Car windshields are scratched to hell after a decade. Grocery checkout scanner windows are made of Sapphire, nearly as hard as diamond, and still need to be replaced.

Solar roads will never be a reality. Optically clear material hard and malleable enough seem a physical impossibly. Metals are the only suitable material and they cannot be made transparent due to hard physical constraints.
I’m not sure what methodology has to do with my point. Launching a system isn’t a big deal, evolving a system is harder to do, finally evolving an enterprise (system of systems) is measured in years. You don’t make architectural decisions over night and aligning multiple independent systems and services is a lot harder than your ignorant comment is aware of.
Seriously, who works on a piece of software for 10+ years? Usually within 2-3 years one has to throw away most of the code as it was written in an obscure, low adoption language, or it is just so difficult to maintain that new features can't be added. Except for SOA or mSOA where parts can be replaced at any time.
What is this garbage doing on HackerNews? Really, we're putting dictatorship in quotes when referring to China now? And calling a pro-democratic movement of millions of people protesting for their rights xenophobic and Sinophobic. Wow.
This guy knows https://thehftguy.com/2017/09/26/hitting-hacker-news-front-p...

(he got 20K/day, which for all intent equals zero in my experience)
It's worth noting that the DJIA comment was specifically mentioned because it contains only 30 companies and a terrible indicator of the overall health of all American companies. But it's used as the primary indicator of the health of American companies in nightly news reports.

"Similar to the DJIA, last-round private valuations are harmful metrics that create the illusion of prosperity."

A lot of people just wish the DJIA 30 would disappear from popular use. It's a harmful metric that gives the illusion of prosperity.
I can't speak much about other countries, but the US blows unfathomable amounts of money on incredibly narrow-sighted projects (particularly military). But yet, some of what is learned from those projects benefits science and technology.

I think what we might gain from this solar road experiment will be related to material science in the area of solar panels. Just look at mobile phones; surely the transition from old plastic in front of LCDs to "gorilla" glass has benefited other use cases. I'm just guessing here, but I bet there is something to learn which can be applied elsewhere.

I think flying cars are absolutely moronic and completely impractical. But who knows... maybe the brainpower spent trying to make them work will result in better traffic management or people transportation elsewhere.
Lets test in production!
Next will be selling consols.

(For those who've never heard of them:
https://en.wikipedia.org/wiki/Consol_(bond) )
It’s like that because it’s not BMW developing the tech and it’s likely not BMW collecting the recurring revenue. Mass market cars now-a-days are a Frankenstein of niche hardware and software firms stitching together an end product.

This is one of the things Tesla has a hidden edge on. From my understanding, it’s all in-house. It does mean there’s two much going on at Tesla at once, which is why the short comings on quality I think. But it also means the only gap from now to domination for them is time.

I LOVE BMW btw, owned several. But I’m not blind to the fact that most of the car isn’t BMW at all. And all those firms are trying to squeeze margins by reducing development time.
"non-tech-first companies"

Is an ISP not tech first?

Bell labs is an off shoot of a phone company, early computing was based on the efforts of phone companies. Phone companies, which ISPs are the modern variant are the original tech companies.

Edit to add:
Virgin maintains a fibre optic network so we aren't just talking about a sales front end to someone else's network.
Cheaper ones can track a single connection, but they can't listen to all channels simultaneously.
> Fortunately we didn't give up on flight after the early airplanes.

Airplanes are not amenable to hackers designing them. Getting one to fly required a directed engineering effort, with a series of prototypes each targeted at solving a specific problem. I think it was the first such project that did so.

The Wrights are often dismissed as "bicycle mechanics", but if you take a closer look they were very competent engineers.

(The difference between an engineer and a mechanic is math. The Wrights did not try random things, they used math to arrive at solutions.)
TL;DR — try WiFi first, then Ethernet, then cellular.
Solar roadways failed for the same reason Tesla will NEVER outsell gasoline cars: bad technology that's orders of magnitude worse than existing solutions.

That being said, a huge leap forward in technology would make BOTH viable.

A better road-based electricity generation plan would have been to use piezoelectric panels instead of photovoltaic ones.
The chances of collision are low enough that there are few enough of them to fail to offset the now-missing original radiation pressure, which then allows a gravitational collapse to begin and progress.
They also need to keep cool, another thing being under many running cars is not ideal for.
Another recommendation would be to take an approach outside of price-based time series models. Elastic has an article on this 'Generating and visualizing alpha...' https://www.elastic.co/blog/generating-and-visualizing-alpha...
Sure, I tend to agree with you. But as I posted to another reply, it's conceivable that this silly experiment will lead to improvement in material science or some other construction/manufacturing practice related to solar panels.

And hey, we can't be too hard on them for perhaps jumping on a bandwagon. Solar roads seems more plausible than food delivery service on "the blockchain".
I remember Excel also has(had?) some very disturbing behaviour around the interaction of CSV files and the regional decimal point separator settings.