skysight-inc/HackerNews huggingface dataset:
Odin seems like a bunch of features copied from a bunch of different languages without making sure they're (a) good and (b) consistent. Things like ranges being `1..5` in one context but `1:5` in another, or having range-based iteration but still having classic for loops which ranges almost completely obsolete, or functions that may or may not allocate without having automatic deallocation. `or_return` is a significant improvement on Go's error system, but why not add an actual error system while you're adding other higher-level-than-C function properties like `context`? `cast(type)value` is a significant improvement on C's `type(value)`, but why add the latter syntax to the language anyway, then tell people not to use it? Allocator-aware new/free functions are great, so why use the different functions make/delete for some language-defined data structures? Etc. There's a lot to like here, but it's a patchwork with bad seams.
https://www.oreilly.com/library/view/facebook-the-missing/97... Seems the closest to what’s being described. You’d give it your instant messenger credentials and it would log in as you and scoop up your contact lists.
It's slow for me, but I'm not working on a very powerful machine.

That said, cargo check is fast, and my general experience with Rust is that it generally works once it compiles. People getting into more advanced features might have different experiences.
The problem is, everyone is in the second category over a long enough time frame. Hong Kongers probably thought the same, but suddenly there were crackdowns, and state actors probably would have loved to have unrestricted access to peoples phones to see if citizens were exercising their “free speech” correctly.

Think about Ukraine today, the Russian government would probably love to have a way to compromise millions of Ukrainian citizens’ phones.

These people all use iPhones.
Ok, then I have to backpedal. I indeed can't say for sure that they also scraped emails. Sorry for that.

However, they did collect your address book - that was an openly advertised feature.

My point that Facebook already back then was asking people for passwords for third-party services (not banks though) and apparently they were quite successful with it.
In these large scale systems the boundaries are usually not well defined (there are APIs but data flowing through the APIs is another matter as are operational and non functional requirements).

Stress is often caused by a mismatch of what you feel responsible and accountable for and what you really control. The more you know the more you feel responsible for but you are rarely able to expand control as much or as fast as your knowledge. It helps to be very clear about where you have ultimate say (accountability) or control within some framework (responsibility) or simply know and contribute. Clear in your mind, others and your boss. Look at areas outside your responsibility with curiosity and willingness to offer support but know that you are not responsible and others need to worry.
But it’s still not illegal, which means it’s legal, which means it’s perfectly acceptable to do.
Reasonable if you remember the lessons of 19th and 20th centuries and even earlier. Western Europe has long been aggressor, just remember the Hitler, Napoleon and so on. Even Great Britain. And it is not like these imperialist nations have changed just look at their actions in Africa in 21st century... A sane country must protect themselves from those well known bad actors. A buffer is needed to stop them from enslaving and seizing property, which historically they are well known to attempt repeatedly...
I don't know if I agree that the bottom steps are missing. There's a lower step if you rent. There's a lower step if you don't have a car. Some times this is impossible, but in most cases, especially the ones people have been posting about here, it's doable. But people don't want to do this, so they spend more and feel poor.

There might be a big step between poor and middle class though, as you come off benefits and have to pay higher taxes and health insurance. Child care also seems prohibitively expensive.
There's no silver bullet. Pledge on a complex application that does too many things [requests too many permissions] doesn't help much.

IMO complexity and churn remain the biggest problems but people are not willing to engage it. There's always at least one legitimate use case for some faddy trendy new feature, always a reason for more complexity, fuck anyone who doesn't want it. And so you get a massive body of constantly changing code that auditors can't keep on top of.

What would it be like if your chat app was max 3000 lines of code and received no more than a handful of small patches per year since 2008? You could audit that in an evening or two and be reasonably confident in its security, and you could also be reasonably confident that it hasn't grown a bunch of new vulns in the next three releases, and you could quickly audit it again to be sure.

Alas, practically nobody takes you seriously if you advocate for simplicity. Usually it's the opposite; I tend to get attacked if I suggest that a program/system might be too complex.
Unless you are watching CNN - it's not "russian frendlies" who are evacuated but women and children. They are evacuated due to heavy shelling and provocations made by ukraininan army or ultra-nationalistic paramilitary groups.
Not all of us use C, because it's very easy to create security holes in C. For example, web browsers are using slow JavaScript just because it memory safe.
To be fair that is 99% of the population.
It's not possible to go back though, so I wouldn't want to dwell on the past too much. There is probably a really good reason why everything is run by companies, why we have Discord instead of connecting with a variety of clients to an open protocoll. Probably because it's too difficult to make everything run smooth everywhere, so you need a team, so you need monetization. People like the reach and impact they can have on Twitter and Youtube, it's just so much louder than a little, undiscovered self-hosted blog could ever be, so what's the point?

Maybe tech will eventually be commodizided enough to give key infrastructure applications back to the "people". Or maybe the cloud providers will control it all? We'll see.
Prime Minister: Who knows Foreign Office secrets, apart from the Foreign Office?
Bernard: Only the Kremlin

https://youtube.com/watch?v=fVVX0lHZ8JE
I had the a similar response to being required to use Plaid in order to try Robinhood. And by "required" I mean that they said "this is required" and I declined to everything without looking back. My response did not have quite the level of eloquence and wisdom as the OP's:

"What the actual fuck!"

They actually asked for my private bank account information, that which is for me alone to know, that the bank explicitly told me not to share. It's a highly literal form of spilling my guts to share this, it's so so bad. Like literally I was talking to a psychiatrist at one point (I am open about having ADD, and treating it requires seeing a psychiatrist), and I mentioned a friend I didn't want to talk about. This doctor started to pry, but he couldn't get anywhere with his line of questioning. I just told him it was private and that's it. And then to illustrate my point I told him it was like he was asking for my bank account number. And he didn't drop it fast enough, it was pretty comical, for about a second this doctor was visibly curious about my bank account number.

Like if you ask people this it means you want to steal from them obviously, it is stealing. Plaid was caught stealing, but not explicitly, like they knew they'd be in shit up to their lower eyelid if the embezzled from their users, and that further it would destroy their industry, but I divine that they totally considered it in private. Not even saying it was brought up in a meeting, it's that touchy, but it's just too obvious they were putting themselves in a position to steal. That's not what their idealistic-sounding public-facing business plan is, like I won't have anything to do with them but I imagine it is about democratizing banking. In fact it is about democratizing each user's personal banking information.

And sure enough, this start-up scraped the data in the bank accounts and sold it. They got a great price for that, I can tell you that right now, data is most valuable when its collected nonconsensually. It tells them what people bought, at what exact time, where, with what means, basically how much they're willing to pay, and on top of that how much money they have in the bank, which allows the data buyers like car dealerships and hospitals to charge them 100% of what they're able to pay. That means you're left with nothing. If the hospital, boss, landlord, and salesman can see invade your privacy, you will be left with nothing. Literally means being forced to play poker with your hand revealed.

Bank robbers.
I'm so glad that you have linked this article from Chisnall. I can now ask you in what ways is the abstract model of a machine on which assembly language operates on, different from the one on which the C language operates on?

This is the claim which started this thread:

>>C is a portable alternative to assembly language.
This Day in History: FDR orders Japanese Americans into internment camps
We, developers, care about standards, because we want to get things done once.
What are the "false propositions" that the teachers are making?

They are teaching kids about power, ownership, etc. You can disagree with what they consider a fair distribution of power, but you can't just say that they are wrong and you are right.

Rather than deciding that the kids were indoctrinated, maybe leave it to the kids to decide what to take away from this?

Kids aren't stupid, I'm pretty sure they will realise that the "fair" rules they came up with limit what they can build, and maybe at some point they'll change the rules so that some of them can build bigger stuff.
Do you have a different opinion on whether or not syntax for a clumsy Maybe/Either Monad is a bit awkward? Do you think that trait-bound semantics are as clean as proper type classes as concerns trying to get some gas mileage out of ad-hoc polymorphism? Do you think that the Rust folks might have scored a three-pointer on beating the Haskell folks to PITA-but-useable affine types?

Or were you just dissing knowing things?
> I’m just saying they have enough shared attributes that I can map how they’re similar and you may find that useful for understanding.So why rally cars? Because that’s the context that has the most similar method as the one I’m talking about

It is fair to guess that nearly no one here ever sat in rally car. We know it has navigátor, but we don't actually know what navigator exactly does. And I genuinely don't see many similarities. It seem to be more about split second decision making in situation where you need to speed up or slow down toward turn.
I meant it (misplaced price in being 'disruptive') generally, not specific to Plaid.
They've used it from day one, more or less.

Disclaimers like this used to be a little more common on the web, as I recall.

But the BBC is a national broadcaster and news organisation. I think you have to keep in mind the volume, nature and often bad-faith unfairness of the kinds of complaints it receives. It's not difficult to imagine the "I was on the BBC website and two clicks later I was looking at bestiality material" complaints, tabloid news stories, extreme right wing/left wing/nationalist politicians etc.

A disclaimer like that shoots down that entire range of complaints and was probably constructed with Ofcom's agreement for that reason. (They are the relevant regulator.)

If you google "BBC disclaimer" you'll see there's a bunch of them they have had to construct over the years to fend off bad faith complaints from all sorts of angles.

(And one or two good-faith complaints that stem from their peculiar position, like the "Other listings magazines are available" disclaimer they have/had to make when they mention the commercial TV/Radio listings magazine, The Radio Times, that is produced under licence. That disclaimer has entered into popular culture and is the basis of a running joke among BBC presenters at times when a contributor inadvertently mentions or places a product. "Of course, other <insert product category> are available.")

NPR is in a similar situation, I imagine -- having to put disclaimers into their content to protect themselves from the kind of bad faith criticism that will get brought up the next time their funding is being discussed.
The ability to program approval rules and understand why decisions have been made (and then tweak the ruleset based on economic/statistical analysis) is a feature for these sort of organizations, not a limitation.

There will be elements of AI which are useful, but ultimately banks will want to know why a certain decision was made, and want to incorporate their own economic calculations and forecasts into the model.
In C it's possible (and, to some level, very much encouraged) to write your own things to replace whatever built in thing you don't like for whatever reason, be it speed, size, portability.

C not having fancy built-in structures means programmers are more careful about choosing simple ones, which dramatically cuts down the amount of completely pointless generated code. -O3 can optimize registers and maybe memory reads/writes, but it can't remove reallocation from each call to a vector push, remove a reference count from a whole object type, or do pretty much anything with any moderately complex heap data structure. Sure, that comes at the cost of more advanced things being horrible to write, but it's a trade-off.

And I'll just disagree that UB must be unobvious. To me, it's one of the most useful optimization tools. You can check for it with sanitizers, and explicitly invoke it to convey information about hidden behavior to a compiler. It's not magic.
Just spitballing, but market access to China and the like?
> I don’t want to be dismissive. “nix but with yaml” is kind of like saying “rust but without borrow checking”.

I mean... your metaphor cuts both ways? A lot of work went into making Rust's borrow-checking non-intrusive, or at least softening its edges.

The big improvements were lifetime elision and non-lexical lifetimes, but there's also a ton of compiler errors for common cases that explain what went wrong, and often suggest an easy fix when there is one.

Last time I checked, Nix didn't really have this. If you get the syntax wrong, it doesn't tell you "oh, you tried to get 'ripgrep', you probably meant 'nixpkgs.ripgrep'".
Majority of CVE's are because of C memory model, which is fixed in modern languages. C memory model is the constant source of vulnerabilities, thus it better to write new code in a memory safe language, like Rust.
I would expect them to be getting more value from the $20/month VPS, otherwise they could go with a $5/month plan (half of Dropbox’s cheapest plan).

Myself, I resolved the 3-client limit (which they hit me with when switching to a new phone — trying to use backups stored in Dropbox) by a swift migration to OneDrive (where I have 40 GB of free space due to various offers and grandfathering, that’s plenty enough for me). The Linux situation isn’t ideal (there’s a reasonable CLI-only not-real-time client), but otherwise, it’s great. And if I did decide to pay, there’s a neat and cheap 100 GB plan for 2€/month, or a 69€/year plan with 1 TB and desktop Microsoft Office — a bargain compared to Dropbox’s 2-TB-and-not-much-else for €120/year plan. The only thing Dropbox has these days is name recognition and intertia, everyone else’s offerings are cheaper and have more features.
Literally everything in the tweet is incorrect.

- The caching policy is defined per-API [0]. The generic TOS just says that the default state if the per-API TOS says nothing is "no caching". Most of them allow caching for 30 days.

- The "no derivative works" clause that the author thinks would be illegal explicitly says that it's forbidden to the extent that the law allows it to be forbidden, just like all TOS do. (It's also talking just about the source code, which I certainly wasn't expecting from the tweet.)

- The "don't use in a non-Google app" bit appears to be a complete fabrication. There is nothing like it in the TOS. The only thing even remotely close to it is that it's saying you must use the APIs, not scrape data from a Google app to use outside of the app.

- Benchmarking isn't forbbiden. What's forbidden is public disclosure of the benchmark results, unless there is enough information for somebody to replicate the tests.

[0] https://cloud.google.com/maps-platform/terms/maps-service-te...
A History of Systematic Serendipity and Grand Slams
> Nonsense argument. Lacks details and specifics.

Does this really not match your experience of how things have been going lately? Freedom of speech and association but that doesn't prevent you from being fired for what you say or who you associate with. Free to protest unless there's a risk your protest might have an effect, then a state of emergency will be declared and the police will explain how they can legally kidnap your dog.

> That's where you fucked up: Caring about what [random] people think about you. Also I would love to know what country you feel more free in.

Japan, FWIW. I could be deported if I took part in political activities, there are significant restrictions on my speech (strict libel laws). But I have a supportive local community and strong employment protection, both things that count for a lot.
You are not plaids customers. They will be selling your transactions to everyone and anyone. It's pretty easy to identify people from their transactions.
Rust is used in production though at large companies: Amazon, Microsoft, Mozilla, etc... I would be highly surprised that the borrowchecker would be the reason code couldn't ship in the first place, once you get over the initial mental hurdles it's usually a non-issue.

Besides equivocating between a pervasively unsafe-by-default language and one with an explicit bounded opt-in is a little disingenuous. Time after time, it has been shown that even expert C developers cannot write memory safe C consistently, each line of code is a chance to blow up your entire app's security.
I didn't say they did, and I agree with your interpretation of the article. I was sharing my own experience and some follow ups to these thoughts regarding parenting and UBI.
Fair enough! That fits the description well enough and I apologize to xg15. I thought I was well versed in classic Facebook features but I was wrong.
Not all CPU's have overflow flags. On those that have them, you can also usually access them in C in a non portable way.
>> The issue of unseen data arises for one simple reason: the model does not
capture causal mechanisms in the DGP. The model instead learns a reduced form
that represents the training sample.

Thanks for articulating it so clearly, that's very much how I think of it!

>> This issue stands independent of the amount of data. Indeed, if you had a
model that identified all relevant causal mechanisms, then of course more data
is still better.

Well, my point -and, as far as I understand it, Vapnik's point, in my link
above- is that if a model can generalise well, then it doesn't need a lot of
data, even if a lot of data is available. In terms of a model that can identify
causal relations, then it should be able to do so without lots of data. My
intuition for that is that if the model needs lots of data it will inevitably
learn to represent the sampling error in the data generation process (DGP?). A
model that can learn good generalisations from few data on the other hand is in
a sense immunised against sampling error because it can ignore most of the data.

Vapnik makes an analogy about a good teacher. He asks, what is it that a good
teacher does that helps his students learn better? He answers it by saying that
the good teacher gives his students "good predicates", what I would call
background knowledge, from which the students can build good statistical
invariants. But the students must also be able to build good statistical
invariants _on their own_, otherwise it doesn't matter what good predicates the
teacher can give them, the student's can't learn good invariants.

I think that's the point of the challenge - Vapnik is asking for learning from
few examples (not unreasonably few, I think) as a way to demonstrate that a
system is learning good underlying principles- his good predicates and
statistical invariants. In the past the machine learning community has
sidestepped the issue by finding ways to augment data where it was scarce and
then claim progress in certain problems for which there were initially few
examples (for example, Bongard problems and Winograd schemas) but Vapnik is not
only calling for few data, but also for good predicates, which is I think a
better defense than just asking for few-shot learning.

In a sense I think if we find that more data is better, then that means the
system is still not learning the good bits that make more data unnecessary.
Not applicable; Private Origin File Systems are just a key-value store made to look a bit like a file system, and symlinks don’t exist.

(There is also the rest of the spec which provides real file system access, and that will require decisions on what to do with symlinks, but only Google has implemented that—Mozilla and Apple have strongly rejected it as a currently-unfixable security hazard.)
> Considering that the BBC was mainly finances by quasi-public money it's a shame that it was opted for a license with an unnecessary special case (NC).

Unfortunatly this is why it has to be licensed in that way. Having the BBC release code for free to commercial use is often deemed to be a "market distortion", and thus not allowed to happen, as such the lawyers will often err on the side of caution.

Also remember this was 1999, 5 years before Apache License 2.0 was approved.
Shorter, used to be that you still had different CPU books (still might be so) but the leasing model where it often makes sense for IBM to ship more hw than less is very popular with clients.

Prime difference might be that from money point of view the way IBM handles it does end up in savings for the client (as it allows a pay-for-use/capacity rather than pay-for-hw model, and you can go 90% of the month in cheaper configuration and only pay for higher one for end of month/year ops).

Another difference is that technically with IBM you're paying a license for microcode running on the CPUs, and you mix and match differently licensed versions to match your workload.
This is mostly for logins, I suspect: https://developers.facebook.com/docs/graph-api
I’m not sure I understand.

Plaid didn’t say they were disrupting anything. The article derisively says they’re “disrupting”, and then complains about that term. You also disagree with the term.

So nobody involved here was fetishizing “disruption”; the only people who mentioned it did so to snark about it.
Jax also has experimental support for persisting its JIT cache on the filesystem in the ‘jax.experimental.compilation_cache’ module.
For exactly that reason I’ve never understood the focus on the in-person hearing in law. Thought I think the preference is the result of preferring speed over quality. As a judge, reading and comprehending twenty pages of well researched legal briefs takes much more time than scheduling a 15 minute hearing (which is also mich less mentally taxing on you, because it’s going to be the parties of the case who are doing most of the talking).
Surgeons aren't put in jail for faulty surgery. Wanting this for software is a bit draconian.
WinWorld got that one: https://winworldpc.com/product/netscape-navigator/30x

The page also has a link to a delightfully looking archive of Netscape browsers: https://sillydog.org/narchive/