Recent submissions

Comment · 11 days ago
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.

Comment · 16 days ago
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.
Comment · 28 days ago
Its about the same consumption as a large chemical plant.
Comment · 28 days ago
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.
Comment · 1 month ago
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.

Comment · 1 month ago
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.
Comment · 1 month ago
Pion is going to get scammed, and it will be funny to watch.
Comment · 1 month ago
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.
Comment · 1 month ago
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.

Comment · 1 month ago
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?

Comment · 1 month ago
To anyone who loves these, add this to your playlist:

Otis Gibbs - Great American Roadside

Comment · 1 month ago
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.)

Comment · 1 month ago
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.

Comment · 1 month ago
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.

Comment · 1 month ago
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.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton