Happy New Year 2015

2015 has formally arrived.

The New Year is always a good time to stop and reflect on yourself, your industry, and your career.

In 2014 I decided to change jobs and accepted a position with Sage Software. So far I'm really enjoying the work as well as the people I'm working with.

Most of my time thus far has been spent working with Microsoft's Azure, specifically Service Bus. It has been refreshing to work almost exclusively in C# for a while.

Top News Of 2014

Well, top news for developers who work with Microsoft technologies...

The big news has to be the open sourcing of much of .Net and the release of the community edition of Visual Studio.

Only time will tell if Microsoft's new strategy will pay off, but I'm hopeful it will.

Visual Studio Community

For a long time the price of Visual Studio made it a barrier to entry into the Microsoft ecosystem. The free Express editions were at best a cruel joke.

The new Community Edition seems to be the equivalent of the Professional Edition. The restrictions only kick in if you pass 5 developers. Naturally it isn't exactly that simple. It's 5 developers if you are a "non-enterprise" company...

.Net Open Source

Big wow on this one. Not only will much of the source code be open, there will be official versions for Linux and Mac.

I believe we can thank Azure for this one.

Since 20% of the VMs running in Azure are Linux, Microsoft couldn't avoid the reality that it was time to attract new developers or lose relevance to anyone under 40...

Cross Platform

For the first time when Microsoft says they have a cross platform strategy, they don't just mean Windows AND Windows Phone.

In addition to .Net on Linux and Mac, Microsoft has two options for writing mobile apps that target Android and iOS.

The first is a C# centric approach via their partnership with Xamarin.

The second is an HTML/JavaScript approach via Cordova, the open source Apache project that is the foundation of Adobe's PhoneGap.

I've only peeked at these so far, but I'm pretty excited with what I've seen.

Break With The Web Forms Past

The other big open source development from Redmond has been the next version of ASP.

For the first time, the split between the older Web Forms and the newer MVC and Web API will be complete.

Web Forms will be an island that does not share a code base with the rest of ASP.Net.

I've played with the new bits some and although I like the new direction, I expect some vocal backlash from the .Net community.

Entity Framework Code First ONLY

This will likely cause some wailing and gnashing of teeth.

With EF 7 the code first approach will be the only approach.

I don't have a strong feeling on this one personally. I haven't really had a great relationship with EF, and mostly write ADO.Net code myself rather than rely on EF. (Shh. Don't tell anyone I said that!)

Personal Plans

I feel a bit like a kid in a candy store at the moment.

There are so many really cool things I could play with that I'm not sure where to put my spare time.

At a high level I'm waffling between web and mobile play projects.

On the web side, I'm toying with writing a .Net static blog generator to replace the DocPad I currently use.

Nothing against DocPad, but I prefer working with C# over JavaScript.

I really want to spend some time with the new ASP MVC on Linux. For some reason that just sounds super fun to me.

On the mobile side, I'd love to experiment with both the Cordova and Xamarin approaches in Visual Studio.

Finally I'd like to try my hand at screencasts. I got a cool Blue Yeti microphone for Christmas with plans of spending this week producing a beginner's series on SQL. Naturally I got the flu for Christmas as well and haven't been able to speak without coughing...

If you want to see my first attempt at a screencast (prior to the new microphone), check out Formatted JSon In Notepad++ Video Tutorial.

Best Wishes!

Here's hoping 2015 is a great year for everyone!

Formatted JSON In Notepad++ Video Tutorial

Since my most visited post is Formatted JSON In Notepad++, I decided it would make a good subject for my first attempt at a video tutorial.

Since my original post, I've discovered a plug-in I like even more: JSTool.

This tool not only has more features than JSONViewer, but it doesn't have the annoying requirement that you select the JSON text before applying it.

JSTool will help you make minified JSON readable the same way JSONViewer does, but it can also go the other way. It can minify your JSON for you.

Of course, JSTool isn't just for JSON. It can format and minify JavaScript files as well.

One word of warning: if you try to minify a very large JavaScript or JSON file (like the JQuery.js file) it can bog down a bit. It only took a few seconds to minify the JQuery code, but the UI became unresponsive during those seconds. Don't panic if it freezes for a bit.

Both plug-ins have a JSONViewer that gives you a tree view of your JSON or JavaScript to help you navigate your code.

Getting The Plug-Ins

Getting any plug-in in Notepad++ is as simple as going to the Plugins menu and clicking Plugin Manger: Show Plugin Manager. From there you get a nice dialog that lets you search for plug-ins. In this case just search for JSON.

Comments Welcome

Let me know in the comments on the YouTube video if you like it, or if you have ideas for other tutorials you'd like to see.

I'm currently planning a beginner's guide to SQL series.

ASP vNext: Playing With The Alpha Bits Presentation

Presentation Cover
Slides from my GGMUG presentation. Click the image to download.

Update I have updated my slides to reflect changes I made for later versions of this talk.

I gave a talk at the August 2014 meeting of the Gwinnett, Georgia, Microsoft User Group (GGMUG) about what's coming in the next version of ASP.Net.

Click on the image of the cover to download my PowerPoint slides.

There is a ton of coolness in the next release of ASP.

In my talk I covered:

  • Open Source Development of ASP MVC/Entity Framework/SignalR/etc.
  • Cross Platform: Run on Windows, Linux or Mac!
  • MVC Merged: MVC 6 is merging of MVC, Web API and Web Pages (Web Forms Not Included)
  • Cloud Optimized Runtime: leaner, meaner, faster startup
  • Super Modular: Replace most parts with your favorite project
  • New Project System: Nuget + Proj file == project.json
  • New Configuration System: Good-bye Web.Config, unless you want to keep it
  • Dependency Injection: Out of the box DI, but replaceable with your favorite
  • Command-line Tools: kvm, kpm, k

I tried to reassure everyone that most of these changes are either optional or can be over-ridden.

The command-line tools will also be available, but not required. Visual Studio will still be the KING!

I made the point that this release will mark the split between the MVC line and the Web Forms line. They will no longer be built on the same base.

Web Forms isn't going away, but I'm not sure it will receive super active development in the future, either.

Already most new features have started on the MVC side and later been added to Web Forms.

I don't have a crystal ball or access to secret Microsoft plans, but my guess is that MVC will be the right choice for new projects. I don't believe Microsoft could kill off Web Forms if they wanted to because SharePoint is built on it. I also don't believe they are likely to want to kill it off.

Here are the links I put on the Resources slide:

Let me know what you think about the slides. Like them? Hate them? Let me know!

I do apologize to everyone who attended for missing the 1 hour mark I set for myself. I did give everyone a chance to leave at the 1 hour-ish point, so I hope nobody felt trapped. I tend to get excited about technology and love talking about it!