Live data from Hacker News

.NET Orleans

dotnet.github.io

191–200 of 287 posts

Re: .NET Orleans

#191
post #181

Earlier quoted context omitted.

> LINQ for data operations > advanced ORMs like EntityFramework and NHibernate I've used all of these. Rails' ActiveRecord blows all of them clean out of the water.

I suspect you haven't yet seen tge power of LINQ, it's not the chaining that is its point - it's the lazy evaluation. It's not at all limited to DB operations.

Every use of LINQ I've seen in .Net codebases has been to perform (more slowly) transformations or aggregations that should have done in the database.

Re: .NET Orleans

#192
post #138

Earlier quoted context omitted.

I really enjoy how TS is the same on server and client. The C# runtime is way richer, but I like the TS type system more. Not sure I’d want to use different platforms on backend/front end even if C# did server rendering like React.

Not sure what you mean by different platforms. Did you mean languages as React and Node are separate entities? Personally, if I had to hire a developer the minimum requirement would be competence in JS/React and a statically-compiled server-side language. JS-only developers are to be avoided.

Out of curiosity what if I'm good, say above average, with C# backend, but never used React commercially, though have used Vue on personal projects for the last several years, but consider my JS a bit of a weak spot?

Re: .NET Orleans

#193

Earlier quoted context omitted.

Is there a document describing this plan? Will this replace .NET Core, CoreRT, etc.? As someone who isn't a .NET developer, the sheer proliferation of runtimes and platforms is super confusing, and I can never remember what's what between, .NET, .NET Native, .NET Framework, .NET Core, Mono, CoreRT, etc. If this is getting cleaned up, that's great news.

Here's the .NET 5 announcement which wraps up everything: https://devblogs.microsoft.com/dotnet/introducing-net-5/ .NET windows/desktop framework stopped at version 4.8 and .NET Core has spent 4 years incrementing to version 3, so .NET 5 is a merger of everything into a single framework again. Mono will still exist since it's used by Xamarin for mobile and Unity for games. AOT is mentioned in the article and comments…

>.NET 5 is a merger of everything into a single framework again

Is it a merger or a replacement?

I won't be able to just take my huge legacy .NET 4.7.2 app and just change the runtime to .NET 5 and hit the go button right?

Seems for the app I work on at least the upgrade path is a full rewrite :/

Re: .NET Orleans

#194
I'm involved in a project that uses Orleans. Conceptually and technically it's very interesting. Nodes automatically cluster together to form a big distributed system, and the concept of "virtual actors" make it possible to represent individual entities in the data model directly as actors, without worrying whether everything fits in memory at the same time.

However, Orleans doesn't seem to play very well with Kubernetes. Kubernetes pods can be uncleanly terminated at any time for any reason. Orleans really doesn't like unclean shutdowns: it will leave behind dead entries in the membership tables, which then cause problems in the future because new nodes would contact dead members and run into errors.

The clustering protocol also seems to assume that all members have stable identities and IP addresses, but that's obviously not the case in Kubernetes, where each new pod has a new identity and new IP address. This can cause members to fail uncleanly, which in turn pushes the clustering protocol into an infinite loop.

Orleans was introduced by one person who has a background in distributed computing. Unfortunately, he's the only one in the organization with such a background. After he left, nobody could debug clustering problems.

Re: .NET Orleans

#195
post #190

Earlier quoted context omitted.

Disregarding popularity, why should I switch to C#/dotnet from PHP/Go/Ruby?

- Super fast - C# and F# are constantly updated in coherently. They have been on a yearly improvement cadence for the past 5 years. - It's easy to pick up. I wrote 300+ samples for ASP.NET Core ( https://github.com/dodyg/practical-aspnetcore ) - It's really a fun framework to develop in.

> - Super fast

For all it's other features, I'm really not sure I'd call .net fast. It's got half decent speed, but it's not "woah that's fast"

> - C# and F# are constantly updated in coherently

By which you mean C# gets new features every year, and F# gets thrown enough tidbits to keep it looking alive?

Re: .NET Orleans

#196

I'm involved in a project that uses Orleans. Conceptually and technically it's very interesting. Nodes automatically cluster together to form a big distributed system, and the concept of "virtual actors" make it possible to represent individual entities in the data model directly as actors, without worrying whether everything fits in memory at the same time. However, Orleans doesn't seem to play very well with Kubern…

There is a new package which adds improved Kubernetes integration and fixes the issues you mentioned specifically. It's in beta right now, but we expect a stable release soon. Feel free to contact me and I can help you with running Orleans on Kubernetes

Re: .NET Orleans

#197
post #132
post #87

Earlier quoted context omitted.

I'm pretty sure net core will remain for a long time in the enterprise world before making anything in the more open source / general public. It's 2020 I can't name a single server side known application built in net core.

I'm incredibly interested in this. A daydream of mine is to create OSS infrastructure/SRE systems in .Net. F# if it makes sense. <3 F#.

F# is nice, but always felt like the ignored child whenever I've used it.

If you like F#, why not just reap all the functional benefits and write it in Haskell, or Rust which has (arguably) just as strong a functional influence (minus the syntax) as F# does, with the benefit of a stronger type system, and better performance, and these days, probably a bigger community than F# as well.

Re: .NET Orleans

#198

Earlier quoted context omitted.

Disregarding popularity, why should I switch to C#/dotnet from PHP/Go/Ruby?

Very fast, statically typed, clean language design with features like LINQ for data operations and fantastic async support, cross-platform, comprehensive standard library, advanced ORMs like EntityFramework and NHibernate, easy deployment including docker/self-contained/single-file, build anything from web/mobile/desktop apps, best-in-class IDE and tooling, Blazor UI component framework running .NET in the browser, s…

The ecosystem let's it down a little I reckon. I came over from the Java world and have dipped my toes into Rails and found the Java ecosystem far richer.

Though I do like it and think it's pretty good, it would really benefit from a bigger open source community. It's picking up, but it is on the backfoot due to starting out with a closed-source philosophy.

Re: .NET Orleans

#199

Earlier quoted context omitted.

Very fast, statically typed, clean language design with features like LINQ for data operations and fantastic async support, cross-platform, comprehensive standard library, advanced ORMs like EntityFramework and NHibernate, easy deployment including docker/self-contained/single-file, build anything from web/mobile/desktop apps, best-in-class IDE and tooling, Blazor UI component framework running .NET in the browser, s…

> LINQ for data operations > advanced ORMs like EntityFramework and NHibernate I've used all of these. Rails' ActiveRecord blows all of them clean out of the water.

Agreed. I only touched Rails briefly but I loved ActiveRecord.

Ive seen so many awful queries with terrible performance out of EF.

LINQ is cool, and EF is alright if you have a decent team with good practices, but it takes a lot of discipline for it not to turn into a hot mess.

Re: .NET Orleans

#200
post #157

Earlier quoted context omitted.

Is it as good as rails? When I run a rails new command, I can setup my postgres connection, nodejs and webpack libraries, rails core library in one command. Rails has database migrations with conventions i like - the timestamp and a file name that represents the action to be performed against the database (e.g. AddNameToBlogs) which that can also be rolled back. I also really like the Rails restful router which is st…

Is Rails as fast as .NET?

Techempower says no, and it’s not even close.
Post reply on HN