Shawn Wildermuth

Author, Teacher, and Filmmaker
.NET Foundation Board Member

The Blog

My Rants and Raves about technology, programming, everything else...


AngleBrackets Fall 2013

BX27kRzCAAACnrdI finished up my post-con for AngleBrackets today and am ready to head home. I had a great time and just spectacular attendees who had great questions! If you have a chance to go to AngleBrackets (or it’s sister conference, DevIntersection) make the trip. They’re coming to Orlando this fall!

I had a chance to do two talks and an all-day course. If you attended these, check out the source code and slides (where applicable) below:

Mobile First Responsive Web Design with Bootstrap 3

Read...


My eBook Free During AngleBrackets

My book about my life as a software developer (The Opinionated Software Developer: What Twenty-Five Years of Slinging Code Has Taught Me) is available for free until October 31st. Consequently this is same the time I am at AngleBrackets  (part of DevIntersection) in Las Vegas talking about Mobile Web, PhoneGap and Designing for Developers.

If you haven’t gotten the book yet, here is your chance for free! This has been the book I wanted to write for years now. Don't look for code in this book (ok, there are exactly two lines of code) - but instead I am writing about what being a software developer has meant to me. Hopefully some of the advice and observations will help you in your own career too!

Get it here:

Read...


Upcoming Appearances

Fall-orange-maple-tree_-_West_Virginia_-_ForestWanderAs the leaves change, I realize that I am going to be on the road a bit this month. I am doing a conference, a meetup and the MVP summit. I just want to get my Skymiles Platinum card ; )

If you’re at any of the following events, please come up and say hello. Don’t be shy. I don’t bite…at least not hard.

AngleBrackets (DevIntersection) – Oct 29-31

Read...


Using ASP.NET Authentication in Web API

Web API is a pretty sexy REST stack (though others are cool too). As I’ve been talking about it a lot lately, the biggest question by far is authentication and authorization. There are many options including OAuth, Token-based authentication, basic authentication, and even custom solutions. One option that should be included is to use your existing ASP.NET Forms-Based Authentication.

As a preview to my recently released course on ASP.NET Web API, we’ve released a clip that shows you how to piggy-back on ASP.NET Authentication to protect your Web API interfaces:

Read...


JavaScript Function Scopes

As some of you know, I authored a Pluralsight course on JavaScript for C# Developers. We’ve released an excerpt from that course covering how JavaScript function scopes work.

If you’re just getting started learning JavaScript, it can be easy to bring your C# biases to the language since they both have curly braces. Hopefully this excerpt will help:

Read...


My Opinions in eBook Form

I recently released my new writing project: “The Opinionated Software Developer”. This short book (about 35 pages according to Kindle) is a quick look at my experience in software development. It includes a history of my experience in the field as well as a look at the software developer psyche. The hope was to share my opinions about being a developer in the industry including how to deal with co-workers, how to avoid being a brat developer and how to motivate developers in larger organizations.

The eBook is free of specific technology choices and focuses on experience, skills, and opinions about being a coder in this fast-moving field.

Read...


Editing Styles with Firebug

firebugMost developers I know simply hate web design. As far as many developers are concerned CSS is evil. What CSS does for the web is magical but can be painful for developers that are used to functional or structural languages.

Luckily the browsers come to the rescue with great tooling. Here is a preview from my “Debugging the Web” Pluralsight course” which shows some of the basics:

What do you think?

Read...


Getting Ready for AngularJS 1.2

AngularJS is going through their release cycle now and that means that AngularJS 1.2 is going to be released soon with some specific changes that you'll need to address. I'll be updating my Pluralsight Course with the 1.2 changes as soon as the new version ships.

The biggest change for most people is the routing support is now packaged separately. To use routing you'll need to do two things:

Include the new angular-route.js:

Read...


Refactoring Nested CSS Rules using LESS

One of my favorite features of LESS is the ability to simplify my CSS rules that are deeply nested by using LESS to compose them more simply. I like this feature because it gives me the ability to clean up messy CSS files and make them more maintainable. Take a look to see what I am talking about.

LESS is an open-source dynamic stylesheet language for adding features to the CSS language that help you build better CSS. LESS parsing is supported in the free Web Essentials extension for Visual Studio 2012 and 2013 (though not supported for the Express editions) as well as in the free WebMatrix tool from Microsoft. It is also supported in most IDEs, as a JavaScript library and even a command-line LESS builder.

You can view this excerpt from my Pluralsight course covering Web Debugging with Firebug, Fiddler and more.  If you want to view the entire course, you can find it here:

Read...


Debugging Like a Knucklehead

So I've been writing a new Web API course Pluralsight. I am digging in how to handle versioning for an API and I think I've gotten it figured out but it just doesn't work. Throwing a crazy exception and just isn't working. I waste four hours trying to figure it out and I am cursing and grunting. The other people in the coffee shop are staring.

I spend a bunch of time on Google trying to find someone with a similar problem but no luck. Looking at the data and walking through the bug with the debugger didn't yield anything. Desperate, I reach out to Glenn Block himself for an answer. He's very gracious and agrees to help me out with a quick Skype session.

I tell him the story and he seems shocked. He's telling me things to try but I've tried most of them. I can tell by the look on his face that he doubts that this could be a bug…but it might be. So I told him I'd create a quick reproducible example so I could talk with someone on the team. With some things to try and my assignment to reproduce the problem in isolation, he left me to my own devices. 

Read...