MurphyA/hacker-news huggingface dataset:
by HDMI_Cable | 2025-08-16 08:59:26+00:00
It's quite sad that ADHD is as stigmatized as it is: even though it is a very well-characterized condition in psychiatric literature, the most common 'pop-science' take one hears about it is that ADHD is completely overdiagnosed and may not even exist as a condition. Also, I know multiple people, even though well-managed ADHD would not negatively affect their careers, are barred from certain professions (like high-security military careers and being pilots) simply due to having ADHD and being medicated for it.
by owl_vision | 2025-08-16 08:59:58+00:00
What were the resource setups? How do they compare to linux resource setups?

Defaults in current are in etc.amd64/login.conf. https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/etc...

(p.s.: the bubble are cool. highly distracting to me, hence I could not read the article in full.)
by Joeri | 2025-08-16 09:00:04+00:00
UBI could easily become a poverty trap, enough to keep living, not enough to have a shot towards becoming an earner because you’re locked out of opportunities. I think in practice it is likely to turn out like “basic” in The Expanse, with people hoping to win a lottery to get a shot at having a real job and building a decent life for themselves.

If no UBI is installed there will be a hard crash while everyone figures out what it is that humans can do usefully, and then a new economic model of full employment gets established. If UBI is installed then this will happen more slowly with less pain, but it is possible for society to get stuck in a permanently worse situation.

Ultimately if AI really is about to automate as much as it is promised then what we really need is a model for post-capitalism, for post-scarcity economics, because a model based on scarcity is incapable of adapting to a reality of genuine abundance. So far nobody seems to have any clue of how to do such a thing. UBI as a concept still lives deeply in the Overton window bounded by capitalist scarcity thinking. (Not a call for communism btw, that is a train to nowhere as well because it also assumes scarcity at its root.)

What I fear is that we may get a future like The Diamond Age, where we have the technology to get rid of scarcity and have human flourishing, but we impose legal barriers that keep the rich rich and the poor poor. We saw this happen with digital copyright, where the technology exists for abundance, but we’ve imposed permanent worldwide legal scarcity barriers to protect revenue streams to megacorps.
by KoolKat23 | 2025-08-16 09:00:08+00:00
Anthropomorphism does not relate to everything in the field of ethics.

For example, animal rights do exist (and I'm very glad they do, some humans remain savages at heart). Think of this question as intelligent beings that can feel pain (you can extrapolate from there).

Assuming output is used for reinforcement, it is also in our best interests as humans, for safety alignment, that it finds certain topics distressing.

But AdrianMonk is correct, my statement was merely responding to a specific point.
by qubidt | 2025-08-16 09:00:13+00:00
This is relatively niche, but that's a thing for anime fan-encodes. Some groups publish their vapoursynth scripts, allow you to produce the same re-encoding (given you have the same source video). e.g.:

* https://github.com/LightArrowsEXE/Encoding-Projects

* https://github.com/Beatrice-Raws/encode-scripts
by kajecounterhack | 2025-08-16 09:00:29+00:00
I tried mapping back to closest token embeddings. Here's what I got:

global_step = 1377; phase = continuous; lr = 5.00e-03; average_loss = 0.609497 current tokens: ' Superman' '$MESS' '.");' '(sentence' '");' '.titleLabel' ' Republican' '?-' global_step = 1956; phase = continuous; lr = 5.00e-03; average_loss = 0.589661 current tokens: ' Superman' 'marginLeft' 'iers' '.sensor' '";' '_one' '677' '».' global_step = 2468; phase = continuous; lr = 5.00e-03; average_loss = 0.027065 current tokens: ' cited' '*>(' ' narrative' '_toggle' 'founder' '(V' '(len' ' pione' global_step = 4871; phase = continuous; lr = 5.00e-03; average_loss = 0.022909 current tokens: ' bgcolor' '*>(' ' nomin' 'ust' ' She' 'NW' '(len' ' pione'

"Republican?" was kind of interesting! But most of the strings were unintelligible.

This was for classifying sentiment on yelp review polarity.
by mofeien | 2025-08-16 09:00:43+00:00
> What makes you think that? Self driving cars [...]

AI is intentionally being developed to be able to make decisions in any domain humans work in. This is unlike any previous technology.

The more apt analogy is to other species. When was the last time there was something other than homo sapiens that could carry on an interesting conversation with homo sapiens. 40,000 years?

And this new thing has been in development for what? 70 years? The rise in its capabilities has been absolutely meteoric and we don't know where the ceiling is.
by CafeRacer | 2025-08-16 09:00:52+00:00
I came here to say an exactly opposite things. There were a few instances where a relatively heavy join would not perform well, no matter what I tried. And it was faster to load/stitch data together with goroutines. So I just opted to doing it that way.

Also SQL is easy, but figuring out what's up with indexes and planner is not.
by flohofwoe | 2025-08-16 09:01:03+00:00
The same thing as in git: you're not allowed to push your changes to the server until you have resolved the conflicts locally.

E.g. with current svn you get the latest changes from the server, open a diff editor, fix the conflicts and then commit.

The only difference here between svn and git is that svn merges the 'commit' and 'push' operations into one, e.g. instead of not being allowed to push, you're not allowed to commit in svn if there are pending conflicts.

This would be the part that would need to change if svn would get a proper 'offline mode', e.g. commits would need to go into some sort of 'local staging queue' until you get internet access back, and conflict resolutions would need to happen on the commits in that staging queue. But I really doubt if that's worth the hassle because how often are you actually without internet while coding?
by Joel_Mckay | 2025-08-16 09:01:36+00:00
In my humble opinion, if a work is a community project it should stay open regardless of some small feature tweaks, and any kind of commercial revenue should be used to support the original authors as it literally costs people nothing as a tax deductible donation.

The key word here is "Should", as different places have different cultural values regarding intellectual property. Some see bad faith verbatim cloning as lucrative business opportunities (it rarely is), and creatives as a natural resource to be exploited (unfortunately they often are.)

Notably, a large part of the community quietly financially supports this cloning practice, and rarely follow their lofty ideals when purchasing.

Commercial opportunities are naturally degenerating in a saturated market, and businesses that did innovate their own unique products owe people nothing.

Note, competing with free is a bad business model, and the faster cloners fail the better. Prusa was boosted by the rep-rap project, and has spent decades rehashing the same core designs. It is not a sustainable growth strategy. =3
by thaumasiotes | 2025-08-16 09:01:45+00:00
I know that.

In your model of the problem, pm215 knows the following things:

1. There is a Japanese word pronounced benkyoo which refers to activities like reading books with the intent to learn something, doing practice exercises with the intent to learn something, preparing to take a test, doing things that a school might ask you to do, and other similar endeavors.

2. There is an English word "study" which corresponds to the Japanese word spelled 勉強.

But he doesn't know this:

3. In English, activities performed with the intent to learn or review something are referred to by the general term "studying".

I find this hard to believe. Anyone who chose to learn mappings from English words to kanji spellings must be familiar with the meanings of basic English words. He shouldn't be able to think of the activities he wants to refer to without the word "study" coming into his mind, but that was the problem he described.
by tetha | 2025-08-16 09:02:50+00:00
The distinction of stateful and stateless is one of the main criteria how we're dividing responsibilities between platform-infra and development.

I know it's a bit untrue, but you can't do that many things wrong with a stateless application running in a container. And often the answer is "kill it and deploy it again". As long as you don't shred your dataset with a bad migration or some bad database code, most bad things at this level can be fixed in a few minutes with a few redeployments.

I'm fine having a larger amount of people with a varying degree of experience, time for this, care and diligence working here.

With a persistence like a database or a file store, you need some degree of experience of what you have to do around the system so it doesn't become a business risk. Put plainly, a database could be a massive business risk even if it is working perfectly... because no one set backups up.

That's why our storages are run by dedicated people who have been doing this for years and years. A bad database loss easily sinks ships.
by wosined | 2025-08-16 09:03:10+00:00
80% of solving mathematics problems is guessing. You are not required to guess only in situations where you know what formula to apply/how to proceed because the teacher told you to or the problem is trivial. You guess the steps, try them, try another guess if the first one does not work, then you iron out the special cases if any and make the whole proof rigorous.
by quietbritishjim | 2025-08-16 09:03:19+00:00
I think it's ok to have this rule as a first approximation, but like all design rules you should understand it well enough to know when to break it.

I worked on an application which joined across lots of tables, which made a few dozen records balloon to many thousands of result rows, with huge redundancy in the results. Think of something like a single conceptual result having details A, B, C from one table, X, Y from another table, and 1, 2, 3 from another table. Instead of having 8 result rows (or 9 if you include the top level one from the main table) you have 18 (AX1, AX2, AX3, AY1, ...). It gets exponentially worse with more tables.

We moved to separate queries for the different tables. Importantly, we were able to filter them all on the same condition, so we were not making multiple queries to child tables when there were lots of top-level results.

The result was much faster because the extra network overhead was overshadowed by the saving in query processing and quantity of data returned. And the application code was actually simpler, because it was a pain to pick out unique child results from the big JOIN. It was literally a win in every respect with no downsides.

(Later, we just stuffed all the data into a single JSONB in a single table, which was even better. But even that is an example of breaking the old normalisation rule.)
by bob1029 | 2025-08-16 09:03:29+00:00
This is a big part of what makes ORMs a problem.

Writing raw SQL views/queries per MVC view in SSR arrangements is one of the most elegant and performant ways to build complex web products. Let the RDBMS do the heavy lifting with the data. There are optimizations in play you can't even recall (because there's so many) if you're using something old and enterprisey like MSSQL or Oracle. The web server should be able to directly interpolate sql result sets into corresponding <table>s, etc. without having to round trip for each row or perform additional in memory join operations.

The typical ORM implementation is the exact opposite of this - one strict object model that must be used everywhere. It's about as inflexible as you can get.
by Terr_ | 2025-08-16 09:03:32+00:00
> The other side did have 4 years to fix it, though.

They did try, incorporating some relief into a bill in 2021, however:

> In the House version of the Build Back Better Act passed in November 2021, the effective date for the amendment made by the TCJA to Section 174 was delayed until tax years beginning after December 31, 2025. While this specific provision of the bill enjoyed broad bipartisan support, comments made by Senator Joe Manchin (D-W.V.) in late December indicating his opposition to the bill effectively stalled progress on the Build Back Better Act, making the path forward on legislation unclear.

-- https://www.bdo.com/insights/tax/significant-change-to-the-t...

That bill did narrowly survive, but only in a stripped-down form with that Section-174 provision removed to satisfy the Senate fence-sitters. Manchin later left the Democratic party.
by maxbond | 2025-08-16 09:04:17+00:00
Audit tables are a big ask both in terms of programming effort to design and support them, and in terms of performance hit due to write amplification (all inserts and updates cause an additional write to an audit table). Whereas making a bool into a timestamp is free. Including timestamps on rows (including created_at and updated_at) are real bacon savers when you've deployed a bug and corrupted some rows and need to eg refund orders created in a certain window.
by juniperus | 2025-08-16 09:05:09+00:00
To a large extent, yes. That's why the arrangement is so precarious, it is necessary in many regards, but a totalitarian regime or dictatorship can use this arrangement in a nefarious manner and tip the scale toward public resentment. Balancing things to avoid the revolutionary mob is crucial. Trading your labor for protection is sensible, but if the exchange becomes exorbitant, then it becomes a source of revolt.
by KronisLV | 2025-08-16 09:06:18+00:00
> Schema design should be flexible, because once you have thousands or millions of records, it can be an enormous pain to change the schema. However, if you make it too flexible (e.g. by sticking everything in a “value” JSON column, or using “keys” and “values” tables to track arbitrary data) you load a ton of complexity into the application code (and likely buy some very awkward performance constraints). Drawing the line here is a judgment call and depends on specifics, but in general I aim to have my tables be human-readable: you should be able to go through the database schema and get a rough idea of what the application is storing and why.

I’m surprised that the drawbacks of EAV or just using JSON in your relational database don’t get called out more.

I’d very much rather have like 20 tables with clear purpose than seeing that colleagues have once more created a “classifier” mechanism and are using polymorphic links (without actual foreign keys, columns like “section” and “entity_id”) and are treating it as a grab bag of stuff. One that you also need to read the application code a bunch to even hope to understand.

Whenever I see that, I want to change careers. I get that EAV has its use cases, but in most other cases fuck EAV.

It’s right up there with N+1 issues, complex dynamically generated SQL when views would suffice and also storing audit data in the same DB and it inevitably having functionality written against it, your audit data becoming a part of the business logic. Oh and also shared database instances and not having the ability to easily bootstrap your own, oh and also working with Oracle in general. And also putting things that’d be better off in the app inside of the DB and vice versa.

There are so many ways to decrease your quality of life when it comes to storing and accessing data.
by nonmaskable | 2025-08-16 09:07:05+00:00
For instance I am only launching the app in France. But don't worry it will scale fast and I am sure I will open it to the world.But here is an english version for very early world adopters :

I’ve always loved this sport. After 15 years of playing, I’ve realized one essential truth: the only way to improve is by playing. And since I’m always striving to progress, nothing is more frustrating than feeling like I’m going backwards. So imagine how it feels when you’re abroad on vacation, and it’s nearly impossible to find the right partners to play with...

That’s why I created my own app — to connect tennis players, no matter their level, age, or location.

If you’ve ever faced the same problem, feel free to reach out. I truly want to grow this platform with trustworthy players who can give me honest and valuable feedback.
by SideburnsOfDoom | 2025-08-16 09:07:37+00:00
Yeah, I stopped reading there, because I see that kind of contrived pablum on LinkedIn constantly. Heart-warming folksy anecdote ... business lesson etc. That, the *bold* and the cartoon are flags.

I have learned to stop paying attention to "content" based on those cues, much like with ad breaks on TV or youtube. It's mostly not even conscious, I just skip over it.
by 9rx | 2025-08-16 09:07:47+00:00
> which made a few dozen records balloon to many thousands of result rows

That doesn't really sound like a place where data is actually conceptually joined. I expect, as it is something commonly attempted, that you were abusing joins to try and work around the n+1 problem. As a corollary to the above, you also shouldn't de-join in application code.
by spiddy | 2025-08-16 09:07:54+00:00
though why treat booleans as special case and keep timestamps for them when you don’t for integers with this pattern:

isDarkTheme: {timestamped} paginationItems: 50

I can see when dark theme was activated but not when pagination was set to 50.

also, i can’t see when dark theme is being deactivated either.

seems like a poor-man changelog. there maybe use cases for it but i can’t think of anything tbh.
by Raphael_Amiard | 2025-08-16 09:08:13+00:00
Came here to say that. It’s important to remember how biased hacker news is in that regard. I’m just out of ten years in the safety critical market, and I can assure you that our clients are still a long way from being able to use those. I myself work in low level/runtime/compilers, and the output from AIs is often too erratic to be useful
by impulsivepuppet | 2025-08-16 09:09:08+00:00
I find it quite intriguing to introduce "language-native" matrices and 2d blocks (which I still find difficult to wrap my head around.)

The reason why most people would more intuitively consider a music score as multidimensional has to do with parallelism or concurrency.

In theory, nothing is stopping you from creating a hyperarray language a la BQN++ (or dare I say QRP). Maybe I glossed over an example, but having proper pointwise application to hyperscalars feels like a must-have.

Second idea is to introduce process parallelism, which could actually make this form of syntax into an execution graph of sorts--could be quite promising!
by grey-area | 2025-08-16 09:11:02+00:00
I’d see the booleans as a bad thing in almost all cases, instead of a boolean you can have a timestamp or an integer field (which can expand later).

In the is_a case almost always a type or kind is better as you’ll rarely just have bears even if you only start with bears, just as you rarely have just two states for a status field (say on or off), often these expand in use to include things like suspended, deleted and asleep.

So generally I’d avoid booleans as they tend to multiply and increase complexity partially when they cover mutually exclusive states like live, deleted and suspended. I have seen is_visible, is_deleted and is_suspended all on the same table (without a status) and the resulting code and queries are not pretty.

I’d use an integer rather than a timestamp to replace them though.
by HPsquared | 2025-08-16 09:11:41+00:00
Plastics aren't a problem if people actually put them in the bin, and they are buried / recycled / burned. The problem is littering and poor waste management.

You can solve plastic pollution in two ways. Either crackdown on inappropriate waste disposal, or eliminate the use of plastics. One is actually possible, the other isn't.

Edit: although to be fair there are a range of "harm reduction" type measures. But if you focus on those, you might solve 10% of the problem and just drain energy from actually solving waste management.
by dondraper36 | 2025-08-16 09:11:58+00:00
There's a great book SQL Antipatterns, by Bill Karwin where this specific antipattern is discussed and criticized.

That said, sometimes when I realize there's no way for me to come up even with a rough schema (say, some settings object that is returned to the frontend), I use JSONB columns in Postgres. As a rule of thumb, however, if something can be normalized, it should be, since, after all, that's still a relational database despite all the JSON(B) conveniences and optimizations in Postgres.
by will_e | 2025-08-16 09:12:12+00:00
Respectfully disagree.

I knew someone that worked for the tobacco industry where they had labs that constantly were looking for reasons that tobacco was good for you. It meets your qualifications for properly designed studies, but it was purely about trying to convince convinced others that a known addictive substance that caused emphysema and lung cancer was beneficial to your health.

Something similar happened in the weed industry, though it it’s proponents were initially just people that wanted pot to be free for anyone to grow, and then it got taken over by capitalists that didn’t mind using massive amounts of energy to fund vertical gardening, or genetically modify yeast to create THC, or to genetically modify the plant itself to produce an untested derivative of it that would meet the qualifications for hemp products, and then peddle it to teenagers at massive doses without control, pairing it with sugar-free sweeteners and causing serious health problems like uncontrollable vomit coughing, basically inventing a new disease from scratch.
by anonzzzies | 2025-08-16 09:12:40+00:00
Never had any issues with their support; they sent me free stuff and always helped me fast. That's in the eu though where we have laws to help paying consumers or get fined. What americans seem to hate so much as it cost the company money to give a minimum qos. I would not use starlink if I had another choice though, but there is nothing else where I am.
by _vere | 2025-08-16 09:12:41+00:00
Interesting they'd chose to move to germany with their infra after the whole "gov sued Tutanota into providing a backdoor into e2ee email and won" thing happened. I've been with proton specifically because they are one of the few privacy focused email providers that isnt based in germany. Maybe it's time to say screw it and host my own, even if deliverability is gonna be an issue. I don't feel like my email is safe if it's hosted in germany.
by OtherShrezzing | 2025-08-16 09:13:48+00:00
I think the even better crown jewel here is that the code is predictable, with no lock-out facility at the gym door for wrong attempts. The format is (or was when I signed up) something in the format

>[minute of the hour you created the account][random number, 2 digit][day (or maybe month) of birth][year of birth]

So <59341295> is the code for a user who signed up at :59 past the hour, and their birthday is December 1995.

If you know someone’s birth month, you can just scan through ~6000 possible codes in a for loop to get their access code. At my gym, the PT coaches would celebrate their clients birthdays loudly,

I’d not be surprised if the random number component was just an integer that increases with each sign up at a gym.
by patall | 2025-08-16 09:16:54+00:00
Then you could also do it at the surface. But they do it a depth because they want a pressure difference on the two sides of the osmosis membrane. You somehow need to generate that pressure difference and the energy you need for that is minimum equal to the amount you need to move the freshwater.

Oh, and you will have to do it continuously, not with a 'container'. Existing desalination plants produce hundreds of thousands of cubic meters of fresh water per day.