4 ms·
I went from writing client-server code in Java to writing similar things in .NET. After two months of C#, I remember thinking to myself, quite clearly, "Oh, th
by kabdib 14y ago
I went from writing client-server code in Java to writing similar things in .NET.
After two months of C#, I remember thinking to myself, quite clearly, "Oh, thank God, the nightmare is over."
Debuggers that worked. Native calling systems that actually interoperated well. A set of classes that weren't horribly overdesigned and under-implemented.
Best of all, no culture that insisted on factories that made factories that made factories.
Writing Java on phone platforms is fine. But the enterprisey stuff is death on roller skates.
Hey, if you can stand it (my cousin does), then you might make a bunch of money. My cousin spends six months hacking Java for a bank, then six months vacationing. I prefer to do stuff that doesn't make me contemplate washing dishes for a living again.
.NET has its warts, but it's not cancerous the way Java turned out to be in the hands of the architecture astronauts.
- sc0rb 14y agoInteresting experience you have. I have spend most of my career doing Java6 JEE6 and modern Spring and it all feels quite modern. I did a lot of C# at University and it is a good language and platform but I don't think it's better than Java. New / modern Java is fine, it's old java that you want to avoid.
- chaostheory 14y agoIf you ever try any of the modern stuff (django, rails, play, grails, any node.js framework) in depth, j2ee / Spring and java just feels old and ancient. Spring has gotten better over the years, but there's still just too much work and too much unnecessary complexity and cruft with Spring. It's really telling when even Spring's creator jumped ship to work with TypeSafe and jvm7 has huge improvements designed for other languages. imo C# is an improved java, but C# open source ecosystem is just anemic compared to java.
- DoubleCluster 14y agoI actually like old and ancient. That means all bugs have been fixed already. Systems become complex quickly enough and you need to use the most boring bricks imaginable if you want to build something sturdy.
- chaostheory 14y ago> I actually like old and ancient. That means all bugs have been fixed already. By that logic everyone would still be using Cobol or Fortran for new development. Moreover neither Rails, Django, or Grails are brand spanking new anymore. Those projects are mature. If you don't want to stray too far away from the jvm comfort zone, Grails is actually built on top of Spring and Hibernate and it's still maintained by the Spring team.
- martinced 14y ago"Oh, thank God, the nightmare is over." The nightmare for me has been over in the mid-nineties, when I discovered Unix through Linux. There's no way I'll ever be going back to working on Windows. I'd rather go work as a plumber or a truck driver (not that there's anything wrong with that) then have to work on Windows ever again. C# / F# might be interesting, but using any Windows as my OS is a big no-no. Never this nightmare again. And, nearly 20 years later, the great thing is that a lot of devs previously working on Windows are now working on OS X (anybody disputing that trend is a fool). Major win for Unix with both Linux and OS X. Not to mention all the devices running either iOS or Linux / Android. The nightmare is over: Windows shall never be the OS powering all these servers and devices out there and hence .Net shall never be the dominant platform. It's not that .NET has its warts (it does), it's that Windows has its ugly warts and I'll never ever be using that inferior OS ever again and I'll never ever again will be forced to deploy on an Microsoft stack. In the mid-nineties I considered quitting IT. And Linux saved me. And now OS X. Thanks.
- CamperBob2 14y agoIn other news, the mid-nineties were a long time ago.
- davesims 14y agoI wouldn't go this far myself, but I deeply sympathize. I developed an inordinate level of familiarity with the Windows ecosystem for 10 years. I could tell you which registry keys did what for which COM components <shudder/>. Then I rebooted my technical self into Mac/Linux/Ruby and would have to scream into a pillow for 20 minutes before I'd be able to open up a windows command line again. Although I did do a bit of PowerShell when it came out and -- wait for it -- it was actually pretty nice. But still, the overall OS is such an odd beast in retrospect.
- CodeCube 14y agoWell, you can write C# without having to develop on windows through the Mono framework, and Xamarin's products - http://xamarin.com/ http://xamarin.com/ These days, you can be a C# developer without having to do an ounce of "Microsoft Stack" programming if you didn't want to.
- edwinnathaniel 14y agoI'm not sure which debugger you use to debug Java code but I can do local _and_ remote java debugging via Eclipse. IntelliJ supports JavaScript and JSP debugging as well. Client-server development using EJB 3.x is way much better, cleaner, and simpler than .NET, sorry, this is something that I don't think you can argue elegantly. .NET culture when it comes to open source is sub-par while Java is very rich. Spring, Tomcat, Jetty, Hadoop, HBase, Eclipse, NetBeans, Maven, Ant, the list goes on. These are mature and high profiled open source projects wherein .NET I have never seen an open source project reached that level of acceptance. While Java has this sub-culture of factories that made of factories. .NET has this culture of fighting with the latest and grandest libraries that Microsoft launched once every 6 - 12 months. Enterprise .NET is not at the level of Java yet (compare Message Queue, remoting, security, and other capabilities .NET are still lagging). .NET has its cancer in its own way. I honestly believe that you have not used Java that deep professionally.