Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> major organizations and industries won't use a programming platform that is entirely at the whims of a company they have no real control over

100% this, the biggest issue I see with dotnet and Swift is that they're spending too much time trying to be appealing to people who don't want to use them. Swift, as a language, really only makes sense to use if you're extensively targeting Apple systems and planning to skip Windows/Linux altogether. That's a pretty shit deal, from the perspective of developers who want to deliver software to the largest possible audience. Similarly, writing an entire program in dotnet used to be a death sentence until Mono finally got thrown together. Even still it's not a very attractive framework for most cases, which just goes to show how important open governance can be when developing such a complex system.



> Similarly, writing an entire program in dotnet used to be a death sentence until Mono

This is somewhat ironic, considering .NET is effectively "Java as rebuilt by Microsoft", and one of the original selling point of Java was... cross-platform support, "write once - run anywhere". BillG clearly made sure that particular aspect would not carry over to the MS version.


> BillG clearly made sure that particular aspect would not carry over to the MS version.

Heh, well .NET's cross-architecture support was/is still useful for allowing .NET to target Windows CE on SH-3, MIPS, ARM and more - also consider that at-the-time (1999-2001) even though Windows NT no-longer supported MIPS and Alpha, there was IA-64 (Itanium) looming on the horizon which was widely anticipated to replace x86 (hah), so even though it wasn't true cross-platform (i.e. cross-OS) it still made business-sense.

Another advantage of .NET's use of JIT bytecode was that Microsoft could sell it as a platform enabling "verifiable code": which is true: a "pure" CIL/MSIL assembly file literally cannot have any memory-related bugs to worry about and their consequential security vulnerabilities, which were a big deal at the time (this was related to Microsoft's "Trustworthy computing" initiative as well: you don't need to "trust" the programs you're running: the use of verifiable bytecode means you can verify its safety entirely by yourself).


Oh yeah, compared to what it was meant to replace (COM/DCOM, C++, VB6, ASP/vbscript), .NET was undoubtedly a massive step forward and a no-brainer to adopt, for anyone invested in the MS ecosystem.


The design and support for cross-platform use was there from the start, and most obviously manifested itself via Rotor. If I recall correctly it targeted FreeBSD rather than Linux though.


ROTOR was never production-quality though - I think it was there as a proof-of-concept and to try to convince some university professors to consider it as an alternative to JVM.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: