skysight-inc/HackerNews huggingface dataset:
Using invariants like this is now my preferred programming style. Almost all of my complex container classes have a dbg_check() method which checks all the internal invariants hold, and panics if not. When testing and debugging, I’ll add calls to dbg_check() after each mutation of my data structure. And then I write a fuzzer which exercises my API in a loop. Each iteration, I check that my invariants still hold.

The nice thing about this sort of invariant checking is that it makes it very fast and easy to narrow in on bugs. The crash happens right after a change which made the data invalid, not later when the invalid data is accessed.

And a few dozen lines of fuzz testing can find an extraordinary quantity of subtle bugs. It’s remarkable. Devastating for the ego, but remarkable.

Edit:

Simple dbg_check implementation example: https://github.com/josephg/diamond-types/blob/3eb48478fd879e...

And here's a simple fuzz tester: https://github.com/josephg/jumprope-rs/blob/318e87d3aae1b2a0...
I eagerly await the Old Coot Editorial Brigade to sweep in and tell us all how horrible it is for teens to miss this important life experience, like they did when it came out that teenage drinking and driving were down:

https://www.metafilter.com/169529/I-havent-heard-of-anyone-w...
ios. i use macbook air and iphone. with settings, subscriptions, passwords all saved and synchronized using icloud. the camera on my phone works well. everything just works and i have no complaints.

me used samsung phones many years ago and did not like preinstalled bloat apps it would not let me remove. overall me think android not bad. tried google pixel phone and for its price i think it very good purchase.

i am big fan of apple products. feel they have high quality focus with hardware and software. some companies release barely working stuff to rush to market. Like, i never pay for amazon products quality and features feel like they hate customer.
So you're saying superpowers?
I have a casio g-shock MTG with solar and radio sync that I bought more than 10 years ago. Wear it almost every day. Battery indicator is still at full. Once I had to buy a small metal rod (for a few euros) for the metal strap, and still going strong.
well it makes sense that the browser can't work outside of the opfs boundary, but shouldn't there be a way to talk to the opfs from outside the browser?
The BLS publishes it, but the Fed looks at it and hosts it on their site in a digestible format: https://fred.stlouisfed.org/series/CPIAUCSL
Invariant vs unit tests aside. Doesn't this being a gcc plugin make it inherently unattractive? Wouldn't want to have to rip that code out if I wanted the code to behave on a non-gcc toolchain.

Otherwise, seems cool if that doesn't matter / will never matter in the lifetime of the codebase
Life long Bay Area resident here. This is absolutely the case. When I used to commute over HWY17 I started taking the day off on the first rain of the season because it was way too slippery to be safe. Corners that were safe enough at 55 in the rain normally people would spin out going 35.
That sounds like a perfect result. :) What am I missing?
Network: Street

IP address: House

Port: What kind of thing from inside the house you want

Gateway: House #1, start of street.

DNS: Tells you which house number corresponds to a family name. "Oh why yes, 'samhuk' lives at house # xxx.xxx.xxx.xxx

The analogy goes on and on. It's how I have always thought about networks since.
Don’t know what you think Chinese people do, but their vaccine compliance isn’t very good (and neither is their vaccine) which is currently causing them problems.

CCP on the other hand isn’t going anywhere.
One may hope so, though even nature has never shown itself to be kind about things, merely expedient.

Just as when the discussion is about AI, it is my sad belief that we as a species do not have a single concept of consciousness sufficient to even be tested for, merely a collection of vague ideas that at best refer to each other and at worst to nothing at all.
If you have no idea what the documentary was about then how do you know preventing its release was unconstitutional? Countries all over the world "censor" material they deem to be libellous.
There are tradeoffs. Most of the time I find terminology has drifted so substantially over time that reading old papers isn't worth the effort. I instead usually look for literature review type of papers that often have good summaries of relevant results in modern terminology.
English only from a cursory glance
While I do see merit in the idea that representation matters, to me, it all depends on what representation in particular. Racial representation gets all the attention.

But for example, seeing that a philosophy major can have a successful computer science experience
If it happens twice is it tuppence?
It may come as a surprise you to that the recovery rate for BEC incidents that are not immediately detected is very low and that victims often spend years suing their banks for faulty fraud protection in court for either only a partial settlement or nothing in return.
I doubt you're the only one, and I actually feel that a lot of people that find themselves having to program in an OOP language don't really understand OOP fully or what its motivations are. I personally don't think it's possible to really grok OOP without first understanding the motivations for its origins and how it compares to doing everything in a purely imperative fashion. The best way to actually understand its purpose (and flaws) is to implement an OOP system in an imperative language (e.g. implement a basic OOP class system in C, etc.)

It's common for a lot of online resources (I don't know about university) to provide introductions to programming using OOP, which I think is a terrible mistake. It fills beginners' heads with all sorts of incorrect, fanciful ideas about how computers work and what happens when a program is executed. It's also difficult to know how to use OOP concepts and structures correctly without knowing why they're convenient. I strongly believe you need a good understanding of the technical motivations for such constructs before you can actually use them with good effect--otherwise you're simply relying on imitating patterns or taking certain things as foundational when in fact they are not. I think functional languages and strictly imperative languages are far more appropriate for a first programming language.
This is post-modernity. Object level reality and symbols exist independently. Tesla is a signifier without a signified.
I do agree that native apps are better (mobile dev since 2009) but there are definitely ways to make your web app feel better and less sluggish if you care enough. Most shops don’t.
That thread I linked to is 6 years old. The people in charge of the Bitcoin software know this and keep him on the project. To me that says a lot about the core Bitcoin people.

Maybe Ethereum people are better? Let's see what Vitaly thinks about child pornography.

https://www.reddit.com/r/Buttcoin/comments/v0n5d5/vitalik_bu...

I'll proudly go on record saying that I think 99% of crypto related things are scams, money laundering, or for illegal activities including sanctions evasions, but the people at the top are pretty disgusting.
It's also worth examining the vested interests at play here — the author is a founder, and runs a Twitter account with 2M followers, so has, to put it mildly, a vested interest in calling the "old way" of measuring credibility of NYT and WaPo outdated. Often you find the people most loudly saying "Don't play status games" are in fact just playing another kind of status game.
I've had one MBP and had it happen multiple times. Burning hot by the time I got the thing out of the bag. Worst laptop I've ever owned.
That is on my shelf ready to read. Just got to finish a couple more currently in the queue.
While I do see merit in the idea that representation matters, to me, it all depends on what representation in particular. Racial representation gets all the attention but I find that one less compelling.

But for example, seeing that a philosophy major can have a successful programming career, can encourage others in the humanities to see themselves do it too.

Or seeing someone with ADHD run a business successfully and overcome executive function challenges, can also help others with ADHD.
I'm going to name and shame.

When I was employed at Morgan Stanley they told us not to discuss our salaries or else we will get fired. I wish I had the balls to report them while I was there.
It seems like there are basically two camps: Trusting/convenience-oriented people use BitWarden, while more careful people prefer KeePass-based solutions.

Personally, I think Enpass is the best of both worlds. The ecosystem isn't open source by default, but there are open source tools that get technical assistance from Enpass folks. And the experience is quite good, usually slightly less polished than BitWarden or 1Password, but sometimes slightly more polished (TOTP is a lot easier on Enpass than with 1Password). Lastly, it's local-first and offers a lifetime purchase for about $90.
To further your point 1, I think also “Everyone sees things through their perspective”.

So when you explain something, 10 people hear 10 slightly different things as their own experiences and biases, and even hopes, interpret your statement.

That’s why being able to communicate accurately, clearly, and concisely is a very difficult and important thing. If you can do it tailored to specific groups and with humour, bonus points.
I've been playing with mimic 3 from Mycroft lately. It's pretty usable out of the box and is self hostable. https://mycroft.ai/mimic-3/
I think you mean NSA right? James Klapper?
It would depend on the state of that codebase, really. If it’s well tested and does its job well, I wouldn’t bother rewriting it at all.

But certainly if I were to add new features to an existing Java codebase I’d use Kotlin. The interop between the two is fantastic and for me the null safety alone makes it worthwhile.
That's Java 8. In that version there were big differences between OpenJDK and the Oracle distribution. Post 8 that's no longer true and normal users aren't meant to download a JRE anymore. You bundle the JVM with the app instead. More stuff got open sourced and OpenJDK based distributions are now what people use.
Don’t almost all companies do this?
Nutting?
Yes, the ledger is public, but good luck identifying which transfers are bribes paid to informants within your government. This is same problem any foreign government would have.
Or anyone, who used the trafic overlay in google maps to spot traffic jam.

But the simple cops don't really have access to googles internal data.
Yes. But it requires nuclear power, ideally compact fusion reactors on site.
What kind of deterrent effect does a -$392M settlement have?
Not for people of his status. Look at Maxwell, currently in a reportedly 5 star prison for the elite like her.

There are a number of other reasons of course. The CCTV just happened to malfunction at the time of his death. His cell was cleared of anything that could be used to commit suicide, and the autopsy report showed inconsistencies with his reported method of suicide.
As a user of GrapheneOS, I strongly recommend. I did a few tests to check that it is doing what it claims, and as far as I can tell it is, and better than I expected. I will be staying with GrapheneOS for the foreseeable future.
Mimic3 from the Mycroft project https://github.com/MycroftAI/mimic3
After having read it, I agree.

You only have to look to the disinformation coming from this "official" sites in critical moments in which there are government-led interests: covid, ukraine's war, Biden laptop...

Twitter files gives a lot of content into this issue.
Same here. I lost countless occasions to express an idea or a joke because I didn't manage to speak and the topic shifted enough that the idea became off-topic when I could speak.

But I usually don't think I'm more relevant than the person who managed to speak before me or don't have the energy to impose, so I just listen.
I seriously don’t have a price. I’ll be 49 years old and I’m living ny dream - everything my wife and I physically own are in three suitcases. We moved out of house two months ago and started “nomadding” across the US.

We are settling into a grove of traveling six months, flying across the US with a couple of stays in Canada and Mexico, staying in hotels and the other six months living in what would usually be considered a second home/investment property.

There is no amount of money that would make me give up my dream.
F1 drivers banned from making ‘political statements’ without permission
I did something similar over a decade ago as part of my master thesis back in university [1]. IIRC this was before most of the tools existed that were mentioned in the article. If you don’t have anything else other than a camera at hand (and no recent iPhone), this should be the most straight forward/cost effective way to generate metrically correct 3d models

[1]: https://youtu.be/9hAadMszs5k
Interesting, my takeaway from the article to be honest in almost all cases.

Positive disagreement seemed like a good example of being honest in a pro-social way. Expressing your honest view in a way that doesn't shut anyone down.

The author argues that mirroring people's opinions is boring for the other person.
The worst year was probably something more like 70,000 years ago, when the human population fell as low as 2,000 individuals.

http://news.bbc.co.uk/2/hi/science/nature/2975862.stm
Ask HN: Dev trends in 2023?
Hi HN,

With deep learning on a meteoric rise and eating up a large chunk of the attention space, what other dev trends to look out for in 2023? What will be the next beat after RL?

Some developers claim to write up to 80% of their code with Co-Pilot. How will this impact more tedious SWE tasks? Frontend developers?

What new specializations might open up, and what old paradigms might fall?

I’ve slightly noticed both Julia & JAX being given more attention. Thoughts?
Interesting, I'll try that. Thanks!
Bonus points for models that work well offline on mobile devices.
I wish. But my attitudes have been formed by my life experience, that of my friends and acquaintances, and my reading of history books.

A common thread is if you believe you cannot succeed, you won't. If you blame your failures on others, fate, etc., you will not succeed. If you find yourself saying "it's not my fault" a lot, your life isn't going to go well.

On the other hand, if you accept full responsibility for your failures, and do your best to learn from them, and are willing to try again, then success becomes probable.

I know these views are very much out of fashion today. But they still will work for you, if you choose to implement them.
Well, who would love to have a decentralised payment system that will inevitably attract criminal activity, but also makes every transaction public information?
> Wouldn't want to have to rip that code out if I wanted the code to behave on a non-gcc toolchain.

I wonder if it can be wrapped in #ifdef ?
If you want to get a sense for the scale of the flooding, KPIX CBS put out a video with a lot of shots, from the Mission to Fisherman’s Wharf, 101 and 280, Walnut Creek, San Ramon… wild to see flooding like this everywhere:

https://youtube.com/watch?v=zCuKgorawck

Hoping people have managed to keep safe and dry.
Rude interrupt has been taking a definite toll on me. Many people do this and I can't take it anymore. It's offensive and wasteful.

I talk very fast, shortly, and pack my sentences with information. So it's not like I waste people's time with complacent drooling. I don't. But still, those people will cover me mid-sentence with their yapping so that none of us gets the rest of both streams.

Why ?? Someone suggested I make people feel insecure. I don't know.

It gets me to the point of near acting-out. As if we were walking together and you would repeatedly - voluntarily - step on my foot ? And I'm supposed to go along with this ?

Do you suffer from this, and how do you deal with it ?

Thank you for reading my torment blog.
I know there is a program in the SEC that gives whistleblowers a cut of the fines
https://www.sec.gov/news/press-release/2022-151

one example:
https://www.sec.gov/news/press-release/2022-211
The original plan from Google for the file system access API was to allow read/write of real files, but both Mozilla and Apple said that was too dangerous, and the OPFS was created as a compromise.

Yeah, it's going to be confusing for users when they want to actually want to use one of these files outside of the application that created it. But it's better than nothing!
> Algol 60’s type system has fewer holes than most Algol-derived languages.

And this can be a mixed blessing. If an inexpressive type system has few or no holes, it becomes a straitjacket where you can't write the kinds of perfectly well-defined functions you need because the type system can't express them. The classic pathological example is how Standard Pascal couldn't express the concept of a function which took an arbitrary-size array, but the example so common it's typically overlooked is how it's impossible in many Algol-derived languages to write one function to compare two numbers instead of having to write four or five such functions, especially if you're unwilling to let the type system hole of automatic integral and floating-point size promotion potentially introduce odd bugs.

Haskell's type system is strong and fairly expressive, with language extensions to make it more expressive.

(This does not change the fact type systems typically express the wrong things, but this post is long enough already.)
I'm not dead yet. In fact, I'm feeling much better!
Bypass: https://archive.is/Y6Eky

Not sure why I got access denied... (Cloudflare Error 1020)
> I am not aware of any transgenic methods to increase yield as that is done through breeding and hybridization. Do you know of a specific seed that has enhanced yields through a crisper like process?

Not sure that anything particularly CRISPR-like is involved (there are other transgenic techniques), but:

https://www.science.org/content/article/new-genetically-modi...
Agricultural experiments play a prominent role in the history of statistics [1]. Yes, everything varies, so they do trials using different squares of land in the same field.

So I think it's a little much to say you can't do A/B tests, but it's a good point that they have to be pilot studies, not testing things "in production" on people's farms.

[1] https://en.wikipedia.org/wiki/The_Design_of_Experiments
A game that looks like real life
People who are curious about this, it's worth reading about quartz oscillators in watches and in particular, methods of calibrating them:
https://en.wikipedia.org/wiki/Quartz_clock#Inhibition_compen...
> Are people expecting WASM machines to be a thing?

People are expecting to embed WASM[1]. A generic FAT can provide a lightweight storage abstraction for such work. The WAMR AOT compiled runtime is 50K; 2.5-10% of the flash memory on a STM32F4, for example. Obviously not appropriate for the smallest extant MCUs. Otherwise it's a viable choice.

[1] https://bytecodealliance.github.io/wamr.dev/
That’s not how business works. If the cost outweighs the benefit you adapt or fail. Most companies fail without anyone going to prison.
There's software for the Beaglebone PRU so you can generate your own WWV signal, for receivers buried too deep into buildings or otherwise suffering from poor signal.

Of course, with any HackRF you can also generate GPS signals.

But it would be a lot less necessary if the watches had reasonable temperature compensation. Obviously the crystal frequency shifts with temperature, and they're typically adjusted to achieve best accuracy when at "wrist temperature" for 16 hours a day, and "nightstand temperature" for 8. Any deviation from that, routine, and crystal accuracy gets terrible.

Temperature-compensated crystal oscillators (TCXOs) switch tiny capacitors in and out of (or bias a varicap in) the crystal loading circuit to "rockbend" its response and keep it nearly flat across a wider range of temperature, but this requires extra power. A minuscule amount, but it adds up quickly when your budget is nanowatts.

However, there's another way to do it, which I'm astonished not to see: You don't need to alter the crystal's actual frequency if you can just adjust the number of counts that represent a second. Every once in a while (every few minutes would be plenty), take a temperature reading, look it up in your calibration table, and stuff or steal a few cycles from the counter register.

This takes basically no additional power, adds one more calibration step at the factory, and should bring drift down by an order of magnitude, into TCXO territory. Seconds per year, not seconds per month. That would be something to crow about, and it baffles me that Casio and others never went that route.
My dad always told me that people don't recognize opportunity when it presents itself because it comes disguised as work.
Get a Casio G-Shock. The 800 models can sync with your phone and the time is auto corrected. I bought a GBA-800 from a pawn broker - out of the dozen or so watches in my box it's the one I reach for if I have to know what time it is accurately.
> Git didn't _need_ to switch to SHA1DC, but they did because the cost was minimal and it's still a good idea to defend against known attacks.

I'm confused with how a SHA1 collision being found is an "attack" if git truly doesn't care about collision resistance.

> This is a general problem with binary files: they're hard to properly review. Having unreviewable files in a repository (binaries, machine-generated configs, etc.) is already a security problem; hash collisions would just be one (very difficult) way of exploiting that problem.

I don't think you can ignore the use case - people do check binaries into git with the expectation that git will keep track of them.

> Git was designed for collaboration between trusted parties; collaboration between untrusted parties (e.g. pulling changes from untrusted sources) is a much harder problem that git doesn't pretend to solve.

Maybe that is how git was designed. But it's not how git is used. People do pull from repos that they don't fully trust. Maybe just to examine a change before throwing it away. What people don't expect is that by pulling from such a source that an unexpected file could get into their repository due to a collision attack. That is why git switched to SHA1DC - if git truly didn't support that use case, they wouldn't have needed to.

> Collision attacks are real, but they have yet to impact git (beyond adopting SHA1DC, I guess), despite how big of a target popular git repositories are.

I agree that collisions attacks are real but aren't a practical issue yet. What I was responding to was your comment:

> I haven't heard of any second-preimage attacks against MD5, much less SHA-1, so mlindner was correct in asserting that MD5 would be fine (assuming 128 bits are enough). See also the analysis in [1].

In that comment, it seems that you were saying that collisions attacks weren't a problem at all. But, it seems like you are saying in your more recent comment that "collision attacks are real"?
Great list! At the speed of light (300000 km/s) you can go around the earth (40000km) 7.5 times per second. The tcp packet speed is almost as fast as it can possibly be and this is amazing (or not, given that it is light most of the way).
Original title was editorialised, so I calmed it down a bit, but I thought HN would appreciate it.

I don't have any connection to the project. But this reminds me of when nobody had heard of Crytek, and they made Dinosaur Island, which became Far Cry.