skysight-inc/HackerNews huggingface dataset:
Hi! I'm one of the authors.

> 1. considerably more complex under the sheets, and

Yes it is, which sometimes comforts me when I think of how long it's taken to get a version that works reasonable well.

That said, it's also not the kind of complexity that goes against performance, but rather the kind that makes it hard to process Pijul repositories or patches with independent tools.

> 2. considerably more complex in situations you're going to have to deal with as a user.

I've used it quite a bit, but the biggest repository I've every interacted with is Pijul itself, which is a rather small codebase, so I don't know how the UX scales.

I find it as easy to use as Darcs, with the caveat that patches are not always as intelligible as in Darcs. That said, patches solving conflicts are weird and/or wrong in Darcs, and they are quite simple in Pijul. And I believe conflicts are the situations where you need the most simplicity and clarity.

> It would be nice to read an article from someone familiar with Pijul, [..]

That is a really nice suggestion for a blog post, it's now on my todo list. Thanks!

> For example, accurately representing repository states with files appears difficult

This is unfortunately a difficulty intrinsic to the problem. Git has the same issue, it just doesn't really show it because the conflicts that cause this are shown in a very basic way (there's only so much that diff3 can guess).

> I managed to find a few patches I couldn't understand by looking at them.

There are two issues: one is that the Nest doesn't yet have the best algorithms to render patches (but is likely to improve a lot with the new version of libpijul I'm writing), and the other one is that some patches might have been converted from a previous patch format, which makes them weird.

> I really want to like Pijul, but I'm worried that it's too powerful and requires too much from the user.

The goal is quite the opposite! For starters you can use it just like Git (with branches, and only with better merges). But then when you realise you don't need branches, everything becomes much simpler, and the tool stops getting in your way. For large Git repositories (such as NixOS/nixpkgs on GitHub), I wish it was using Pijul about 100% of the time I contribute or even use my local clone.
Password hashing and server relief (2015)
Weird that there's no mention of writing tests.

After all, they help in explaining the intent behind the given piece of code.

With well written tests even the most "clever" implementations become at least reasonably understandable.

Anyway, here's what I do to deal with this problem:

1. Write code (and tests).

2. Switch to some other task.

3. Forget about that previous piece.

4. Get back to it and judge if it's still readable.

If something is readable then it's likely to be modifiable as well.

One classic example of things that I learned to never de-duplicate is the routing configuration. In this instance anything that isn't an explicit list of URLs is usually too "clever" to be readable.
> They are computationally slow, no tricks

They have to and do use tricks, they aren't just slow. You could trivially make sha256 slow by just applying it a million times (that's not even parallelizable as well), but scrypt et al improve on that by making the algorithm also require a lot of RAM, use complex instructions (hard to recreate on a GPU or FPGA) and so on.

It's really hard to do very well, look at cryptocurrencies trying to be ASIC resistant: They want every normal person to be able to mine it, and don't want companies to be able to build a machine that can eclipse the mining power of everyone which means centralization.
Good idea, I'll add it to the roadmap. Thanks!
Ask HN: ANyone use their living room TV as a computer display?
I've had a 40" 4k display as my main monitor in my home office for a few years now, but it's starting to show signs of age. It occurs to me that if I sat a foot or so further away a 60" 4k TV would work just as well, and there's already one of those in the living room, so why invest in a second one?

I see plenty of articles extolling the benefits of PC gaming on the living room TV, but none about using it as a workstation display. Anyone out there with tips about setup and/or furniture? How do you setup an ergonomic desk arrangement, that can be cleared away to allow watching TV when friends come by? How do you handle cables, peripherals, noise levels, etc?
Surely Semyon would be the more common way of rendering семён?
One of the best 2h practical course that I had was just write the fastest square matrix multiplication. You could use any language, any algorithm, just no libraries. The target was a 32 core CPU server (this was ~10 years ago). At 5000x5000 all the Java and Python attempts were running out of memory. In C, We tried some openmp, some optimized algorithm, but in the end the best trick was to flip one of the matrix so that memory could be always prefetched. Out of curiosity another student tried GNU Scientific Library, it turned out to be ~100 times faster. My take away was find the right tool for the job!

A fun read on cloud scale vs optimized code is this recent article comparing ClickHouse and ScyllaDB (https://www.altinity.com/blog/2020/1/1/clickhouse-cost-effic...)
I'm a big fan of ann-benchmarks and will be the first to tell you that the research community needs way more benchmarks like this. But I do want to add a couple caveats about it for people looking into this area:

1) Most of these datasets have extremely correlated dimensions. If you plot the covariance matrices, you'll see dense blobs of entries close to 1 all over the place. This makes the ANN task much easier than it would be with, say, high-quality DNN features. As an example, I've compressed MNIST digits down to 1 byte representations with vector quantization and still gotten nearly perfect retrieval accuracy.

2) 1M vectors is not that many. You can get easily get 1k queries per second in a single thread at a decent precision/recall just brute-force scanning through them with a SIMD approximate distance function like Bolt or Quicker ADC [1]. Also worth noting that the FAISS paper (along with a lot of other work since then) focuses mostly on 100M to billions of vectors.

3) Related to (2), I think most of these methods aren't incorporating state-of-the-art approximate distance functions yet (though I haven't dug into all of their source code). AFAICT FAISS+Quicker ADC [2] is the actual leader on x86 CPUS. Can't comment on the production-readiness of their code though.

[1] The latter is a bit faster for ANN search, though the code is more complex IIRC.

[2] https://github.com/technicolor-research/faiss-quickeradc
I tried for Boris too but couldn't find a solution
Sorry, not following. I don't have any deep knowledge about the subject more than I historically been interested in fitness and bodybuilding and with that comes some knowledge about hormones.

Not saying "roid rage" is not impossible but the studies I saw was that the idea mainly came from people in criminal circles who often used a multitude of drugs who wanted to be bigger and more intimidating and then drank some alcohol, popped some benzo or did pcp and started fights. Thus "roid rage" became a thing.

But when they looked at people who were just in the fitness industry with normal jobs and families that used testosterone they did not find the connection. This was a time ago and maybe there are newer studies. However there are much stronger anabolic steroids than testosterone and those I suspect can cause real roid rage; some people seem to get odd rages on for example trenbolone.

Hormones do affect how you feel though and like I said I do only have experience with Prednisone for inflammatory bowel disease flares and while I get noticeable more irritated (I can control it, so I know that I'm pissed that my colleague is humming because of the medicine and I can just ignore it) but I've read in forums about the disease that one decided to stop driving when he was on high dose Prednisone just because he got such insane road rage and was afraid that he would do something stupid. That is rarely something doctors tell you.

About your other questions I don't know I'm afraid. I have very little knowledge about the subject more than these specifics.
Yes, I'd love to see it as the second line, and the auto complete options. Probably dreaming to think this would be possible in Chrome?
> If google gave a crap they would put a phone number to that email so you can talk to a human and resolve any issue

Do you know how insanely hard that would be to staff and manage such an operations for a global corporation? It had a 1 BILLION MAU back in 2015.
C.A.R Hoare couldn't foresee consequences 55 years ago. That's a small mistake. We should blame language designers who didn't bother to handle the problem after it's been obvious.
>my main complain is not having username and password fields on the same page :/

This!

Our new Linux login has username and password entry fields in separate (and successive) windows, and they look quite similar.

Since I enter my password much more often (to unlock) than my username, I built up a reflex of entering the password, and the rare times I have to enter my username I often type in the password instead, visible to anyone looking at the screen.

I see this new design as a security issue.
> The criticism directed by the Pijul guys at git cherry-pick is actually not a problem at all.

Maybe, maybe not, but it comes with actual arguments, whereas that comment doesn't.
Student Life: Why We Hated College
I don’t know if you feel this way, but my complaint about the more hyped cloud services is that not only can they be expensive (fine) but the promised time-savings and simplicity of operating the system often doesn’t really materialize either, except in restricted circumstances that you don’t appreciate in advance and only find out later after you’ve already committed.

If it really did save time and were simpler, some companies would (quite reasonably) be willing to pay a premium for that - time is money and all that. In reality it seems like people often end up with the worst of both worlds - it’s expensive, complicated, still needs a huge staff to maintain, and doesn’t even work that well.
Well, the premise going in after a quick (very quick) review of the system was: 'I will check what I can do in 5 days at $10k; I believe I can help, but if I cannot, you lose $10k. If I can help you in less time, you only pay that time.'. I do not think I can move that to some other deal with that premise. Maybe if I say; 'I will do this for 50% of the money you save in 12 months after I am done' that would work, but this is is a side thing which I do because I like optimizing things; if I sell it in another way, it's not bound to time which will make it a timesink and risk. It is a choice.
i'm no expert but don't the roots (and everything else left behind) rot away and release co2?
The back door is either automatic or human account recovery tools.

These tools generally put way too much trust into the phone number and allow someone who has compromised that number to take control of anything it has ever touched.

Phone numbers are very public and easy to steal in ways which are difficult to defend against.

Imagine someone in a domestic abuse situation having their phone taken, with sms 2fa, how hard would it be for that person to recover and retain access to their accounts and services?

With SMS 2FA someone who knows you personally and has control of your phone number is nearly impossible to escape.

All the adversary has to do is say "oh this was linked to my old number" and account support is super likely to just give access away.

You would have to be somewhat of an opsec expert to escape that hell, and even if you know everything it becomes impossible to defend yourself against the owners of your accounts giving access away.

The only real defense is to never associate your phone number with personal accounts which even then is often not possible.
I like this idea, but perhaps not as user friendly as a button, and I guess requires I begin with DDG as my search engine rather than whichever one I want to choose.
Yes: these birds build their nests cooperatively.
The fact that a company is allowed to amass so much of your digital life but then lock you out with no recourse should cause outrage. It's no different than if your landlord, your bank, or the post office decided one day to lock you out and not even bother to give you an explanation, let alone to give you back your money and property.

We live in a world where services like the ones Google provides aren't just optional, they're critical for so many people. Some have less money in the bank or home than the value of their emails, contacts, media, and whatever else may be stored in Google's systems. Some of those things are priceless.

I agree that it's Google's right to refuse to have/keep you as a user/customer but they should be legally forced to give you back all of your data or at the very least give a generous notice period.
The same goes for Facebook. My company uses a legimate Business Account to handle ads of our clients. Nothing shady there. Regular SMB ads. More or less a month ago i receive an email the whole account has been blocked due to some violations. Whole freaking account. Without any warnings. We had clear history. And this means essencially you can close your company if you run only FB ads because you can not create another ads account.

Eventually they recovered the account in 48 hours and wrote they are sorry.

But the thing is it does not solve the problem. You can loose your business just by a system mistake in a second.

And it seems like there is always a way out. But there is not always. Really, does a company of a size of a Facebook or Google care about one person or one small business?

I had a Instagram account for 10 years with my photos and fought 6 months to get it back after hacker takeover. Believe me i have tried everything to get it back. And no, there was no way. There is no number you can call to fix it.

Its just so dangerous to have such single points of failure nowadays like Facebook or Google. Both for business and personal use. Its just great to hear a person who was able to remove it.
Its Listed on the LSE with the code SONG
R7RS versus R6RS (2018)
What about the fact that he paid a shady PI to shake down a cave diver trying to help with the Thai cave rescue? Or regularly sends his troll army after journalists with baseless accusations? Or that he commited securities fraud in plain site? Or that it looks like he bailed his family out at the expense of company shareholders? Or that he burned taxpayers in Buffalo?

What about the fact that as the world wakes up to atrocities in China, he went there hat in hand, selling out to the CCP?

There are legit reasons he could be disliked.
I've had a problem with trying to sign into my approved AdSense account the past few weeks. "We encountered an error. An engineer is looking into the issue." No way to contact them. I'm done with Google as well. I'm never going to use a service that doesn't provide a way to contact support.
Value and move semantics do the same thing and work in 90% of the cases a GC does. For the remainder there's ARC.
Let’s all hope that in 200 years all institutions are 100% controlled by millenials.

That would also solve the problem of death for humanity.
> You are not building something new switching from one big corp to another small company that want to become another big company next day.

This. At some point you have to trust someone.

Even if you're off Google you're leaking data with your phone, credit card, smart TV, ISP, genetic testing, etc.

I know privacy isn't all or nothing but with Email the party I'm communicating with already has a copy of the communication that they could forward to anyone or save with any other provider.

I'd say ethics might be a larger reason to switch.
Wasn't it the case that the requirements were the same at the time the code was written? TextBlock.resizeTopLeft(...) and Rectangle.resizeTopLeft(...) did the same thing for the same reason, not by coincidence. The issue was the possiblity (and eventually the reality) of future divergence.
You ask why to things the article already started talking about. What do you think about what the article has already said about these things?

Also note most of the things they have moved to are self hosted. For instance Cloudron could close tomorrow and they would still own their email address. Seems quite different than moving from a big company to a small company that wants to be a big company.
Can you compare nanovms to osv.io?
Most of the CO2 is captured in soil. And there is a very good chance that such good soil will sprout other plants, continuing the carbon capture cycle. (In fact, dead trees in the forests are sometimes called tree nurseries.) So the effect is net-carbon-capture.
> If I yell insults at you

In such a case I would just assume you are stupid or something and keep on my business. If you don't have capacity to ignore that kind of noise you probably need treatment. Threats, however, are a different story.

You shouldn't care much if some random people express their opinion which is you're a moron (unless you meet such people often - then it might be a good idea to actually make sure there is nothing wrong with you or you are not hanging out in a wrong place) - ignoring insults usually causes better consequences than reacting to them. At the same time you usually should be worried if somebody threatens to kill you, ignoring threats can often get you in a real trouble.
And where are the studies regarding post transition surgery regret?

I would caution you to be very careful in forming your opinion from modern research in the field. The institution has undeniably accumulated a very strong bias with the emergent result that published results (and research direction) tends to be very one sided.

But looking in from the outside, I absolutely cannot take seriously an establishment which unironically recommends permanent genital mutilation which results in a potential lifetime of pain from daily dilation of an artificial orifice which is little more than a glorified wound, which is neither self cleaning nor self lubricating. What is even the point? Surely believing that this is in any way equivalent to a vagina is a medically encouraged delusion, no?

I do not mean to be insensitive to your plight. And I cannot deny that you personally have, at least in the short term, benefited from your treatment, and that's wonderful.
But we have reached a point now where young adults are being lead by doctors they trust to make irreversible changes which may permanently worsen their quality of life, in a way that seemingly contradicts the standard approach to any other brain disorder (and, yes, it fits that definition, regardless of whether the fad of the day is to pretend it doesn't). I'd have been less explicit in my comments if I didn't feel that dancing around this subject with kids gloves is the reason that we're slipping into this mess.
TiKV Reads and Writes
Ask HN: How do you acknowledge though not agree with people's statements?
I often find that I nod approvingly when people present their point of view. I notice I do this as a sign that I understand what they are communicating, but I often find that I do not agree with their points.

So, how do you signify/communicate that you understand what people say, without showing that you agree with them?
It's amazing what they accomplished in such an arid location with minimal input. I worked on Geoff's farm in Australia and it's also a very impressive project!
There was a time when I had the free time to install dd-wrt on a brand "new" Linksys WRT54G and fiddle with tons of features but today I'm completely satisfied by my FRITZ!Box(1) that requires near zero active maintenance.
I don't get thousand of features, but all the ones I need at home.

I'm honestly curious: why do you guys use OpenWRT, dd-wrt, tomato etc.? Re-using old hardware? Flashing bugged cheap routers that work bad with official firmware (that's never going to be fixed probably)? Need a specific feature not normally available on home net devices? Just enthusiast about the project or simply enjoying the hacking?

(1) I spent a few euros more on it than the typical home network appliances but I gained them back in quality, reliability, active support and development: no crappy hardware, no bugged software and zero issue with my 15+ WiFi devices in my house in a year.
Also, it's a never-ending task, given web evolution.
To be clear, "benchmarks are nothing but lies" is an exaggeration to get my point across. (And a good way to get a laugh at the start of a talk.) But take a look at Figure 3 from the Performance section of the BLAKE3 spec: https://i.imgur.com/smGHAKA.png. Even ignoring things like caching and compiler settings and different hardware, that's a complicated graph! The lines cross all over each other. I count 5 different functions in that graph that are, for at least some input, the "fastest hash function". (I think BLAKE2sp just baaarely passes below BLAKE2bp, just prior to 8 KiB.) It's hard to give a simple summary of a complicated picture. For the big red bar chart at the top of the BLAKE3 repo, we certainly cherry-picked a point where BLAKE3 looks good. But you could also cherry-pick points where it looks bad.
You can give an anonymous dev the benefit of the doubt that they are probably not expecting millions of people to be influenced by the bullshit they are saying.
Does it actually work though? It seems like there is a significant difference between the expectation that semantic versioning should result in no disruption, and the experience of the parent to your comment. I'd be interested to know exactly what went wrong that lead that poster to be pessimistic.
It really is a testament to NASA that they managed a moon landing without this level of testing. I wonder how much further along we'd be if there hadn't been a run of visionless administrations.
The notion that it's about fixing bugs in one place is revisionist. It's not what people thought they were for when they were introduced.
Dealing with 2FA ux right now. There is a massive gap between threat intel people, product owners, and end users.

From an identity assurance perspective, SMS is the best available. From an authentication perspective, it's increasingly dodgy.

Reality is telcos have user enrollment almost on par with bank KYC, where everything else has great authN but with user asserted identity.

Critics of SMS are technically correct, but 9/10x I don't think they have had to solve identity in an open or federated environment.
Please leave your hatred for Israel out of this. Israel is extremely multicultural. All signs are officially in three languages. The population is 20% Arabic, and 60% of the Jews there come from all over the middle east and Africa.
He made a tradeoff that later on turned out to be wrong. I don't think that is a mistake, after all, it wasn't foreseeable at the time.

It could just as well have happened that some other requirement would have made the original solution even more impractical.

I think the only mistake here might be overthinking things (can't comment on changing other people's code, depends on company culture).

Apart from "cleanliness", what about developer happiness. If a more elegant solution makes you happy, why not go for it, at least every once in a while?
If you build components that use other components, without using a bundler, you constantly have to remember/know what uses what to get things to load. This may sound like not a big deal, but it doesnt take long at all and suddenly you've got loading issues!
I think people are misunderstanding what is being suggested here. The idea is that, for example, to unlock your bank account, you have to go to the bank where trusted bank employees will extract your DNA and have it sequenced, resulting in you being given access again. Others cannot spoof being you in this scenario because they cannot implant your DNA in themselves.