MurphyA/hacker-news huggingface dataset:
by AnotherGoodName | 2025-09-29 18:30:52+00:00
Definitely an overall positive with the negatives actually being kind of hilarious and no big deal which I'll also discuss.

I can only list my open source outputs concretely for obvious reasons but https://github.com/rubberduckmaths/reddit_terraforming_mars_... was a near one shot. It's a Reddit bot that posts card text to the Terraforming Mars subreddit when asked which is helpful for context on discussions of that board game. Appreciated and used a lot by the community there. There's a similar project i used AI for to scrape card text that was also near one shot. I'd say for these two hobby projects 50x productivity is a reasonable statement. I wrote Reddit bots ~10 years ago without coding assistance - https://github.com/AReallyGoodName/xwingminibot i get to reasonably absolutely compare two very similar projects. I think it's totally fair for me to say 50x for this example. The Reddit API even changed completely in that time so no one can really say "you used past experience to move faster, it's not the ai giving a 50x boost" but I really didn't. My memory is not that good except for memory of an entire weekend previously vs <30mins total now using a bot to one shot some pretty cool projects.

As for the negatives they are never serious. A couple of good examples;

"Please correct all lint errors in this project" only to have @lintignore added to all files. Lol! Obviously i just more clearly specified the prompt and it's not like it's hard to catch these things and not ship to prod. It was funny to everyone i showed and no big deal.

Another similar case, "please make the logging of this file less verbose especially around the tight loop on line X". Instead of changing log level or removing some of the log statements the ai redirected stdout at the initialization of the command line program (would completely break it of course). Again hilarious but also not big deal. Not even much of a waste of time since you just change the prompt and run again and honestly a few silly diversions like this now and then is kind of fun. As in the comments of "OMG AI sometimes gets it wrong" aren't at all serious. I have version control, i review code. No big deal.

I too eye roll massively at some of the criticisms at this point. It's like people are stretching to claim everyone who's using a coding assistant is newb who's throwing everything into prod and deleting databases etc. That's just not reality.
by trhway | 2025-09-29 18:31:32+00:00
fascinating, the time when USSR repressions impressed even Saudis (by watching for example Lawrence of Arabia one can see that life there was a complete opposite of a cake walk) :

"one year later he was recalled to Moscow where he was arrested one year later on the false denunciation. On the 10th of January in 1938 Red Pasha was cut short. Repressions of «Red Pasha» and the follow-up execution made a great impression on representatives of the ruling till now dynasty of the Saudi Arabia Kingdom – diplomatic relations between that country and the USSR were broken off in 1938 after Khakimov’s withdrawal and they were not resumed till the fall of the communist system in the Soviet Union."
by Nevermark | 2025-09-29 18:31:53+00:00
I don't think that is true.

A seamless ubiquitous interface and accounting system for penny sized transactions hasn't been introduced anywhere I am aware of.

It would need to be incredibly convenient, easy, reliable, secure, private. With flexible permissioning (subscription list, ok to pay list, etc.) so people were not hammered by "Do you want to pay?" popups all the live long day.
by hollerith | 2025-09-29 18:32:29+00:00
>If tomorrow morning Friesland decides by majority vote it wants to be independent of the rest of NL I'd be perfectly ok with that.

That is a easy postition for the Netherlands to take because it has very little security against invasion even now before Friesland secedes, given its location in which there is little in the way of mountains, rivers or seas between it and countries more powerful than it. (More powerful if only because of their greater size: I'm not claiming that the Dutch are bad at fighting).

But it would be foolish for Australians to allow a large chunk of Australia to secede or for the Japanese to allow part of Japan to secede because the way it is now, both countries enjoy a very favorable security situation in which any invader would need to cross an ocean or at least a wide channel even to begin an invasion. If Japan split into two, then one of the two new countries might invite in the military of a larger power with the result that the other new country is in a vastly more precarious security situation than it was before the split into 2 countries.

The Mongols attempted a massive invasion of Japan, but the invasion was foiled by stormy weather while the Mongols were trying to cross the wide channel. If there were two polities in Japan at the time, the Mongols could have offer to protect one polity from the other one, and if their offer had been accepted, they could have moved their forces to Japan at their leisure, and would not have needed to risk an operation in which all their forces try to cross a sea as quickly as possible ready to fight as soon as they get to the other side.

Because of their separation from other countries by large bodies of water, Australian and Japan have been invaded or occupied only once in the last 2000 years (Australia when Europeans arrived and Japan after WWII) whereas during those 2000 years, the Netherlands has been invaded many times (with the occupation or annexation of the Netherlands by Spain having proved particularly painful).

Again: the Netherlands is not giving up much in the way of security advantages by allowing parts of itself to secede, but not all countries are in a similar situation.
by IAmGraydon | 2025-09-29 18:32:39+00:00
You can get $10 million or even $100 million because you love business and love making money. When you start to approach levels north of $1 billion, you don't get there unless you just love something more than money. That amount of money is unnecessary for any person to materially better their own or their family's lives. You only get there if you love power. This is why so many billionaires seem to be turning into psychopaths - they were already power addicts and they just get to levels of wealth that enables them to express it fully. They never wanted islands and jets. They want complete control.
by cube2222 | 2025-09-29 18:33:02+00:00
Claude tends to work well with such semi-xml tags in practice (probably trained for it?).

You can just make them up, and ask it to respond with specific tags, too.

Like “Please respond with the name in <name>…</name> tags and the <surname>.”

It’s one of the approaches to forcing structured responses, or making it role-play multiple actors in one response (having each role in its tags), or asking it to do a round of self-critique in <critique> tags before the final response, etc.
by flenserboy | 2025-09-29 18:33:11+00:00
but it still should happen. every project (of a certain size) should have at least 1-2 programmers whose job it is to make the code faster & smaller. frankly, this could well be the best use of AI on code — not to generate it, but to use its potential speed to chew through existing code bases, outputting squashed-down, streamlined code which is tested to return the same results as the original (think the dream of gentoo, but every program on your system optimized for your particular hardware).
by vkou | 2025-09-29 18:33:21+00:00
> based on your actual work, include some specifics of the task and prompt.

Can't show prompts and actual, real work, because, well, it's confidential, and I'd like to get a paycheck instead of a court summons sometime in the next two weeks.

Generally, 'I can't show you the details of my work' isn't a barrier in communicating about tech, because you can generalize and strip out the proprietary bits, but because LLM behavior is incredibly idiosyncratic, by the time you do that, you're no longer accurately communicating the problem that you're having.
by magicalist | 2025-09-29 18:33:27+00:00
> I told it to Give me a zip file of everything you have done so far—you can explore the contents of the file it made me in this Gist.

For those who don't have time to dig into the gist, did it work and do a good job? I assume yes to at least nominally working or you would have mentioned that, but any other thoughts on the solution it produced?
by arjvik | 2025-09-29 18:33:32+00:00
* Some standards such as ISO 6709 (Standard representation of geographic point location by coordinates) describe points as (latitude, longitude). * Others such as RFC 7946 (GeoJSON) describes points as (longitude, latitude).

Using (hypothetical) std::flip to reify these APIs seems like a loaded footgun - someone is bound to accidentally use it {zero, two} times to convert between orders when it needs to be used once and wreak havoc.
by toomuchtodo | 2025-09-29 18:34:01+00:00
None of this power will come online for at least a decade.

> The ramp-up is expected to start slowly. BI forecasts only 9 gigawatts of new nuclear capacity of any type will be added in the next decade, and widespread deployment of SMRs won’t start until after 2035.

The world deploys 1GW of solar PV every 15 hours currently.
by samsartor | 2025-09-29 18:34:16+00:00
In a library of all possible strings, this is just text compression (as the other comment observes). But in a finite library it gets even simpler, in a cool way! We can treat each text as a unique symbol and use an entropy encoding (eg Huffman) to assign length-optimized key to each based on likelihood (eg from an LLM). Building the library is something like O(n log n), which isn't terrible. But adding new texts would change the IDs for existing texts (which is annoying). There might be a good way to reserve space for future entries probabilistically? Out of my depth at this point!
by ComputerGuru | 2025-09-29 18:35:50+00:00
It's a flattened tree, and you've used the index to reach a point where you have multiple child nodes that meet the precondition thing_date < 17. Some, but not all, of these have thing_color = blue, but the important part is that they're non-consecutive (the index can only give you one point-of-entry, so the data has to be consecutive or you need to do some amount of scan).

I asked an llm to give me an ascii representation so it'll be easier to see what I mean; consider the case where you want thing_date < 17 and thing_color = blue, the results that match are marked with an asterisk, but note that there's no way to get to them (ALL of them) directly:

Root (internal) +---------------------+ | keys: 14 17 | +----+--------+--------+ | | | v v v +----------------+ +----------------+ +----------------+ | Leaf P0 | | Leaf P1 | | Leaf P2 | | (dates 10-13) | | (dates 14-16) | | (dates 17-20) | |----------------| |----------------| |----------------| | 10 | red |101 | | 14 | blue |141| | 17 | green |171| | 11 | blue |111 |*| 14 | red |142| | 18 | blue |181| | 12 | green |121 | | 15 | yellow|151| | 19 | red |191| | 13 | red |131 | | 16 | blue |161|*| 20 | green |201| +----------------+ +----------------+ +----------------+

Go back to my resume's example: you have the resumes sorted by application timestamp (chronologically) and position (alphabetically). You want to find all resumes received last Tuesday where position was "Senior Architect". You literally can't skip to the point where the next n consecutive results will be the results you seek, because you can't temporarily re-order them and within the subset of resumes where date > monday and date < wednesday, there may be multiple for "Senior Architect" but they didn't arrive one-after-the-other so they're interspersed with results you don't want. The correct to do here would be (if this is always the shape of the query you expect to get) to sort the resumes by (position, timestamp) instead, at which point you absolutely CAN jump to the position that guarantees the next results are (all the results) of the query ("Senior Architect", last Tuesday).

One important thing to keep in mind is that a SCAN is not the end of the world. You know your data and you know when it's ok (you expect most of the results to match and a few to be filtered out, in which case you're really not saving much time anyway) and when it's not (the scan will cover a huge range that contains only a few, widely interspersed results and you have no way of terminating early).

EDIT: In response to your exact question however, note that with a covering index you might not end up with a SCAN (i.e. you don't hit the table) even though it uses only the partial index (thing_date) and not (thing_date, thing_color)! It's still possible for it to avoid hitting the backing table and might return the results directly from the index - something it wouldn't have been able to do if the index was only (thing_date).
by wongarsu | 2025-09-29 18:35:59+00:00
LSP giving us high-quality autocomplete for nearly every language has made simple llm-driven autocomplete less magical. Yes, it has good suggestions some of the time, but it's not really revolutionary

On the other hand I love cursor's autocomplete implementation. It doesn't just provide suggestions for the current cursor location, it also provides suggestions where the cursor should jump next within the file. You change a function name and just press tab a couple of times to change the name in the docstring and everywhere else. Granted, refactoring tools have done that forever for function names, but now it works for everything. And if you do something repetitive it picks up on what you are doing and turns it into a couple quick keypresses

It's still annoying sometimes
by rich_sasha | 2025-09-29 18:36:17+00:00
US government debt ratings by US rating agencies are now a bit of a joke. We saw what happened when a minor comedian made a joke adjacent to Charlie Kirk - that joke was, at worst, bad taste, in the context of the tragic and unjustifiable murder. Trump personally tried to destroy that guy.

What happens to rating agencies that dare cut US ratings? Surely nothing good. So they will keep saying things are good - either because they are, or because they aren't, but they cannot say.

But then of course ratings, especially of sovereign debt, are kind of meaningless anyway. The ratings agencies don't have any extra information or deeper analysis available. They know as much as a basic investor, but have no upside in being smarter. The ratings revisions are always reactive, and only really matter because plenty of investors have to avoid bonds below a certain grade.

So it's a demeaning of a meaningless number perhaps.
by davexunit | 2025-09-29 18:36:47+00:00
Despite call/cc being generally understood as not good it's still something you would expect to work in a Scheme implementation. In the Scheme-on-Wasm implementation I work on we emulate call/cc in terms of delimited continuations. Passes r7rs benchmaks that make use of call/cc.

Seems kind of backwards to call them resumable exceptions because delimited continuations are the primitive upon which an exception system can be built but yeah maybe it would make sense to programmers that already understand exceptions. I like the prompt metaphor, myself. https://www.gnu.org/software/guile/manual/html_node/Prompts....
by toomuchtodo | 2025-09-29 18:37:07+00:00
Solar will only keep getting cheaper, SMRs will never be able to compete. Old solar will get re-powered with newer, more efficient solar at a lower cost. Batteries and solar are cheaper than all other power sources in most of the world, and they will continue to decline in cost as manufacturing capacity increases. Solar PV out of China is 8 cents/watt, batteries are at $52/kwh (as of this comment).

This is a con to slow the low carbon energy transition, when combined with the US federal government kneecapping renewable subsidies. That's great and all they're going to supposedly add 9GW of SMRs to the US grid within the next ten years, but there are ~5k US datacenters today, and they are still trying to build more. And who will be held accountable if they build zero SMRs? No one.

https://ourworldindata.org/data-insights/solar-panel-prices-...

https://ember-energy.org/latest-insights/solar-electricity-e...

https://electrek.co/2025/09/24/eia-solar-and-wind-crush-coal...

https://www.eia.gov/todayinenergy/detail.php?id=64705

https://www.eia.gov/electricity/monthly/images/figure_6_01_c...

https://reneweconomy.com.au/watershed-moment-big-battery-sto...

https://www.noahpinion.blog/p/china-is-quietly-saving-the-wo...

(the US currently deploys ~50GW of utility scale solar PV annually, and installed 10GW of batteries in 2024, with 20GW expected in 2025)
by int_19h | 2025-09-29 18:37:17+00:00
Double-clicking is much more difficult to do correctly, and distinguishing repeated single clicks from double clicks is another minefield (manifesting itself in e.g. the mouse gesture needed to rename a file on Windows - you must single click it once to select, and then single click the name again to edit it, but if you do it too fast, it's treated as a double click).

The real problem IMO is that we have effectively standardized on two-button mice as the baseline, with all UX then designed around that even though many mice have 5+ buttons these days. The three basic actions that desktop UI has ultimately converged on are: select; activate; show additional actions (context menu). These should logically map to three independent buttons, such that the two most common actions are mapped to buttons that have fingers resting on them in neutral position - e.g. left = activate, right = select, middle = context menu.
by dylan604 | 2025-09-29 18:37:39+00:00
Again, you seem to think that public/private need to be used at the same time. You can have a private event that is publicized so everyone knows it happens yet only those invited can attend. A royal wedding would be an example to keep it in the same realm as the topic. The entire planet knew when William at Kate were getting married, when it was, and where it was. If you tried to get into that event without an invite, you were turned away. If you continued to argue like you are in this thread, you'd probably be detained.

Why you think that a wedding needs a public announcement because of regulations is relevant or not is something I cannot see the point of making. It does not mean the event is open to the public. You seem to think that more words are needed in English to get the concept across, yet you seem to be the only one with the inability to grasp the concept.

I'm deliberately ignoring your diatribe on hosting events as it is totally unnecessary and brings nothing to the conversation.
by freetonik | 2025-09-29 18:37:43+00:00
Assuming the web server does not actually store and serve pages in a conventional sense, but rather acts like an application that can render the results of parsing and processing user's input, I wonder what are legal implications.

I can generate a Google link with an infohash in the same fashion: https://www.google.com/search?q=1548262051907755713575797913...
by beefnugs | 2025-09-29 18:38:19+00:00
You dont understand how complete unreliability is a problem?

So instead of just "doing things" you want a world where you try it ai-way, fail, then "do thing" 47 times in a row, then 3 ai-way saved you 5 minutes. Then 7 ai-way fail, then try to remember hmm did this work last time or not? ai-way fails another 3 times. "do thing" 3 times. How many ai-way failed today? oh it wasted 30% of the day and i forget which ways worked or not, i better start writing that all down. Lets call it the MAGIC TOME of incantations. oh i have to rewrite the tome again the model changed
by wback100 | 2025-09-29 18:38:32+00:00
The Meta Ad Library may be next - possibly in a week or so. Creating an archive is a much bigger exercise than the Google one, particularly if the media files are part of the exercise. If anyone had the skill/resources to pull it off (27 EU countries, plus any UK data before they left the EU, all the way back to 2018), that would be an enormous public service.
by SkiFire13 | 2025-09-29 18:38:42+00:00
> A lot of modern DB engines like Clickhouse tend to just work around this problem by being so fast at full table scans that they don’t even need any sophisticated indexing set up at all.

There's only so much you can do with this approach due how to the algorithmic complexity scales as more joins are added. At some points you'll need some additional data structures to speed things up, though they not be indexes in name (e.g. materialized views)
by abustamam | 2025-09-29 18:39:17+00:00
> The plan-build-test-reflect loop is equally important when using an LLM to generate code, as anyone who's seriously used the tech knows

Yeah I'm actually quite surprised that so many people are just telling AI to do X without actually developing a maintainable plan to do so first. It's no wonder that so many people are anti-vibe-coding — it's because their exposure to vibe coding is just telling Replit or Claude Code to do X.

I still do most of my development in my head, but I have a go-to prompt I ask Claude code when I'm stuck: "without writing any code, and maintaining existing patterns, tell me how to do X." it'd spit out some stuff, I'd converse with it to make sure it is a feasible solution that would work long term, then I tell it to execute the plan. But the process still starts in my head, not with a prompt.
by zahlman | 2025-09-29 18:39:32+00:00
> Interestingly enough, most of these implementations only flip the first two parameters of whichever function they are passed, though it seems to be because most of them are based on the Haskell prelude, and handling arbitrary arity can be tricky in that language.

Probably because the use case for it with higher arity is hard to imagine. (Indeed, TFA gives only examples with binary operations.)

> Fortunately it is not just useless knowledge either: flip can be reified at will by copying the following C++17 implementation.

> [snip 114 lines of code]

Meanwhile, in Python:

def flip(f): return lambda *args, **kwargs: f(*args[::-1], **kwargs)

(I leave keyword arguments alone because there's no clearer semantic for "flipping" them.)

The `toolz.functoolz.flip` implementation (being restricted to binary functions) is an even simpler one-liner (https://toolz.readthedocs.io/en/latest/_modules/toolz/functo...), though accompanied by a massive docstring and admittedly simplified through a heavyweight currying decorator (which accomplishes much more than simply getting a function that does the right thing).
by jMyles | 2025-09-29 18:39:38+00:00
...we have evolved eyes, brains capable of retaining visual memory of what they capture, and communications media capable of describing and depicting those captured photons.

If you believe in the basic right of general purpose computing - not just a political right, but the idea that general purpose computing is the lifeblood of the internet age - then it seems to follow logically that the capture of photons and depiction thereof are part of the functioning the commons.
by pixl97 | 2025-09-29 18:40:45+00:00
This somewhat depends on how big of program/application you are making.

Again, this is something I set bite enterprise style applications quite often as they can be pushed out piecemeal where you can get things like the datastore/input APIs/UI to the customer quickly, then over the next months things like reporting, auditing, and fine grained access controls get put in, and suddenly you find yourself stuffed working around major issues where a little bit up up front thinking about the later steps would have saved you a lot of heartache.