https://www.hanselman.com/blog/TryingNETCoreOnLinuxWithJustA...
I gave a talk at the London .NET user group earlier this year on why it's all so hard to understand. Maybe it will help clarify some things, however it was before the 2.0 announcement: https://unop.uk/on-asp-net-core-and-moving-targets/
I'd love to use .NET but the overhead of getting started isn't worth it when I can use any number of other truly free languages/platforms that are much easier to understand. And are truly cross platform because they have been so for years.
For reference languages I use regularly or on occasion which don't suffer from any degree of the issues .NET has: ruby, swift, elixir, java, scala, JavaScript, and Elm.
CLR and .NET seem very awesome but so far have turned me off in a big way. Please fix <3
I've been putting food on the table as a .net specialist for fifteen years. My impression is that .Net 4 is a band-aid of Windows-dependent implementations and that .Net Core is some solid tech, using industry's best practises for streams, collections, GC and so on. How do you think they made it portable?
I started to get pissed off at MS at around the time MVC 3 came out. That was not the direction I would have taken. Oh the bloat. Asp.Net Core Mvc is a dream. You start out with nothing, basically. Invent your own conventions.
I'm happy to not touch .Net 4 again. Love Core.
Edit: as parent said though: Microsoft, your tooling has gone from best-of-breed to just-another-messed-up-ide. Please remove everything you copied from Resharper from Visual Studio. It just doesn't work. Try renaming a file. I have never had anything but near-fatal studio errors such as "the refactoring of the file name just didn't work, man, crashing soon...". I want my Resharper back. Can you disable your stuff? I mean, all of it? And please don't ask me to develop server applications on a javascript client such as VS Code. Nut gunna do it.
Though, maybe legacy knowledge isn't helping...
If you don't even want to spend that you can install Visual Studio and .NET Core stuff will just work out of the box, as is customary for VS.
Versioning and documentation is a mess, but neither you nor the grandparent seem to have actually made the minimal time investment necessary to even encounter those problems.
This is Microsoft's fault, not these guys, and it has pissed me off so many times over the years.
I always use the analogy that Microsoft builds these gigantic, beautiful mansions, but then to get to them you have to find the secret path that's covered in weeds.
A slightly different topic, but very much along the same theme:
http://i.imgur.com/KiA3SKv.png
What a mess! I want SSMS, do I even have it installed anymore? How do I clean this up without spending 6 hours (because I know something's going to go wrong during the uninstall)?
Perhaps you could make a useful comment next time instead of something plainly not?
However FWIW, I put together a C# on Linux Workshop for DevConf.cz earlier on in the year that might be useful for some folks https://github.com/martinwoodward/csharpworkshop - also includes links to the docs for building from source etc if you want to go really into the details.
Note that that still seems to require an existing binary (the bootstrapping problem). I wonder if the Debian CLR people have seen this.
The command line tool I was trying to write was to read my Safari reading list on my Mac, and construct an HTML page that contains the same information that I could put on my website, where I could then access it from my Surface Pro. Apple provides a way to export the reading list in XML, so that was my input.
I don't remember what it was now, but my first approach used some XML stuff that I got out of examples from some recent C# book, and it worked fine in Visual Studio Community Edition on my Windows gaming machine. In Core, though, on my Mac (and on my Surface Pro and Windows gaming machine) it failed to build. It was not finding something I was trying to include via "using".
I was not able to figure out if that thing is simply not part of Core, or if some build setting somewhere has to be changed to make it available.
(I eventually changed my approach and dealt with the XML through LINQ instead of at a lower level, so that I no longer needed whatever it was whose "using" was giving me trouble, and successfully got access to my Reading List from my Surface Pro).
Especially since some components embedded different versions of other components.
I don't know if the situation has improved since I rotated off, but a bog-ordinary semver scheme would've saved a world of pain.
Failing that, a single page with components (SDK? Runtime?) and available version numbers that gets updated.
Because we mostly wound up working what was what from forensic readings of scattered blog posts, Github release and I think comments on Github issues.
In any case, I am sure the team would be glad to give you feedback on their experiences since then -- my email is in my profile if want me to pass anything along.
Worked like charm had site up and running in 20 mins which is kind of "production" ready. With supervisor and reverse proxy. Or just do docker? You are overthinking a bit also with the terms, you don't need to know those terms by heart.
In contrast to those two, I've found Android's pretty good in the 3 years I've been referencing them.
But I went "ubuntu" route and bailed, looking for a simple tarball.
There are terms like .NET Core, .NET Platform, .NET Framework, .NET SDK all mixed up on nearly every page, multiple versions of "Getting started" and "Quick start" guides, massive navigation menus and options on every page so you never know if you're looking at the latest and greatest or it's some kind of abandoned dark corner of a web property, as it often happens with corporate sites.
Yo! If you want .NET to be a massive hit on non-Windows platforms, move it off Microsoft.com to a small site, have a single version of "getting started" (and only one "guide"). Don't ever mention things that exist and don't work on Linux.
Like this: https://golang.org/doc/
Also, have a simple downloadable .tar.gz which expands into /bin + /lib + /examples. I loved C# back in my Windows days and I moved to Linux to escape Microsoft complexities and over-reliance on complex IDEs and tools, scattered like shrapnel all over my c:/
I will not run apt-get against your repo without knowing ahead of time what I'm getting and where will it all go, so let me play with the tarball first.
[EDIT] formatting