skysight-inc/HackerNews huggingface dataset:
I’m actually not sure why this is being downvoted? Is it actually incorrect and if so, where did it take inspiration from?
> However, no mainstream language has a first-class data type for representing money...

I beg to differ. Java has "Decimal" class which guarantees to be safe from IEEE754 floating number side effects, and specially created to handle cases like money and financial calculations.

In these days it's used as BigDecimal, it seems [1].

[0]: https://docs.oracle.com/javase/8/docs/api/java/text/DecimalF...
[1]: https://docs.oracle.com/en/java/javase/23/docs/api/java.base...
Geoffrey Hinton, the Godfather of Deep Learning, Wins Nobel Prize in Physics
Not in major US cities such as where I live.
I don't understand either. It seems the general idea is that they calculate attention twice, which due to random initialization might be expected to give two slightly different results. I'd have thought that what these two attention maps would have in common would be the signal, and where they would differ would be noise, so rather than subtracting them (resulting in all noise?!) what you really want is to add (so the common signal gets reinforced) and normalize.
Handcrafted CV algorithms and this level of autonomy is textbook AI, it’s just not Machine Learning.
The currency codes could probably be inline value classes. That way, you can do

val price = 100 money USD

Note the lack of quotes around USD.
Can you recommend an extension for that? I use “User agent switcher and manager” but it seems overly complicated and aimed at web devs. I just want a simple interface and easy switching between OS and browser combinations
I'm looking into it further to understand the implications and how it might affect internet security.
The Pentium M was based on the Pentium III though.

(and closer to the first 'Core' (non-Duo/non-Quad), since the evolution went P3>PM>Core and P4 was mostly tossed away apart from a few years of Celerons)
There is int_fast32_t and int_least32_t but it is probably less confusing to just use exact sized types (and would make porting to other architectures simpler).
I experience this effect quite a bit because I live in several different cities seasonally. We took some ideas from the Digital Nomad ethos and have been location semi-independent for the past 10 years. We move between our bases and also spend time in new cities, a week here or a month there. For me, time moves at a snails pace. The effect people describe of time compressing as they age stopped happening to me once I stopped being in the same place and same routine year after year. Just the past year and all the experiences I’ve had seems like it could have been many many years.

It is especially interesting to visit friends from the city I lived in when I was more settled. Several of them live in the same apartment, work the same job, and have the same routine. There are a few new wrinkles, but otherwise time seems to have stood still for them. It very much feels like they’ve been traveling at relativistic speed and I am several decades older than them chronologically. They don’t have kids though so I get the idea that’s an action packed existence that’ll make you feel like time slows down.
Indeed! Your comment was the first thing I thought of when I heard the news and I thought of replying too but assumed you might not have enabled notifications Hilarious, all in all!
Looks like it is a drop in replacement for attention, but models will need to be retrained for this one, yes.
I think it's called "protect battery" or something like that in recent versions of Android, it just caps the max voltage your phone will charge to if left connected.

The basic deal is this: lithium cells like being at sort of half charge (typically 3.85V) where they don't degrade and this is called storage charge as a result. It's what any battery that's in a box or on a shelf will be at.

Going above 90% and under 15% (voltages depend on the exact chemistry) will do damage especially if left that way more than a few hours. So if you say, leave your phone on your bedstand to charge overnight, it'll do fast charging (which also does damage btw) and get itself to absolute max in like half an hour and then sit there for another 7-8 hours degrading until you unplug it. That's what this mainly prevents in practical day to day use.

So yeah, for best battery longevity charge with up to 1C (e.g. for a 3Ah battery, that's 3A max), charge in large chunks and try to keep it between 25-85% for the most part. Then you're basically guaranteed to get the max number of cycles out of it.

There's also another great feature called "power saving" which reduces power draw significantly (at least on my phone)by reducing background spying and capping CPU speed so it can last for 3-4 days if I don't use it much, which again saves a lot of charge cycles.
I France, SEO was already popular and we were already gaming the Google ranking algo.
One of the big player in the game of SEO, abondance.com was registered in 1998 and we also have the popular website webrankinfo.com (registered in 2002).

> 20 years later we screwed up the internet. well at least the part of the internet that shows up in Google.

You're right... :(
The Atlantic Did Me Dirty
Good thing the high pay balances it out. Also the fact that literally every company needs them to some extent means you can find the specific tradeoffs that work for you
I always assumed everything on the island was made to LOOK real, but everything was cleverly replicated and engineered.
The rights were back to them at the time of default. It was independent of the claim sale.

(They won on the reselling of the naming rights too by leasing them out for more per year than ftx)
I'm sure the same diligence was also performed when constructing the AI's training data set.
Huh, I've never actually looked too hard at Kotlin. That is a lot more syntactically flexible than I thought it was! That HTML builder reminds me of Ruby DSLs a lot.
Hinton has no published books on physics, and his bibliography of papers, to the extent I've examined, lacks any serious contributions to physics. There are underrepresented physicists who never will come close to winning a Nobel. Not to speak of the women in Physics, and the fact that we still have Edward Witten who still isn't worthy of winning a Nobel. As someone who has seen friends and others give up on physics due to being denied for funding and other institutional issues, I am infuriated at this gesture by the Nobel Committee.

When was the last time we gave someone a Nobel physics who hasn't bothered writing a book? We have professors dying without a tint of recognition for their work. The whole ordeal is terrible, it's like giving Einstein a Nobel in medicine because his research on photoelectric effect has opened a new domain in biotechnology and because that's the new cool thing in the market, we'll go with that.

A lot of the outsiders think "physics is dead", but dare they look into the research inside it. It is not at all dead. And arguing that failing to have definitive answers to the Big questions means being 'dead' is a terrible way to look at the field. Math still doesn't have a definite way to look at primes, for centuries we didn't have the definite way to look at algebraic equations of higher degrees and general solutions to them. That didn't make math die, that's what keeps it alive. I am fine with Hoppfield for once maybe, but seriously why Hinton?
First off: And exclude 70% of the world?

Usually they'll accept it, but some parts of the backend are still running code from the 60's.

So you get your name rendered properly on the web interface, and most core features, but one day you're wandering off from the beaten path, by, like, requesting some insurance contract, and you'll see your name at the top with some characters mangled, depending on what your name's like. Mine is just accented latin characters so it usually drops the accents ; not sure how it would work if your name was in an entirely different alphabet
Another exposure path is /proc. Everybody forgets about this.

$ export DB_PASSWORD=foo
$ sh
sh-5.1$ cat /proc/self/environ
SHELL=/bin/mksh DB_PASSWORD=foo
But what if instead of getting your house back, you're only getting the cash equivalent of what your house was worth THEN, plus some interest. Meanwhile, your house, which you no longer own, has tripled in value.
The Russians haven’t used nukes because they’ve been told under no uncertain terms what would happen if they did.
And that's why laymen with prompts will never replace trained artists/designers for anything but trivial use cases— the ability to decide a) how best to visually communicate the right thing to the right audience, b) whether generative AI is the best choice to achieve that and the capability to use more precise tools if not, and c) that what you have is cruddy enough, or the message is superfluous enough, that not using an image is more effective. This image fails and this is a trivial use case. While it's depressing to see so many lower-end commercial artists lose their livelihood and their depressing wages on the market upstream, I can't help but have a little schadenfreude seeing things like this after so many tech people with dunning-krueger-informed confidence about visual communication have gleefully called me a buggy whip manufacturer.
With a single softmax you cannot predict exactly 0, but only very small numbers. When you have a large number of values to add up, this "poisons" the output with a lot of irrelevant stuff (the noise mentioned in the paper).

To make things worse, low attention values will have very low gradient, thus needing a lot of weight updates to undo that kind of mistakes. On the other hand, subtracting the output of two softmax allows the model to predict a weight of exactly zero for some of the values, while keeping a reasonable gradient flowing through.

So the model already knows what is noise, but a single softmax makes it harder to exclude it.

Moreover, with a single softmax the output of all heads is forced to stay in the convex hull of the value vectors, whereas with this variant each head can choose its own lambda, thus shifting the "range" of the outputs outside the convex hull pre-determined by the values. This makes the model as a whole more expressive.
There also seems to be a bug in the VPN that requires sending all traffic when the VPN address is on a different subnet. It should be possible to manually specify subnet mask, but it seems to be ignored. I’m not sure if the VPN is advertising this incorrectly, but it worked fine before upgrading.
I think the goal here is to allow you to easily fix a device that only has a worn out battery, keeping it out of a landfill. The batteries could still be recycled and the process might be even easier if they were all user replaceable.
my OG comment clearly stated 'this year so far'. It's also obvious imports increased if you look per month net imports 2023 vs 2024. It doesn't matter the gateway, net imports do matter. Germany net imported 20TWh in 2024 so far and that's a fact. Germany net imported a lot more from neighbor states compared to last year and again, that's a fact.
Most people use their computers just to browse the internet and maybe run a few electron applications.
This is cool and it's great to see people adding better first-class support for currencies in as many languages as possible!

I am the author of a similar crate in the rust ecosystem: https://crates.io/crates/currencies

major features include:

* support for all ISO-4217 currencies (though not all have been explicitly tested as it is hard to find native users of some)

* compile-time macros for specifying an Amount in the native format (with symbol, etc)

* support for non-base-10 number systems (there are a few ISO currencies that needed this)

* every currency uses an appropriate backing data type, and new currencies and backing data types can be defined as long as they meet the trait requirements

* opt-in ability to enforce only checked math ops (but using the usual +,/,-,* etc symbols). This is critically important for crypto and finance applications where a panicking math op can, for example, brick a blockchain or real-time trading system

* support for parsing and printing currencies in their native format at runtime

* currencies use the appropriate format style (https://github.com/sam0x17/currencies/blob/main/core/src/cur..., i.e. symbol can be "suffix attached", "suffix spaced", "prefix attached", "prefix spaced")

* support for a number of cryptocurrencies, basically popular ones and ones I've bothered to add. Will always accept PRs adding others!

* ability to define your own currencies using the `define_currency!` macro. Though these will not be supported by the built-in `amt!` macro unless I add them to the crate.

e.g., here is how a few of the core currencies are defined:

define_currency!(USD, u64, 1_00, "$", "United States Dollar", PrefixAttached, true, false);

define_currency!(BTC, u64, 1_00000000, "BTC", "Bitcoin", SuffixSpaced, false, true);

define_currency!(ETH, U256, u64_to_u256(1_000000000000000000), "ETH", "Ethereum", SuffixSpaced, false, true);

One disadvantage right now is there is no ability to have a generic "amount of some arbitrary currency" other than through generics, as the underlying traits aren't object-safe. A good way to work around this is to define an enum that contains all the currencies you plan to support. I am working on a feature that will let you easily generate this enum at compile-time :)

parsing is done using my Quoth parsing crate which provides a very safe, lexer-less way to do parsing of UTF-8 strings that relies on recursive parsing in a way somewhat similar to syn, but there are no token streams https://crates.io/crates/quoth
They're not a fake metric. Sure, ratings can be gamed and are gamed. But ratings and accompanying reviews inherently aren't fake, and are the closest proxy to "word of mouth"
Hackers targeting U.S. internet providers, like in the "Salt Typhoon" attack, highlight the need for robust protection. I recommend ImmuniWeb's attack surface management software https://www.immuniweb.com/resources/attack-surface-managemen..., which offers dark web monitoring solution, risk discovery, and real-time protection across web, cloud, and mobile assets. This software reduces your exposure by identifying vulnerabilities and providing tailored solutions to secure your infrastructure proactively. It’s ideal for managing risks exposed in major breaches.
also presumes that the LLM knows it is an LLM
Ah ok, here's an updated hierarchy:

Football SERIE A

Judiciary

Mafia | Government

Policia

Public

Non-italians
It's incredible to me how many people log into personal account on work devices. People should really research the amount of data security tools harvest.
> Sure, but both halves are still there.

No they're not. Google is only being allowed to distribute half their browser, frankensteined together with half of Apple's, because Apple does not allow distributing a complete browser.

> WebKit is still a top class rendering engine and only about as buggy as any other rendering engine. Blink is of the same lineage given it is a fork of WebKit and Gecko is even older.

Mainline WebKit is a fine rendering engine, but the iOS distribution is significantly outdated and buggy. "Safari is the new IE" caught on for a reason.
"In addition to inflating the reported number of “people” on its platform, we also suspect Roblox massively inflates a second key metric, “engagement hours”."

Well maybe, but I have absolutely no doubt the engagement hours are still massive. Roblox is one of the main online destinations for kids these days, above even minecraft servers it seems.

The "paedophile hellscape" seems like a short-seller slur to me. No doubt there is some element of this on such a big platform, but it seems vastly overblown to me. I have yet to see anything really suspicious, with kids of my own, and also using roblox/roblox studio in coding clubs.

The payout % for creators, well that could be labelled a hellscape perhaps...
Yeah, it's a clever (ha!) interpretation, but I also don't think Kernighan meant it that way. Basically, what the article says is that yes, you should make your code as clever as possible, so that your future self (or others who will be fortunate (?) enough to work with it) may grow professionally by finding the obscure issues that are hidden within, or by trying to wrap their heads around it in order to be able to extend it (often in ways that are at odds with your clever design). I don't know about others, but I can imagine better ways of professional growth...
Or inexpensive cellular modems.

Someone in the future will make decent money converting smart tvs to dumb tvs.
Vietnam war was fought on the other side of the planet, an ocean away. Ukrainian war is fought on the border of Russia and has resulted in Russian territory being occupied by a foreign power for the first time since WW2. These are very different things.
Atomic bombs are a product of atomic energy. So are atomic energy, cancer treatment, electron microscopes, etc.

I disagree the negatives outweigh the positive. Spellcheck, Google maps traffic, and electricity distribution are three applications I've used this morning. We dont tend to think about the successful applications, instead focusing the solely negative use like adtech.
Nobody predicted that:

https://www.reddit.com/r/Physics/comments/1f94660/2024_nobel...

https://www.reddit.com/r/Physics/comments/1fydwg3/prediction...
Take My Money and Leave
People always repeat these stupid things like they're lore. Ok let's suppose this is true. What else is true is that neurology itself was inspired by phrenology and the practice of exorcisms. Should we now start recognizing and exalting those connections given how divorced modern (useful!) neurology is?
This is interesting! I learned quite a bit, thank you :)

One comment, though: it's not an apples-to-apples comparison! (I'm talking about your gist.) Specifically, in Elixir, you should create the state machine yourself (very easy in Elixir, thanks to pattern-matching definitions of functions) and schedule it across a few processes manually. You'd need ~100loc for this, and you'd get results much closer to C# and Rust.

What your comparison highlights is that the primitives behind the same async/await API can vary widely in their specifics. Goroutines and BEAM processes are much more lightweight than OS-level threads, but they are much more complex than just a compiled state machine, so they are heavier than coroutines. On the other hand, BEAM processes do the "preemptive userspace scheduling," which means they can be used for scheduling (an implementation of) coroutines. An interesting note about F# `async { }` - I thought this one also builds coroutines through CPS transform; it should be on par with Task regarding overhead.

It would be nice to expand the comparison: Java got virtual threads lately, I'm curious how that would fare - closer to C# or BEAM? Throw in Kotlin's coroutines (probably closer to C#) and Python's asyncio (or Lua native coroutines, but then you need to write the scheduler) for a good measure... We could see how concurrency primitives differ in overhead across more languages.
You are not going to find 1 or 2 eurocents anymore either, but it is still a valid amount. You can pay that electronically, but not in cash.

So rounding for cash is a different problem that rounding money in general.
Because it is a fight to put anything on a ISO managed language, and only the strongest persevere long enough to make it happen.

Regardless of what ISO language we are talking about.
I’ve used if for some internal pages and it’s fine. I’m not sure I would want to use it to make the next Facebook though. Maybe the next Amazon?
One thing abut cargo work is that it's always been at full scale since before anybody living was ever born.

Ships have always been as big as they can be, and fewer people handle more (retail value) quicker per person than during less-bulky links in the supply chain.

So fundamentally plenty of money is being made at the port, regardless of the state of automation, this boils down to the lowest priority until all the other elements leading up to the port are taken to a dramatically improved next level automation themselves.
> I think you need to figure out your own answer and/or get clarification from fallingsquirrel if you want to talk about that kind of problem.

Right. The point is that fallingsquirrel hasn't solved the hard part of the problem.

> If you're specifically talking about the ABA problem, that's trivial to fix with a generation counter.

Maybe, but you need to specify that that's what you're doing, and it may come with undesirable consequences.
THAT will help. Thank you to the Nobel Prize committee for this choice.
cool. whoever uses these libraries better validated it very well.
Can BigDecimal tell me which currency a monetary value is denominated in?
It looks like there's some variability:

smartos$ uname -a
SunOS smartos 5.11 joyent_20240701T205528Z i86pc i386 i86pc Solaris

Core system stuff:

smartos$ file /usr/bin/ls
/usr/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (Solaris), dynamically linked, interpreter /usr/lib/ld.so.1, not stripped

smartos$ file /bin/sh
/bin/sh: symbolic link to ksh93

smartos$ file /bin/ksh93
/bin/ksh93: ELF 64-bit LSB executable, x86-64, version 1 (Solaris), dynamically linked, interpreter /usr/lib/amd64/ld.so.1, not stripped

And then the pkgsrc stuff:

smartos$ which ls
/opt/local/bin/ls

smartos$ file /opt/local/bin/ls
/opt/local/bin/ls: symbolic link to /opt/local/bin/gls

smartos$ file /opt/local/bin/gls
/opt/local/bin/gls: ELF 64-bit LSB executable, x86-64, version 1 (Solaris), dynamically linked, interpreter /usr/lib/amd64/ld.so.1, not stripped
I mean, I already know some Unicode internals and linguistics (since I developed a language-specific compression algorithm back in the day), but I have never seen a single character requiring four bytes (and I know Emoji chaining for skin color, etc.).

So, seeing this just moved the complexity of Unicode one notch up in my head, and I respect the guys who designed and made it work. It was not whining or complaining of any sort. :)
Most of the Gerry Anderson shows are available to stream on ITVX in the UK. The Re-imaginings of Thunderbirds and Captain Scarlett in 3D are there too.

Fireball XL-5, Supercar, Joe 90, Space Precinct (sub needed), UFO, Terrahawks, Space:1999, The Secret Service, Stingray, Gerry Anderson's New Captain Scarlet (3D), Captain Scarlet, Thunderbirds the Anniversary Episodes, Thunderbirds Are Go (3D), Thunderbirds.
> I always understood the native types to be the "probably most efficient" choice, for when you don't actually care about the width.

This itself is a platform-specific property, and is thus non-portable (not in the sense that your code won't run, but in the sense that it might be worse for performance than just using a known small integer when you can).
The US invaded Iraq, because of the phantom prospect of a nuclear proliferation. A state which was just created and gave up Crimea without a shot fired in 2014 was not about to fight to keep nukes which were not theirs in the 90’s. With the combined forces of the West and Russia breathing down their necks there was zero chance that they would be able to keep them.
Cool stuff!

The use of infix functions reads a bit weird to me.

If I were to design an API like this in Kotlin, I think I would have gone for regular extensions for many cases and perhaps extension properties, think as such:

val fiveBucks = 5.usd
val fiveBucks = 5.money("USD")
val tenPercent = 10.percent

How come you went for "increaseBy" and "decreaseBy" instead of overloading `plus` and `minus`? Just curious, preference is a valid answer.