Jeremy Likness' Blog

  • Silverlight: Where Do We Go From Here?

    Silverlight made its debut in 2006 with the confusing acronym WPF/E (that’s Windows Presentation Foundation, Everywhere). Indeed the original dream was that a slimmed down version of the .NET Framework could run as a plugin in any browser (including smart phones) and enable developers to wield their weapons of XAML, data-binding, and C# to write line of business apps that would run everywhere. Although it took a few versions to mature, in May of 2011 version 5.0 was released with the features …

    Read More...
  • 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 effort than it would take using your basic tools. One of my favorite examples to showcase technology is a simple feed reader. Several years ago I recorded a video to demonstrate how to build a …

    Read 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. One rainy day even the video games were boring so I sauntered over to the main cabin and started leafing through their modest library of books. In between westerns and romance novels I glimpsed a …

    Read More...
  • Angular: The Modern HTML5 Answer to Silverlight’s MVVM

    First, let me say that I realize Silverlight in no way “owns” the Model-View-View Model pattern. I’ve written on this extensively in my article “MVVM Explained.” However, I believe it gained the most public exposure through various implementations on that platform and this is what led to its adoption on the web. In fact, you might think its strange to think that Microsoft could have possibly influenced the sacred land of open source JavaScript, but if you trace the history of view models you’ll …

    Read More...
  • Become a Development Wizard and Win an XBox One!

    For the past decade Wintellect has been helping developers like you improve what you do by sharing how we do it with our enterprise customers. We’re not just trainers, but hands on consultants who have spent combined centuries of experience in the trenches shoulder to shoulder with teams to create next generation software using the best tools and frameworks available. We’ve taken this experience and captured it in a set of online videos that … » Teach you thread fundamentals » Give you C# …

    Read More...
  • Use Zone to Trigger Angular Digest Loop for External Functions

    To continue my series on the power of Zone, I examine yet another powerful and useful way you can use zones to improve your application. If this is your first time learning about Zone, read my introduction to Zone titled Taming Asynchronous Tasks in JavaScript with Zone.js. Anyone familiar with Angular apps has run into the concept of the $digest loop. This is essentially a pass to update data-binding. When the model is mutated, which can happen a number of ways, anything observing the model is …

    Read More...
  • Instrumenting Angular with Zone

    In my last post I described an open source tool from the Angular team called Zone that allows you to execute a JavaScript workflow within an execution context. I demonstrated how to instrument a sequence of asynchronous events using Zone. This is a short post to follow-up and illustrate how to do the same thing in Angular. The first step, of course, is to Angular-ize the HTML. This is simple enough. Instead of manually binding a click function, I can use the ng-click directive, and instead of …

    Read More...
  • 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 excellent talk by its creator, Brian Ford. He demos some pretty cool scenarios that are all in the project repository. In a nutshell, Zone provides what you might consider a “thread execution” context for JavaScript. It …

    Read More...
  • Video: Angular and the .NET World

    While I was at the Angular ng-conf I had the opportunity to sit down with .NET luminaries Ward Bell, John Papa, and Dan Wahlin to discuss why Angular is so important to .NET developers with Ian Smith. We cover lots of ground, including real world benefits we've received by integrating Angular into projects and how we see solid development patterns we used in Silverlight and other XAML technologies carry forward to the web through Angular. I consider this discussion a must see for anyone working …

    Read More...
  • ngConf Report: Day 2 of Angular Goodness

    Yesterday was a fantastic day. I spent the afternoon helping out at the Wintellect booth. There is a rumor I may have been seen challenging attendees to a game of 9-ball in the game room once or twice. I also attended two great sessions, one about dependency injection and the other a panel discussion. The sessions from day one are now posted online. The Future of Dependency Injection This talk by Vojta Jina discussed dependency injection within Angular and what the future will look like. First, …

    Read More...