Luca75 wrote:
I read everything thank you. I'm worried about our future ... Last time I'm trying to understand Ms if NetCore is the future because they do not invest in it? We are the third version is usually that good! I love .net but I start to be tired of waiting ...
It's rush rush rush at Microsoft it seems. They tried something stupid with netcore 1.0, then fell asleep while everyone complained, then suddenly woke up and scrambled that they had to release something useful with 2.0, but that takes time and they didn't take the time.
They simply released what they had, and will fix things afterwards. That's not how you release software others depend on. It's not some OSS js lib, it's a platform people built their app on. Tooling which has to work or devs can't release their stuff.
I still feel it's utter chaos over there, likely caused by the fact they've changed how they work to an OSS model that frankly doesn't really work yet (perhaps it will in the future). I mean, EF Core 2.0 without any docs of new features, wtf... 1) what are these 10 people doing all day? 2) they were done with 2.0 months before netcore2.0 release, still no docs. I'd fire them all, but hey who am I.
I wanted to add DbProviderFactories to .net core, wrote the code, submitted a PR to CoreFX, they told me along the way I had to change some method names, so I did. Then they told me, as it's a new API, it needed review, but no-one knew where that review should be submitted. So after a week or so they created their API review, and then some time passed, and they came back with a completely different API, totally not compatible with the code I had already written, and on top of that: totally unusable. So I said: I won't change my code to implement this API, why not use mine and what's wrong with my API? No answer, other than we had to start with their proposal. Some bikeshedding later over whether overloads are useful or not (really, that was the level of debate... ) things fell silent. .NET core manager pinged the datateam lead again and again when answers were to be expected. "Next week", "tomorrow", nothing happened.
Weeks have passed and nothing has changed. I've implemented my own DbProviderFactory registration method in v5.3, and I don't need it anymore (like all other ORMs which support .net core, none of them will need it anymore). But it's the chaos that struck me as depressing. I invested serious time in this and it just was a waste. (also the tooling they had to compile and run tests on corefx is terribly complex and confusing, sometimes broken, and often undocumented).
The tooling they released as 2.0, and vs 2017 15.3... it's terrible. It's full of showstopper bugs, signs that this stuff is not really release quality. Above all, it's so utterly slow. When I load our tests sln with 69 csproj files in vs 2015, it takes 30 seconds (with R#) to get up and running. in 2017 15.3 with multi-targeting projects it's more than 2.5 minutes. (!) same amount of code! Change something, e.g. recompiling the runtimes so the tests have to be recompiled... 30-50% CPU usage for minutes on end.
I reported several bugs to them in this area, made profiles/memdumps with the tooling built into vs for that. Weeks ago already, the only reply on some of them (not even all!) 'triaged', or 'under investigation'. But if you have to 'investgate' a bug for more than a few days, I know one thing: the intern who was 'investigating' it is off for a 3 week holiday. No bug takes 3+ days to 'investigate' or you should hire better devs.
When I was porting (or better: fighting the tooling) our 4000+ tests, I ran into things like DBNull.Value not being binary serializable on .net core (so serializing a datatable/typed list etc. would fail). I reported that, 2 weeks ago. They asked me if I would fix it. I replied 'no, as it's in coreclr, a repo I don't know so doing that will take a lot of time, and I don't have that', besides... just pay the devs to do the work, why would I have to work for free for MS to fix some bug they introduced themselves? Anyway, the manager said he'd ask someone. Today I read he still hasn't asked anyone, as an answer to a dev who ran into the same issue... utter chaos.
Will it get better? yes, I'm sure it will. But not today, and not tomorrow. My guess is it will take at least till 15.5/6 for vs tooling to be a bit usable, and .net core 2.1/2 to run well.
Our designer is still windows bound as it's bound to winforms and uses controls which are windows only. It's designed to be able to have a different UI though, but it'll take a lot of time to implement that, and looking at the numbers who's using .net core on other platforms than windows (for development), it's almost all windows. So not a big priority for us today.
To end on a positive note: our .NET core 2.0 stuff runs properly well and there are no problems (that I know of, other than stuff I can't fix as it's MS' problem like TransactionScope, some binary serializable types etc.). So that's one less thing to worry about when working with .NET core .
Oh and it has docs