skysight-inc/HackerNews huggingface dataset:
Here’s another review / critique of this book, but with a full implementation based on the author’s grievances: https://enterprisecraftsmanship.com/posts/growing-object-ori....

The main point of it is to avoid testing via mocks and to also avoid interfaces that are only there for testing purposes. The end design is extremely simple, and because it has command / query separation, the actual logic is trivially testable.

Give it a read. I love Growing Object oriented software guided by tests as well, these are all just different approaches with different mindsets.
Getting into sort of pattern matching I think requires a certain optimism that things are "nice and symmetrical" after enough analysts. Of course, that can get us into trouble with e.g. "supersymmetry in physics", but usually I think that optimsim is a feature not a bug and necessary in any case.

I think instilling this optomism in students --- following their curiosity won't lead deeper in a bottomless pit, if something doesn't make sense it's might be them but a lack of information, etc. --- is the essentially hard part, and requires undoing a lot alienation people experience.

Conversely, I think messing around with block boxes like machine learning we don't understand is giving into the alienation. (Studying it to understand it rather than do things is fine.) I worry more use of machine learning like things will be a another nail in liberalism's coffin as do the equivalent of regressing back to alchemy from chemistry.

Now, looking for patterns is what machine learning does, but while Rorschach-test-style grappling in the dark might be the basal "reptiling" instinct that lead to more high level theory-based pattern renegotiation, they should not be conflated.
I completely agree.

Another similar issue that I see a lot in both Java and C++ codebases is "premature wrapping" of foreign APIs. Basically when building a program that has to consume a certain API that is somewhat incompatible, every single concept of this API is wrapped in a separate class before any planning, to the point each one-line procedure call turns into a 20 line class.

Of course, after the wrapper is written, the program still needs higher lever abstractions that use those wrappers. But since zero planning went into the design, now you need exactly the same call order as before, however instead of an ugly (but simple) procedure call, you have a class wrapping it, and to understand a simple workflow you have to go trough at least two layers of classes.
I agree with the spirit of large chunks of this comment.

> ... Me being all self sacrificing won't fix it. I might as well enjoy myself a little before we all die and this world turns into a smoking husk."

We won't get far enough with individuals making, for example, 1% changes in their consumption patterns. Rather than asking individuals "to do more", a better way forward is to emphasize systemic changes in policy. Policy includes a range of options: investment, taxation, and regulations.

To quote a line from one of my favorite Despair posters: "None of us is as dumb as all of us." I mention this because, left to our own devices, each individual (more or less) tends to spend most of their attention, time, motivation, and money to address their most immediate needs. Our systems are quite efficient at converting these needs into resource-extracting economies, without paying attention to externalities (i.e. downstream costs that an extractor doesn't face).

Long story short, it turns out a tribal species evolved to deal with scarcity isn't inherently driven to act in ways to ensure our long-term survival. That's a bug. Together, we have done an amazingly efficient job at throwing our planet off balance.

This is why we need collective action. If the word 'collective' makes you uncomfortable, feel free to substitute in 'organized', 'coordinated', 'intelligent', or 'wise'. Whatever word you pick, we need the political will (or, in the case of some countries, the autocratic will) to drive changes to our systems.
…and the Apple employee in China will risk her career by flagging Winnie the Pooh as unobjectionable?
The article seems to claim that machine learning won't work for natural language understanding because ML uses the Probably Approximately Correct (PAC) paradigm but language understanding must be exactly correct. As far as I can tell, that's nonsense, completely misunderstanding the PAC framework.
The part about data is interesting. I remember than in Clean Code, Robert Martin made the distinction between "data structures" (objects that have lots of parameters, few functions) and "objects" (objects that don't have many parameters, lots of functions). The author seems to have rediscovered this distinction here. If people keep rediscovering it, maybe an object is a too abstract building block? Maybe languages should offer a struct/dataclass/record as a basic building block too?
I'll admit I'm not an expert in this area, but can't this introduce a pernicious sort of bias on the downstream model, since the input data is being curated by your technology?
> I was really impressed by the accuracy of some of the report's predictions about fossil fuel consumption. Then I realized, oh, right, of course.

Shades of "best way to predict the future is to invent it" (Alan Kay)... "best way to predict the climate change is to cause it", but of course they are not purely at fault here (plus or minus how they concealed & lied about what they knew).
They had to kill Big Brother to become Big Brother
HN doesn’t allow such long titles.
Exactly. From the K2 manual [0] referred to in the article, |/ is "Max-Over". The ostensibly-unreadable K manages in two characters what the article's subject and coworker need either three lines of boring loop or one line of a more cognitively-demanding lambda to accomplish.

...FWIW my understanding of the language is such that I would have suspected the last line of the article to read "|/ list". I thought Max-Over needed an argument.

[0] pg36, http://web.archive.org/web/20050504070651/http://www.kx.com/...
The market for backup/emergency phones with long battery life will welcome this, but more so I have many older friends that struggle with touch screens and this will go down well with them.

Must admit though after the recent 3DFX (1) announcement I was a bit sceptical - but it's legit and official YT account

(1) https://www.techpowerup.com/285256/seemingly-fake-twitter-ac...
I understand Tesla picked the wrong lane and wanted to continue straight. As a human driver, why would you decide to cut across the gravel as opposed to go straight, find a place to u-turn and come back? If I missed a exit, I do not try to go over the divider if I were driving. How is this anything other than humans deciding to be shitty drivers?
Yes. Even if that weren't the case, the NES would have needed to separately buffer the whole frame (or worse) if you did not want to repeat the scroll register dance per field, which is where I went wrong.
I'm not them, but I use distilled white vinegar. You just want mild acetic acid with no contaminants.
Millenia, if ever?
Isn't "Design Patterns" about how to solve problems through an OOP approach, rather than about the strict benefits of OOP?
I will refute his thesis argument by argument.

1.

> Do we have a retired BBC reporter that was based in an East European country during the Cold War?
> (...) None of the above challenging semantic understanding functions can be ‘approximately’ or ‘probably’ correct – but absolutely correct.

There already exists systems that do text to sql translation. The question author uses as an example is actually quite easy, and not where modern text to sql systems tend to fail. The "absolutely correct" part is clearly false. Both humans and ML systems will make mistakes and have to deal with ambiguity. As a software developer working with nontechnical stakeholders, I'm 100% convinced that people routinely compose sentences they do not understand in any absolute sense.

2.

Good way to check if your proof is correct, is to check if it leads to absurd conclusions. His proof related to learnability (ML) and compressibility (COMP) would seem to indicate that either people can not learn or they do not understand language. Absurd.

3.

> In ML/Data-driven approaches there is no type hierarchy where we can make generalized statements about a ‘bag’, a ‘suitcase’, a ‘briefcase’ etc. where all are considered subtypes of the general type ‘container’. Thus, each one of the above, in a purely data-driven paradigm, are different and must be ‘seen’ separately in the data.

This is objectively false. Even simple context free embeddings like Word2Vec will capture some relationships between a ‘container’, a ‘bag’, a ‘suitcase’, a ‘briefcase’. Based on that alone the rest of that argument falls apart. But large language models go beyond context free embeddings.

4.

The last argument is relatively good one. It's hard to extract all attributes of human concepts from text alone. This is where large language models fail miserably. We need to provide models access to different modalities, but not only. The models can not be embedded in a static world of recordings in order to create rich understanding of things like agent or agency etc.

This is indeed missing, but at the same time this is being actively worked on.

So, that's it. Author makes 3 either false or absurd arguments. And one that is good, but wholly unconvincing as to impossibility of ML solving natural language understanding.
One of the failed referenda in Washington included this feature. It lost 60-40.
It's much easier to achieve, and I find, more comfortable, to lay on your front.
Java offers Records now, which are pretty much that.

Pretty cool feature IMO: https://docs.oracle.com/en/java/javase/14/language/records.h...
Largely, yes. Historically, vaccine adverse effects have occurred in the first six weeks. There’s little reason to believe otherwise this time around.
How would you compare Nix with Guix? Do you see the latter replacing the former?
The archive must be extracted to run the program. So they maybe consume less space on disk, but then you pay a penalty every time you run the program since (I assume) all these packages are extracted when you type yarn start (otherwise how can it work?)

The problem of wasted disk space... start using a modern filesystem like ZFS (or BTRFS, but it's less stable) that does Copy on Write and you shouldn't have these problems. Or deal with it, nowadays disk is very cheap and fast so I don't see why worrying that much.

I live with npm and that is fine, it's the most compatible solution.
They should release it through WikiLeaks.
I think pnpm retains your node_modules folder, but always has only a single copy of each package version on disk.

I like that.
The 2nd Amendment is not about defending yourself from burglars -- it's about defending yourself from the government itself. It's essentially the right to revolt.

Of course, it'd be a dark day when a sufficiently large portion of the population feels the need for revolution against the standing government -- but that's the point. The government can't get that bad (as say, a violent dictatorship), because the population is itself armed and able to take back control as necessary. The US in general operates on a distrust of centralized government -- a necessary evil -- and even today it's visible on both fronts of politics; both the defunding of the police on the left, and the populism of the right.

And in that respect, it's important for the population to be equivalently armed as the armed forces that may one day turn inwards -- though by order of numbers, equivalently armed doesn't necessarily require equivalent capability to reign death and destruction -- a thousand men with a pistol will eventually defeat a single man with a nuclear bomb (assuming they're smart enough not to cluster..) -- but to do so, the population must bear arms.

The other side of the problem however is that the US military is becoming continuously more effective at waging war against native populations and poorly armed/trained militia. They may not have succeeded in many of their goals in the Vietnam, Gulf, Iraq, etc wars, but they're definitely getting better at it -- and they're getting a lot of practice.
>Having privacy with a phone means giving up ...

Well it would mean giving up the phone entirely.
> Maybe there will be more of an uproar when this inevitably comes to macOS.

It's coming to the next macOS release this fall.
I was gonna write a whole thing, but mostly I just wanted to say we'll be able to deepfake CSAM inside of 10 years, no question, so this whole thing is moot.
Apple: Would you pull out of China if forced to scan for political images?
Part of the key to understanding the intuition of this is to recognize wind as a flux field that is an energy source and consider the limits of a sail that has infinite surface area and zero mass, it could slowly accelerate and propel a frictionless wheel close to the speed of light (this would be a fun calculation).

Starting from that point, you realize that by shrinking the surface area to human sizes of interest, you can utilize a larger surface area of wind energy to move mass to larger speeds with some limitations based on friction of the wheels and so forth which is a function of gravity and materials available, etc.
>He also made sure to point out that it can be powered by any type of renewable energy or even off of waste heat

Fascinating, but not enough details. Waste heat could power a standard refrigeration cycle, but the "biomimicry" tease hints at more.

Their site is bombastic ("A system unlike anything ever designed") but detail-free. I'm more interested in cheap dehumidification, which I would have expected a Floridian company to mention.
I’m not blind but for the handful of websites that I’ll engage with a reCAPTCHA for, I use the audio version. About a third of the time I switch to audio it gives me a “we’ve decided you’re a bot anyway, please try again later” message and it won’t let me attempt it at all. They disable the accessibility to the blind on a whim which is astonishing to me.

The frustrating thing is that this happens even on devices/browsers with fewer privacy measures enabled, like just using a fresh firefox temporary container or private mode (so no browsing history or existing cookies maybe?) with no script blocking is ‘suspicious’ enough that accessibility to the blind is disabled with no recourse.

So yeah, it’s accessible (when they feel like it).
> You said

> > On the task bar.

> No app on windows displays an indicator on the task bar for an application that has no windows. Doing so would be broken. [Emphasis added -- CRC]

Sure. But what you asked in https://news.ycombinator.com/item?id=27903031 , to which I replied "On the task bar", was:

> > > Without a global menu where does the app live when the last document closes? [Again, my emphasis -- CRC]

The document-handling apps I have here on my work PC consist mainly of Microsoft Office 2016. Of those, at least Word, Excel, and PowerPoint all behave as I said: When you close the last document, the window reverts to an empty state, ready for you to open another or create a new document. AFAIK this is how they have behaved since Microsoft abandoned the MDI some decades ago, and still do in newer versions. I think (but am not sure) that this is also how other applications, like those in the LibreOffice suite, behave.

Sure, that window doesn't automagically minimize itself to the task bar, but at least I usually minimize it at that point -- don't you; who wants an empty window cluttering up their screen when they don't use it? Anyway, even if you don't minimize it, unless you immediately open or create another document, you presumably switch to another application, and then perhaps another and another, so after a while it's hidden behind other windows anyway -- all you see of it is its task bar icon.

So when you want to switch back to the app, unless you belong to the alt-tab faction, you click its task bar icon to bring it to the foreground again. Even I, who do belong to that (smallish and ever-shrinking, I think) group, often do that, because it's a visible and predictable place to find it. Ergo: When the last document closes, the application "lives" on the task bar.

> The current behavior on windows of closing the window when the last document in a multiple document interface is closed and closing the app when the last window is closed is both standard and appropriate for the windows platform.

On the first, I agree for modern "tabbed" windows; disagree if we're talking about the traditional Multiple Document Interface model ( https://en.wikipedia.org/wiki/Multiple-document_interface ). On the second, yes, of course, but I didn't know that was what we were talking about, because that wasn't what you said.
> "We had no idea it was carnivorous," says Sean Graham, a botanist with the University of British Columbia. "This was not found in some exotic tropical location, but really right on our doorstep in Vancouver. You could literally walk out from Vancouver to this field site."

Fun fact: Venus fly traps are native to the Carolinas. Carnivorous plants are everywhere!
Please Hang Up. (Permanent Signal Recordings 1971-1983)
Apple doesn't need the keys to enable backups.

And the mere fact it's a default makes it a significant problem when discussing it as a popular and widespread E2E messenger. It would be more borderline if it was a required configuration choice with no default that clearly disclaimed the ramifications.

Even then, you have the issue that you are not the only person with a copy of the conversation. Your partner - or partners - has it too. Does Apple require some kind of pre-conversation negotiation to determine how the conversation will be stored in the backups? Or at least provide some kind of warning if a person with backups disabled gets in contact with somebody with backups enabled?

I don't disagree with you about backups, but how useful they are is completely irrelevant in this context for several separate reasons.
I don't think you interpreted the sentence in question differently, just the nature of how it is being translated into a query. They're talking specifically of how to translate into a query over a quantified relational algebra. Relational algebra always operates on and return sets. I'm pretty sure the author here is still looking for a boolean, but you can't ask a relational query engine does a result exist? You can only get back sets. The further question of whether or not the set is nonempty is an extra feature probably built into most real-world implementations of query engines, but it's not part of relational algebra.

The actual problem they're identifying here is that of deciding how or whether to turn 'a' into a quantifier. Do we have 'any' would be less ambiguous, definitely an existential quantifier. Do we have 'a' depends on context, as it could mean one specific person and not be a quantifier at all, but I actually still disagree with the author here. I think they're right that English-speaking humans will unambiguously understand 'a' in this context to be a quantifier, but given that is possible at all, I don't see why a large language model can't. If it was actually being used to specify one person, the additional context would be in the sentence itself, as in 'do we have a reporter named X' or something like that. Given there is no additional qualification in the sentence, I'm pretty sure existing large language models can easily figure out what it means, and the only case in which they'd be wrong is if there were additional context outside of the sentence, but a human would be wrong too if all they heard was the sentence.
Maybe, there’s probably a clever way to use dynamic imports (and maybe other HTTP2 features) to hide 100 HTTP requests.

But, also, you can do quite a bit with carefully selected small dependencies and a minimal amount of JS: I have some relatively complex sites that forgo bundling with no perceptible issues here
The way in which markets properly account for climate change is to suffer so much damage from the effect that the market collectively agrees to internalize the costs to the climate into prices of exchange - this price adjustment might not happen before cataclysmic levels of deaths or a tipping point that makes climate recovery infeasible and coping as our only recourse.

Additional taxes, in the US at least, as currently seen as being contrary to the American experiment by a large enough segment of the population that consensus won't be gained when, while driving on the highway, we see the bridge out ahead sign - nor when we see the cliff in the distance - nor even when we feel the front walls fall off into air. We'll reach consensus when we look out the front windshield and see the earth racing up to give us a kiss... At least that's my pessimistic opinion.
https://keithclark.co.uk/labs/css-fps/desktop/
Yep, that about sums it up nicely!
I watched a well-made documentary recently that talks about fire management and controlled burns in California. I highly recommend it for anyone interested in forest ecology, fire, etc. https://www.amazon.com/Not-If-But-When-Solutions/dp/B08FFDGJ...
lol totally

Did this in Haskell, and since all the lower numbers are known, started searching at 2^361

To end the recursion I just have it print -1 when it reaches 1

f :: Integer -> Integer
f n
| n == 1 = -1
| even n = f (n `div` 2)
| odd n = f (3*n + 1)

main = print $ map f [2^361..]
By that logic we may as well never question anything any of these companies - or even governments really - do because they might just find a way to do it secretly and maybe nobody would ever figure it out.
> The key escrow solution is strictly worse in any future. If key escrow becomes established as a norm between cloud providers and law enforcement, then no free alternative will ever be possible.

I don't think that's true. Systems or programs to encrypt locally before pushing up to a shared platform are possible and currently in use. Those that want that additional security have recourse to get it. Alternatively, people could run their own cloud sync instances (also already available in some forms). This puts the control in the users hands (don't sync to cloud, pre-encrypt to shared cloud, or do some personal sync thing), while also setting a clear precedent of what is acceptable on users personal devices.

The problem here is that this implementation really has nothing to do with cloud sync. Apple has currently linked it to whether you're pushing that data to iCloud, but that's an arbitrary distinction. In the world without iCloud, they could make it scan any media that was sent across the network. The iCloud distinction is entirely arbitrary, which is why people are not satisfied with it. There is nothing beyond promises to keep it that way, and promises are less binding than laws and national security letters.
No, just validating my assumptions. What sort of evidence would change your mind? Accounts from language designers? Expert testimony? Reference material? Interviews?
Synology NAS devices under botnet attack installing ransomware