Herding Code 84: Ex-Microsoft Developer Panel with Mike Moore, Jeff Cohen, and Scott Bellware

This week on Herding Code, the guys talk to Jeff Cohen, Mike Moore, and Scott Bellware about why and how they’ve moved away from Microsoft development and into the Ruby community.

  • K Scott asks the guests about why they switched. Jeff talks about how his switch from desktop development on Windows to Rails development started around 2005 and was primarily driven by the Ruby language itself. Mike agrees that it’s all about the Ruby language. Scott B talks about how he straddles both worlds but only sees .NET as a smart choice for building Windows applications now. Scott B goes on to talk about how it’s a philosophical thing for him as well, and how he prefers to work on a stack that’s more purely open source.
  • Scott K talks about the dichotomy in moving from Windows to get away from a proprietary platform and then you find yourself working on a Mac. Go Debian! Scott B talks about how Vista was a tipping point for him to move to Mac. He felt like Microsoft was too focused on shipping products – even if they weren’t good products.
  • Mike and Scott B talk about moving from ALT.NET to ex-.NET, and how they feel like it’s fear and investments in the .NET platform that prevent more people from moving. The guys talk about the “technology treadmill.”
  • Scott K talks about the problems in “dropping paygrades” in moving from being a senior .NET developer to being a junior developer on another platform.
  • Mike Moore asks why developers are investing in a technology that another company owns. Scott B says it’s not about Microsoft owning .NET, it’s about not being able to make decisions about where the platform is going. He says he sees Microsoft as a manufacturer of 21st century office equipment for large companies with the most influence. It works, but it can be heartbreaking when you see Microsoft moving into markets in a way that’s not as elegant as existing technologies (e.g. Entity Framework) because you know that the surrounding industry will move there, and eventually your work will move there as well. The result is a technology treadmill.
  • K Scott points out that as the average developer, you’re not really in charge of where Linux, Rails, or other open source platforms are heading either. Mike and Scott B clarify; it’s not about ownership so much as trusting where the Rails community is going.
  • Kevin asks Jeff about some recent criticisms he’s made towards Rails 3 recently. Jeff talks about all the things he likes about Rails, but says that he is disappointed that Rails is making changes designed to broaden acceptance and appeal to the enterprise. Despite that, he says that he hasn’t lost faith in where Rails is headed. He brings up the relative ease of doing TDD on Rails as opposed to .NET as an example of how Rails works more like he wants to work as a developer.
  • Scott K talks about how Microsoft has a conflict of interest as a tools vendor, and how a willingness to work with other IDE’s makes moving to other platforms pretty easy.
  • The conversation move towards talking about how Intellisense affects system and platform design. Other platforms like Rails are built so you don’t need Intellisense to be productive. Rails was never built to sell anything, and that shows in the platform. Mike talks about how he had to leave the .NET platform to find a place where people really cared about getting from 12 lines of code to 4 lines of code.
  • Scott B talks about how Rails committers are all building Rails applications, and points out that WPF didn’t get the attention it needed until Microsoft used it in Visual Studio. He then talks about how Rails will feel free to make modifications (monkey patches) to Rails, which often graduate to plugins and then move into the core. The key is that this is a continuous process rather than focused on a big product release cycle. Scott B talks more about the Ruby/Rails meritocracy.
  • The conversation shifts to the entrepreneurial nature of the Ruby on Rails community. Mike talks about how development cost is a major factor and that people who will take a risk in moving to a new platform are also more likely to take a risk in business.
  • Mike and Scott B talk about how polyglot programming is much more prevalent outside of the Microsoft development community.
  • Scott B talks about how ASP.NET was positioned as a competitor to Ruby On Rails, and how the two differ.
  • K Scott asks how much the move away from .NET is based on culture and developers are looking for a new community with different values. Mike talks about how he was on the verge of leaving programming altogether when he found the Ruby community, and how it reinvigorated him. Scott B says that there are things about developing in the .NET space which drive burnout and, in turn, reduces passion in the community. Jeff talks about how stumbling on Ruby showed him that it was just a lot more fun than what he was doing in his current job.
  • Scott B talks about how the plugin experience in Rails differs from the .NET development world – where you’re often waiting for services that just aren’t quite there yet.
  • Mike and Scott B talk about how they like reading Ruby code. Scott B talks about how the Ruby culture places a value on making code readable to the point that it’s competitive.
  • Scott K talks about how programming has become a business now, but he’s always liked to learn things just because it was fun. Scott B says that the skill level in the Rails world seems to be higher, but the people are less intimidating.
  • Mike points out that many of the leaders of the Ruby community were previously leaders in the Agile community. Scott B talks about how he’s seen Uncle Bob Martin moving to Rails over the past few years.
  • Scott B then talks about the problems in toolmakers who make tools but don’t use them.
  • The show ends, but not really. lots of crazy speculation about starting over with a new runtime on top of .NET.

Show Links:

Show notes compiled by Ben Griswold. Thanks!

Download / Listen:

Herding Code 84: Ex-Microsoft Developer Panel with Mike Moore, Jeff Cohen, and Scott Bellware