Live data from Hacker News

Why I Left the .NET Framework

blog.jonathanoliver.com

31–40 of 109 posts

Re: Why I Left the .NET Framework

#31
post #30

While I agree with some of these points the biggest one for me is client adoption. All clients assume everything is run in Linux. I don't even know why this mindset is so popular. When we develop something and the client wants to host it I can guarantee (more or less) that the platform is Linux and they want to know why the software we have written doesn't work on Linux. I know there is Mono but I always use IIS to r…

Maybe because of license issues? Windows also uses more resources.

I think this is what frustrates me. We've slowly started reducing the amount of Windows machines in our cluster as the licensing for SQL went from £160 a month per CPU up to £240 per CPU in the space of 2 years.

This is unacceptable.

We can't run a business trying to guess what this will be in another 12 months time.

Resource is a big issue, I recently fired up a small Linux box on Digital Ocean as a test; it's 512mb with a small CPU. The machine barely runs at any overhead when dormant. A Windows box is using 1GB before the operating system has finished loading

Re: Why I Left the .NET Framework

#32
.Net developer here.

I think VS is really awesome and a + for .Net . The support for Mono and cross platform has grown and Microsoft has shown interests by partnering with the team behind Mono..

IIS is getting decaprecated (= The OWIN project).

LocalDB doesn't require you to create a new database and you really have a json file as database . You can just use it, it's called Biggy and it's on GitHub ( https://github.com/robconery/biggy ). (a file based document store). - i used it and it works. - It's actually more then a file based db, but check it out if you're interested.

Git support is build-in (already a long time) and TFS seemed to work for me ( i use Visual Studio Online).

Using Windows, well. I think this is "currently" a no-brainer. But Mono will be more important, so it should become usable on Linux also... (normally). Btw. I use Linux tools on my Windows machine all the time, stuff like Cygwin,ImageMagick, Go, Ruby are installed by default on my development pc.... It doesn't mean i can't work in Linux (i also have a Pi which requires me to work in it). Currently, i just prefer Windows

Re: Why I Left the .NET Framework

#33
post #27

Earlier quoted context omitted.

We are based in the UK. I don't know if it's the clients and the type of work we are filling but we seem to be migrating a lot of people from Wordpress so typically they expect everything to still run on Linux. Our clients are normally ones who have come from a small background and are growing quite rapid, this customer is almost certainly on some type of Linux offering. It's probably a mix of the clients we target a…

On my case, Germany with lots of Fortune 500 clients.

What size of projects are they?

We do a lot of integration projects with our clients, ie integrating with CRMs / ERPs and the timescales on these projects is usually about 10/12 weeks. I enjoy this project turnaround as it means I'm never stagnant on the same project for long and I get to experience new things.

I imagine the projects for a Fortune 500 is 1 or 2 years long with thousands of man hours?

EDIT: Clarified a question

Re: Why I Left the .NET Framework

#34

While I agree with some of these points the biggest one for me is client adoption. All clients assume everything is run in Linux. I don't even know why this mindset is so popular. When we develop something and the client wants to host it I can guarantee (more or less) that the platform is Linux and they want to know why the software we have written doesn't work on Linux. I know there is Mono but I always use IIS to r…

Try Qt. It's a mature cross-platform framework with a long history back and a good momentum forward. It's also very well deigned. http://qt-project.org/

Qt5, CMake, C++11. It's definitely good enough to use.

Re: Why I Left the .NET Framework

#35
It needs to be mentioned, if not for comments here then at least the comments on his own blog, that the author was not someone who simply dabbled in .NET and is trying to bash it for the sake of bashing something. The author, Johnathan Oliver (no, not that one), is an absolute authority on distributed architecture and created what became one of the biggest open-source projects in .NET (https://github.com/NEventStore/NEventStore - originally joliver/eventstore).

His work had a significant impact on my adoption of CQRS and Event Sourcing, patterns that are becoming very popular in Java, Scala, .NET, and to my surprise, Node. I've been happily programming in python for the last year and happy to see CQRS is starting to get more recognition in the community. I'm going to do what I can to help build its momentum, but it certainly doesn't have the same adoption compared to the .NET community.

So, when someone who has done so much work in the framework starts to question it, I will certainly give their opinion some thought instead of firing a retort:

> It's OK to rant but at least get your facts straight. The rest of your rant looks quite foolish as well. For example, firing up a Windows VM is rather fast if you try it in Azure.

Re: Why I Left the .NET Framework

#36
post #4

Some really good criticisms, but I do wonder how long ago this developer left .NET. .NET is now heavily async based. WPF may have started it years ago, but async has been a keyword in the language for quite awhile! (I haven't used a proper lock in ages. Event queues are where it is at! Or pick your favorite paradigm, heck the framework comes with thread pools built in that it'll juggle for you!) In regards to .csproj…

Agreed - I see VS2013 running very well in a VM even. For me, VS is the strongest pull of the .Net platform after C# the language. It doesn't take me long in another IDE/language to sigh and wish for something to work as well as VS. However, I am one of the few that would never use resharper. There are no refactoring features in the world that make a good trade for laggy typing.

I run Win7 + VS2013 development environments in VMWare Fusion on my 17" MBP (4 core 2.4GHz i7, 16GB RAM and SSD). Running two at the same time is just a bit too slow for comfort, but one runs perfectly fine.

A good SSD is a big improvement, especially when compiling.

Re: Why I Left the .NET Framework

#37

When I first got started in web development, my brother-in-law managed a large Microsoft shop and got me started with all the software I needed to get going for a huge project I managed to wrangle using .NET when it was at version 1.5(?). We worked on that for something like six months until, one day, all of a sudden everything was version 2.0(?) and it all fell apart! We quickly called my brother-in-law in and he co…

There wasn't a 1.5, so you're probably thinking 1.1 or 2.0. As far as I know it's been pretty good with backwards compatibility though. I used to do a lot of.net coding, and the only time I've seen compatibility issues upgrading was with beta versions (and even then, I only saw a small handful).

Re: Why I Left the .NET Framework

#38
post #16

Earlier quoted context omitted.

> All clients assume everything is run in Linux. I don't even know why this mindset is so popular. Might be on your part of the globe. On my little world, we have enough Windows only clients to keep us busy.

We are based in the UK. I don't know if it's the clients and the type of work we are filling but we seem to be migrating a lot of people from Wordpress so typically they expect everything to still run on Linux. Our clients are normally ones who have come from a small background and are growing quite rapid, this customer is almost certainly on some type of Linux offering. It's probably a mix of the clients we target a…

Probably because of your types clients, in bigger companies windows can be used heavily.

Re: Why I Left the .NET Framework

#39
post #24

> Not having a debugger is actually a liberating experience because it forces you to code in a different way. Not having a debugger is like living in the stone age. Personally, the the ability to inspect application state at runtime is non-negotiable.

Fully agree. Some developers like to live in green phosphor vt100 days.

reliance on debuggers is a wierd strange concept. Debuggers are utterly incapable in multithreaded environments. Just write damn unit tests and simulations!

Re: Why I Left the .NET Framework

#40
I wonder how long did the author was using .NET since "bad" points were very weak.

Also, it seems that author isn't really interested in what's happening and what MS already done to improve .NET. Like integrating Git with MS, async, open-sourcing C# source code, moving away from IIS to OWIN, K runtime, SqlDb as file.

And also, if you don't like that Visual Studio is heavy you are free to use Vim with custom run parameters that will compile your code. However part of why C# is so good actually is Visual Studio.

As for "Windows devs are typically only good at Windows and get lost very quickly outside of their comfort zones". This is just plain wrong. It depends on person. You are not your IDE, you are not your programming language, you are not your OS.

Post reply on HN