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

Can I ask how you find working in this environment - genuinely curious. DId you have to refactor your applications much, or did you start off targetting .Net core?

Years ago I thought people working in mono on Linux were just asking for trouble. Now it seems genuinely feasible to be running .Net on a non-Windows platform.



I spent some time with Mono/.NET last year. It worked fine, but not everything was implemented. Specifically, we had some members on the team (the architect being one of them) who liked to include cutting edge features from .NET, that didn't work on Mono (he also had decided to write a large chunk of code in Silverlight, but that's a different story).

The short is: if you're going to do Mono, make sure that you're always having at least one person on the team doing Mono, otherwise there's a moderate chance that you'll lose the ability to run on Mono.

Also, stay away from entity framework. Some people might disagree, but we had problems with it and I hate that framework.


There's plenty of hate for entity framework among full .Net devs too. It's one of Microsoft's quick to get started but crap to enhance and maintain tools.


I agree that the early versions of EF were very buggy (v1-3). It would work fine and then you would hit a show-stopping bug with no fix. However, the recent releases of EF have solved those problems and works great. I can't imagine not using an ORM at this point, and after witnessing NHibernate's stagnation I would recommend using something officially supported by Microsoft.


I hate it with a passion. I use Dapper whenever I can and couldn't be happier about it.


Yep. Dapper is far simpler. All the relationship navigation and deferred loading of related entities is clever but takes effort to optimize and is too easily abused.

Every large team I've seen use it (EF) ends up with slow horrible queries generated that DBAs see hitting the database thinking WTF?


Like a lot of Microsoft's data access technologies, it demos well in front of an audience. :-/ (from someone who still has their ODBC 5-1/4" floppies)


It depends on the application.. you can try running your assemblies through MoMA (mono's migration tool) to see what gets flagged. A lot of the enterprise classes that are tied to windows obviously don't work... There's also no support for WPF iirc, though there is some Silverlight/Moonlight support, but that's another story.

If you're doing web/api services, then mono/.net core are serviceable. Though I would recommend that you have CI/CD setup to use linux/mono if you are going to target that platform... for the most part if it works in linux its' going to work in windows, not so much the other way around.

Take this with a grain of salt, as I've been mostly node.js for a couple years now, though the progress with .Net core and VS Code have my interest.


If you have .NET 4.x app and you want to convert it to .NET Core you're going to have a bad time.

However making things from scratch works totally awesome.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

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

Search: