skysight-inc/HackerNews huggingface dataset:
Anyone ever used for non-kernel work? (Is that even possible?)
Tests != Unit tests & TDD != Unit tests

Linux definitely has tests.
> The best structure is the most simple one.

> Abstractions introduce more complexity

There is truth in both of these statements. But also:

"You can make a dog house out of anything" - Alan Kay

What he's saying is that you can't make a skyscraper out of anything. You need some structure. The trick is to get the amount of structure right. Maybe Ousterhout has the right direction with "deep modules"
So you had two air conditioners - why did you not use them?
Being wary doesn’t mean the person is wrong.
Frankly, that this situation happened at all is outrageous and certifying bodies should take steps to ensure it's no longer possible for it to happen.

The solution is to mandate that emergency numbers be hardwired into phones and thus their operation could not be overwritten by any software whether it be the phone's operating system or any user app.

Moreover, it would make sense for all phones, irrespective of country of origin, to include emergency numbers from all countries, i.e: 911, 112, 000 and any others I'm not aware of. Moreover, all emergency numbers should work—that is no matter what emergency number is dialed it still should connect to the local emergency number.

This is important because tourists/travelers in a different country may be unaware of the emergency number for the country they are visiting. Whilst roaming, the phone would recognize its location by actual location and the carrier its connected to and it would dial the correct number even when the user dials his/her home emergency number.

This is not just a nice hypothetical, there have been multiple instances of US citizens visiting Australia where I am and dialing 911 in an emergency and failing to connect with the local one. Here, as in Europe, the mobile number is 112 and the landline one 000.

Why this wasn't a part of the original ITU 'G' roaming specs is anyone's guess but it's an obvious and very dumb omission.
Or, you know, you just fund people to jump ship: https://en.m.wikipedia.org/wiki/Respawn_Entertainment

The industry as a whole would be a lot better off if platform-studio vertical integration were banned, and strict financing-only co-ops set up as counterweights to EA/Activision accumulation.
I work as a software developer in a hardware company. We have A LOT of tests.

But testing costs a lot more when there is hardware present. It's a whole new dimension in your testing matrix. You can't run on cloud provider CI. Hardware has failures, someone needs to be there to reboot the systems and swap out broken ones (and thing break when they run hot 24/7). And you need some way to test whether the hardware did what it is supposed to do.

Although some kernel driver developers have testing clusters with real hardware (like GPU drivers devs), there is no effin way Linux could be effectively tested without someone paying a lot of money to set up real hardware and people to keep it running.

Of course the hardware can be simulated but simulation and emulation are slow (and potentially expensive). At work we run tests on simulation for next gen hardware which doesn't exist yet. It is about 100,000x slower than the real deal, so it's obviously not a solution that scales up.

Testing purely software products without a hardware dimension is so much simpler and cheaper.
Why would the US be able to stop them buying oil using their dollars?
But "ie" in English sometimes also is pronounced like "piece"? :) Ah, the woes of English pronunciation…

https://www.learnenglish.de/pronunciation/pronunciationpoem....
>What is the external interface of the kernel? What is its surface area? A kernel is so central and massive the only way to test its complete contract with the user (space) is... just to run stuff and see if it breaks.

Having never interacted with the kernel, I have to assume it isn't just one massive file right? It's broken into separate files and components? And if you ever want to modify or refactor one of those components its nice to have the confidence that your code changes are safe without having to rebuild the whole thing and run your integration/behavior/e2e tests. Especially if you aren't the one who originally wrote the component you're modifying and don't know what the intended behavior for edge cases was.

Obviously if you're mocking everything then the tests might be pointless(there can still value in preserving in the test what you assumed the behavior was), but I feel like in some ways people have over-corrected on TDD and claiming unit tests are pointless.
The only reason anyone is surprised at the cruelty and stayed long enough to see Twitter go down is because of the hype machine around Musk.

It was an open secret about how badly he treats Black workers but people anre finally reacting like he’s doing something bad.

The task is to destroy the hype machine and his ego.
At first I asked "why??" and then I remembered what site we're on. I need to start having fun with tech again.
In all seriousness Python's json.tool is a great option here.

cat big.json | python3 -m json.tool

or

python3 -m json.tool big.json
Realistically, how much gold does Ghana have to actually sustain this long term?

Would they be trading in Gold for other exports?
There's a framework to do this in most major languages. I think python started this with TestDoc.
The problem is, you don't know which 80%
I love how an old iPod still works with the latest macOS version :)
I'm surprised that I had to scroll this far down to find a Rust fanatic complaining about C.
From what I understood, when Linus took his break a few years back, this is exactly what happened.
Not always. Major data security issues can be life-threatening for people who are in a vulnerable position.
If the read(2) implementation itself never changes, then unit tests of it shouldn't ever break, I think...
> The problem is those free and open-source tools may simply stop existing and all the skills the students learned with those programs could become completely useless.

That's a really bad argument when history shows the inverse.

Name a FOSS program that no longer exists and I will give you 5 proprietary programs that suffered the same.

Even in the same lineage as Teams there is: Communicator, Lync and Skype for Business.

Now, they simply do not exist.

However I can still run `vim` from the 80s and OpenOffice from the mid-00's without issue, even if there is limited support: it still works.
The fable of Inkle and Yarico (1711)
I don't think you can argue they are classic, mock-the-world test one function tests. Giant majority of those are just huge amounts of SQL statements running all over - which are integration tests.
> East (China+Russia)

People that keep bunching Russia with China are deluding themselves that Russia is anywhere on China's radar except as a source of cheap resources (gas, oil, wood)
> choosing to have vsync enabled or disabled in games

Good news: https://www.phoronix.com/news/Wayland-Tearing-Control-Proto

> Introduced now with Wayland Protocols 1.30 though is a new staging protocol to allow screen tearing.
I'm almost 3000 hours into Factorio.

I went as far as buying a i9-13900 because my previous 8 year old pc could no longer handle my megabase I was working on (11K SPM).

It's funny that this processor gets around 240 UPS and the M1 Max can get to 200 UPS at a fraction of the power budget.
> consider that the idea of not cleaning your hands directly led to disease was considered literal insanity (see the tragic history of Ignaz Semmelweis) prior to germ theory

I was under the impression that it wasn't so much that people considered the idea insane, as that they hated Semmelweis and were therefore strenuously opposed to anything associated with him.
To go farther: tests should not break during a refactoring. They're here to let you know if your refactoring broke something. They should even be green when you decide to scratch your software to rewrite it in another language.

Code coverage? Use it to determine what is dead code you can remove: if your tests don't go through some code, that code is useless.
They left out the most interesting part; are they using their real identity for all of these jobs, or are they creating multiple LinkedIns with different names?
This may very well be true. I wish you had posted more of a direct criticism of the study in question other than its small sample size.

It may have had a similar control group and could be relevant. It could be that individuals with more of the parasite are more likely to become entrepreneurs still.
You can also run them yourself and just submit bug reports. You don’t need anyone’s permission to do that.
You can buy TH3 Testing Support for SQLite. Sole item on pricing page (https://www.sqlite.org/prosupport.html) that has "call" as a price. From their page: "The TH3 test harness is an aviation-grade test suite for SQLite. SQLite developers can run TH3 on specialized hardware and/or using specialized compile-time options, according to customer specification, either remotely or on customer premises. Pricing for this services is on a case-by-case basis depending on requirements."

SQLite Test Harness #3 (hereafter "TH3") is one of three test harnesses used for testing SQLite. TH3 meets the following objectives:

- TH3 is able to run on embedded platforms that lack the support infrastructure of workstations.

- TH3 tests SQLite in an as-deployed configuration using only published and documented interfaces. In other words, TH3 tests the compiled object code, not the source code, thus verifying that no problems were introduced by compiler bugs. "Test what you fly and fly what you test."

- TH3 checks SQLite's response to out-of-memory errors, disk I/O errors, and power loss during transaction commit.

- TH3 exercises SQLite in a variety of run-time configurations (UTF8 vs UTF16, different pages sizes, varying journal modes, etc.)

- TH3 achieves 100% branch test coverage (and 100% MC/DC) over the SQLite core. (Test coverage of extensions such as FTS and RTREE is less than 100%).
I don't think that this is true, except perhaps indirectly. According to Duncan McGreggor's wonderful (and very well researched) "Hidden History of Lisp"

https://blog.lfe.io/excerpts/2015/03/27/1101-the-hidden-orig...

McCarthy was interested in computer intelligence, logic, and mathematics. Shaw, Newell, and Simon, at RAND and CIT, were already working on exactly these topics in their Logic Theorist project, using IPL, an ugly language that they designed, and ran on one the first digital computers, called JOHNNIAC - after John Von Neumann.

I you are interested in just how ugly IPL(V) was, you can see more of it than you'll ever want to here:

https://exhibits.stanford.edu/feigenbaum/catalog/ff363pt6522

Ugly as it may have been, IPL language did exactly what McCarthy wanted, and introduced the concepts of list processing, symbols, and recursion. But, a bit to your point, it's ugliness, being akin to assembly, was exceedingly off-putting.

A couple years later, at MIT, McCarthy (who was simultaneously and coincidentally playing around with lambda calculus) and his students (most centrally, Steve Russell) figured out how to do list processing etc in a much simpler syntax.

Still, the "modern" homoiconic Lisp of s-expressions was a bit farther down the line, as it was originally conceived with M-expressions, which were a bit more algol-like. S-expressions were initially just the data representation. Russell realized that the s-expression syntax could be used for both.

Thus the birth of Lisp, probably the world's most influential and enduring programming language. Sorry, this got a bit off topic.
I've been saying this for almost 2 years now. A reckoning is coming in the tech industry not unlike 2000. Wayyyy to many bootcamp coders getting uppity when they aren't collecting a $200k paycheck. When a 'professional linkedin recruiter' reaches out to me, all I can think of are the $100k HTML developers who were let go in 2001. History doesn't repeat, but it sure does rhyme.
Or an email client of your choice? I don't even remember when I last checked my emails on a website.
Unit testing is a way to debug logic error, not "hardware" error.

It's like quarantine when you know a part of codebase is infected by "bugs"
Nice. By the way the edited paper is openly accessible
https://www.aanda.org/articles/aa/full_html/2022/09/aa43445-...
His hype machine enabled the Twitter exit the board wanted.

Nobody cared that he’s a MAGA loon who’s under investigation for retaliation against people who complain about racist working conditions.

Its the only reason I believe people stayed when they could have left 4 months ago into a lava hot hiring market.
For large enough trees it's probably more efficient to instead just switch from preorder to postorder traversal instead of changing the whole tree.
Sony WH-1000XM4 wireless headphones for $228 (normally $350) at pretty much every store (Sony, Amazon, Best Buy, etc). Just got them and they are great but I never had wireless headphones. They do take 10-20 seconds to connect to my iPad, but that might be because they are also set up with my phone.

I considered the newer version but the reviews made it seem like it wasn't a huge upgrade and in some ways a downgrade, like the newer version doesn't fold to a smaller size.
Not just oil markets- usd dominates gold markets as well. Russia will be selling oil to other countries at a “discount” but to what? The price of oil in usd which is why some counterparties consider the trade. If usd was losing dominance, countries would be offering a premium to purchase oil for something other than usd.
> Maybe that's why the most recent commit as of right now is loaded with fixes of broken things

Are you saying that if Linux had tests, there would be no bugs?
There are so many bits of state in a modern CPU, you are never going to solve the halting problem in practice even for a computer with a CPU only but no RAM or disk. And once you add some RAM or - haven forbid - a disk with a couple of terabyte of capacity, you are far inside never never never never never ever territory.
You would have multiple companies licensing high-end RISC-V cores. And competition will almost always translate into lower prices.

It wouldn't surprise me that you could even get a "source code" license for the core and modify it to your needs. AFAIK this isn't possible with ARM (you can either roll your own from scratch or use a off-the-shelf ARM design but not modify it).
> In the United States it is estimated that 11% of the population 6 years and older have been infected with Toxoplasma. In various places throughout the world, it has been shown that more than 60% of some populations have been infected with Toxoplasma.

https://www.cdc.gov/parasites/toxoplasmosis/epi.html
Small reminder: ghana's consumption of oil is 0.1% of the worlds total oil consumption (Source: https://www.worldometers.info/oil/ghana-oil/), essentially a rounding error. Take this into account before making any statements about the ending dominance of the dollar.
I complain similarly about writing deeply multithreaded code with synchronized data structures in Java, Go or whatever. It's a nightmare the day you want to refactor anything and have to keep the entire implicit state in your mind to make sure you don't trip over yourself.
100%, I find it seems to activate the exact same regions of my brain that programming does. It's especially good at capturing the flow state that makes programming fun (which is the reason many of us got into programming in the first place). But on the other hand, I find I can't play it much these days, because it ends up feeling too much like work.

Maybe someday I'll retire and be able to spend 100s of hours playing Factorio, without it feeling like I'm just putting in extra hours at work.
Yep.

Only time I've written 100% branching coverage unit tests was when I needed to implement a spec, with many alternate representation formats, and a plethora of test cases I could run through as a litmus test of conformity.
> Also there are people and companies that compile their kernel from the master branch and run software on it.

Genuinely curious: why would a company ever do this?
I'm not sure how you even quantify those. Is there a standard measure for "background" that can be used?
I'm still not sure if those percentages you are mentioning are revenue (from ads) or MAUI. If they are from revenue from ads, well those were bound to go down a lot as soon as the economy flipped.

> Elon bought the company for $44 billion

It's more complicated than that. He agreed to pay $44 billion at a certain moment in time where interest rates were negative. The way these acquisitions work is by borrowing a huge amount of money (something like 80% of the deal) putting up a much lower percentage of your own money (say 20%) and then using the business itself as collateral agains the loan.

The math changes a lot when interest rates change.
That's why he tried to bail out of seeing it through.
Makes no sense to me. Edit: Specifically the PS5 shortage with this phone situation in mind..
Top Tech Newsletter on Substack Is Written by an Engineer Who Gets Scoops
Theoretically it could, although:

> The main Proton issue is that it runs on DXVK, and MoltenVK is not always up to parity with implementing Vulkan API calls on Metal reliably.

https://github.com/ValveSoftware/Proton/issues/1344#issuecom...

An alternative would be using CrossOver (which pulls from Wine and adds stuff like MoltenVK), which is what Proton does as well (pulling from Wine and adding stuff, but not MoltenVK) and vendors internally, Valve "just"† doesn't pull from the CrossOver changes nor expose Proton on macOS.

† scare quotes because it may not be as easy as it seems
i made an open source implementation of this idea, not sure if OP did it the same way https://github.com/sturdy-dev/suspicious
You surely don't know if there exists a practical real world application which only uses function. (Because you don't have access to codebase of all real world applications).

That's why your statement is logically wrong. I have no more word to say here.
Depends a lot on what it is you're doing. Like if you're writing some finnicky library code, exotic algorithms or data structures or whatever, you'll probably want more test lines than code lines because that sort of stuff is notoriously difficult to get right. Even something as pedestrian as a binary search is downright gnarly to get working in all cases[1], the bugs are difficult to reason about and the code doesn't reduce to more comprehensible primitives.

On the other hand, if you do that with application code, you're essentially submerging your code in a tar pit. Any change in behavior will require changing dozens of tests. Fixing broken tests will become so routine that they stop telling you anything about your code. Development will become "I changed from foo to bar, now let's update the 73 assertions that failed to whatever value the test runner says they have now".

[1] https://stackoverflow.com/a/6393352
Not for nothing, but static type checking isn't some kind of fad. It's been the rule, not the exception, since the 1980s at least.
"leak" 5 years before release is not a leak it's a sensational head line.

Especially when you read: which is likely to occur around [redacted])
Higher price and higher usage are not the same thing, a less used dollar would not necessarily have lower value. The evolution of foreign exchange market turnover would be a better indicator to look at : https://en.wikipedia.org/wiki/Currency_pair#Base_currency // https://www.bis.org/statistics/rpfx22_fx.pdf

(it's also increasing in the 3 last years)
> I think this is important as tomorrow Fed's decision is no longer that important for your energy costs.

The Fed decision wasn't important to energy costs anyway, though. Oil is priced in dollars, but the price changes minute-to-minute. Whatever the Fed decides about the value of a dollar, the oil price will reflect that.

If you're involved in a long-term contract involving the exchange of oil for dollars, then the Fed's decision can have a big impact on you. But that's true of all long-term contracts involving dollars; there's nothing special about the other side of the contract being oil.
https://archive.ph/JQn23
What if the richer person didn’t realize this and gives the poor person the iPhone without a charger? The rich person has left. They cannot buy the wall charger any more.

Not everyone has extra money. In the US, it’s easy to get an iPhone for “free” that locks you in 2-3 years of credits. A person can be in debt and paycheck to paycheck and get an iPhone.

Apple isn’t doing anything for the environment. They are doing what makes them the most money. We should be on the side of the common person who is like us, regardless of how poor they are or if they got an iPhone they can not afford. There’s no reason to be on Apple’s side.
I've found Rosetta games actually work better on my new M1Max, than on my old Intel (I have the top-of-the-line laptop of each).
Decriminalizing drugs wasn't the only thing Portugal did. They virtually force people into rehab. They don't just go around distributing crack pipes like the US.
It depends on your field and architecture. Functional-ish design lends itself well to unit tests, where you have known expected inputs and outputs. CRUD apps, not so much.
You are not expected to understand this

Dennis Ritchie, Unix context switching
I live in Sweden so for sure I agree. I'm all for capitalism but there needs to be baseline social guarantees beneath it.
> What do you think led Vlad to invade?

Any combination of (in no particular order):

- paranoia

- phantom empire pains

- complete and utter failure to produce anything of note on ideological level except "we're a great empire that is surrounded strictly by enemies".

- waning economy with no means, desire, or knowledge to maintain or support it

> The US has been mounting a proxy war against Russia in Ukraine for the past 20 years

No on has done more to alienate Russia from its closest neighbours more than Russia itself.
@garrinm This sounds very cool! I will keep watching your project, as i'm very excited for it! Kudos!

Also, you might also consider collaborting with the folks at https://spritely.institute
I think you are just not getting it. In my scenario (downloading the blockchain from nothing and bitcoin not having any proof of work scheme), you would not need to find a full collision as you don't have any hash that you trust to check against anyway. The blockchain you downloaded could have been entirely made up by one person-- e.g. all of the addresses are opened and signed by them, etc. The entire thing is fake. This would be possible to construct with almost no energy, because we have removed proof of work. There would be no way to determine if the blockchain data is real

You keep referring to other consensus mechanisms that are not really trustable without the PoW foundation (looking at other copies on the network, blockchain explorer). The beauty of PoW is that it speaks for itself-- you could download the data over an untrusted network with just one peer, and still be confident you got the real thing, because you can prove energy was sacrificed for its construction.

PoW has other benefits beyond this quite silly scenario, I am just explaining it again as you don't seem to get it.
> ... there are a bunch of internal APIs: linked lists come to mind.

Those already have unit tests:

https://github.com/torvalds/linux/blob/master/lib/list-test....

using an existing in-kernel test framework no less.

If you step up into the 'lib' directory (containing generic in-kernel utility code) you might notice that there are a whole bunch of C files already that have an "_test" suffix in their name (or "_kunit").