Dependency Injection Explained via JavaScript

When learning a new framework I often find it is useful to examine the source, use the framework, then go into a separate project and build the functionality from scratch to better understand the motivation behind the framework and what it may be saving me by using it. Angular is no exception. There are many…

JavaScript Garbage Collector Presentation

I was lucky enough to be able to give my first technical presentation at the Carolina Code Camp, and it was definitely a great experience. When thinking of a topic for this event, I felt it would be best to learn something new and to learn something that I actually wanted to learn and not something…

10 Reasons Web Developers Should Learn AngularJS

There is no doubt that AngularJS – the self-proclaimed “superheroic JavaScript framework” – is gaining traction. I’ll refer to it frequently as just “Angular” in this post. I’ve had the privilege on working on an enterprise web application with a large team (almost 10 developers, soon growing to over 20) using Angular for over half…

Video: A JavaScript Feed Reader in Under 10 Minutes Using Angular JS

An important component of the decision to use a framework should be the amount of ceremony and ritual involved. You must carefully weigh what it takes to ramp up on the technology and how common tasks are performed. It does no good to adopt a library that forces you to solve a problem with more…

JavaScript Chaos with Canvas

I learned about chaos theory quite by accident. On a family vacation we stopped by a campground along the Blue Ridge Parkway in the Appalachian Mountains. I was not an outdoor enthusiast at the time so while my parents were hiking I preferred to head over to the arcade to play Donkey Kong and Tempest.…

Five Reasons ASP.NET Developers Shouldn’t Worry About Node

I devoted my last post to reasons why ASP.NET developers should pay attention to Node.js. Taking a queue from high school debate team, and because no technology decision (or opinion) exists in a vacuum, I’d like to turn the tables and consider a few reasons why ASP.NET developers might stay away from Node (or at…

Five Reasons ASP.NET Developers Should Care About Node.js

Unless you’ve been living under a rock (or perhaps in a van down by the river) you may have noticed that Node.js is kind of a big deal. Since its introduction in late 2009, Node has steadily grown in popularity and now occupies prime real estate as a (if not the) de facto choice of…

Cookbook for ASP.NET MVC and Angular.js Web Apps

As I’ve spent time with AngularJS, I’ve become very impressed with the clarity it brings to developing enterprise-level web applications. I thought it would also be valuable to create a GitHub repository with some examples of how one might integrate AngularJS with ASP.NET MVC. Thus, the Angular-MVC-Cookbook repository was born. I hope that I (and…

What is the difference between JavaScript null and undefined?

  Primitives Let me begin by asking if you knew that there were only 3 primitives or primary types in JavaScript that can hold a value. That’s right, only 3. No more. No less. They are number, string and boolean. These are not objects. I know your dad said everything in JavaScript is an Object…

Taming Asynchronous Tasks in JavaScript with Zone.js

I recently learned about a new project by the Angular team called Zone. This project is one of those rare gems that is only a few lines of code but is so groundbreaking it literally takes time to wrap your mind around it. The easiest way to get started with Zone is to watch the…

Building a JavaScript Event Aggregator using TypeScript

The event aggregator is a useful mechanism for decoupling notifications. Typically, notifications happen through events. In JavaScript, an event is a notification that happens as the result of an action. You can think of it as a notification that is triggered by something. We call the triggering of the event “raising” the event. Events are…

Asynchronous Controllers in ASP.NET MVC 2

I’ve been working with version 2 of Microsoft’s ASP.NET MVC framework and have found a lot to like about it, particularly the new support for client-side validation based on data annotations. But the feature that excites me the most is support for asynchronous controllers and controller methods. Asynchronous pages have always been the secret to…