DotNetFringe 2015 Recap From a Former .NET Developer

DotNetFringe 2015 Recap From a Former .NET Developer

As some may or may not know, I have quite the storied past in .NET. The year was 2008 and I just landed my first job as an internal IT developer for a largeish corporation in San Antonio, TX. The first project I was on was a WinForms application written in C#, .NET 2.X if I recall correctly. It was built using CAB, CAB was a rather complicated and possibly controversal project from the Microsoft Patterns and Practices team. I was young and rather new to programming, it was my first “REAL” line of business app and I was very excited to just be making money doing what I loved.

Most of the code base was not very good by my standards today, but it suited our team well enough. The project had all the classic problems that largely don’t exist in the .NET ecosystem anymore (at least I hope). It used all of the evil things that folks in the Alt.NET community we’re trying to fight against.

  • Stored procedures
  • Heavy use of inheritence
  • No tests
  • Shared developement database
  • Magic strings everywhere
  • Click once deployements from a developers workstation
  • TFS

We were a small team lead by the quintessential expert beginner, but at the time I loved it. We were still doing a lot of good things, but I strived for more. I was a furocious seeker of knowledge, it was a GREAT time to be a .NET developer. There were so many of us with the same shared pain, I read every blog post I could get my hands on. I’d refresh CodeBetter, Los techies, etc all day. Enevitably I landed at the legendary blog of Jeremy D Miller, the shade tree developer. The Build Own CAB Series spoke directly to my pains at work. I’m not sure if anyone else at the time fought so hard against stored procedures. His twitter debates about them were legendary. I think back on how badly he was attacked on twitter about it and it most have been hard, others too, it was a hard hard hard fight. At the time I didn’t fully understand the problems, but I certainly benefited from that effort. His efforts truly spoke to me, I told myself “I want to work at Dovetail someday, I want to learn from the best.”

This lead me to attend Pablo’s Fiesta in February 2010. I remember getting off of the plane and renting a car to go down to the Holiday Inn near the conference. There I ran into Dru Sellers and he says, “Hey, would you like to join me for lunch, I’m going to Chuy’s with my good friend Jeremy Miller”. I was blown away, hells yeah I want to come with you. Afterward he said invited me to join him on a visit to the Dovetail offices, it was like a dream come true, I was there when Chad Myers, Jeremy Miller, and Josh Flanagan were giving Phil Haack the very first demo of FubuMVC. I was there to see Dru give the first demo of Nubular (which inspired NuGet). It was there I met Ryan Kelley and we became known as “The two Ryan’s

In 2011 I went to work for Dovetail and I had achieved my goal. I finally made it and for two great years I got to work with my programming heros Jeremy Miller, Chad Myers, and Dru Sellers. In those two years me and the rest of the FubuMVC team built some awesome truly innovative things, we tried to boil the ocean so to speak.

  • Bottles
  • Command line parsing with model binding
  • Multi view engine support
  • Controllers without base classes
  • IoC all the way down
  • Html conventions
  • Content negotiation

In 2013, I left Dovetail, moved to ruby and formed my company HuBoard, Inc but I’ve always kept my eye on the community and I’m still friends with many people in the community.

Why all this history, get the point man

I tell you all the history, because that was the theme of #DotNetFringe in a large part. There was a lot of history in that conference ballroom. The people there were the people that fought tooth and nail to get MSFT to embrace open source.

There was a panel where a lot of that history came out, I’ll have to go back and watch some of the videos but the “shocker” of the panel was when Scott Hanselman called James Nugent.

Elitist and mean

That will be a moment in the history of open source in .NET for me. It’s history just like the time Rob Conery called the Alt.NET community a bunch of assholes on stage. There are a lot of sins that Microsoft has not atoned for and to put it bluntly there are a lot of mean people in the community that need to be nicer.

All of that history, is all the drama history it’s just the past so to speak, it’s meaningless in the grand scheme of the true historic moment. We won!

Microsoft open sourced .NET

The real history is:

That is the only history that matters. There are a lot of people that are afraid of the past and they shouldn’t be. It’s open source now and there is no going back.

Point of no return

They have reached the point of no return, Microsoft has a hard task ahead but if they mess it up, the community will fork it. It happened to NodeJS with io.js and it seems to be working just fine for them. I don’t want that to happen, but open source will win.

I for one am excited and any other current or former .NET developers should be too. Java is a huge disappointment if you move over from a strong C# background. There are problems that compiled, strongly typed, fast as hell languages are really really good at and I can wait for .NET versions of java technologies like Apache Storm and Hadoop.

Things I’m excited for:

  • static linking the CLR
  • apt-get install CLR
  • CLR support for languages on the JVM
    • clojure.NET
    • scala.NET
    • ruby.NET
    • etc
  • .NET + Linux == Happiness
    • vagrant
    • ssh
    • debian packages
    • FastCGI (nginx)
  • Storm.NET
  • Hadoop.NET

Things you should expect and thus not be mean to people about:

  • Tooling that doesn’t support windows
    • version managers like rbenv, rvm, nodenv for .NET
  • Noobies
  • former .NETers returning
  • Java converts

It’s my opinion that the CLR is better than the JVM and hopefully Microsoft handles .NET better than Oracle has handled the JVM.

For me, I’m letting the past go.

I’ve realized I have a chip on my shoulder too and DotNetFringe was the therapy I needed to get over it and let it go.

In closing, don’t be mean, the drama history is not history it’s just the past.

Cheers’s to the true history, .NET is open source!

Cheers’s to the future, I can’t wait for the next DotNetFringe

About Ryan Rauh

My name is Ryan Rauh and I like shiny things. If I've seen it on twitter more the twice most likely I've looked at it or tried it. I really like memes and other silly and seemingly useless things out on the internet. I blog about things *I* think are cool and interesting, I hope you will find them cool and interesting too.
This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • Great writeup Ryan – completely agree with you.
    As @PanesOfGlass and @Kangaroo made clear – if you care even a little about the future direction of .NET/CLR/C#/F#/Nancy/ASP.NET/, GET INVOLVED NOW!
    Microsoft is learning open source, but it’s learning FAST and is willing to change and adapt if given constructive feedback. Likewise, the the open-source community can be an amazing force for good and great things, but sometimes needs to consider others’ needs, constraints, fears and goals.
    Following the events of the last 6 months and the awesomesauce that was .NET Fringe, I have never felt more positive about .NET and the opportunities its various communities can now start to enjoy. Let’s join forces here and support one another, as well as Microsoft, Xamarin, etc. in finally making .NET what we know it can be … and more!
    Was great meeting up at Fringe and look forward to doing so many times hence ;)

    • rauhryan

      > Was great meeting up at Fringe and look forward to doing so many times hence ;)

      Likewise, I hope we cross paths again

  • notmyself

    I went to all the ALT.NET Confs save the first and I have to agree .NET Fringe felt like those confs but with more celebration than angst. Everyone seemed genuinely excited about the future including me.

    What was sorely lacking was some key people in attendance. Oren, Jeremy… all many people who moved on to ruby and node…

    • adamhill42
    • Jeremy could not make the event, but he said 3 guys from his company went. He have very much NOT moved on from .NET as he told me verbatim. I definitely agree it is a shame that he could not be there. He knows i wanted him there.

      As to Oren, it would have been great to have him there. We reached out a pretty wide net, but we did miss pinging him directly.

      Regardless, the event was open to anyone who cared about the future of OSS in .NET and we even had a few attendees that don’t do .NET development _at_all.

  • Great post Ryan. You captured exactly what a lot of us were thinking. 2008 happened, and no one is denying that. A lot of progress has happened since then due to multiple factors. We really wanted this event to focus on where we go from here. The community has the ball.

  • Peter

    Are there any videos of the conference for those who couldn’t be there?

    • Not yet, but they’ll be posted. Your best bet is to follow the twitter account @dotnetfringe

  • Martin Schinz

    Clojure.NET is a reality today. Rich Hickey has always been adamant that there will be first class .NET support for clojure.

  • Mohamoud

    “… I read every blog post I could get my hands on. I’d refresh CodeBetter, Los techies, etc all day…”

    And I was doing the SAME thing back in the day and I still do ;)
    You guys really have contributed greatly to my growth as developer for the past years and for that I am forever Grateful