HNHacker News
TopNewBestAskShowJobs

cryptonector

11,727 karma · joined June 29, 2012

submissionscomments
cryptonector··on What Sun got wrong
I've written several times here about all the mistakes that Sun made during the 00s that doomed it. Among the many mistakes it made are:

- Cancelling -if briefly- Solaris on x86 in 2002. This killed Solaris in the minds of many who didn't want to be locked into Sun for SPARC.

- Failing to make a deal with Google in 2002. Apparently Sun insisted on knowing how many servers Google had, something that Google considered a high-value secret, so Sun failed to make a deal with Google, so Google ended up using Linux and contributing to Linux. This was a tremendous mind-share disaster -- it's hard to overestimate the damage done by this.

- Closing Sun PS (professional services). Bad bad move, possibly the worst of them.

- Not giving up on J2ME earlier -- it's not the sort of thing that could last forever, and Steve Jobs killed it with the iPhone. This was a case of vendor lock-in clouding Sun's decision making.

- Failure to recognize that Sun needed to become a systems company, not a CPU company.

- Failure to respond to Active Directory. This was yet another case of vendor lock-in clouding Sun's decision making: the Sun DS product team was milking their existing customers more than they wanted to go after more business with a sustainable strategy.

- UltraSPARC was more than a decade too late to make up for SPARC falling way behind x86_64. Sun needed to give up on SPARC, but again, vendor lock-in sounds sweet but turns out to be poison.

- Failure to make a deal with Apple for it to use ZFS in OS X.

- The MySQL purchase. WTF, this was horrible and stupid. The only interesting effect of this was to make Sun a target of acquisition for Oracle. But of course, it turns out that Oracle -a company built on building mind-share- had become too blinded by vendor lock-in just like Sun, so...

There were numerous other mistakes along the way. These are the most salient, for me anyway.

What's shocking is how long it took Sun to fail under those circumstances!

Also shocking is how much amazing stuff came out of Solaris engineering and the systems division!

cryptonector··on Deterministic Core, Non-Deterministic Shell
FCIS is basically that. You don't need an interpreter/VM, but that is an option.
cryptonector··on I am often wrong
I bet things fall by the wayside. The firehose volume is very high.
cryptonector··on Sherline Tools Is Going Out of Business
Then we can use the printers we have now to bootstrap more domestic printer manufacturing.
cryptonector··on Deterministic Core, Non-Deterministic Shell
Correct. FCIS is about testing. Testing pure code is a lot easier than testing impure code, but most of what you want to implement can be done with pure code, and you can isolate the impure code to a shell that can be tested apart from your pure business logic.
cryptonector··on Deterministic Core, Non-Deterministic Shell
If you want to avoid the word 'functional' then say pure: pure core, impure shell. Or maybe: pure core, I/O shell. Otherwise it's too long :)

Idk. I like Gary's formulation. No, I love it. One time when designing an STS with Claude I told it my FCIS design for an STS and Claude demonstrated real excitement -- it really loved the idea.

Briefly, my idea was to have the functional core isolated such that it receives a JSON description of the input request, any additional data [wait for it], and outputs either: an error, a request for more data, or a description of a token/credential to issue and with what issuer credentials. This would allow one to write all the core logic in Julia, JS, MicroJS, jq even, any language you like, and the imperative shell is what does all the rest (authentication, token validation, database lookups -- whatever you want). I swear Claude expressed real excitement over this. I've seen Claude be frustrated as well. It really does seem to have some sorts of emotions.

cryptonector··on Amiga Unix, Again
> Other than just than "we can" and historic interest, I can't imagine why anyone would choose to run System Vr4 over 4.4BSD

Nostalgia is my guess.

SVR4 on Amiga was the first SVR4 commercial release IIRC. Solaris 2.x came later, but not much later.

At Sun we had a saying for referring to garbage from the SVR4 that we had to fix, rewrite, or terminate with prejudice over time (think STREAMS, XTI, and all that, but also much of userland): 'it came from New Jersey'. So, yeah, I wouldn't want to run SVR4 for any reason other than nostalgia, and honestly not even nostalgia. For me nostalgia is for OpenSolaris and such.

cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
> But this optimization seems important

This is the only point I don't fully agree with. I'd want to know that this optimization is worthwhile. Is it?

cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
Repeal the compiler optimizer dev employment act.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
They are not useful enough for this, no.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
Is it a good answer though? How often does this opportunity come up? And if you have two trivial infinite loops one after the other, do you really need to insert `yield()` in order to be able to merge them?
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
That is not worth this nonsense.
cryptonector··on OpenJev
In Spanish there's a wonderful portemanteau of verbal and hemorrhage 'verboragia', that means something like 'they won't shut up'.
cryptonector··on The Farnese letter
> or the AI is improving.

I hope not.

cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
Compute the Ackermann function, write the result, terminate.. when the sun goes red giant and swallows the earth.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
Alternatively every flag that changes the semantics of the code is a workaround for either legacy code no one will fix or language committee decisions that have unintended side effects.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
Because one can bleeping see that that's what would happen. Locking up a thread isn't a good thing, but it's a lot better than UB. There was never a need to make this UB.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
"No." <-- the C++ committee.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
Yes, but now it has to. I guess that's better? than UB, maybe.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
There needs to be a way to stop this. A trivial infinite loop can be useful such as for getting you into a state where you can attach a debugger and examine state then have execution resume elsewhere.
cryptonector··on C++26: Trivial infinite loops are no longer undefined behaviour
That's not reason enough to have the compiler initialize.
cryptonector··on Why Does the Universe Expand?
Not so. You can have high enough mass-energy density and yet not a black hole because the momenta are all outward -- dynamics details matter.
cryptonector··on Why Does the Universe Expand?
Edward Arthur Milne's proposal was that the universe started out expanding. That is Milne cosmology, and oddly enough it's equivalent to Standard cosmology when you take out the gravitational effects of mass-energy. What's odd about that is that in Milne cosmology you have a big bang at one point with the edge moving at arbitrarily close to c and with uniform distribution of stuff and velocities, while in Standard cosmology we speak of the big bang happening everywhere all at once. This oddity is resolved when you realize that Milne is hyperbolic, so you if you "unfurl" a Milne universe it then looks the same as Standard excluding gravity.
cryptonector··on How much oil-market buffer is left?
Your dictionary is wrong.

For example, in the UK Parliament is sovereign, not the people. That's effectively how it is in representative democracies or republics where there is no fast representative recall mechanism.

The U.S. Constitution doesn't say that Congress is sovereign, but the effect is the same. For that matter, the U.S. President has a great deal of power.

cryptonector··on Most people prefer traditional architecture
But the people in the building go outside too you know. Few like the brutalist style.
cryptonector··on Most people prefer traditional architecture
> Architecture is optimizing for people inhabiting the building, not just staring at it in a photograph.

Entertainment is a non-productive activity. But people need entertainment.

People like to live comfortably. But people also like beauty.

It's that simple. People do care about the looks of buildings. Aesthetics matters.

cryptonector··on How much oil-market buffer is left?
'Sovereign' here means that the US govt is able to impose export restrictions, not that the People's will or special interests' desires are relevant. Of course 'can' != 'will'.
cryptonector··on How much oil-market buffer is left?
"demand destruction" == demand falling [here because of the war]

E.g., recessions, etc. Morbid would be if demand destruction came from deaths of many humans, but GP clearly did not mean that.

cryptonector··on How much oil-market buffer is left?
GP means source as in for transportation.
cryptonector··on How to write an effective software design document
Often people mean "architecture" when they say "design", yeah.
← PreviousPage 3 of 34Next →