The best things to open source in this scenario are the things that you would buy from a third party, if you trusted the supplier enough. For proprietary software, a second source is almost always impossible. For hardware, it's often quite difficult, depending on the component. Switching from Intel to AMD is quite easy in a lot of cases, switching from a Qualcomm SoC to a Samsung one is more effort. Switching other components can be very hard. Service companies are a lot easier (switching from one law or accounting firm to another is much easier than retooling a production line).
Apple's involvement with LLVM is quite a good example here. Their ecosystem absolutely depends on high-quality compilers existing for OS X and iOS. With Classic MacOS and early versions of OS X, they outsourced this to Metrowerks, who produced quite a competent IDE and set of tools. Then Metrowerks, their sole supplier, was bought by Freescale and development on the Mac versions basically disappeared. They had some involvement in GCC development inherited from NeXT, but GCC was problematic for IDE integration (the parser is designed in such a way that it's impossible to use for syntax highlighting, for example - it does constant folding very early so you can't differentiate 4 and 2+2 in the source). They decided that they needed to bring compiler development in-house, but it was a lot cheaper to do so as part of an open source ecosystem. Apple now contributes something like 40% of the code to LLVM and that vast majority of what other people do directly benefits them, so they're effectively halving their costs. And, of course, giving away the IDE and compiler tools for free (rather than charging, as Metrowerks did) makes people more likely to start developing for Apple platforms.
Windows threading and synchronisation primitives
What windows synchronisation primitive allows:
- Timed wakeup (i.e. try to lock, time out if you fail).
- Adaptive mutex behaviour (spin in userspace for a bit before calling the kernel).
- Can atomically be released when you sleep on a condition variable and reacquired when you wake.
Give up? So did the developers of the Microsoft C++ stack, which is why their std::mutex uses something custom, whereas implementations for POSIX systems just use pthread_mutex.
Frank Herbert's son later teamed up with a sci-fi author and published some books which wrap up the story and also explain some of the events that happened before the Dune books take place. Supposedly from his father's notes. Not everyone considers these books canon. The catastrophe, however, is revealed but at this point it mostly seemed the first book had some parallells with the Middle East.
The reason that many don't consider it canon is that it directly contradicts not just small events in the originals but the entire premise. In Dune, the Butlerian Jihad was an ideological struggle against people who were willing to delegate their thinking to machines without considering the long-term social consequences (hmm, still seems pretty relevant) and ended up being controlled by oligarchs who controlled the machines. The outcome was an overreaction against machines, banning even simple calculating engines. In the cash-in novels, it was recharacterised as a war against a two-dimensional and completely unbelievable machine intelligence.
The final revelation in the sequels was then that this machine intelligence had survived and had been building an empire in secret all of the time that humanity had been building their own and eventually decided that it wanted to destroy all of the humans (why? Because that's what evil robot overlords do! Obviously). These books could have been written by the Bene Gesserit sister that Leto just managed to restrain himself from killing in God Emperor, for her stupidity. He explained that humanity had moved past the point where machines could be a threat (remember: they were never a physical threat, the threat was always stagnation and decay as humans delegated more and more to machines until there was no point in continuing to live).
The point of the scattering in Leto's Golden Path was that humanity would spread out so that nothing could be an existential threat (the old Empire had more or less stopped expanding and didn't have exponential growth to protect it). Part of the point of Chapterhouse was that the conflict that was going on, in spite of engulfing more worlds than the Empire in the time of Dune, was a tiny sideshow - nothing that happened would affect humanity and the descendants of humanity as a whole. The big hint about the changes that were happening out of the empire was the extent to which the Honoured Matres and Futars had diverged from what was considered human. The implication was that they were the ones that had diverged the least and were no longer able to compete with far more predatory creatures that had evolved from humans.
A much milder Christian version was some Puritans who banned Christmas
Minor clarification, but Puritans didn't ban Christmas, they banned the non-religious parties and traditions rooted in Saturnalia that had become associated with Christmas. Puritan Christmas involved spending most of the day in Church. They certainly tried to ban fun at Christmas (and at most other times), but not the Christian festival.