5 ms·
Unless it's come a LONG way in just the last 6 months, I don't think I'm being too harsh. I really jumped on board the train back when Microsoft's sudden openn
by StevePerkins 9y ago
Unless it's come a LONG way in just the last 6 months, I don't think I'm being too harsh.
I really jumped on board the train back when Microsoft's sudden openness made them the #1 topic on HN for awhile, and C# suddenly found new life as a cool fad language.
I tried out .NET Core on all three platforms, started reading C# books, and even listened to the weekly "Community Standup" video podcast to be updated on the implementation's progress. I believe certifications are a bit of joke, but I was even thinking about pursuing a MCSD so that I might shift my career more from Java to C# with my next job change.
I had realistic expectations about .NET Core's implementation in the early going, as it was Beta and rapidly changing. But I grew disillusioned as it went to RC and and even RTM, and was obviously still at the alpha stage in reality. Completely changing the build toolset post-launch? Seriously? And everything is branded with a different name every time I turn around?
The documentation and community was never on the same page with the current status of the implementation. I could just never get even Microsoft's own basic examples to reliably build and run. Perhaps the "Hello world" console example, but not anything beyond that. I would put it down, and every 3 to 6 month pick it back up again to see if I could get the ASP.NET Core example to run. Sometimes I could, sometimes I couldn't. And it was always one or two more API's (e.g. Entity Framework) away from being ready for real professional use.
For awhile I was checking in every 3 months, and then every 6 months, and at this point I think I'm on an annual schedule. And currently I'm no longer seriously considering a career switch.
I don't mean to be too harsh on the PEOPLE behind .NET Core, as they seem to be smart, good people striving to re-invent a platform and extend its lifespan by decades. But I think that some realism is sinking in now that the initial hype wave has subsided. Re-implementing even a usable subset of a platform as large as .NET was always going to take WAY longer than people were originally supposing.
- SideburnsOfDoom 9y ago> Unless it's come a LONG way in just the last 6 months, I don't think I'm being too harsh. .Net core has not stood still in the last 6 months - the VS2017 release was a big milestone. In the next six months we expect NetStandard 2.0 and .Net core 2.0
- agentgt 9y agoI'm curious why you wanted to shift your next job to .NET? Money? Hedging it to be the future? Like the tech/languages/tools better?
- StevePerkins 9y agoI work for a company that does a lot in the SaaS backoffice space (e.g. Google Apps), and at the time we were launching a whole new product around Office 365. I just had a bit of "grass is always greener on the other side" envy of our Microsoft team. They were in a bit more sexy position in terms of management focus, their tech stack seemed intriguing, and the more I tinkered with C# the more I liked it. It seemed like everything I loved about Java, with extra features and syntactic sugar over the parts that I didn't like. .NET Core, and the idea of shipping your app with a self-contained runtime only megabytes in size, sounded amazing compared to the 300 MB Docker images we were building for our Java stuff. Everything about the Microsoft/C# team felt next-gen compared to the Google/Java team. I even bought a Windows Phone, and starting doing most of my web searches with Bing. Since then, the Office 365 project got shelved, and most of that team is gone. Microsoft is doing some interesting things to try and catch up with modern trends. But much of it is still smoke-and-mirrors at this point. The cold reality is that underneath all the "cloud" marketing, Microsoft's customer base is very much conservative enterprises and not-so-savvy SMB's. Customers are fine with Microsoft throwing in the cloud offerings as add-ons for the on-prem stuff... but the customer DNA still very much revolves around running on-prem software, one or two (or more) generations behind the current release. There just wasn't a thriving market for partners in the pure-cloud space. A lot of my career has been like that. My perceptions driven by what's happening with my current employer, without having a clear view of where the overall industry is heading. It's really 50% luck that I'm a well-paid senior Java developer today... because there were SEVERAL points along the way when I was tempted by what a past employer was doing with Delphi, or Ruby, or something else that in retrospect would have been a major career detour or setback.
- agentgt 9y agoSteve thank you so much for your detailed answer to my queries of pure curiosity! Next time I'm in Atlanta I would love to meet in person (btw thank you for putting your real live info online. I love learning about new people) and grab some beers (or whatever). I went to GaTech and my company is technically based in ATL albeit we are virtual. email is whatever @ snaphop dot com
- simooooo 9y agoYou're saying that the projects built once but not again?
- StevePerkins 9y agoNo, I'm saying that I would follow the then-current instructions for building a hello world ASP.NET app... and half the time those instructions simply weren't working even for a completely clean from-scratch environment. The documentation and website material wasn't keeping pace with the actual implementation. Which for a full reference guide is one thing, but for the "Getting Started" hello world example on your main marketing page is another thing altogether.
- simooooo 9y agoAh yes the docs are shit. I've spent more time than enough trying to find what package functionality moved to
- partisan 9y agoI can't say I have had issues when following the instructions on the MS site, but I did go down a rabbit hole trying to work with the Entity Framework tools, ultimately finding that they were not supported by the LTS release. There are a lot of outdated tutorials out there. Many of the new ones still don't acknowledge a DotNet Core version so it's something of a crapshoot. Libraries are often incompatible with the version you installed. You absolutely can build something complete using the framework. You just have to put in work to resolve these issues. Microsoft has come across as uncommitted for many years now. Their guidance has been a recipe for pain. The path to success on their platform is to stick to the mainline.
- manigandham 9y agoIt has and in another 6 months we will have .NET Standard 2.0 that will have much better tooling and almost full parity with API surface. It's not hype, it's real and it works.