HNHacker News
TopNewBestAskShowJobs

bloaf

2,849 karma · joined May 25, 2012

submissionscomments
bloaf··on I can't believe PowerShell is good
I use Powershell a fair bit, Powershell is not good. I can see why people delude themselves into thinking its good: it does in fact let you administer systems, and it lets you avoid the pitfalls of stringly-typed scripting like bash or batch files.

But being technically capable of something and being good at something are different.

Powershell tried so hard to be user friendly that it wrapped around and ended up being user hostile. There are far too many footguns and "magic" features that do nothing but sit around and wait for you to forget about them so they can break everything.

Just look at the comparison -eq as an example. First off, this is the same syntax powershell uses for named function arguments. Why on earth would you do this? Because operators like this exist, I now need to ask myself "is this a named function argument, or was the script author trying to use an operator here?" for EVERY NAMED ARGUMENT. But wait! That's not actually true! After all, powershell has two ways to call functions. Because powershell is like the red-headed stepchild of the other dotnet languages, when you want to call functions on assemblies, you can use a more conventional

[complex.syntax]::F(x, y)

So there you can use normal named arguments without having to second guess what they are right? Haha no jk powershell doesn't have a syntax for calling a C# function with named arguments, you just have to work out the positions and pass null (sorry, I mean [type]::Missing) in for any optional named parameters you didn't mean to supply a value for.

ANYWAY, back to the -eq operator. You might THINK that an equality comparison operator would return a boolean, but that is because you are not as smart as the PowerShell devs. The powershell devs know that an -eq operator should actually act like a filter if the left hand side is a list, returning the elements of the list that match the right hand side. Now in my head, this is the most astonishing behavior (least astonishing is just returning false if the types don't match, next up is a list of {true, false, ...} that comes from from mapping the comparison across the list), but that is because I am not as smart as Bill Gates.

Now you could maybe defend this behavior if it were easy to keep track of your types in powershell. But powershell actively makes this more difficult by doing things like automatically converting [int] into plain int when the array only has one item in it! So because powershell tries to be helpful and give -eq more power, then also tries to be helpful by unwrapping your one-item-lists because surely that's what you want, you can very quickly find yourself in a situation where you the scriptor are finding bizarre errors caused by having -eq insert lists of things where you expected booleans to be.

This kind of combinatorial-inconvenience is pervasive in powershell.

I'm all for "lets make an object-oriented scripting language", but there are so many unforced errors in the powershell language design that its hard to recommend.

bloaf··on Tesla Roadster
I could maybe see a major movie studio buying one or two, but I think the major problem with the stunt functionality is not so much making the vehicle, its finding a building/structure where it is safe to hang a multi-ton vehicle off the wall or the ceiling.
bloaf··on Improper redaction reveals Google Data Center water and electricity usage
Its about the same consumption as a large chemical plant.
bloaf··on Improper redaction reveals Google Data Center water and electricity usage
There's also a lot of folks out there with no sense of scale getting "dihydrogen-monoxieded" by scaremongering tactics like measuring power consumption in number of atomic bombs.
bloaf··on Tcl/Tk 9.1
So I also love Tcl, but I think it would have not been great as a web language. I think the small amount of type information we can pass via json is just about right, and tcl would have made it impossible.

You cannot encode arbitrary tcl data to a typed object "correctly" because every tcl dictionary is a valid list, and every list is a valid string (numbers are also strings, and so is code). So in a world of "tcl code on the web", both the sending and parsing ends of a 'tcl data stream' would need to know which type they're "supposed" to treat the data as.

bloaf··on Qwen Image 2.1
I love the non-commercial clauses because of how many people are using these for deceptive ads and “virtual staging” and fake social media accounts. Anything that makes those guys lives harder while still letting me make silly pictures for my kids and tapestries for my D&D campaign feel fine by me.
bloaf··on Pion, an agent designed to run any company autonomously
Pion is going to get scammed, and it will be funny to watch.
bloaf··on The contagion of fear
Spoken like someone with a somewhat limited understanding of what it actually takes to calculate the fitness function of arbitrary organisms in an arbitrary environments.
bloaf··on The contagion of fear
I think the central premise looks more like this:

Biology has been trying to grey-goo the world for billions of years, but it turns out the world is not something so trivial.

He is pushing back against the folks with pure CS backgrounds who think that computers are all there is. Its a form of magical thinking unique to programmers who live in a world where speaking the right words to a machine is enough to impart your will on the world. Believe that strongly enough, and you fall into the trap of thinking that a sufficiently smart entity could speak the words "let there be light" and it would be so.

The author is pointing out that speaking the words is insufficient. To end humanity there must be an execution phase. The author is correct to point out that acquiring superhuman intelligence is not some guarantee that you will have or obtain the resources necessary to make that happen, in the same way that genius generals still lose to ordinary ones, and the best-laid plans are oft to go awry.

There certainly are risks, but 10% risk of extinction in 10 years is not one of them.

bloaf··on I made a build visualizer to understand Bun's compile times
The next questions in my head are:

A) Is there any performance penalty on the compiled result due to being optimized in separate pieces

B) If not, why isn't the optimizer smart enough to split them up internally and optimize in parallel?

bloaf··on John Margolies' photographs of roadside America
To anyone who loves these, add this to your playlist:

Otis Gibbs - Great American Roadside

bloaf··on How I feel about AI
The most obvious one is the "god of the gaps" problem now applied to intelligence. If you look at things like Aquinas' Summa Theologiae [1] you'll see that there are explicit assertions that things like rationality transcend corporeal nature. As such the more examples we have of AI behaving in rational ways, we will be forced to conclude that either rationality does not transcend nature (removing the last remaining gap where we can invoke a supernatural explanation) OR that we have created artificial souls.

[1] https://www.newadvent.org/summa/1078.htm

I think theologians will hang on for a while saying "what AI is doing isn't really rationality". But eventually the theologians are going to face a reckoning: what AI is doing will look so much like rationality that they will be required to answer the question "what specifically differentiates the two?" and then they will be stuck. Neuroscience does not understand how our brains produce rationality nor do our AI scientists understand what algorithms their neural nets are implementing post-training. Therefore, any specific claim the theologians make runs the risk of immediately getting invalidated by some scientific discovery on either side (theologians these days are generally smart enough to avoid putting themselves in that position.)

bloaf··on Recreating Minecraft Is Not a Benchmark
The benchmark I want to see people adopt is:

Build a flowsheet based steady state chemical process simulator, then use it to simulate and optimize a full scale oil refinery.

1) Building a solver engine that works at this scale is not a trivial problem, and the successful ones rely more on heuristics than some categorically different solution approach.

2) Defining the engineering equations relevant to this task is relies on understanding what level of fidelity is required to answer the questions people ask of steady state process models.

3) Knowing the thermophysical properties of chemicals and crude oils is possible from the open literature, but the information is diffuse and different correlations are applicable in different situations.

4) Creating a GUI which converts a flowsheet into matrix math is non-trivial, although a sequential modular approach is a bit easier.

5) Defining large scale models in such a way that they solve robustly is as much art as science. For example, completely closed recycle loops like refrigeration systems are a nightmare for solvers, so it is often better to define them in an open-loop way.

6) Optimization involves knowing the relevant commodity prices, but more importantly how to define the constraints on the model so it doesn't just say to produce infinite gasoline.

7) Troubleshooting the inevitable convergence failures is also as much art as science. There are a large number of diagnostic techniques, but fundamentally you need to be able to relate what is happening during the solver iterations with the intent of your model because more often than not the problem is that you've asserted something impossible, redundant, or irrelevant.

bloaf··on How I feel about AI
As someone with a hobby interest in theology:

Arguments about super-intelligent AI have all the hallmarks of the philosophical "proofs of god's existence": they start from seemingly innocuous premises, and conclude in an apparently airtight way that a god exists.

There is a tendency among rational minded folks to look at such proofs of god and exclaim "you can't DO that" then turn right around and do the same thing about superintelligent AI.

The key message I want to deliver to people is:

A) Philosophy is not such a trivial thing that you can just wander in, "be a smart guy" and find flaws in established philosophical arguments.

B) AI has real theological implications, and everyone is tiptoeing around it. More than one public intellectuals are trying to smuggle their own metaphysical positions into the public consciousness via discussion of AI.

bloaf··on The moral panic over data centres is foolish
Golf courses do pollute:

https://jamanetwork.com/journals/jamanetworkopen/fullarticle...

Also, the "pollution" from data centers is just "major construction project temporarily disrupts water table" not "facility is pumping random chemicals into the water".

That is to say, nothing about next door neighbors to a major construction project getting mud out of their well for a little while is unique to datacenters.

bloaf··on The moral panic over data centres is foolish
Look, you're talking out of both sides of your mouth. Either water consumption is a problem today, or it is not. If it is a problem, then golf courses are today a better target for people who want to solve the water problem than data centers. If water consumption is not a problem, then the data center's water consumption is not a problem.
bloaf··on The moral panic over data centres is foolish
I've not seen a single politician calling for statewide bans on golf courses.

Its pretty obvious here that people decided datacenters were bad first, then went looking for justifications second.

bloaf··on The moral panic over data centres is foolish
If people really cared about water usage, they'd be trying to shut down golf courses instead of data centers.
bloaf··on The moral panic over data centres is foolish
A lot of the anti-data-center rhetoric is "windmills kill birds" or "dihydrogen monoxide" style fearmongering, not an actual debate.
bloaf··on Pentagon rescinds new testosterone screening policy without explanation
My money is on "someone higher up the chain of command got pinged for low T, and decided that the tests were bullshit".
bloaf··on 'Mad honey' that can stop your heart is being sold online
But the article explicitly says that people did know what they were consuming. They bought poison honey, they got poison honey, they ate poison honey, and they got poisoned.

Now you can certainly argue we should make that impossible, but I am explicitly arguing that doing so makes society worse. I have made no claims one way or the other about what they deserve, because that is a religious claim, not an objective one.

bloaf··on 'Mad honey' that can stop your heart is being sold online
I think to unabashedly declare that you know what someone does or does not deserve requires just as much if not more faith.
bloaf··on 'Mad honey' that can stop your heart is being sold online
> Many to many are born. For the superfluous ones the state was devised... The state, I call it, where all are poison-drinkers, the good and the bad: the state, where all lose themselves, the good and the bad: the state, where the slow suicide of all—is called “life.”

But why would we poison our society by trying to protect these superfluous ones? They may not deserve death, but the more we eliminate the consequences of irresponsible actions, the more irresponsibly people can be and survive, thrive, and even rise to the throne.

bloaf··on Going Dark, and the era of law enforcement hacking
I would like to point out that the last year when not a single law enforcement agency anywhere in the world could have possibly tapped anyone's phone was 1876.

150 years ago was the invention of the telephone, and I think that articles like this seem to assume that prior to this, police just never caught any criminals.

bloaf··on Retire the Abstractions
I feel like this is the exact opposite of the conclusion I've been coming to. In an age where anyone can vibe code stuff at the drop of a hat, I want the ability to assert guarantees/contracts at a high level, and then let AI work out the details. I want to force AI to work within the confines of an abstraction, not independently of it.
bloaf··on As AI eats the web, the internet’s collective memory is disappearing
I think they make things worse, because they very very often present straight inaccurate information.

Just the other day I was trying to find out "What american tree species have the deepest roots". And all the AI responses were giving me back generic lists of big trees and claiming that roots going 20ft deep were the deepest. I know for a fact the mesquite trees behind my house can easily grow roots > 100 ft deep.

If I had clicked on the articles with generic lists of big trees, I would have realized they were all low quality clickbait sources and moved on. But the AI presentation makes you think that the information comes well-researched.

bloaf··on As AI eats the web, the internet’s collective memory is disappearing
Yandex is the only search engine left which still feels like the "old" web. It feels like you're actually getting a best effort search, and not just the results that someone paid to put in front of you.
bloaf··on As AI eats the web, the internet’s collective memory is disappearing
As someone who regularly reads things online, then wants to read them again like 3 years later, Google has been monotonically declining in quality.

Also I realized the other day how hard it is to find song lyrics for anything other than quite mainstream songs.

bloaf··on 2x, not 10x: coding with LLMs in 2026
I don't think this is the right framing, because I think it confuses the means and the ends.

Its like making a jig in woodworking. The measure of the jig's success is not whether it gets re-used or widespread adoption, its whether it made it easier to achieve some actual objective. Because the jig is a means to some other end.

Lots of these "we wouldn't have done it otherwise" applications are means, not ends.

bloaf··on 2x, not 10x: coding with LLMs in 2026
We have entered the era of small software, and no one knows what it will grow to.

Here's an example: my office has a few cars for employees to use as rentals. The number is small enough that it would never be worth any serious software dev to build a tool to manage, but large enough that its a moderate amount of work for someone to manage the requests/getting supervisor approvals/schedule changes due to breakdowns.

AI one-shot that guy a tool. Its now dead simple, he's got a calendar, automatic emails going to people's supervisors with click-here-to-approve links, rescheduling options, fleet management. It doesn't even look bad.

Who cares if its using some un-backed-up sqlite database in the backend, has some placeholder tab for a feature he changed his mind about, or violates the DRY principles a bunch or uses some inferior authentication mechanism. Its an in house tool, isn't mission critical, and it makes his life significantly easier.

Basically everyone is now a few prompts away from their own bespoke tools, and only they will be able to judge the benefit thereof.

Edit: to tie this more directly to the article, I would argue that this is an example of "infinity-x" coding, because the user was in fact not capable of coding a solution on their own without AI.

Page 1 of 31Next →