News for hackers. Stuff that matters.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by Iv on Tuesday November 12, 2019 @03:18AM (#21512449)
I oscillate between that feeling and the realization that in software, you usually stay on a layer without never really minding the numerous layers under yours, that work flawlessly despite huge complexity.

Transistors don't misfire, CPUs don't miss an operation, firmware invisibly and reliably handle all the internal packets of the motherboard, the screen refreshes millions of pixels every 16 ms. All of this relies on the work of thousands if not millions of people who have never meet each other but whose piece of work communicate flawlessly with each other.

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by jmts on Tuesday November 12, 2019 @05:20AM (#21512997)
As an embedded software engineer, my only response to this is that sometimes I'm surprised anything works at all. Bugs in silicon do exist. Often there's nothing a supplier can do about it. Either you find a different part or find a workaround at a higher level.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by vvanders on Tuesday November 12, 2019 @11:12AM (#21515195)
Oh yeah, or metastability[1] when crossing different clock domains. The fact that it works by raw statistics(just add more flops until the chance is under some threshold) was definitely one of those surprising moments.

[1] https://en.wikipedia.org/wiki/Metastability_(electronics)

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by avip on Tuesday November 12, 2019 @06:14AM (#21513236)
In the grand scheme of things, things that work (s.a life) are an unexplainable outlier.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by candiodari on Tuesday November 12, 2019 @07:24AM (#21513490)
Even for life one wonders. If you look at life's history. Life gets created, gets to the point where we pretty much have modern bacteria, single celled organisms. That took somewhere between 100 and 300 million years. They conquered the planet and ...

And then nothing. There was variation in the cells, sure, but not really all that much (also we can't really tell). As far as we can tell no multicellular life, no great advances, nothing, other than continued existence. No spreading further. No evolution towards more complexity. Muddling along at best. Total pause at worst.

900 million years of it. Maybe more.

Why ?

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by phkahler on Tuesday November 12, 2019 @08:07AM (#21513739)
The next major step in evolution was sexual reproduction. That allows different advantageous mutations to be combined into a single organism. In other words, it allows features to evolve in parallel rather than relying on a single lineage to get everything right.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by avip on Tuesday November 12, 2019 @08:04AM (#21513714)
Agreed. For a ~2.5 billion years project, the deliverable is not that impressive.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by HeWhoLurksLate on Tuesday November 12, 2019 @09:37AM (#21514406)
But the fact that you're here, conversing on something worldwide is insane.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by phreenet on Tuesday November 12, 2019 @11:08AM (#21515168)
> Bugs in silicon do exist. Often there's nothing a supplier can do about it.

I learned this the hard way with my 1U Intel Atom C2000 series server. Completely bricked due to a bug in the CPU.

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by duskwuff on Tuesday November 12, 2019 @03:41PM (#21517940)
Oof. That was an interesting one, too -- as best as I can tell, something was wrong with the pin driver for the LPC bus clock, and it would degrade over time as it was used.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by pjc50 on Tuesday November 12, 2019 @06:45AM (#21513352)
As others have mentioned, there's a big gulf between "works well enough that you don't notice the problems very often" and "never fails". Screens work OK in the happy normal path, but as soon as you look into things like DisplayPort chaining and HDMI-CEC you find all sorts of incompatibilities.

> Transistors don't misfire, CPUs don't miss an operation

This relies on a lot of testing. We throw the misfiring ones away at the factory. This may be over half the chips: https://www.pcgamesn.com/amd/zen-2-ryzen-3000-cpu-yield-70-p... (AMD are doing well at 70% pass rate but Intel are throwing away more than half their dies!)

In aerospace or high-alpha-radiation environments, people can use "lockstep" processors (e.g. TI Hercules) that can cope with misfires.

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by e_proxus on Tuesday November 12, 2019 @07:17AM (#21513470)
I'm pretty sure that e.g. on such a big ship we saw in the video above there are plenty of "misfirings" on a lower level of abstraction: pipes need to be replaced, computers or electronics not working correctly, out of date life saving equipment that needs to be replaced etc.

In the end, I feel it's quite comparable to software running on layers of layers of abstraction being maintained by the respective experts in their fields (testing, CPU designers, driver implementers, OS maintainers, etc.).

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by Iv on Tuesday November 12, 2019 @08:30AM (#21513880)
I never said the work on every layer is easy! Quite the contrary! I know how painful it is to write realtime software so I am in awe that firmware can be written well enough so that you can rely on them as much as we do!
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by noonespecial on Tuesday November 12, 2019 @10:02AM (#21514596)
>Transistors don't misfire, CPUs don't miss an operation, firmware invisibly and reliably handle all the internal packets of the motherboard

Copy and manipulate any large data set on standard desktop and then on a server with ECC ram and compare the results. All that stuff happens and we go through a lot on the high end to mitigate it.

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by bzbarsky on Tuesday November 12, 2019 @11:11AM (#21515191)
> CPUs don't miss an operation

Unfortunately, once you deploy your software at scale you discover that some CPUs do in fact miss operations. See https://bugs.chromium.org/p/chromium/issues/detail?id=968683 for example, which has also been observed in Firefox crash telemetry (e.g. see https://bugzilla.mozilla.org/show_bug.cgi?id=1593228 and https://bugzilla.mozilla.org/show_bug.cgi?id=1553380#c2 and so forth).

Now CPUs do mostly work; we're talking about single-digit numbers of crashes per day across the thousands of people who run Firefox nightlies. But I wouldn't want to trust a plane's avionics to this particular CPU model, for sure.

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by sjwright on Tuesday November 12, 2019 @04:33AM (#21512790)
> Transistors don't misfire, CPUs don't miss an operation

(And if they do, that's usually solved by procurement, warranty or is otherwise someone else's problem.)

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by SmellyGeekBoy on Tuesday November 12, 2019 @05:04AM (#21512937)
> Transistors don't misfire, CPUs don't miss an operation, firmware invisibly and reliably handle all the internal packets of the motherboard, the screen refreshes millions of pixels every 16 ms. All of this relies on the work of thousands if not millions of people who have never meet each other but whose piece of work communicate flawlessly with each other.

I don't get it. Is this supposed to be sarcasm?

Re:Heavy-lift ship lifts entire cruise liner out of the wate... by rpmisms on Tuesday November 12, 2019 @09:40AM (#21514433)
I think it's just a slightly optimistic view of reality.
Re:Heavy-lift ship lifts entire cruise liner out of the wate... by cm2187 on Tuesday November 12, 2019 @04:59AM (#21512911)
And all this wonder of technology ruined because a “developper” built a SQL injection vulnerability in the script that runs at the very top!