Scott Hanselman, a Microsoft developer and speaker, writes about .NET, Windows tooling, developer careers, and living with type 1 diabetes.
HN links it for his Dark Matter Developers essay and .NET and Microsoft topics. Commenters also point to his writing on diabetes.
First off, you picked a great time to ask this question because this week there's a free, online conference going on at https://www.dotnetconf.net/. There's a lot of good ASP.NET Core content, so you can see for yourself.
One of my favorite things about the ASP.NET team is that a lot of them were community leaders - speakers, writers, open source library authors, etc. - before being hired at Microsoft. So it's hard to pick just one or two community leaders on the team, as pretty much everyone regularly speaks at conferences, publishes open source code, blogs, etc. So it's really hard to make a short list! Hopefully this is still useful to someone.
As several others have mentioned, you really should start with Scott Hanselman (https://www.hanselman.com/ and @shanselman).
[Disclaimer: he's my boss, but I joined his team because I was a big fan long before either of us worked at Microsoft]
The ASP.NET Weekly Community Standup is a great place to connect both with the team and with the leading members of the developer community. It's at https://live.asp.net/ with Damian Edwards, Scott Hanselman and me. Damian Edwards (https://twitter.com/damianedwards) is the program manager for the ASP.NET team. During the show, I usually share 10ish links to top posts, open source projects, etc. by the community. We feel like the ASP.NET Community is made up of developers both inside and out of Microsoft, so you'll see a mix. The links are usually in the show notes, and we also tweet the…
.NET definitely has a messy past but someone arriving today probably has the easiest time ever getting started because so much has changed to become a single streamlined product. All these opinions are weighed down by the very history that beginners don't have.
The expansive standard library, web/desktop/mobile/gaming output, Visual Studio (Code) IDEs, fantastic in-depth guides and documentation [1], dev evangelists like Scott Hanselman [2], and constant stream of content from MS team and community [3] makes it not only easy to get started but also continue until you're an expert.
I find it strange to complain about a 12 year old stackoverflow answer when other environments like nodejs are a nightmare once you get past the toy project stage. Anyone can write a simple tutorial for a to-do app, but it's how well you can grow that to a real complex system that determines how well-designed and productive an environment really is. And I've yet to find anything better.
1. https://dotnet.microsoft.com/ 2. https://www.hanselman.com/ 3. https://dotnet.microsoft.com/platform/community
I think everyone has these feelings. There is always someone you admire knowledgewise and there are just so many things to learn.
Don't forget, the internet you are connected to contains hundreds of millions of people and we all follow the same 10 k top performers? And I think 10 k would even be generous, perhaps it's 5 per niche ( eg. dotnet, python, gamedev, unity, ... ). The dificult thing is to not completely compare to them.
Eg. Scot Hansselman ( https://www.hanselman.com/ ) is a great evangelist of dotnet but also works for Microsoft. He has more easy access to many resources and he shares those.
John Savill also teaches at Pluralsight and has a great youtube channel for Azure weekly updates ( Eg. https://www.youtube.com/watch?v=cUcbSNK6LGg ). But he also works at Microsoft as a Principal Cloud Solution Architect, so it's also easier to accomplish what they are doing ( i'm not saying it's easy though)
Back when WSL was first released I tried getting my ruby environment set up using it, but at the time I still used a graphical text editor and getting it talking to the Linux filesystem was too much of a bother.
Nowadays I use vim so I gave it another chance a couple of weeks ago. Together with the new Windows Terminal app [1] it's been a great experience. I can run my editor and my code on Linux and then visit the webapp from the browser in the Windows environment.
Note: There's also better support for talking to the Linux filesystem from Windows nowadays, but I've not needed it so I can't comment on how good it is. Scott Hanselman has a good blog post on getting it set up though [2])
[1] https://github.com/Microsoft/Terminal
[2] https://www.hanselman.com/blog/RubyOnRailsOnWindowsIsNotJustPossibleItsFabulousUsingWSL2AndVSCode.aspx
> Those are layman’s concerns. Programmers love to learn new things and are typically good at it. If a given tech has merit and some unique advantages.
I don't think that's true, I believe most programmers are either dark matter developers [1] or people doing Java (or equivalent) all their life for a software service company. There is nothing wrong with that, but that would explain why less popular languages and ecosystem still have lots of stuff. For example, Rust has ~60k crates on crates.io, while Maven Central has ~400k packages. I believe Java is used by more than 10 times the number of people that use Rust. But the people writing the libraries in the first place are usually the people that are open to trying out new languages.
[1]: https://www.hanselman.com/blog/dark-matter-developers-the-unseen-99
I shared it primarily because it is an open-source UI project managed by Microsoft that has to support an "API" that is cross-platform, but it also meets this portion of your original criteria:
> as long as you can host the language a given UI framework is built in, you can use it to create UI elements in whatever platform you want
(The work has already been done to host React/JavaScript cross-platform alongside .NET: see Edge.js http://tjanczuk.github.io/edge/ previously mentioned elsewhere in this thread. http://www.hanselman.com/blog/ItsJustASoftwareIssueEdgejsBringsNodeAndNETTogetherOnThreePlatforms.aspx)
As an aside, I recommend you include some details summarizing reasons for rejecting existing solutions when initiating future discussions so all participants can begin on the same page.