skysight-inc/HackerNews huggingface dataset:
I agree with the main sentiment from the article. Although I do think they are discussing Inversion of control more-so than dependency injection.

One of my first languages was .net and I was never able to really understand DI in that context that well.

Actually using javascript and ducktyping made me understand what it actually was.

I remember a .net job interview where I had to write a micro-service and opted to construct the dependency graph in the main function initialising "all" the classes there. Instead of discussing the pro's and con's of that approach they berated me for not using a DI framework (No I did not land that job, but in hindsight it was the most expensive job interview I've ever had. The room was filled with 8 developers going over my code).

The main thing the article glosses over is state. something people with a functional background hide from. But if you look at something like the httpclient in .net. I think it took the .net world like 10 years to start using the httpclient properly. Scope and lifetime of those kind of objects are important. managing connection pools, retry state, throttling or the incoming http request. DI does make that kind of thing easieR (I'm not saying it makes it better)

Look at clojure's component(https://github.com/stuartsierra/component), I'm not a clojure expert by far. But it is kinda DI/IOC in a functional language.

In closing we can agree that it is underused in the right places and overused in the wrong ones.
Not the parent comment but I use Arq on windows and mac machines at home. This is only for personal data mind you.

What I backup:
Three machines currently, my laptop, my desktop, and my wife's laptop. I don't do a full drive backup as I have no problem re-installing software, losing settings, etc. I just backup documents and media for the most part. This includes wedding photos, rental agreements, bank statements, my own git repos, etc.

All of the photos and most documents also sit in a dropbox folder and are downloaded across all 3 machines. We don't do every photo from our phones because we take a lot of rubbish but usually pull over holiday snaps etc pretty quickly.

When I backup:
Each machine has a daily backup using Arq which goes up to AWS S3. I then have weekly backups to Backblaze B2. Only reason to not have daily going to B2 is just to keep costs low. This backup frequency feels comfortable for our uses and we feel fairly comfortable with photos being on dropbox and synced in real-time as those are the most important to us.

I also have a separate backup from my wife's computer which runs hourly and just stores documents related to her studying to minimise loss of work if the laptop crashed during the day.

All in all this costs about $3-$5 a month on AWS and a bit less for Backblaze B2. We then pay for dropbox individual plus at £95 a year. All the backups are compressed and encrypted by Arq and it rolls up and ages off backups for us as I don't really care too much about recovering something from several years ago. Looking at the S3 dashboard we're storing 168.3 GB in total across 4 buckets.

I'm sure many people will say this is insanely little data to backup, but it's not important to us to backup everything really, we'd rather have a simple and cheap system to backup the data that's important to us. With the prices I'd have no problem expanding it to more data if needed though.

In the future I'll probably look at buying a NAS and hooking it up to Arq as well, but that'll have to wait until we've bought our first house.

Final note of praise for Arq, UI is really simple (my wife who's not a techie understands it), you can setup email alerts, and recover individual documents from specific backups without needing to restore everything.
Haven't touched Java 8+ in a bit, but I remember Function2, Function3, Function4<P,Q,R,S> etc when referring to a closure. Streams used a ton of specializations like ToDoubleBiFunction<P, Q> meaning (P p, Q q) -> double.

I wonder if such contracts are are solved now like in other languages with typed function references/pointers - C++/Go/etc (syntactic sugar is enough, doesn't have to be variadic generics). I remember 'var' was introduced so I suppose that worked if the closure type could be inferred.
Ah, fair enough, that's true. It's written to the AOF before processing the next query (https://github.com/redis/redis/blob/unstable/src/server.c#L4...), so I believe you get read-your-writes consistency per node (in terms of the AOF), but I suppose it is technically written afterwards rather than before.
There are a lot of aberrant Geekbench scores, their results are not authenticated.
> Reality isn't a simulation because QM is non-deterministic.

That doesn't necessarily follow. It's totally possible for us to observe non-determinism within a simulation. Reductio ad absurdum - the simulation could be of what we think we know, rather than actually what we observe.
Thanks I’ll check it out.
Electric sheep: Grazing in solar arrays supports economy, climate
I would love to see the video of Stephen Lau's 1994 lecture showing SRI TerraVision.

CAFC affirms invalidity of geographic map visualization patent asserted against Google Earth:

https://www.ipwatchdog.com/2017/10/25/cafc-affirms-invalidit...

>In affirming the district court, the Federal Circuit found against Art+Com’s arguments that Google did not provide clear and convincing evidence that the invention of the asserted claims were put into public use. Google’s argument on this point revolved around a 1994 recording of a lecture given by Stephen Lau, then of the Stanford Research Institute (SRI), on a geographical visualization system known as SRI TerraVision. Lau also gave testimony during the Delaware trial on the operation of the SRI TerraVision system. Google also brought an expert witness who gave his opinion that the SRI TerraVision system anticipates the asserted claims.

ART+COM INNOVATIONPOOL GMBH, Plaintiff-Appellant v. GOOGLE LLC, Defendant-Appellee:

https://caselaw.findlaw.com/us-federal-circuit/1878050.html

>Google introduced several forms of evidence in support of this effort. First, it called Stephen Lau as a witness, who testified that, while he was employed at the federally funded, not-for-profit company Stanford Re-search Institute (“SRI”), he helped develop SRI TerraVision, “an earth visualization application” that “used a co[arse-to-fine] algorithm to retrieve images [sic] data across the network from multiple servers.” Trial Tr. 1029 ll. 9–18. He further testified that SRI TerraVision was part of the “MAGIC project,” an “umbrella federally funded research project” that focused on terrain visualization. Id. at 1030 ll. 9–12, 1043 ll. 5–10. He also testified both that he wrote about 89 percent of the source code underlying SRI TerraVision and that the project was meant to be put into the public domain. Id. at 1030–32, 1151. Lau further testified that SRI TerraVision allowed a user to navigate around a two- or three-dimensional representation of a graphical area and to zoom in and out to different levels of detail, and described how SRI TerraVision drew its image data from a network of multiple servers spread across the country. Id. at 1034–35, 1051.

>While Lau was on the stand, Google displayed a 1994 VHS tape in which the narrator walks the viewer through the operation of SRI TerraVision. J.A. 2565. In the tape, the narrator describes how a user can move from a low-resolution picture of a larger geographic area to a higher-resolution picture of a smaller geographic area using a “multi-resolution pyramid.” J.A. 2565, 3532–33. The narrator continues:

I did find this video of ART+COM's Terravision:

T-Vision aka TerraVision (1994):

https://www.youtube.com/watch?v=fjZ-wh5jykk

>This video is (C) Joachim Sauter, ART+COM and Deutsche Telekom. Found it on Joachim Sauter's website. Merely sharing it with the world, funnily on a Google platform :D
Imo this is a bad analogy. I would say it’s more akin to Kia and BMW.

The proportion of potential users priced out of owning a Mac vs. a PC is much lower than Ferrari vs. Kia

What I mean to say is - customer base for Mac vs. PC overlap alot and aren’t distinct as you seem to be alluding to.
"Ministry of Interior said its security team discovered that a VPN account assigned to the Ministry of Health was used to query the RENAPER database for 19 photos “in the exact moment in which they were published on the social network Twitter.”"

My guess is that this was slightly afterwards - I know if I had access to the db and saw some information being posted on twitter, I might want to cross-check
(well that make more sense, than the poster looking up these people and doxing them instantaneously)
> The biggest recurring issue is with graphic cards that have poor support in Linux and require firmware blobs and with WiFi cards that have no free drivers / firmware.

Intel, AMD, and Nvidia GPUS - all of them need firmware blobs to work as expected. Intel and AMD offer free drivers but not free firmware.

And if you want to WiFi 5 (ac) or WiFi 6 (ax), chances are that you'll need non-free drivers/firmware as well.

> The "nonguix" channel (hosted on Github) provides packages for vanilla Linux ("linux") in various versions, and also includes firmware packages that you can use in your config file.

Ah, that's good to know.

I'll probably give the Guix package manager a shot some day.
Also Intel's Clear Linux usually yields a big improvement over Ubuntu. Not relevant to ARM64, of course.
> Spork is all about creating forward and reverse proxies between traditional sockets and p2p sockets.

> Sockets are identified by a public key and connect using a Distributed Hash Table (DHT). Connections are end-to-end encrypted using the NOISE framework.

Okay, sounds like pretty neat. Is anyone aware of whether Spork is undergoing any sort of formal review?

NOISE appears to be popular and well-reviewed, but Spork uses noise-peer, a two-contributor project. Spork itself is one-contributor.

So...neat sounding, but I'm not using it for anything remotely sensitive until it sees more eyeballs. Hopefully a bunch of HNers can help with that.
HN doesn't do reddit, but your mum
> Apple did not lap them; instead Apple moved to a different playing field.

Intel put itself in the same playing field by slapping their “Intel inside” stickers on every goddamn laptop that has their CPU.
What would be the ideal age to start introducing my son to these kinds of projects? At what time can they start programming? I don't want to start too early.
Can AI vendors move from services to products?
Gpsd bug might roll back clocks to 2002 on Oct 24
I don’t think Apple aggressively markets their laptops to the rest 90%.
You might enjoy researching the duck’s reproductive system.
Clearly a premium product, it has Apple logo, rounded corners, beautiful color, I have been waiting for this for years, the experience with previous polishing cloths was just horrible!
I really like the look of Nim but every time I dig into it I find a really strange syntax decision. For example:

> The json module provides the %* operator which is used to create JSON objects

I'm curious what the benefits are here of an operator over some more readable syntax. I have a dislike of languages where ascii noise seems to be favoured over readable english tokens.
Can you give more info on how "parse, don't validate" has been helping you? I'm trying to get on the train, but I have so much validating code.
Ask HN: What laptop would you recommend for XR development?
I want to (learn and)develop XR applications for Google cardboard and Android devices using OpenXR(Monado) and OpenSceneGraph. What is the cheapest laptop that will support this development environment?

BTW, why are Linux laptops so expensive?
How to create a dummy Russian text in the fishtext.ru?
And it's paywalled.
Looks like you know a bit of Nim. Apart from ecosystem and IDE what are the some of the disadvantages of Nim compared to Go?
I have never understood this push for light, and thin.

Even twenty years ago I wanted just the best features in a laptop.

Give me a quality machine, at a reasonable price; and I would drag around a boat anchor.

I also wanted repairability, and room for future upgrades inside the laptop, but gave up on that one.
Give him normal LEGO now if you haven't already.
I trust you if you say that your project and code base is great, without DI (of that particular kind).

But the comment was about your examples, and they are not great - they appear to be created to show how useless or overcomplicated DI is. And it is overcomplicated - in your toy examples.

However, there are plenty of better examples on the net of the benefits of DI, but in order to actually show any usefulness they either have to be large, or depend on the readers to "extrapolate" to larger/more complicated code bases.
Name one of the top ten comedy films of 2019.
Don't think the same. I remember when they removed the jack I was using iPhone with a pair of wired CX 880i's. On old iPhone they sounded great (of course not a true audiophile setup, just a comparison). After I got my iPhone 7 which removed the jack and gave the dongle instead, they sounded absolutely terrible through that DAC. The change might not be noticeable for average EarPods user, but those Sennheisers which were great earbuds for its time was literally sounding worse than back-then-not-so-good Bluetooth headphones through that DAC. With all the world moving to Bluetooth/wireless (speaking of casual use, not pro setups), I doubt this will ever change.
I checked that one out myself. Modern economics textbooks don't do that.

That entire section seemed to be Graeber saying "Economists have been promoting a myth for the last two centuries, but here I graciously point out their error so that they may be corrected and learn the truth." It never seems to occur to him that he might be tilting at a straw man.

I'm quite happy to agree that Smith got it wrong, but the modern examples Graeber cites don't support his claims. If you read them more carefully, what they are saying is "IF we were to live in a barter world then it would be very inefficient, hence money". They don't say that Barter World ever existed; its just a thought experiment.
I find interesting how uncharacteristically abrasive Tyler Cowen was regarding Graeber over the years:

https://marginalrevolution.com/marginalrevolution/2011/09/wh...

https://marginalrevolution.com/marginalrevolution/2015/11/tu...

https://marginalrevolution.com/marginalrevolution/2018/05/bu...

And yes, I don't know if this says more about Cowen or Graeber, but Cowen is usually much more coy with his critiques (or straussian, he might say).
I wrote a blog post comparing Rego (OPA), Cue and Polar for authorization in Go applications. You might find it interesting: https://charlieegan3.com/posts/2021-05-08-authorization-dsls...
Indeed. From that Wikipedia page :

"In the case of stars orbiting close to a spinning, supermassive black hole, frame dragging should cause the star's orbital plane to precess about the black hole spin axis. This effect should be detectable within the next few years via astrometric monitoring of stars at the center of the Milky Way galaxy."

And it's exactly this they are showing in the article.
I'm not sure about 'extraordinarily cumbersome', just copy-paste through Slack or whatever? Surely most use cases are between people, not just between (one person's) devices?

An improvement could be to reversibly derive a few random words ('what 3 words' style) from the public key I suppose - so that it can be easily shared over a voice call, or to make it easier for the same person to enter on another device.
Original (I think) over here:
https://news.ycombinator.com/item?id=28916669
Tropic Thunder (which would be nearly impossible to make today).
I'm surprised a 3rd-party HAT hasn't been developed before now.
What is your definition of existential? To me if a country like Iran reaffirms it's commitment to destroy Israel every few months then yes Israel has existential issues.
Just wanted to add that the US led the criminality to spread across the globe via the UN.

https://en.m.wikipedia.org/wiki/Convention_on_Psychotropic_S...
I have not done a lot of Go, but I'm pretty sure Nim's concurrency story isn't up there with go, at least not yet.

Nim has other advantages, including great Interop with C or C++ as it compiles to these languages and allows low level, unsafe features like raw pointers when needed.
I'm not sure whether historians ascribe that to intelligence or to knowledge. My interpretation (not a historian) is that writing (i.e. the development of script) is what gave humans the means to go from the lore model of tribal knowledge to the collectively "smart" societies we developed over the past millennia.

Whether you choose to ascribe the quality "savage" to a tribal society is a discussion all of itself; there is evidence of vast (continental-scale) trade networks even from the tribal era, so it wasn't all lets-bash-some-skulls-before-lunch. But being smart can only give you limited sight if you have no giants' shoulders to stand on.
Compiling stuff.
With or without JK Rowling?
At this point I'd rather use parallels to run steam on Linux.
High schoolers are training to drive 18-wheelers amid shortage of truck drivers
"According to a sample provided by the hacker online, the information they have access to right now includes full names, home addresses, birth dates, gender info, ID card issuance and expiration dates, labor identification codes, Trámite numbers, citizen numbers, and government photo IDs."

And entire country just got doxxed. That's insane.
> "If you need to add anything else, it’s right here. No registration, no XML files. Just code. Your code."

If it's your code, and yours alone, just do whatever.

Simple and terse works great for small code-bases, developed by small teams with like-minded people that have similar tastes and backgrounds. Often, such small groups of people communicate so well with eachother that they also share an excellent common understanding of what they build across the stack.

At some point both the team and the code-base will start growing. You'll need strong, opinionated frameworks in-place for accomodating this growth. Without those guardrails in-place, there's nothing preventing the code-base from growing in a thousand different directions.

Often times a project starts without those frameworks in-place, because it's so much easier to jump straight into business logic and not waste any time on pesky factories, interfaces and enums. By the time new people come in and start contributing - it's already too late and you've racked up too much code to start fresh - might as-well just keep piling on. A snowball effect.

Dependency Injection as presented in the "hold on to your hats" section of the article may seem ugly and overcomplicated - but is one of those patterns used to hold large codebase to a unified, repeatable and persistent standard. "Fun" was never a part of the equation.
Yeah, I tend to agree with you here especially after a take a break from writing Nim I need to re-learn a lot because it is impossible to hold it in my head for very long.
A proposal for adding a pipe operator to JavaScript
More than 99.9% of studies agree: Humans caused climate change
How to create a dummy Russian text in the HTTPS://fish-text.ru?
not sure why you get downvoted...
what is your game about?
Epic says "that it’s “open” to the idea of games that use NFTs or cryptocurrencies"
Sadly, LEGO keeps discontinuing great and simple systems like this and replacing them with "smart" versions that you have to use a phone with, since they don't want to ship remotes anymore. Giving an 8 year old a phone to play with their LEGO sets kinda defeats the point(they'll want to play Minecraft instead, from personal experience).

There's not even any features like Mindstorms that offer customization/programming, it's literally just a clunky touchscreen remote that doesn't pair with the model half of the time. I guess phones on the box sell better.
There's an issue on the Cuelang GH that outlines the creators thoughts on Rego, CUE, and admission policies.

https://github.com/cue-lang/cue/discussions/818
Yes, I don’t have a search term handy, but there’s someone who maintains a website cataloging these.
They never will, otherwise they will just be yet another OEM, instead the Ferrari/Bugati/Lamborghini of computers.

They don't want to be the computer people take for groceries, rather the one that drives slowly in the main avenue making everyone aware of their presence.
Not sure how the keys are generated (I'm not a backblaze user) but since one apparently has to use their software for backup jobs there might be chance that they also store the keys on their servers for this exact purpose...

This would definitely limit the inconvenience caused by personal users with huge amounts of data - like op with his 80 TB
For myself, my iPad Pro actually covers all use cases that I would need a laptop for, so my current Macbook Pro is just in clamshell mode on my desk 100% of the time. That's why I would love to replace it with an M1 Max Mac Mini.
> BTW, why are Linux laptops so expensive?

I'm assuming it's a general business problem: they sell much less laptops than Dell etc., so they have to charge more to make up for employee / running costs.
Not with that attitude!

Longevity escape velocity is achievable within our lifetimes.
One can only hope for something close to this in Southeast Asia : (
The Long Shadow of Infection: Covid-19 and Performance at Work (Soccer Players) [pdf]
> Does this not put them in an ideologically difficult position? Is it not deemed "transphobic" these days to take a position on whether or not someone is really a woman?

Not at all. None of the authors claim to be women, all claim to be men. I’m really not sure why you think there would be a problem.
> the idea of Framework is that the user decides what to include.

I agree that this is true, at least in theory. I also had a preorder for the Framework laptop. In practice, the problem is that modularity in this case seems to come at the cost of fewer ports, even if these ports are more flexible. The Framework has up to 3 available USB C ports after accommodating a charger. That matches the MBP in USB, but the Mac also adds HDMI and the SD card reader. One could even attempt this case with some other laptops like the X1 Carbon (2 USB C, 2 USB A, HDMI) compared to the Framework, for those who would have otherwise equipped the Framework with a few USB A ports.

Obviously, being able to change these ports has long-term benefits where the Framework shines, but personally I can't see my preferred ports changing enough to offset the cost of modularity.
That study is looking at a very different population than primitive hunter gathering.

Food acquisition data have been collected since the early 1980s among the Northern Ache of eastern Paraguay, shortly after peaceful contact. All ethnographic evidence suggests that the Northern Ache were hunter-gatherers without horticulture before contact in the 1970s (Hill & Hurtado, 1996; Clastres, 1998). Since then the Ache fre- quently trek into the forest with family groups and return to a permanent reser- vation settlement after several days to a month. The Ache have exclusive use rights to the Mbaracayu Reserve where they are allowed to hunt with hands, machetes, and bows and arrows but not using firearms or dogs. In 1998, the Ache at the Arroyo Bandera settlement, where most of the data in this study were collected, spent 14% of all person days (range 0–50% for individuals) on trek (McMillan, 2001).

During the pre-contact period (i.e., prior to the mid 1970s), hunters spent almost every healthy day of their lives hunting, with the exception of bad weather days. On the reservation today, school and then horticul- tural activities and wage labor compete with hunting for a young man’s time. Thus, by the year 2000, most young men had very little hunting experience. In May 2000, a selected group of 11 men, ages 14–37, who were relatively inexperienced at hunting, agreed to participate in a hunting experi- ment.

https://www.unm.edu/~robwal/achehunt.pdf
IHP v0.15.0 has been released