Sadly microsoft had put so much of their code in it, that they didn't allow the release (according to my dad who worked for IBM and was even called "Mr. OS/2" because he had sold it so good to companies)
https://hackaday.com/2023/02/16/arcaos-os-2-updated-for-the-...
I'm thinking mostly of anti competitive practices from Windows.
At any time, one of them could say no and the process stops. So you’re basically paying for everyone’s time and possibly to relicense some parts. And im sure I’m missing other parts.
It's not that unusual for it to not even be wholly owned by a single entity due to licensing requirements.
You would more likely be amazed by all the dumb hacks in the system for backward compatibility, mostly for other companies' software.
https://devblogs.microsoft.com/oldnewthing/20050824-11/?p=34...
Also, Linux has a similar philosophy as Linus has eloquently described in the past. [1]
This is a myth which is mostly not true from some time.
I know nothing about law, but I guess software companies would protect themselves in advance by mandating that all their developers use only software and sources that belongs to them anyway. That would be useful in case of a lawsuit where a court could force them to show the sources to prove they don't come say from the claimant's reverse engineered software, or some other FOSS project. Things might be different with 3rd party modules and libraries, where an obscure module was licensed from a company that went out of business ages ago, but all their assets were acquired by another party who finds the module in the wild and decides to sue. Just speculating, but although I'm 100% in favor of FOSS, if the above were real possibilities, I couldn't but understand why some companies are so reluctant to release even old code they couldn't profit from anymore.
When developing software, a company might aquire a license to add some library or code to their product.
This happens all the time with OS's like Windows (licensing the ability to play media formats, etc.) or games (licensing certain engines or algorithms).
That doesn't mean the company squired a license to release the libraries or code as open source 20 years later.
So you'd have to go through the codebase with a fine-toothed comb, line-by-line, because the original developers don't work for you anymore, and the license agreements are long lost.
Releasing large software projects are a massive cost to any company that wants to be protected from potential lawsuits.
Not really dead because it’s still shipped with enterprise Edge for sites that enable IE mode: https://learn.microsoft.com/en-us/deployedge/edge-ie-mode
I’d be really surprised if Apple still had the source code and custom tools necessary to actually build the thing.
building it may be horrible, but the code would still be very interesting to hobbyists
I can think of lots of reasons. From a competitive point of view, you might risk having a big enough resurgence that it eats into the business of your replacement. From a technical point of view, it may reveal parts of the sausage making, or expose technology and libraries that you still use and rely on. From a legal point of view, it could open up multiple kinds of liability. From a support and staffing perspective, it typically takes at least a little time to open source something, if you want to do it well, there’s usually vetting & review by engineers and lawyers, and usually the need for more/better documentation than the internal docs.
Think about this from a business perspective- if they predict there’s going to be no financial upside, even indirectly, and there are costs and risks associated with it, then why would they? When companies open-source something, it’s not usually because the code is dead, it’s usually because the people in it are committed to open source and the org agrees to support that cause, or because the company stands to gain valuable attention from the community, and eventually or indirectly, profits.
We do have to support and celebrate when companies decide to release code, but we can’t really expect it or complain when they don’t, it just doesn’t make sense to them and they’re not obligated.
Not only that but for any large company to release code somebody in engineering needs to look at it to at least know what all is there, the legal department needs to assess the risk of potential liability, then which license to release it under needs to be decided. Finally, somebody in a senior business role needs to sign off on doing it.
I think it's great when old code gets released but the reason it's rare is it gets complex and it's nobody's job to do it. That's why many such release are thanks to an employee deciding to care about doing it and having the internal cred and sway to push it through. Or, as it appears in this case, someone who had access to the code and is awesome enough to choose to release it anonymously years later when the business is defunct or will no longer care.
For the former, if it's really that big they'll just release it and keep a standard budget aside for if/when the unlocated people come out. The latter is what really blocks movies because it actively costs them money, so they need to be able to earn more than what it is costing them to release. This makes music-heavy/niche music films much more expensive for potential broadcasters/streamers.
It all disproportionately benefits big names and corporations while small time creators and performers get screwed.
The moment recordings came into play it all got screwed up.
Before recordings every musician made their living exclusively from performances and every musician copied each other constantly.
We lost so much with the advent of recording and the associated development of copyrights etc.
The proof is in the numbers: management and corps take the lion's share of revenues within the industry, with the actual musicians and creatives getting a paltry pittance.
The only problem might be the software patents that their code leverages.
Unless you mean that someone could see that you implemented their patent and retroactively go to sue them?
A patent is a method, not an implementation.
> The only problem might be the software patents that their code leverages.
We are talking about patents because Wengo brought it up and I was asking how they are applicable here.
https://devblogs.microsoft.com/oldnewthing/20180515-00/?p=98...
Would add SGI's IRIX too!
They are working on a new one that I am somewhat suspicious of, but Winamp 5.9 has been a pleasant surprise.
Many reasons are there , it takes a lot of effort for a company to open source anything, to name a few
- Not get sued for IP infringement if your developer from 20 years back copied something or used GPL code etc
- Potentially expose active trade secrets , the program might not be sold , parts the code /algorithms whole modules might still be used in newer applications.
- Presence of PII or other sensitive/inflammatory content in comments and code, could be anything from funny(but inappropriate )method names to comments and documentation .
- poor boundaries, you could have dependencies which are used by the app which are not possible to also be open sourced.
- poor documentation, you simply no longer have all the code or is it time consuming to piece it all together
- expose vulnerabilities in your current offerings , code sometimes has way of being reused , you would be surprised how much “dead” code has a way of living on for decades later .
- third party agreements, not all your code is “your” code, you may have only licensed it from another vendor.
That's not the heuristic companies use to determine whether or not to release source code.
> Windows 9x and classic Mac OS. No one has sold these OSes for 20+ years and they turned out to be evolutionary dead ends. It would make sense to release their sources so people could learn from them and run them on new hardware more easily.
The companies would not do that, for the very simply reason being that it would cannibalise their existing offerings if "people could [...] and run them on new hardware more easily."
The biggest competitor to Windows 10 was not Linux or Mac, it was Windows 7. The biggest competitor to Windows 12 will be Windows 11.
I have to wonder how relevant Microsoft will remain in the long run. There are several projects maturing that allow people to run Windows apps — the one reason people use Windows in the first place — without any Microsoft involvement whatsoever. The fact that Win32 API has barely changed over the last 15 years also helps.
Wine compatibility is getting ever better. ReactOS is aiming to reach beta quality "soon".
the one reason people use Windows in the first place
The other reason is UX and people's familiarity with it. I tried switching to ubuntu a few times but small inconveniences adds up eventually and at some point I don't see a reason to switch. Windows works just fine and I like its UX (however we will see if that will change with 11), Linux needs to provide a bit more for people like me to switch for their personal computersAnecdotally, I once installed Ubuntu + Wine for someone non-technical who broke several Windows installations by infecting them with ransomware. He used it for like half a year calling it "this strange Windows" because some people don't know what an operating system is. He eventually irreparably broke its file system because apparently he was shutting down his machine by pulling the plug while it was running.
shutting down his machine by pulling the plug while it was running
Well, if windows was more reliable when it comes to unexpected shutdowns then it is also partially linux's fault.I have a similar experience as well. I have a pi server and I was trying to use an ntfs external hdd. For some reason it breaks the file system if I remove hdd or shutdown pi unexpectedly. I am not expecting there to be no data loss if i am not writing or editing a file, just doing nothing, then why FS breaks?
When that happens, I connect hdd to Windows and it is able to repair it but there is no such option in ubuntu
For a few reasons, but the most common is that when you write a file, you 'fwrite' operation doesn't typically immediately write blocks to the disk, instead it gets written to caches that will be written to disk in due course. Changes to the disk, tables with crucial data, etc again are just updated in memory, and written to the disk at a 'sensible' time. It's possible that you aren't actively performing operations to modify the disk, but various previous changes are sitting in memory waiting to be synced. If you kill the power then these changes aren't flushed so you can end up with corruption/filesystem problems. The main reason things work this way is for performance.
> source access would create serious security issues due to how MS handles legacy components, right?
Security through obscurity is not real security. It's just delaying the inevitable.
Additionally you've failed to recognize that where legacy code is maintained Exactly As Is (bugs included) because users (corps and gov mostly) explicitly depend on behaviors remaining exactly as they have been for 20 years, there is effectively zero means/will to fix dangerous problems which are not being actively exploited.
And the mantra around obscurity is too often misused and misunderstood:
It's not that obscurity is not a form of security it's that its not a meaningful form of security On Its Own.
Obscurity is in fact the first line of security.
Just like with physical security, the first step is in preventing attackers from knowing it exists at all and Then having security measures to prevent access/theft/etc if they do happen to find what is being protected.
Y'know, like safes behind paintings, which are a very real thing....
Windows 9x and classic Mac OS. No one has sold these OSes for 20+ years and they turned out to be evolutionary dead ends. It would make sense to release their sources so people could learn from them and run them on new hardware more easily.
Flash Player. Adobe has stated in no uncertain terms that Flash is dead. Is there any good reason why the sources need to stay closed if they aren't going to make any further gains, financial or otherwise, from this product and its ecosystem? I mean the Flash Player plugin and standalone app specifically, not the Flash authoring software — that's still alive under a new name, Adobe Animate.
Trident, the Internet Explorer engine. Again, it's dead for good as far as Microsoft is concerned, so why not release its sources for people to learn and hack on?
Presto, the Opera engine. This was leaked and of course I hoarded it, but it would be nice to see an official release.
Winamp. The company behind it pivoted to some kind of streaming social donation thing. It does not seem interested in maintaining the old Winamp app.
Path, the social media thing for "close friends", their mobile apps. The apps were insanely cool, especially at the time of Path's peak around 2013, but the service was shut down a few years ago. Unless they're going to somehow resurrect the service, there's no good reason for the sources for the apps to remain closed. I'd love to take a look at their implementation of real-time photo filters.
Thinking of it, it makes more sense for non-game apps than for games to release sources. Old games do sometimes come out as "remasters" for modern platforms. These usually reuse the engine and sometimes some of the assets. Non-game software, on the other hand, when it's dead, it's usually dead for good.