6 ms·
I hadn't, but the primary problem is the inverse case. Java programmers have no problem switching to C# and vice versa. The languages are really similar. The pr
by forgotpassagan 9y ago
I hadn't, but the primary problem is the inverse case. Java programmers have no problem switching to C# and vice versa. The languages are really similar. The problem is that many millions of lines of open source software have already been written in Java and developers are not going to spend thousands of man-years converting them. Especially because they know the languages are so similar.
Developers are well aware that it would take minimal effort to make the languages compatible so they make little effort to port from one to the other. And Microsoft's problem is that the vast majority of these projects already target Java. If the languages were vastly different ports would be more interesting and fun to do, but since they're not porting is basically a boring and vastly annoying syntax conversion. Something annoying that nobody wants to do for free.
If Microsoft officially supported interop with native Java libraries I believe C# would take off like a rocket. Unfortunately, so far, Microsoft hasn't really sent out an olive branch to the massive open source Java community
- pjmlp 9y agoThere is IKVM for those that care about using Java libraries in .NET. Quantity does not matter, if the relevant libraries are there. I do consulting mostly using JVM and .NET languages, Web and C++. Never was a .NET project where I missed having access to a particular Java library.
- forgotpassagan 9y agoI disagree strongly. I used .NET for years before jumping ship to Java. Guava and Apache commons dwarf anything available for C# at any price. I know because I went looking many times for libraries with similar algorithms and Bloom filters. .NET is pay to play and in most cases something similar in Java was free. I also greatly miss native database libraries when I'm using .NET. a large number, maybe a majority, of open source databases have an outdated buggy port to C# if anything. I will never forget the hell of integrating Lucene with C# because the port is bugged and close to a decade old. This is par the course for .NET MS has a huge problem with lack of open source support unless you're stuck on the (IMO archaic) SQL Server+ Windows server platform. Microsoft has fallen many years behind the times. Having to get a multi thousand dollar license for a server OS and SQL database is a joke. Their VM support outside of Azure is severely lacking and support for containers is junk because they're not based on Linux cgroups like everyone else. Windows as a server OS is as dead as OS/2 was 5 years ago. Linux won, by a landslide, and MS is too proud to just deal with that. Their software is severely crippled in server land as a result.
- pjmlp 9y agoI never bothered to use Guava in production code. The type of customers I work with don't waste any second thinking about Oracle, WebSphere, Enterprise Architect or Visual Studio Ultimate licenses. They are a tiny water drop in the ocean of overall project budgets. Outside the HN bubble, Windows servers are doing pretty well. Containers are the new buzzword. I could also say that Linux containers are junk, because they have quite a bit to learn from proprietary UNIXes experience and what IBM and Unisys mainframes are capable of.
- forgotpassagan 9y agoYour customers are many years behind the times then, which isn't unusual if you're doing consulting. Windows Server only does well in the consulting bubble and in backwards industries like finance, it's basically dead everywhere else. Containers are hardly a buzzword, I would say more than half the fortune 500 run their systems exclusively in containers and that's only increasing. The last two companies I worked at were 100% containers for pretty huge fleets of machines. I don't know of a single large tech companies that isn't exclusively containers or at least KVM virtualized machines. Mainframes are so past dead that they've resorted to haunting us. Mainframes (and SQL server and Oracle Db) are so behind that they make it illegal to benchmark their systems in license agreements. From the leaked benchmarks I've seen, a power mainframe CPU is maybe 10x slower than a single X86 core from Intel or AMD. Oracle Db is also about an order of magnitude slower than Postgres and MySQL which you can get for free. I'm not trying to be a dick, just convince you that based on your beliefs it is you that is in a bubble :) . In fact the same bubble I used to be in (used to do consulting and shared a lot of the same opinions until I moved to different parts of the industry). That's fine if you still making $, but it's something to be aware of if you're looking around for other opportunities in different areas of the space
- anarazel 9y ago> Oracle Db is also about an order of magnitude slower than Postgres and MySQL which you can get for free. I work on postgres. And still: I wish.