Live data from Hacker News

Leaving .Net

whatupdave.com

81–90 of 122 posts

Re: Leaving .Net

#81
post #46

I love .NET the platform -- the VM is absurdly efficient (almost too efficient, making egregious algorithm choices functional), and C# the language is superb and absolutely first class. There is nothing that shames either of those contenders, and I would argue that there are few that even legitimately compete with them. Having said that, I couldn't agree more regarding the community . When MVC came out my only excite…

I develop on the Windows platform since its inception and I'm not aware of any Microsoft community you refer to. I know that there are millions of people who develop with the Microsoft tools and obviously the more people use something the more that something gets abused.

On the other hand try getting a job in a decent company based on tech that is also a Microsoft partner and you'll be torn into pieces with the questions about deep platform understanding.

Re: Leaving .Net

#82

Dave has some reasonable points, and frankly I think MS is going where he'd like them to go. But he does miss the boat on a few things. One thing that I do think he discounts too much is the surprising effectiveness of small focused teams. In the same way a small startup is more effective than a lumbering machine, a small team of devs is often more effective than 1000 loosely organized volunteers. The classic example…

In (good) open source projects, the frameworks developers are also app developers. The difference is obvious when you compare the architecture astronautics of a framework built following "best practices" and one extracted from living code. WebForms looked great in developer conferences, but it made stuff that just comes out of the box in Rails like nice URLs or common layouts a royal pain. I left that world behind 5 years ago, and I hope it has improved, but I have no intention to go back.

Re: Leaving .Net

#83

Earlier quoted context omitted.

> Mono was painful, at least for me I'm interested to hear more about mono, what was painful exactly? How is the performance compared to the MS implementation?

I also had a bad experience with mono. I tried to run a very heavy site on it when asp.net first became available for it. It totally crashed. I'm sure it's matured a lot since then. After that happened I saw a blog post by someone at microsoft about their testing. They have 1.6 testers for each dev working on asp.net and they've got a warehouse of servers running millions of different tests for months before shipping…

Your performance will vary a LOT because there are so many changeable pieces. Mono 2.8 brought some perf wins with ASP.NET. mod_mono is the only recommended way of hosting ASP.NET right now.

Because I can deviate from the defaults so much if I wish, I was able to switch the Mono Garbage Collector from Bohem to sgen (mono --gc=sgen) and get roughly a 30% increase in reqs/sec.

There is a team dedicated to ASP.NET on Mono and I've really found them great to deal with. When I was seeing perf and memory usage issues, over a period of a couple of weeks they helped narrow it down and made some very major gains there. Those are in git master right now and will be shipping with the next mono release.

Devs often migrate from one project to another and it really is not two guys in a basement. They do call on resources from right across the project. I saw firsthand when talking to them about an issue, they discussed it with their asp.net guys, guys working on the VM, a guy working on the GC and a guy working on the new profiler and made adjustments to it to help track down the issue.

It was all done in the open, they committed their patches, it fixed my issue, and this is why I love open source.

Re: Leaving .Net

#84

Earlier quoted context omitted.

> Mono was painful, at least for me I'm interested to hear more about mono, what was painful exactly? How is the performance compared to the MS implementation?

I plan on writing a long blog post once I get it all nailed. It will probably go something like this: the linux environment is like running an operating system at the same time while you're coding it -- little pieces of code and scripts here and there. That makes linking, compiling, and installing the primary chores. Although there is an awesome package manager, it doesn't have the coverage you'll probably need. So l…

It sounds like you might only be doing web dev, so I appreciate that you might not have experience with this, but:

I've been looking at languages and VMs for doing GUI desktop app work. Specifically, cross-platform apps using native GUIs on each platform. Java (I normally use Clojure where I can) has decent cross-platform toolkits, but not so great native bindings. .NET obviously has good Windows GUI stuff, Mono's GTK# and Qyoto seem to work well for Gnome and KDE, and MonoMac seems to be going places. The main alternative seems to be to drop to low-level languages. (C, C++, Obj-C). Do you think it's worth it for me to go ahead with .NET and Mono considering the difficulties you've had with Mono?

Re: Leaving .Net

#85
post #71

Another day, another leaving .NET/Java for Ruby/Python post. This very link btw got posted twice, the first post was 3 months ago. Aren't you guys tired of that? We get it - HN is the place where people will go at great lengths to contribute/code all night rather than use something that works out of the box and juts move on. I am always surprised on the often hardcore technical problems discussed here and the relativ…

I think this story is so interesting because so many of us could never imagine leaving .net. It's got a real shock factor to it. Like someone winning the lottery and throwing away the ticket.

I wasn't aware .NET was that highly regarded. It's a decent platform, but far from the holy grail of development environments.

Re: Leaving .Net

#86
post #46

I love .NET the platform -- the VM is absurdly efficient (almost too efficient, making egregious algorithm choices functional), and C# the language is superb and absolutely first class. There is nothing that shames either of those contenders, and I would argue that there are few that even legitimately compete with them. Having said that, I couldn't agree more regarding the community . When MVC came out my only excite…

> another oddity of the .NET community

I think the word we are looking for is "fan club". A community participates, a fan adopts and loves. A community is bidirectional. Whatever interaction happens around Microsoft's products is not. It's interaction between fans, not between the fan and the object or the creator of its devotion.

Re: Leaving .Net

#87

Dave has some reasonable points, and frankly I think MS is going where he'd like them to go. But he does miss the boat on a few things. One thing that I do think he discounts too much is the surprising effectiveness of small focused teams. In the same way a small startup is more effective than a lumbering machine, a small team of devs is often more effective than 1000 loosely organized volunteers. The classic example…

GCC which has probably 10x more people working on it than any commercial compiler Citation? Personally I think you pulled that figure out of your ass; especially since the GCC codebase is a mess (on purpose), it's been stable and good enough (and arguably stagnant) for quite a while and all attention shifts lately to LLVM. With relatively small developer teams, they've increased in quality as fast as any open source…

> and arguably stagnant

This is like complaining someone's market share is stagnated around 99%...

As for "working on", it has two interpretations. While I certainly thing GCC has less patches per month accepted into its codebase than clang, there are a whole lot more people compiling C code with it. I would not be surprised if we discovered more code is compiled with GCC than with all other C compilers combined.

Re: Leaving .Net

#88
post #62

Earlier quoted context omitted.

Even when I run them on my amd cpu?

To answer your question, probably not. icc has a long history of being less good on AMD processors, and almost certainly not on accident. With that said, they don't have a monopoly on x86 compilers. Microsoft's Visual C++ has been about equally good on both platforms and is far more dominant. But with that said, I'm sure you know, that's not really relevant to the discussion at hand :-)

So, the Intel's compiler trounces GCC when the code it emits run on certain x86 processors. And Microsoft's compiler does a much better job when the target runs on Windows on x86 processors.

If we narrow the target enough, all comparisons become interesting. I am quite sure GCC will blow both Intel's and Microsoft's compilers out of the water when it comes to compile code for IBM mainframes. I am sure it's much better than Intel's when it comes to target my phone's ARM processor.

Re: Leaving .Net

#89

Earlier quoted context omitted.

I plan on writing a long blog post once I get it all nailed. It will probably go something like this: the linux environment is like running an operating system at the same time while you're coding it -- little pieces of code and scripts here and there. That makes linking, compiling, and installing the primary chores. Although there is an awesome package manager, it doesn't have the coverage you'll probably need. So l…

It sounds like you might only be doing web dev, so I appreciate that you might not have experience with this, but: I've been looking at languages and VMs for doing GUI desktop app work. Specifically, cross-platform apps using native GUIs on each platform. Java (I normally use Clojure where I can) has decent cross-platform toolkits, but not so great native bindings. .NET obviously has good Windows GUI stuff, Mono's GT…

Like I said, I'm about a week away from forming a solid opinion, but my guess is that I'd use Mono.

I'm doing very simple web stuff (fcgi-type, if I can get the fcgi bindings to work) Also a bit of command-line/batch work.

As far as I can tell, .NET is the best match for what you want. If i were you, I might want to do a bit of poking around to see how the low-level stuff is configured first.

Re: Leaving .Net

#90
post #71

Another day, another leaving .NET/Java for Ruby/Python post. This very link btw got posted twice, the first post was 3 months ago. Aren't you guys tired of that? We get it - HN is the place where people will go at great lengths to contribute/code all night rather than use something that works out of the box and juts move on. I am always surprised on the often hardcore technical problems discussed here and the relativ…

I wish I could downvote you.
Post reply on HN