Why you can't be a good .NET developer
The post argues that developers do not leave .NET out of self-loathing. It says the problem is that, in many .NET teams, decisions are made around the least capable or least willing members, which keeps better practices, tools, and approaches from being adopted. In that account, trying to improve things inside those environments turns into frustration, and leaving becomes a way to keep progressing.
The author gives examples of teams staying with TFS because git seemed too hard, sticking with ASP.NET Web Forms because MVC concepts would slow people down, and resisting shifts toward things like F# for the same reason. He describes many .NET shops as enterprise environments that keep reproducing weak decisions, and says developers who want to be more effective often end up moving to other communities or contexts where teams are expected to be more self-reliant.
Fichamento#
- The author rejects the idea that developers leave .NET because they dislike themselves or their platform.
- He says it is impossible to be a good .NET developer when team choices are repeatedly shaped by the lowest common denominator.
- He recalls a boss insisting on TFS because some developers would struggle with git.
- He also cites continued use of ASP.NET Web Forms because ASP.NET MVC was seen as too hard for the team to adopt quickly.
- In the discussion around .NET Core, he says the more important issue would be adopting functional programming in languages such as F#, but that this is blocked because teams consider it too difficult.
- He portrays many .NET software shops as enterprise environments that keep making weak decisions because of the limitations of their developers.
- He frames leaving .NET as self-preservation after realizing that caring and trying to improve the environment produces little practical change.
- He says the easiest way to progress is to leave for a community where people already work in more effective and productive ways.
- In his own case, he says he moved to a much smaller community where teams must be self-reliant and cannot indulge long debates over minor conventions.
- He concludes that frustration drives capable developers away, while the average ability and desire for improvement in the remaining .NET world keeps falling.
