skysight-inc/HackerNews huggingface dataset:
Google sucks, but that is mostly because their products suck.

The war for privacy is lost. If you want to be private online, you don't just log onto your computer, connect to a VPN, and install a new web browser... You need to buy an entire new computer, go to a public wifi spot with a full facemask and... oh you gave away your location.

Online privacy is a farce that pretending exists only puts people at risk.

Companies have billion dollar reasons for finding out who you are, and its not just for ads. Some want to prevent bad actors. Some want to prevent scraping. There are entire companies whos job it is to identify you. Are you, 1 person, able to beat a multi-million dollar company who's job it is to identify you? Oh and once you are identified once, you are added to some list which makes it easy to ID you in the future.
Here is the language specification:

https://miasap.se/obnc/oberon-report.html
It might work on verizon but it lacks their low bands so coverage won't be good. No way it works on AT&T due to their stupid IMEI whitelisting. Notably it's also missing T-Mobile's N25 which is probably going to be their main midband 5G band eventually, but it has all the others (no B26 LTE but that's old sprint towers almost entirely phased out)
>But this isn’t obvious, because hundreds of lines of boilerplate obscure this.

And when this boilerplate in your own code or someone else's code/framework changes, then what?

This is a grossly naive take. We write tests in the first instance to prove that new code works. We then use them to prove that the code under test didn't regress as we make more code changes, framework updates, etc. Later we may change them to demonstrate that destructive modifications still lead to expected outcomes per new requirements.

The writer seems only concerned with the former, boiling testing down to moments in time etched into their codebase for eternity. It makes the whole argument rather a straw man.
In which case static or dynamic linker will simply fail because Rust symbols have hashes derived from ABI attached by default (unless `#[no_mangle]` is used and you're on your own) and those hashes won't match unless the identical signature was used.
Sorry - I wasn't able to convey my thought. There was no reason for the C# compiler to include the source code into the binary. Into the debugging symbols (which is a separate file) - maybe..?

Anyway, I went ahead and compiled a debug app on .NET 1.1. The binary does not include the source code. And neither does the PDB. It includes a file path to the source though ("Visual Studio Projects\ConsoleApplication1\Class1.cs").
I’m intrigued, please share your 100% text compression rate algorithm!
I wonder if it wouldnt make more sense to just train a Commentator Neural Net with the pages you collect. It then can "remind" you of similar pages you have seen before, directly in the page, with little floating comments like "..skip..." "..contradicts.. http:/link/x/y/z " "..actual paper link.." "..paper is p-hacked shovelware.." "..authors reputation.."

It could be trained to become your personal pre-reading assistant, similar to information accumulators and pre-evaluators in governments agencies or company hqs.
Show HN: Generate Beautiful Quizzes in Seconds
Hi there!
We just shipped our Quiz generator powered by ChatGPT. It's really fun to generate different Quizzes in seconds instead of thinking about the questions.

Open to feedback!
And for an online interactive take on the same material, try NandGame[0]!

I've gone through both and they're both excellent. Nand2tetris requires a bit more set up, but goes deeper into things like language development.

For people who have previously looked at NandGame, there has been quite a bit of extra content added over the last year, well worth taking another look.

[0] https://nandgame.com/
Just make sure you have a filesystem that can take arbitrary-length filenames! Then you can compress to zero byte file with a very long filename ;)
Rust has no stable ABI (simplification for the sake of discussing crates) and instead sources of all dependencies are fetched and compiled along with your program hence we’re talking about crate’s API and not a library’s ABI

And yes, I’d say that if a program did not error at runtime but after upgrading your library it started to - that’s still a breaking change (even worse than one that you can detect at build time)
Equation Group: Unraveling the Enigma of the NSA's Cyber Arsenal
Judge Ruled Thumbs-Up Emoji Represented Legally Binding Agreement
he was talking about mocking, not tests such as CHECK(add(2, 2) == 4).

and BTW i would challenge anyone working with accessing complex real-world systems (for example, an stock-exchange, or a robotic warehouse, to write a worthwhile mock for them.
Libraries have clear API contacts, especially in Rust where the interfaces are strict and side effects are rarer. The ecosystem is also relatively young, so it hasn't developed true Hyrum's ossification. In practice vast majority of library updates goes smoothly.

> since the compiler will already trivially catch such mismatches

That's too late — that breaks someone else's build. The goal is to check types before publishing an update.
> you start to see how sweating some of the finer details just doesn’t matter.

I think it’s an opportunity. The original premise of google is that targeted ads would let you benefit from “sweating some of the finer details.”

If 1/3 of a $600B market is wastage or fraud, then that’s an opportunity to give advertisers better response for their spend. Really massive.

I’m sure advertisers would like more sales by being able to remove the waste ads. Currently they can’t do that. But if some new company or tech allows for that, it’s worth trying to figure out.
:) looks familiar.
That's not even true for C/C++. A patch version can still update header files and C/C++ build systems can't detect whether the update is semantic or not. In Rust the serialized crate metadata can be used to detect if the recompilation is needed, and it is completely orthogonal to the semantic versioning.
The Most Loved and Hated Billionaires in Every Country
The hope level can be lowest (and cynicism maximal) late and at then end when one is the senior student and the major (only?) contributor in the lab or key project with no one coming up behind. A weak thesis committee won’t stand up to the PI to drop the cycle of “just address this loose end” tasks. Meanwhile relatively non- or lowly- productive fellow grad students in the program are given quick PhDs in other labs because the labs are underfunded and those PIs don’t want the burden of retaining or the stigma of failing those students, and …
Wow—-pardon the rant I’m having a flashback. I’m going to go exercise my anxiety away,
There is no way k8s is that complicated? Not sure you’ve used it in anger but it is awesome.
The site's "About" page says: "This site only tracks US-based dividend stocks with a monthly payout."

https://thedividendlist.com/about/
Good question! I would say advances in numerical simulations, cheap renewable energy, and a lot of luck/perseverance (we would not have found this technology without spending 3 years on the first idea that didn't work out)
No I'm taking about conversion rate, not ad click through rate
Give these guys a break.
If I'm being honest, why the hell are you surfing internet without ubo?

I guess you said mobile so its most likely chrome so guess what? Firefox mobile has ubo and heck even Firefox focus has decent ad blocker. Even on iOS you have some content blockers so you really don't have any reason to use chrome on phones.

If they are making money regardless of my using ubo, that's good for them.
Option 1 only works if there is a sensible unified interface, and if you feel like spending the time making that for what could be just one line per target. And it just won't work for things that don't really "have an interface", i.e. conditionally adding an __attribute__((optnone)) to a function that a specific compiler version gets stuck in an infinite loop optimizing, or macros that expand to some _Pragma-s that apply to a loop following it for controlling unrolling/vectorization if available, or managing custom inlining configurations for functions based on the optimization/debug levels, or defining a type as either 32-bit or 64-bit depending on requirements, or redefining all printf & fprintf usages to something mingw-friendly.

Many of those could be solved by some other means, but C macros neatly encompass all of those.
What a needlessly dismissive and frankly rude take.
"What would you do for upgrading from 1.4 to 1.5?"

I'd read the release notes, and spend a little bit of time thinking about if they impact my project.

For a 1.4.1 to 1.4.2 bump, if my (comprehensive) tests pass, I'll land the upgrade.
Yes, I was being cheeky with my last line.
Are you saying that I don't need to smolder and put thermal paste manually like I did 20 years ago!? Time to build a PC.
I think there’s a big expectations gap between what people think should happen and what does actually happen.

Just because I post on publicly accessible websites does not mean I’m okay with random companies slurping up the information to use for their own purposes.
Great catch. Ooff!
I remember this too. Actually I (maybe incorrectly)think release builds contained it too. You used to have to actively obfuscate to make sure it was protected. I definitely used decompilers and got great results with very readable code that felt very close to the original.
I think go has the benefit of the syntax being simple enough that not as much debate is needed. That is a legitimate feature of the language, and why not enjoy it. This comes already from the design of the language, I would say.

I'm comparing to Rust, and I'm not surprised that there are more different ways to format Rust and not always a way to make everyone happy.
They also provide 5-year software support.

https://support.fairphone.com/hc/en-us/articles/997918043739...

> For Fairphone 4, we guarantee software support until the end of 2026, this includes an upgrade to Android 12 and, later on, Android 13.
Apple does quite well on this. Also Samsung on some devices
Thanks, that better helped me to understand your comment. Additionally I was not aware if that was with pull-requests or more with regular code-reviews as part of the development process. That was an additional insight, thanks for sharing.

Nevertheless, things can be different, e.g. if CI passes, it merges already, no need to have a request for merge, which are often a blocker to keep a steady development flow. Naturally, this benefits from tests that are already run during development, if not driving the development.

And I didn't read you're against testing nor aligning white space and comments at all, more the localization. Actually the points you raise are looking important to me, because if alignment comes in late, this can cause a lot of erosion, which can hinder any review if not even provoke merge conflicts which are stopping the process quite early and require re-iteration.

Your approach should also work towards non-release blocking code reviews, a property I personally like, as I've seen teams struggle with code reviews, becoming more and more of a burden, even after practicing it has found its way. But that is only a subjective comment of mine, every project is different, which makes it an interesting topic for me.
The point of the article is that platforms know that both your examples aren’t true. The author isn’t a parent and isn’t in the market for buying a second mattress or returning.

I think the issue is that the platforms don’t want to actually target, they just want to pretend and allow for the narrative for why.

I would expect that the search pattern of multiple mattress buyers is very different than single (ie, single searches and buys one and stops searching; multiple searches, buys one, keeps searching). And for returners have identifiable patterns (ie, searches, buys, searches for “how to return”).

Remember that google knows pretty much every single search you run and every page you visit and every checkout you complete successfully (if you’re using chrome).
That's interesting - I found that same fusion super-jarring, to the point that a part of me actually started feeling embarrassed for the author. Even though I know it's a satire, and done in that way purposefully - it was visceral, I just couldn't help it.
imho. with the perspective of 2023, there are only 2 major problems;

* (real) war

eg. "large" ones between superpowers ... not decimating goat-herders equipped with not much more than ak47 & towels around their heads somewhere in the lesser developed areas of the planet.

* climate-change

eg. taming the resource-hunger of capitalism.
If I have a function that hits a JSON API and returns a path from the resultant object and I mock that API to return 4, I'm doing exactly that.

I can write a mock for every data type the API could return and one for every error the API can return and test all of them near-instantly without having to do a HTTP round trip to the fake server (which presumably also now needs configuring before each test)
I was glad to see on arriving at their homepage that the Teracube was not, in fact, a cube.
Sorry for delayed response.

> ...aren't the EU laws contingent upon legality?

Sorry, for EU & privacy, I've only read up on GDPR, briefly. Back when I was trying to wrap my head around USA privacy stuff, I'm embarrassed I didn't have the gumption to compare and contrast with other systems.

> our duties as citizens within a democratic nation(s) to challenge the authority and laws, to keep them in check.

Preach!

--

My notions about "trust", which confuses me endlessly, evolved while I was working on election integrity (voter privacy) and patient medical records. (Separate efforts.)

"Trust" in government is something like a qwan. Whenever I try to talk about trust, I usually end up contradicting myself.

I once heard the US Constitution was created in an orgy of mistrust.

We're familiar with checks & balances, which is fundamental and necessary and good. But we also need the mutual mistrust of all the belligerents, at every level, all the time.

I was a poll worker for a while. We'd tabulate and post our precinct's results the moment the polls closed.

For observers, that public posting was not a proof of truth, that these are the numbers. Rather, it was an attestation by the participating representatives of the major political parties that we all agreed to abide by the posted results.

As you can imagine, most of the time it's just a semantic difference. But it is a difference in perspective. And becomes far more than semantic once the margin of error becomes relevant (challenged ballots, provisionals, verifying the voter rolls, etc, etc).

And that's kind of where I am now wrt "trust". Applied to government, any given org, or my neighbors.

Secondly, my personal operating definition of trust has changed from "confidence" to "matches my expectations (predictions)".

I have almost zero confidence that my government, or any other person or org, will "do the right thing", whatever that might be.

Now I try to predict outcomes, based on past behavior and my folk understanding of the human condition, plus intuition, mixed with cynicism.

I can even "trust" liars, and terrible drivers, and walking my dog off-leash, and otherwise merely flawed entities, if I can predict their actions and the outcomes. (Cite "Everybody Lies" by Seth Stephens-Davidowitz.)

And if I want to change outcomes, to increase my "confidence" in a system, I have to participate, to maybe change the trajectory a few arc-seconds. Ideally, by focusing on durable structural and process reforms. Instead of demanding specific outcomes, which are easy to accommodate and are unlikely to change future outcomes.

Okay. Thanks for your reply and nudge and reading this far. I can't yet answer your question. And I felt compelled to (over) share my notions of trust, based on my past failures and shortcomings as an activist.
Principles, not principals.
Show HN: DAppling – Simple Decentralized Frontends
Hey HN,

I’m Russell from dAppling (https://dappling.network), here with my co-founder Kyle. We’re building a tool that helps developers deploy decentralized frontends that are performant.

We were previously building a DeFi protocol on Ethereum together. We wanted to build something that was extremely secure, resilient, and safe for users. There were a ton of resources and tools for doing this on the smart contract side, but when it came to frontends the tools and resources were lacking. The dev experience was bad, and the sites were slow.

So, we decided to build a simple tool where you can connect your Github account and a minute later have a frontend deployed on IPFS. You also get the dev experience you’ve come to expect from platforms like Vercel/Netlify. With CI/CD, preview builds, and custom domains out of the box.

We currently leverage some centralized infrastructure to ensure fast site performance, but we have plans to gradually transition to decentralized infrastructure as it improves over time. Our goal is to empower developers with decentralized solutions without compromising on DX or performance.

Next up, we are adding some features for preventing web3 security attacks, serverless functions, and performance improvements.

Platform is currently free. Would love any feedback.

Thanks in advance,
Russell
This device has no US carrier band support, it's neat device I guess but terrible suggestion given the submission is about FP4 going to US.
AAA/Unreal Engine games yes. But C# is the default for Unity. I'm shocked that Beat Saber – a flagship VR (very low-latency) game is in C#.
Ha yeah that was my experience of the one I went to years ago, which is why I decided that lifestyle wasn't for me :) This more boring orderly day-time affair would have been less off-putting, but also less appealing I suppose.
Introduction to ActivityPub (2021)
Yes, the minor version clearly doesn't have much information. Then why should we keep the three-part version number after all?
I’ve found those “obvious” checks to be useful to catch unexpected hardware issues as well. I had a customer upset that my code was crashing- I sent a debug version with asserts around some arithmetic core to the algorithm and lo and behold those asserts failed

His machines memory was bad and corrupting the internal state of the application. Until I could prove that his machine was calculating the equivalent of 2+2=5, he wouldn’t believe us.
Just checked the Lenovo PSREF for my MIL-STD-810H certified Zen3+ Thinkpad:

Operating Environment
Temperature[1]
Operating: 5°C (41°F) to 35°C (95°F)
Storage and transportation in original shipping package: -20°C (-4°F ) to 60°C (140°F)
Storage without package: 5°C (41°F) to 43°C (109°F)
Humidity
Operating: 8% to 95% at wet-bulb temperature 23°C (73°F)
Storage and transportation: 5% to 95% at wet-bulb temperature 27°C (81°F)
Altitude
Maximum altitude (without pressurization): 3048 m (10,000 ft)
Notes:
1. When you charge the battery, its temperature must be no lower than 10°C (50°F).

So if you're in a really hot climate that might not be enough. Rn it's 31°C here in the shadows and idling SoC temperature is ~45°C.
> I treat compiler as full toolchain

well, you may do that, but it doesn't make it so. the linker has much less information to go on than the compiler - basically (depending on how you compiled) machine code. actually, the GNU linker does quite a good job, given what it has to work with.

> Other language (compilers) do better.

a language is not a compiler
I think they are overestimating their reputation.

Basically an Italian app publisher with a weird over the top landing page: https://bendingspoons.com/
https://news.ycombinator.com/item?id=36405014
https://news.ycombinator.com/item?id=36600014
https://news.ycombinator.com/item?id=36600211
https://news.ycombinator.com/item?id=36600709
https://news.ycombinator.com/item?id=36608312
https://news.ycombinator.com/item?id=36634318
https://news.ycombinator.com/item?id=36635666
According to Apple you are supposed to link to libSystem.dylib for syscalls, but there's obviously nothing stopping you from calling into the kernel directly.
That's not solving anything at all, what we need is hardware that doesn't need to have its software updated constantly. If you cannot have that, I wouldn't consider it ""sustainable"". There is nothing sustainable about depending on some company on the other side on the world to do the right thing continuously.

Now sure, you could answer that they are doing it better than others and you may be perfectly right, but is it really the way we want to solve it? Gossiping on every company on how often they update their software?
I was going to write almost this same comment.

It felt like the author wanted to test all of their dependencies in their unit tests, like that was the part of the system they didn’t trust. They don’t seem to value testing that their code functions as intended given expected behaviour of the dependencies.
Never have paid for prime or Netflix.

Before I had NO money to spend on "entertainment" and even then, the technical barriers were too high (could not purchase stuff from India outside of India) so naturally, torrenting came to the rescue.

That has continued till date. Sure there are "legal ways of paying for content " but as gaben righty says "piracy is a sercice problem" so entertainment is the same.

I'm not going to pay arm and a leg to the next streaming service because "rights holders" want their own pie and if I did, I'd be stuck with stupid rules of device limits and resolution limits and download limits and changing content.

Why? Music industry has solved the problem. Sure there are hundreds of apps but they have the same thing. Why not for TV and movies?

Also, torrents and online movie streaming services (shady ones) offer better OOTB and painless service for no charge. How can Netflix beat that?

Answer? It can't.
But how to diagnose schizophrenia especially if this is triggered by substance ingestion (caffeine, cannabis, other psychoactives) .

If it has a biochemical origin, how is it gene related? Weird.

And also what advantage does it provide in evolutionary terms?

Or is their claim is that it is some form of epigeneticism?

Strange, strange, strange.
The genetic argument is always a bit dubious.
> What would you do for upgrading from 1.4 to 1.5?

Something in between? More checking and a glance over the changelog at least to check for added things I should use. Depends how important the component is and risk to the business.

> Right, but most versioning schemes are not pure increments and nor pure dates exactly for that reason. You don't plan to release twice a day when your version scheme is year-based; the second number is frequently used for when it's inevitable, making it a hybrid scheme. Still not compatible with the semantic versioning.

Sure, those were the suggested options I was countering. Dates of any form don't tell you much about what's practically changed though.

> and forbids them to perpetually delay the major version (which can be a pro or a con, I personally think it's a pro).

"Version 2 because it's been a while even though this is a logging change" sounds awful to me, as does "welp we've used our 99 releases so now it's a new big number" or "oh shit we used 1.1 so now we only have 10 releases possible". You don't need to make major revisions.

> There are pros and cons for both formats, but decimal-based versioning makes authors to pick a suitable increment for communicating changes,

Isn't that largely what semver does? There are three major buckets.

Still. My point is that it's not worthless, not that it is objectively better in what is a very subjective area (communication).