MurphyA/hacker-news huggingface dataset:
by diggan | 2025-05-16 11:47:04+00:00
Besides the "culture"/licensing/FOSS issue already mentioned, I just wanted to be able to reuse model weights across various applications, but Ollama decided to ship their own way of storing things on disk + with their own registry. I'm guessing it's because they want to eventually be able to monetize this somehow, maybe "private" weights hosted on their registry or something. I don't get why they thought splitting up files into "blobs" made sense for LLM weights, seems they wanted to reduce duplication (ala Docker) but instead it just makes things more complicated for no gains.

End result for users like me though, is to have to duplicate +30GB large files just because I wanted to use the weights in Ollama and the rest of the ecosystem. So instead I use everything else that largely just works the same way, and not Ollama.
by guyfhuo | 2025-05-16 11:47:52+00:00
> I'd rather write a new Device Mapper target than do either of those things

Perhaps it’s time for a career change then. Follow your joy and it will come more naturally for you to want to spread it.

Again,

> Please respond to the strongest plausible interpretation of what someone says, not a weaker one that's easier to criticize. Assume good faith.

From my reading the “strongest possible interpretation” of the original “CRUD app” line was “it’s a solved problem that largely requires rtfm and rote execution of well worn patterns in code structure” making it similarly situated as “server telemetry” to make llms appear superintelligent to people new to programming within those paradigms.

I’m unfamiliar with “device mapping”, so perhaps someone else can confirm if it is “the crud app of Linux kernel dev” in that vein.

Just listing topics in software development is hardly evidence of either your own ability to work on them, or of their inherent complexity.

Since this seems to have hurt your feelings, perhaps a more effective way to communicate your needs would be to explain why you find “server telemetry” to be more difficult/complex/w/e to warrant needing an llm for you to be able to do it.
by andy99 | 2025-05-16 11:48:11+00:00
Overshooting the capabilities of LLMs is pretty natural when you're exploring them. I've been using them to partially replace stack overflow or get short snippets of code for ~2 years. When Claude code came out, I gave it increased responsibility until I made a mess with it, and now I understand where it doesn't work and am back to using LLMs more for ideas and advice. I think this arc is pretty common.
by gempir | 2025-05-16 11:48:28+00:00
I looked at the 2 screenshots and it took me like a minute to see the send button on the new screen.

I am probably very used to the "old" design. If a user will use this product once or twice, yes then the big button at the bottom will be advantaged. But you are biasing the design for new users.

Existing users know exactly where the button is and will now have wasted space because of a gigantic send button.
by maccard | 2025-05-16 11:48:46+00:00
I’ve found the biggest thing LLMs and agents let me do are build the things that I really suck at to a prototype level. I’m not a frontend engineer, and pitching feature prototypes without a fronted is tough.

But with aider/claude/bolt/whatever your tool of choice is, I can give it a handful of instructions and get a working page to demo my feature. It’s the difference between me pitching the feature or not, as opposed to pitching it with or without the frontend.
by hengheng | 2025-05-16 11:48:54+00:00
The century old tradition has set up a couple rakes for native speakers to step into.

"Selbständig" (freelancing) is obviously derived like self-standing, but "selb" is archaic and completely unused, prompting native learners to write 'selbstständig, which is wrong.

Couple more ones like this. Ask a native speaker about hinüber vs herüber, they will be perplexed, because it feels so dialectal. And nobody even knows about imperfect tense vs perfect tense, it's just stylistics to most.
by stevepotter | 2025-05-16 11:49:09+00:00
I do a variety of things, including iOS and web. Like you mentioned, LLM results between the two are very different. I can't trust LLM output to even compile, much less work. Just last night, it told me to use an API called `CMVideoFormatDescriptionGetCameraIntrinsicMatrix`. That API is very interesting because it doesn't exist. It also did a great job of digging some deep holes when dealing with some tricky Swift 6 concurrency stuff. Meanwhile it generated an entire nextjs app that worked great on the first shot. It's all about that training data baby
by immibis | 2025-05-16 11:49:20+00:00
With the GIL, multithreaded Python gives concurrent I/O without worrying about data structure concurrency (unless you do I/O in the middle of it) - it's a lot like async in this way - data structure manipulation is atomic between "await" expressions (except in the "await" is implicit and you might have written one without realizing in which case you have a bug). Meanwhile you still get to use threads to handle several concurrent I/O operations. I bet a lot of Python code is written this way and will start randomly crashing if the data manipulation becomes non-atomic.
by tim333 | 2025-05-16 11:49:43+00:00
The key word is relatively. Compared to cash or index investing gold has been far more consistent, while cash has devalued loads even after adjusting for the government indexes, and stocks have gone up loads in real terms assuming you did something passive and reinvested dividends.

The reason it's been fairly constant is that over the long term the cost is driven by the cost of mining it and costs of say getting an acre of land, digging up earth and processing it remains somewhat comparable to the cost of getting an acre of land and building a house.

Cash depreciates because voters say we need more wages and it's easier for governments to print money than make everyone richer in real terms. They can try to generate the illusion of richer in real terms by fiddling the inflation stats, say focusing on a basket of vegetables and not medical costs or beachfront property,

Stocks go up because companies make profits and reinvest.
by csomar | 2025-05-16 11:49:55+00:00
Most (developed states at least) don’t claim the monetary system as a taxation medium. Debasement of currency is a bug not a feature. In the US, you are not required to process your transaction in USD but only need it to pay taxes.

Failed countries (ie: Turkey) rely on the financial system for taxation. Functioning countries shouldn’t care or be bothered by it.
by jillesvangurp | 2025-05-16 11:50:59+00:00
You are not the only one who is afraid of changes and a bit change resistant. I think the issue here is that the reasons for this fear are not very rational. And also the interest of the wider community is to deal with technical debt. And the GIL is pure technical debt. Defensible 30 years ago, a bit awkward 20 years ago, and downright annoying and embarrassing now that world + dog does all their AI data processing with python at scale for the last 10. It had to go in the interest of future proofing the platform.

What changes for you? Nothing unless you start using threads. You probably weren't using threads anyway because there is little to no point in python to using them. Most python code bases completely ignore the threading module and instead use non blocking IO, async, or similar things. The GIL thing only kicks in if you actually use threads.

If you don't use threads, removing the GIL changes nothing. There's no code that will break. All those C libraries that aren't thread safe are still single threaded, etc. Only if you now start using threads do you need to pay attention.

There's some threaded python code of course that people may have written in python somewhat naively in the hope that it would make things faster that is constantly hitting the GIL and is effectively single threaded. That code now might run a little faster. And probably with more bugs because naive threaded code tends to have those.

But a simple solution to address your fears: simply don't use threads. You'll be fine.

Or learn how to use threads. Because now you finally can and it isn't that hard if you have the right abstractions. I'm sure those will follow in future releases. Structured concurrency is probably high on the agenda of some people in the community.
by gpderetta | 2025-05-16 11:51:19+00:00
You could argue that the setb and ret are not part of the leap year check itself. For example if the compiled inlined the call into a caller doing:

if(is_leap_year_fast()) {...}

Then the ret would obviously go away and the setb wouldn't be necessary as it could generate directly a conditional jmp from the result of the cmp.
by AStonesThrow | 2025-05-16 11:51:20+00:00
Honestly, I feel the need to address the elephant in the room for this issue.

BuyMeACoffee seems to be a service based on an extremely flawed premise: that of exchanging money for nothing tangible in return. That is normally known as a "donation", but this is not charitable giving; this is more like tipping. But even tipping is customarily associated with receiving some kind of service in the first place. This is more like tossing $2 bills at a stripper in a dark room, but 3,000 miles away.

Now most of these buttons were traditionally labeled "Buy Me a Beer" and I found them oftentimes on the web pages of starving F/OSS authors. The hackers would definitely be seeking to monetize their free and open-source software by any means necessary. It certainly stood to reason that they deserved a beer (or a coffee) for fixing bugs or simply providing a nice app to me that does something I want. Fair's fair. [Let's not forget that alcohol and caffeine are drugs, though!]

But essentially, if BuyMeACoffee is a payment platform that's disconnected from any tangible product or service being received, it could be warped to any use at all. Can I buy you a coffee if you show me one boob please? Can I buy you a coffee if you unalive my boss? Oh look, a package of (ammunition|fentanyl|CSAM) has arrived on our doorstep, let me buy you ten kilos of coffee to celebrate this unrelated event?

So I think that typically for capitalism to work, we should be scrupulous about correlating goods and services received to the monetary transactions we make for them. Or we should establish a good way to at least correlate a "creator" of software or content with the in-kind payments of "coffees" that they'll receive for actually doing work. Because if this is not properly regulated, we really do end up supporting a lot of shady stuff.

Who knows if we're buying coffee for terrorist cells or a human trafficking ring. I really feel like coffee money can be better spent on legitimate businesses with aboveboard ways of making transactions for tangible things. Sorry if I am being a real stick-in-the-mud about this, but this seems to be the main issue for regulators and law enforcement, and we need to admit that it's not an ideal way to do business.
by hayst4ck | 2025-05-16 11:51:38+00:00
My experience/impression is social and as an outsider, so your information/experience is probably much better than mine, although mine is a bit later than yours, but also not current.

> I know, I lived it for a number of years, owned a business there, was deeply immersed in the goings on, and many frank discussions with our circle of well educated Chinese (many of whom were emigrating or at least getting their kids out of the country).

How predictable/arbitrary would you say the operating environment was?

Predictability suggests rule of law, while arbitrariness strongly suggests none. I'm not sure I would buy IP related examples as related to rule of law, and I would also likely try to distinguish between a hyper competitive environment between unequally resourced people and arbitrary executions of power, which I don't quite think are the same.

> faustian bargain

Timothy Snyder is my favorite political thinker, he recently wrote "On Freedom" and talks about "freedom from" vs "freedom to" at length. Money in many ways is freedom. If you don't have money you are not very free. So China getting richer, while in America Wages are stagnant and losing buying power year over year has implications for overall freedom. In many ways China is becoming more free and America less free if you think about "freedom to" and "freedom from" holistically rather than just "freedom from" which is a very American way of thinking about freedom. Chinese policy becomes a lot more defensible in terms of "freedom to" while it is completely indefensible in terms of "freedom from."

Where once I saw authoritarianism in China, now I ask how much of their behavior is actually an answer to the Paradox of Intolerance and how true the argument of the greater needs for ensuring order in a society at that scale (which from what I can tell is definitely propaganda used to sell it internally). Don't get me wrong, I completely see china as an authoritarian state rife with unchecked (and therefore arbitrary) power, but China is also functional in a way the US is very much not and that's become very interesting to think about, for me.

I'm interested in your analysis of China from a "freedom to" perspective.

> no opportunity to mount any resistance, and therefore "mei banfa"

Timothy Snyder calls this "the politics of eternity."

> middle class will support the government

Given what you've said so far, what does it mean for the middle class to not support the government? Consent is the core primitive of western political ideology and foundational idea of 'rule of law,' so the implication of withdrawing consent is certainly interesting.
by kruador | 2025-05-16 11:52:16+00:00
Most 8-bit CPUs didn't even have a hardware multiply instruction. To multiply on a 6502, for example, or a Z80, you have to add repeatedly. You can multiply by a power of 2 by shifting left, so you can get a bigger result by switching between shifting and adding or subtracting. Although, again, on these earlier CPUs you can only shift by one bit at a time, rather than by a variable number of bits.

There's also the difference between multiplying by a hard-coded value, which can be implemented with shifts and adds, and multiplying two variables, which has to be done with an algorithm.

The 8086 did have multiply instructions, but they were implemented as a loop in the microcode, adding the multiplicand, or not, once for each bit in the multiplier. More at https://www.righto.com/2023/03/8086-multiplication-microcode.... Multiplying by a fixed value using shifts and adds could be faster.

The prototype ARM1 did not have a multiply instruction. The architecture does have a barrel shifter which can shift one of the operands by any number of bits. For a fixed multiplication, it's possible to compute multiplying by a power of two, by (power of two plus 1), or by (power of two minus 1) in a single instruction. The latter is why ARM has both a SUB (subtract) instruction, computing rd := rs1 - Operand2, and a RSB (Reverse SuBtract) instruction, computing rd := Operand2 - rs1. The second operand goes through the barrel shifter, allowing you to write an instruction like 'RSB R0, R1, R1, #4' meaning 'R0 := (R1 << 4) - R1', or in other words '(R1 * 16) - R1', or R1 * 15.

ARMv2 added in MUL and MLA (MuLtiply and Accumulate) instructions. The hardware ARM2 implementation uses a Booth's encoder to multiply 2 bits at a time, taking up to 16 cycles for 32 bits. It can exit early if the remaining bits are all 0s.

Later ARM cores implemented an optional wider multiplier (that's the 'M' in 'ARM7TDMI', for example) that could multiply more bits at a time, therefore executing in fewer cycles. I believe ARM7TDMI was 8-bit, completing in up to 4 cycles (again, offering early exit). Modern ARM cores can do 64-bit multiplies in a single cycle.
by StopDisinfo910 | 2025-05-16 11:52:37+00:00
I don't think that can be considered spamming.

Apparently, there is a push by Huawei to try to upstream some of the adaptation they have done and test cases they have written so that some libraries are usable on their OS called OpenHarmony.

For reasons which are obscure to me, Huawei has apparently decided to open proposal issues before submitting the actual PRs. Honestly, it's not like they are asking much more than a "yes, we are interested" or "no, we aren't".

People here would probably be congratulating the company on its effort to be more open source oriented if it wasn't a Chinese one.
by amiga386 | 2025-05-16 11:52:39+00:00
You do have to draw a distinction between compounding, where joined words gain their own meaning (some English examples: breakfast, football, highlight), and agglutination, which is the habit of the language to join words together, not necessarily creating a novel word that has its own meaning and dictionary entry, which is what Mr Twain is grumbling about in the article.
by sublinear | 2025-05-16 11:53:32+00:00
> Focus on output, not hours. It’s virtually impossible to track how employees are actually using their time. Instead, managers should focus on the quality of their work.

This was the most important change to the workplace since 2020, and it should have always been this way in the first place.

Time spent on tasks was never as relevant as hitting deadlines without backtracking or building up technical debt. Managers and their employees alike only ever focused on hours because they hated their jobs. Many were laid off and the rest of the office is better for it.

The other massive improvement has been moving most conversations to text or recorded calls. It has been a chainsaw to the sociopaths who used to get in the way of real productivity.
by rowanG077 | 2025-05-16 11:53:56+00:00
Afaik the only guarantee there is, is that a bytecode instruction is atomic. Built in data structures are mostly safe I think on a per operation level. But combining them is not. I think by default every few millisecond the interpreter checks for other threads to run even if there is no IO or async actions. See `sys.getswitchinterval()`
by magicalhippo | 2025-05-16 11:54:06+00:00
Very low dielectric constant, so low capacitance for a given size[1].

It also seema these devices are more 2D than 3D so surface area matters more than volume[2].

[1]: https://blog.knowlescapacitors.com/blog/capacitor-fundamenta...

[2]: https://pubs.acs.org/doi/10.1021/acsomega.2c07549
by diggan | 2025-05-16 11:54:17+00:00
Taking your "to 10x you" as hyperbole and to actually mean "more productive", if you replace "Python" with "Programming" and "IDE" with Neovim, that's basically me. And I'm way more productive with LLMs than without them. Granted, I stay far away from "vibe coding", only use LLMs for some parts and don't use "agentic LLMs" or whatever, just my own programmed "Human creates issue on GitHub, receive N PRs back with implementations" bot.

Basically, use LLMs as a tool for specific things, don't let them do whatever and everything.
by 0xFEE1DEAD | 2025-05-16 11:54:24+00:00
Years ago, I tried lua and wasn't impressed. Then I started using Neovim, did the necessary configuration in lua, but continued writing my own scripts in vimscript. Later I started using wezterm and decided to give lua a second shot, and I began to really like it.

I realized my initial dislike for lua stemmed from my experience with javascript (back in the jwquery days), where maintaining large codebases felt like navigating a minefield. The lack of type system made it all too easy to introduce bugs.

But lua isn't like that. It's not weakly typed like javascript - it's more akin to pythons dynamic duck typing system. Its simplicity makes it remarkably easy to write clean maintainable code. Type checking with type is straightforward compared to python, mostly because there are only five basic types (technically seven but I've never used userdata or thread). And I even started to enjoy using metatables once I understood how and when to apply them.

That being said, lua's lack of popularity probably stems from its limited stdlib, which often feels incomplete, and the absence of a robust package manager. luarocks is a pain to work with.

All that being said, I don't really see the point of using this project.

While I do wish type annotations were a native feature, the ones provided by the lsp are good enough for me.
by jfim | 2025-05-16 11:54:35+00:00
One thing you can do is to define the classes and methods that you want to have, and have the LLM implement them. For tricky things, you can leave additional notes in the empty method body as to how things should be implemented.

This way you're doing the big picture thinking while having the LLM do what's it's good at, generating code within the limits of its context window and ability to reason about larger software design.

I mostly treat the LLM as an overly eager to please junior engineer that types very quickly, who can read the documentation really quickly, but also tends to write too much code and implement features that weren't asked for.

One of the good things is that the code that's generated is so low effort to generate that you can afford to throw away large chunks of it and regenerate it. With LLM assistance, I wrote some code to process a dataset, and when it was too screwy, I just deleted all of it and rewrote it a few times using different approaches until I got something that worked and was performant enough. If I had to type all of that I would've been disappointed at having to start over, and probably more hesitant to do so even if it's the right thing to do.
by palata | 2025-05-16 11:54:52+00:00
> it's not hard to distinguish between "this person can barely write coherent English" and "I don't know anything about this technology"

Sorry, I hadn't realised I could barely write coherent English.

> QuickDraw wasn't "injured" when it lost 2000 lines of code, either

Talking about writing coherent English, what the hell does this have to do with the current discussion?
by FirmwareBurner | 2025-05-16 11:55:36+00:00
This is why the EU is hitting apple and why the US needs to.

Too many devs have their livelihood at the mercy of Apple's(and Google's) Damocles's sword. At least with Google you can easily sideload.

If even megacorpos like Epic have issues with Apple imagine what being an indie dev or small company will be like.
by leejo | 2025-05-16 11:55:57+00:00
> Chargebacks are extra work for the consumer too you know.

It's not about work it's about the burden of cost due to fraud not being passed on to a consumer such that it could put them in financial difficulty. Chargebacks are there to protect the consumer and not the merchant - The 3d Secure "liability shift" (they literally call it this in the spec) flips that arrangement. Merchants are compelled to reduce their chargeback levels as they have to pay for each chargeback case, and should it become frequent their ability to process payments will be revoked.

Just turn on 3d Secure and your merchant chargeback costs reduce significantly. Nice? Not for the consumer. But I repeat myself.

> If we're philosophising, wouldn't it be better to have a honest system where the user authorizes all charges and the merchant doesn't get to auto renew subscriptions without user input just because they feel like it?

Merchants probably should notify their users with subscriptions, sure - I got one a couple of months ago from F1TV that my subscription will renew and maybe I don't want that subscription any more, or perhaps I want to change the level of my subscription. Other merchants won't be as nice, and dark patterns will creep in. Some companies have business models built on these recurring subscriptions.

I can't recall the rules around these, but I can recall that there are (were, we're going back 12 years here) systems in place to reduce issues for recurring payments. Even when a cardholder's details are updated, including replacement of a card and its PAN[1]. Any subscriptions would be retained to avoid interruption to the consumer's subscription, which might be critical for them (the consumer).

[1] https://en.wikipedia.org/wiki/Payment_card_number