Withdrawing from the Microsoft MVP Program
osr.com
osr.com
They've even used it to encourage members (behind closed doors) to shill Microsoft links [1].
[1] https://twitter.com/rickasaurus/status/636269822595235840
An award for being one of MS's best pimpers just doesn't hold the same level of street cred.
Now whenever I see someone wearing an MVP badge in their twitter bio I immediately discredit their pro-MS "advice" as an MVP shill wanting to score points towards their next renewal.
But really, if the MVP program was what it is said to be, people like you'd be in it.
ServiceStack has been a valuable contribution to the .NET community, and your continued development/support of it should defacto make you an MVP.
It's one of the marketing tools used to self-reinforce .NET's mono culture - which I view as the worst thing about .NET.
It stopped being anything remotely to do with technical merit or being an "MVP" years ago. I'd prefer to see the program abolished, then maybe we'll start seeing more tech diversity in .NET.
People have arguments in JVM-land about why you should use X web framework or Y SQL/ORM library or Z foobaz. Too often in the .Net world I see complete dismissal of everything but ASP.Net MVC, EF+MSSQL, etc. Oh, and of course you should use Azure for everything.
I freaking love F#, and to a lesser extent C# - but I can’t stand .NET as a whole because of this.
There is rarely a case to use EF.
My default is to just use ADO.NET with Dapper or ServiceStack.OrmLite.
For example, you'll quickly realize you need to have ```AsNoTracking``` on your queries because the performance is terrible.
You'll also find that you can batch update/delete items.
I've also had problems with migrations after updating EF Core (don't remember exactly).
You can get spun up quickly, with Linq, using something like Dapper or ServiceStack.OrmLite. They work on raw ADO.NET, so they are incredibly easy to reason/work with. The errors that you'd run into wont be shrouded in layers/abstractions that are specific to EF/Core.
But I also think that heavier duty ORMs have their place. Recent circumstances have meant that I'm building out a lot of applications from start to finish in one to three weeks. These applications deal with very little data, the largest tables are in the 1000's of records and in circumstances like that I need crank developer productivity to 11 and for that I'm willing to sacrifice performance and simplicity. And for that EF has been a great companion.
I've also used a combination of EF and DACPAC. Where I used DACPAC to manage the schema and migrations and used EF for CRUD and that's been a pretty great combo. And I definitely have to drop down to sql, especially for reporting/analysis type queries.
Kafka, Hadoop, Flink, Ant, Maven, Impala, Parquet, Avro, Spark...
Even Google if they wanted to actually get away with their little action, could have taken the opportunity to own Java.
98% of projects can be accomplished just as well with react or Angular, typescript or Vue, mysql or sql server, hibernate or EF, asp.net mvc or Nancy, c# or f#, git or tfs, Asana or VSTS. These decisions don't matter nearly as much as the expertise of the team. So it's nice to be able to field or join a team of experts on every part of the stack and focus on solving problems with technology and not the technology.
I do think I understand your point - there is comfort in knowing there is one default solution for almost every abstraction. But how much can you love it when each one tends to be mediocre?
Disclosure: I spent 10 years working on .NET from 2006 to 2016 , so I've missed the last revolution of .NET Core, so maybe things got better?
Not sure what you worked on but .NET has gotten better since 2016 but not by leaps and bounds(exception EF Core is leaps and bounds better than the prev. version). I've always thought asp.net mvc was good, newest one is better but not by a huge margin. Original EF was bad but EF Core is far better. TFS was mediocre but now everyone uses git. Typescript is absolutely delightful. Xamarin's kind of painful but all cross platform mobile development seems to be. Visual Studio is probably best in class of the heavy duty IDE's. I've heard complaints about nuget but it always seems reliable which is more than I can say about npm. The work item tracking kind of sucks but it makes up for it with streamlined integration from the IDE->commit->task tracking->time tracking->reporting->invoicing.
The part of the stack that always bothered me were the poorly designed DevExpress/Infragistics controls that were ubiquitous. They get weird impossible to debug errors. They seem to trade extensibility for endless amounts of configuration. But with modern .NET applications you don't see them anymore which has brought me great joy.
[0] - One time upper management forced all of the devs in the organization to use a high performance real time database that fell down with 200 points/minute. And would sometimes(monthly) crash so hard both the data and the installation and sometimes the vm were unrecoverable. It took 3 days to install and we required one full time person on a team of 5 whose full time job(she was working 60 hr weeks) was just to keep 3 instances running(Dev/test/stage).
It was mostly JEE or Spring, Swing or SWT, Ant or Maven, .... everything else tends to be loved in online forums but hardly seen live across the globe.
Stack Overflow recent survey results are yet another proof of it, every JVM language that is going to "replace" Java is stuck in single digit percentage.
Don't confuse your corporate monoculture for a monoculture of an entire ecosystem.
> It was mostly JEE or Spring, Swing or SWT, Ant or Maven, .... everything else tends to be loved in online forums but hardly seen live across the globe.
Yeah, big frameworks are still popular, nothing surprising about that. Thing is, these big frameworks are usually designed to be modular out of the box - if you don't like a certain component don't use it and pull in something else. No need to throw the baby out with the bathwater, and there is plenty of choice for individual parts of your stack without nixing Spring Framework or CDI. Hell, even if you do you have micro-frameworks like Dropwizard that are just various components welded together because the ecosystem makes doing it fairly easy.
> Stack Overflow recent survey results are yet another proof of it, every JVM language that is going to "replace" Java is stuck in single digit percentage.
And? Nothing "needs" to replace the language, though nothing until Kotlin has ever been in a position to even be a #2. Scala can't stop breaking compatibility every release, nobody ever heard of Ceylon, Groovy & Clojure don't fit the same statically-typed niche. All of these work though, and they all can share code with each other so it doesn't have to be a zero-sum game either.
I think this is a really important thing about JVM langauges. They can exist successfully at much lower thresholds of popularity because they piggy back on Java. So I don't have to worry about Groovy dying off (which is not to say it is) - because basically as long as Java is around it is going to have access to a giant community of developers. So using Groovy or Clojure or Scala etc is a much lower risk proposition than jumping in the deep end with a stand alone language. In that sense, Groovy / Clojure / Scala / Kotlin don't really compete with each other or Java as much as help each other, and Java's popularity is really the sum of all of them.
Apache Groovy is dying off. Whenever some software product bundles it as a built-in scripting language, after a short time Groovy's snags become apparent and that software starts bundling another scripting solution, e.g. Kotlin for build scripts in Gradle [1], or the Declarative Pipeline Syntax for Jenkins [2].
[1] https://docs.gradle.org/5.0/userguide/kotlin_dsl.html
[2] https://jenkins.io/blog/2016/12/19/declarative-pipeline-beta...
> ServiceStack has been a valuable contribution to the .NET community, and your continued development/support of it should defacto make you an MVP.
Yes, and back in the days when I received my MVP title, this kind of thinking was part of the criteria. Nowadays... no way. It started 7-8 years ago I think when they decided there couldn't be more than X mvp's for a given category and they wanted at least Y mvp's in a given region. So less in the west, and more in say India. While it's fine to make it a more world-wide program and recognize people in communities which are less known to people in 'the west', the criteria to accomplish this changed with it: if you started a user group somewhere in a region without an mvp and someone nominated you, you had a good chance becoming one.
This is all OK btw, if your criteria is about evangelizing. If your criteria is about 'the people who are the most skilled in ABC' then it's not. So this shift in who would receive the award changed the program.
Nowadays it's rather silly tbh. If you want to get renewed you have to fill in a form where you describe why you want to get renewed. wtf... it's an award you receive. Why would you need to tell MS why you'd want to receive an award you haven't received yet as they decide who gets it...
My point being that people who get them evangelize AWS and the certs themselves teach absolutely no technical competency. Compound this with requiring x number for cert holders for partnership benefits I think it was clearly intended to get people excited about selling AWS rather than exhibiting any kind of competence with primitives and concepts compared to something like CCN*.
certificates are a very "corporate developer" thing, where your bonuses and future career growth are dependent on very specific measurable metrics
I don't know why seeing this made me cringe so much. Probably because it was so transparently a ploy from Microsoft to make their most loyal devs feel special in hopes that they'd promote Microsoft tools more.
If I had to wager why it seems like the MVP program dieing (I have no clue if it is, this is the first post I've ever read about the MVP meta) it has to do with this point the author called out.
I suspect that, at least in its early days, the MVP program help guide product development teams. In return for helping guide development, these MVP's were given preferential treatment over other customers and access to insider information. Now that Microsoft is (at least appearing) more open, they can get their feedback from their open source communities.
Not in this case:
> My team did indeed miss the email from Pete
The purpose of his comment was to downplay that his team only let 1 of his emails slip through the "flood of emails" they receive. Whereas the whole reason why Pete's resigning his MVP in the first place because he felt he and his deep technical interests were being ignored. Not receiving a courtesy reply after multiple emails and 15 years of Service confirms as such.
and lets be honest, the only reason why he's getting any kind of response now is because it became an open resignation letter that's shining a light on the purpose and current state of the MVP program.
Others have suggested that SO and the OSS community, in general, are much wider audiences for MSFT to receive feedback from and that's not, inherently, true. MSFT still avails of things like the BETA program[0], so they still (seemingly) recognise that they have a need for that feedback loop (for the most part).
What seems to happen at Microsoft is constant culture shifts, based purely on who's making the most money at the time. In the previous years, it was Office that was the top dog, now it's Azure and, not surprisingly, things are changing in the company to push the biggest seller.
The byproduct of that, of course, is that everything else gets thrown to the wayside by chasing these new endeavours (by constantly changing directions) and not having a plan to fluidly bring everything forward and inline.
[0] - https://www.onmsft.com/news/join-microsofts-pre-release-beta...
[1] https://www.infoq.com/news/2007/06/TestDriven-Express-Emails
Now when I see technical advice from mvp, I wonder if they had ever read the manual...
Regardless of whether I think the MVP program was good, your question answers itself.
It's like being given a blue checkmark from Twitter or Instagram. People want it.
Eventually, they announced that VB6 was the end of the line for COM and VB.net was VB in name alone. I was one of about 100 MVPs that signed a petition encouraging MSFT to keep VB moving forward as a parallel product. "No, and stop asking" was the reply.
Fast forward a few years, and I saw the original DHH "Build a blog in 15 minutes with Ruby on Rails" video. What I saw didn't even seem possible. I knew that it was going to be a big deal, and the next day my friends and I cofounded the first Rails consultancy in the world circa Fall 2004. This led to my first Mac Mini, and deploying to Linux. Today I only boot into Windows to do VR and hologram stuff.
I haven't thought about my MVP certificate in over a decade, but I'm confident that it exists in a box. I'm honestly a little shocked to know that it's been going all this time.
Microsoft MVP is still a very west-centric program. If I had to guess, I'd wager the rising stars of this world are in Asia where the new hardware is being made. Microsoft doesn't really reach out to them, and I guess the feeling of disinterest is mutual.