skysight-inc/HackerNews huggingface dataset:
Juggling.

It isn't more objective than the "measured sports" mentioned in other comments, but it does have the advantage of its measures being mostly integers (eg. how many balls can you juggle? With one hand? Etc.), which means there is always a strict pass/fail test to "level up".
Yes, that's probably a good idea.

But it comes with costs. Someone has to learn Rust and then convert all of these programs. And it also has the issue that Rust programs are only memory safe if the unsafe keyword is not used anywhere in the program (correct me if wrong?). So it looks like the effort to do such thing, while noble, and valiant, is essentially an experiment with an uncertain pay-off that could turn out to be small or large.

Much more interesting (to my mind, anyway) is something like Miri. The rust interpreter, which uses fat-pointers to make things (more? completely? someone more informed can correct me..) memory-safe by inserting some relatively lightweight run-time checks.

And, then again, if such a thing could be compiled rather than interpreted (some things similar to this already exist, like C with fat-pointers). And if the source language was C (or something like it) or C++ (or some future C++) then the human aspect of re-training a generation of programmers goes from being a very big hurdle, to a much lower one.

At that point the benefits go up quite a bit, and the costs come down quite a bit. And I think that might be a promising path to overcoming the sort of human/political hurdles/inertia involved in rewriting the world :)
Say you refuse to hire or fire people from a predominantly black neighborhood — not because they're black, but based on the neighborhood — it's pretty accepted these days that that's discriminatory and not allowed.

But now liberals here are saying that refusing to hire or firing people from a predominantly Republican and/or Christian social network is different.

It's the same. That position is hypocritical regardless of whether you think it should be legal.
Good on you. Learning about DB structure is far more important than websockets when starting out full-stack. You’d need to run your own websocket server anyway or pay through the nose for a service like Pusher (or stay on the free tier and not learn a single thing about either).

You choose well! Nice job, keep at it :)
Utilizing a type checker when you want is very different from being forced to use it. Statically typed languages create a lot of complexity from being entirely dependent on types being correct in a static sense rather than at runtime.

With type checkers for dynamic languages, a lot of the arguments in favor of static languages disappear.
fim looks interesting. I skimmed through the linked page but couldn’t find an answer for a question I have — can fim be used for data stored elsewhere, by which I mean that the fim repository should be located outside the directory structure that it’s tracking? If I have a Photos directory with files and subdirectories, I don’t want that structure to have anything else (including fim).
I got an idea when reading this for a file system for rotational (aka, "spinning rust") old-skool hard drives (which are probably pretty dated by this point!).

Basically, you create a B-tree.

Everything except the leaf nodes (that is, the root and all of the internal nodes) are stored outwardly from the center track of the hard drive, so if that's track 40, then it would be 40 then 39, then 41, then 38, then 42, etc.

Now, each leaf node is stored on the start of each track, and represents all of the blocks (after the blocks it itself takes up) on that track.

Now, when the OS needs to write or delete a block from a file, then the OS repositions the head to that track, writes the block, and then updates the leaf node (it's already on the same track -- so it's faster than moving the hard drive head to another track to do the update).

Yes, the rest of the B-Tree (on other tracks) might need to be updated as well, but if you were writing a whole bunch of blocks to an empty track at the same time, I think it could save some time...

If we were writing to a pre-existing file, and the B-Tree already had that track's leaf-node included in its pointers (that is, let's say that we're already writing to a file that already had one block on that track), then all we'd have to do is:

1) Move the hard drive head to that track

2) Write the new block

3) Update the leaf node of the B-Tree to say that the block is now part of the file.

It gets even better.

If there's a single block of the file on that track, and the track is otherwise empty, then if we have enough data to fill the track, then write all of the blocks, and cache writing to the B-Tree until all of that's done... in other words, a single write!

B-Tree entries are a key comprising FileID + DiskBlockID.

Files are ordered in DiskBlockID order.

Should be extremely fast -- for old spinning hard drives...

(Yes, I know... nobody uses spinning hard drives anymore! <g>)
"the last 20 years has been the drastic reduction in the ratio of essential to accidental complexity"

I know this is nitpicking, but the author is using mathematics as an example and then uses ratio the wrong way... The point he/she is trying to make is that tools got better. That would mean the accidental complexity goes down. That means the ratio of essential to accidental complexity goes up.
That VGA output is a fantastic hack, I think Bitluni on YouTube made it (or did a lot of work popularizing it).
How do participants get assigned to the respective halves?
Nat Slipstreaming v2.0: New Variant Can Expose All Internal Network Devices
I think Maddie McCann, she was a young girl who disappeared in Portugal sometime a few years ago. She's been in the news recently I believe.
To keep matters short, after an extended amount of time hating the day to day grind of programming I began playing with electronics and hardware again, and I couldn't have been happier.

I have always had a passion for hardware, many will disagree with what I say next but this is a personal thought: software isn't real. It isn't tangible, most code doesn't do anything that has any direct effect other than through people interacting (if that) with the real world. It is a format of making that does not age well as most code fails after a few years, it's all in your mind, and it never interfaces or have a texture outside of a screen or a keyboard. It doesn't have the feeling of a true project.

My suggestion is to start tinkering with hardware. The feeling of accomplishing real world things - even if it's just an LED blinking! Is extremely exciting for someone tired of only imagining physical processes and instead actually witnessing your code doing things in the real, physical, actual world.

I did this, and it opened a whole new world for me. I build robots from scratch, and I've turned it into my full time job. Even if most never go that far (hardware is hard! I don't suggest it in most cases! ) it will still be the best decision you could make for your mental health.

Write some code, see it play out in the real world. Have fun with servos, motors, lights, vibration motors (my favorite, seeing them jump around) , and rekindle that child within you. You'll love all forms of coding afterwards again, and you'll build some cool stuff you can show your friends and family and be proud.

You could be a great hardware hacker in disguise, we need more of them in the world!
I want to say stock options, but I don’t really think it achieves this goal.
That doesn't seem to be the case in the story in the OP. The problematic author is still publishing at a great pace.
Zero sources provided. There's a link that looks like it should go to the twitter post, but is a list of Newsweek stories about twitter. And the posts are apparently now private. So what did you judge this article on?
It doesn't. If it does you are Doing It Wrong.

Build small things. Compose them. Anything longer than a few day's worth of work should be frowned upon. The megalithic modules taking months is madness.
As he was learning numbers, we taught our 3 year old that he could only come into our room once it was 6 AM.

Along the path, we got woken up at 4:46 (there’s a 6!) and once to “Mommy, Mommy, it’s not 6 yet in your room either!” as he excitedly learned that time was the same everywhere.

Kids are exhaustingly awesome!
The same can be said about homes, buildings, road. They can take hundreds of years to maintain, build upon, iterate over and improve.

The problem is almost never technical, or "software". Any decent programmer is able to create 90% of the demand.

Domain knowledge, requirements, product management, roadmaps, business tradeoffs is where all the time goes
I'll take you up on it, just remember to give me the operating instructions along with it.
The USA had always had a tendency towards witch hunts.

And that's exactly whats happening now.

I'm not saying that there aren't people that had it coming, but it's never a good idea to switch your brain off and run with the crowd.
I thought rather of equivalent of four color theorem in higher dimensions.
Ask HN: At what scale do food delivery companies become profitable?
Here in India it looks like the 2 major food delivery players ( Swiggy and Zomato ) have pretty much crushed the competition with massive investments. They still seem to be loosing 100's of millions of dollars every year even when not including marketing costs. Having talked to some restaurant owners on these platforms as well as delivery agents - everyone seems to be unhappy with the commissions that these platforms take(too high) and delivery charges they pay to agents(too low). How do these companies expect to become profitable? Especially as they still are not profitable even in a duopoly like situation in a massive country like India.
DNS TXT Record Hacks
Oh that's a good idea, I do have a WiFi LED bulb in the room, I could use that! Why didn't I think of that...
There seems to be mass hysteria about the claimed "mass hysteria", at least when it relates to private business or individuals cutting ties with someone over their actions and statements as opposed to online harassment.
Haha, thanks man! Wait until you see the next one, it is completely pointless.
We tried it but it didn't work out for us.

You don't know what your issue description was after you send an issue through service desk. You just get a generic reply that starts as the email-chain.

The issue templating doesn't work obviously, the quality of created issues drop.
Origin of HTTP Cookie name
It works without the internet, it just might drift eventually. It'd probably take days, though.
Downvotes aren’t the moderation the op is talking about.
> And of course, it's perfectly reasonable to form beliefs about code from reading it.

Broadly yes, but it would be hubris to claim you can tell the correctness of all code from merely looking at it.
I suspect helium will escape first. Then there is rubber perishing (bump stops) after ~30 years turning into liquid and sticking parts together.
Web app will tweak your photos to flummox facial-recognition systems, apparently
No ones mentioned the Dygma Raise, yet. I HIGHLY recommend them. It has a great solid metal build that doesn't flex. It's very compact. And it has hot-swappable switches which are very easy to replace. That was critical. I put in Zilents v2 67g switches and it feels great; very tactile and buttery smooth. I tried speed switches and Cherry browns too, but the zilents were the best for coding.

It's marketed as a gaming keyboard, but it's fantastic as an ergo. It's the best keyboard I've ever had. Previously I used the Microsoft ergo, forever.

Another subtle consideration is the placement of the Alt/Option keys next to the space bar. A deal breaker with a lot of other split keyboards, like the Kinesis, is that they have space bars that are too wide, so the modifier keys are too close to the outside edges. But the Raise has a compact space bar, so your thumb doesn't need to contort as much to use them. The software to reprogram the layers is decent, somewhat obtuse, but easy enough for basic remappings. For example, I reprogrammed some letter keys to be arrow keys when pressed with a modifier.

Oh, the only downside so far is that it really could use a row of function keys on the top, to mimic the macbook laptop layout.

They haven't released a keyboard tilt/tenting kit yet, so I had to make my own to give the inner edges a height of about 1.5 inches. Also, I place an elevated magic trackpad right in between the two halves. It's a frankenstein keyboard-mouse setup, but now it's very comfortable.
I mean, literally giving it away in a naïve fashion like "we're going to combine their wealth and divide it up equally among everyone else in the world" probably wouldn't make the world better off in a meaningful way -- but between the two of them we're talking about $370 billion dollars. It's not too difficult to imagine how using 90% of that to target specific problems could improve life in tangible ways for a measurable chunk of the world's population, and still leave each of them billionaires. (In fact, judging by rankings from Forbes last year, it would still leave them among the top 50 richest people in the world!)
Because we don't dare making bold decisions like:

* Throw out all MySQL/MariaDB installations and replaced them with PostgreSQL because it is objectively, provably better.

* Stop writing build-systems in untyped languages, because they are less productive when used by a team.
It's true, although obviously it applies to the both sides. In fact, BLM protests were caused by exactly the same mechanism you're describing - liberal media was creating false narratives about police brutality towards black people.

"Transgender murder epidemic" is an even better example, it was completely made up by the media. Look up the numbers and compare them with the general population.
Socialist thinking is about de facto freedom, not de jure freedom.

If you have the power and means to do whatever you want then the de jure limits to that power are irrelevant.

On the other hand, if you do not have the means to do as you want, then having de jure rights to do what you want is irrelevant.

In poverty, then, gaining means is as important as gaining rights, because they are two sides of the same coin.

Disagreement between different types of socialist ideologies over how to balance that is part of why socialist political movements span the range from extreme anti-authoritarian to focusing on means, and the power that gives, at the cost of authoritarianism.

But in a post-scarcity society, the details of the distribution of power becomes less and less interesting, as long as everyone has enough power to do what they want to do. That de facto power is what matters.
Will it allow me to dictate and edit code?
>What makes for a crony belief is how we're rewarded for it. And the problem with beliefs about climate change is that we have no way to act on them — by which I mean there are no actions we can take whose payoffs (for us as individuals) depend on whether our beliefs are true or false.

Completely and totally wrong. We can vote for politicians who will implement policies, or even implement some changes via initiative that are liable to be disadvantageous to us personally in terms of higher taxes or a slower growing economy for a longer term payoff even if the perceived payoff is for our progeny. We can incur costs in exchange for benefits. It MAY be a crony belief but it isn't categorically so.
A router/switch. :)

Seriously though, routers should be something that has an open hardware option even if it doesn't hit gigabit speed.

Also see Tailscale.
I couldn’t agree more. I’ve been using a Kinesis Advantage and a Mistel Barocco (when traveling) for years. I recently switched to the Moonlander and I love it.

Coming from the Kinesis Advantage the adaptation period is short, and since the moonlander is so easy to program I didn’t really have to adjust my habits. If anything, I’m trying to learn that I can use its programmability to my advantage to make my life easier.

I’m also very happy that it’s hot swappable, so I can start experimenting with different switches.
It will also be annoying for HW designers ... latches and flip-flops have a very specific meaning in their world.
Today's Red Guards will never achieve this level of self-awareness:

"Hans, are we the baddies?"
https://www.youtube.com/watch?v=rWvpvlT9pJU
Sounds like you're using offset for pagination.

https://use-the-index-luke.com/no-offset
You need at least two (one for the control group).
I downvoted you because I am very confident you are acting in bad faith. Why is it notable? Because “Some rioters crashed a van through a gas station and I called the police” being a “view” that will “harm the business” is a novel take. I understand the logic behind it. I also know that the most fervent believers in that logic understand it is provocative and radical relative to the mainstream.
You need to change the viewing setting to "latest first"
I have the same board and I am generally happy with it.
There is one warning I’d like to make though; I have fairly small hands and I feel that my hands have to reach more using this keyboard than with other split keyboards I’ve used.
It’s purely anecdotal though, because I have done some measuring and cannot actually find that there is any significant difference in distance between keys compared to my old keyboard. So, there must be something else at the root of that feeling.

It is, however, something I’ve heard from others as well.

In general though, it is a great keyboard. It is expensive, compared to off the shelf Logitech and Microsoft boards, but seen as a the main tool I use for getting my job done, it’s no cost to pay.
Ask HN: Does Grayscale charge $400M/year for holding Bitcoin?
So I looked up Grayscales Bitcoin Trust and was surprised that they have an annual fee of 2%:

https://grayscale.co/bitcoin-trust/

I am not sure if I understand this number correctly.

GBTC currently has a market cap of about $21B. If Grayscale charges 2% of that, this would be $400M per year.

$400 million for running a simple algorithm that buys/sells Bitcoin based on in/outflow of investors and keeping those bitcoins safe? This seems pretty much to me. Anything I am missing?
Heh, I use ts(1) on a fairly regular basis. It is a very nice tool, and it even supports multiple job queues via environment variables.
Sorry, would you mind explaining what this will do?
We are asking more and more of our software.

Are we, though? This assumption merits deeper scrutiny. It's obviously true sometimes, but does it really generalise?

In terms of functional requirements, we use lots of online software today that is far simpler than its traditional desktop equivalents in feature set. Many successful SaaS businesses are providing tools to help businesses organise that are often barely more complicated in terms of features than the freeware/shareware applications that used to be everywhere, often written by a single person or a small team, running natively on your desktop! It turned out that a lot of the extra complexity in the huge programs we used to run on desktops and corporate servers wasn't offering a good return on investment and the trend has been to simplify over time. That might be an improvement for both developers and users, but it certainly doesn't mean we're asking more of that software.

In terms of non-functional requirements, connectivity is obviously a big change compared to 20 years ago. Today, a simple CRUD app might be running online and the data can be reached from anywhere by anyone, or by multiple anyones at the same time. That could be much more convenient even if the data itself is little different or even simpler than it used to be. And there are very significant overheads in implementing real-time, distributed, concurrently accessible systems compared to old school desktop and database applications, so in this area we certainly are asking a lot more of much modern software.

But beyond that, what else are we asking more of in terms of non-functional requirements? We're setting the bar low on performance for most of the software that gets written today, relying on ever faster and larger hardware to make up for running less efficient code. As anyone who actually wrote serious software on the systems of 20 or 30 years ago can testify, that makes life far easier for programmers and requires much less knowledge and skill. Today, the skill set that resulted in heavily optimised code a few decades ago is mostly found among developers working in fields like embedded systems where resource constraints are still often tight, but otherwise it's another area where we're asking far less of our software than we used to.

I think the article was more on target with its highlighting of essential and accidental complexity. The extra processes and tools and infrastructure add a great deal of extra complexity today, and I am far from convinced that much of that complexity is really justified, particularly when it's attached to such a transient, throwaway culture where little is built to last and developers jump ship every five minutes. It might be very un-PC and/or career-limiting to suggest building software any other way today, though.
(author here) You are right, I should mention this in the README. However, nothing prevents you from hosting your server at home. I tried to be clear about it in the README, this is not as secure as the official client.
Disabling javascript almost always works too - frequently where blocking elements doesn't, because the js does something fancy like delete the non-visible content elements.
I did not say that, I said that just because the people working with stock are getting paid does not mean that the stock market is doing something useful. Parassitism also exists in free markets.

Stretching the brake analogy it would be similar to noting that just because you are pressing more your brake pedal it does not mean that your car is slowing down faster, sometimes you need an ABS
Almost all the comments in this thread can be summarised as:

GitLab: your product is great; your pricing is madness.

This removal of Starter doesn’t seem to have helped anyone except GitLab. You really need to look at how you’re pricing your service and seriously consider much stronger user role management.

GitLab pricing is unworkable for many smaller teams, so we stay on Free and give you nothing at all. The pricing actively discourages whole-org adoption - no way are we paying $19/mo for a non-dev user who would rarely use the system. So we pay nothing at all and keep everyone on free, because that user does still need some access, so you get nothing at all.

To be clear - I love GitLab and I want to pay for more features. I don’t want Premium for nothing but the way it’s billed is completely impractical and hard to get value from for small dev teams, as we have to think very carefully about who gets an account.

I would love it if you’d think about allowing different users on an instance to have a different plan - like with Microsoft 365, where some users have the full works and others just have an email inbox. I need 5 Premium users, 3 Starter users and 2 Free users, for example. You’d now be getting payment for 8 users instead of 0 in my scenario!

Not all my users need Premium; some do. Consequently, we all stay on Free, because I can only justify/afford the pricing for the handful of Premium licenses I actually need.

I really hope this makes sense - there is money waiting for you, and I know many other small dev shop owners feel the same way, but you’re not doing anything to claim it!

You need to look within yourself and work out how you can sell your product to smaller teams in a way that makes sense for everyone. It kinda feels like you just don’t care about your roots anymore and that you only want Ultimate users on your service; I hope you don’t make the mistake of turning your back on the users who started you off and who vocally endorse and support your product.
UV Light Applications in Hospitals