Herding Code 145 – NDC Cage Match with Rob Conery (node.js/socket.io) and Damian Edwards (SignalR)

While at NDC 2012 in Oslo, Jon MC’d a Cage Match between Rob Conery (Node.js and socket.io) and Damian Edwards (ASP.NET and SignalR). Immediately after the cage match ended, Jon and K. Scott caught up with them to talk about the similarities and differences between these development stacks.

Download / Listen:

Herding Code 145 – NDC Cage Match with Rob Conery (node.js/socket.io) and Damian Edwards (SignalR) [audio://herdingcode.com/wp-content/uploads/HerdingCode-0145-NDC-Cage-Match-with-Rob-Conery-and-Damian-Edwards-update.mp3]

Show Notes:

  • Jon asks Damian how he’d summarize the distinguishing features. Damian says they’re very similar feature-wise, and it comes down to how you want to develop. Rob says the main difference for him is that node+socket.io is all Javascript, which has pros and cons.
  • Jon recalls a part in the cage match where Rob talked about invoking Javascript methods on the client and asks Damian if SignalR can do something similar. Damian talks about how SignalR’s hubs can also invoke dynamic client methods.
  • Jon asks Rob about WebSocket support and fallback to older alternatives. Rob and Damian both discuss the fallback methods.
  • Rob asks Damian about confirmation and callback support in SignalR. Damian explains how that works with jQuery promises in the Javascript client. Rob asks for more info about how SignalR pushes content to the client, and Damian talks about the use of JSON.
  • Jon asks about the differences in development stacks.
  • K. Scott asks about what was actually built during the presentation. Rob and Damian talk about what they built in the time available. Rob was wanting to use Backbone if time permitted. Damian says he generally uses simple HTML for many cases.
  • Damian calls out a future feature they’re working on for SignalR that adds something like an Update Panel for Web Forms using SignalR.
  • Rob talks about the synchronization feature Backbone uses with SignalR and tells Damian they should add something similar to
  • Jon asks if Rob and Damian are "web scale." Rob talks about how he load tested using NodeLoad. Damian talks about how he tested using Flywheel and WCAT. Damian says they’ve been able to get great throughput out of SignalR and how they’re moving to some custom data structures to possibly double or triple capacity in SignalR 0.6.
  • Rob thinks it’s interesting the SignalR can run outside of ASP.NET, and Damian talks about the hosting models for SignalR.
  • Jon asks about some of the differences in development. Rob talks about the Node module ecosystem, Damian calls out some of the advantages of using .NET on the server.
  • SignalR runs on Mono.
  • K. Scott asks what the future holds for SignalR. Damian talks about 0.6, calling out future performance enhancements in the in-memory message store and standardizing on OWIN as the hosting layer. In version 1, they’re looking at the client story, low level transport, cross-domain support, and more.

Show Links:

Herding Code 144 – GitHub for Windows with Tim Clem, Paul Betts and Phil Haack

In this episode, the guys talk to Tim Clem, Paul Betts and Phil Haack about GitHub for Windows.

Download / Listen:

Herding Code 144 – GitHub for Windows with Tim Clem, Paul Betts and Phil Haack [audio://herdingcode.com/wp-content/uploads/HerdingCode-0144-GitHub-for-Windows.mp3]

Show Notes:

  • The guys start off talking about why there is a need for GitHub for Windows.
  • Kevin asks if GitHub for Windows can be used as a client for other Git hosts.
  • Kevin asks for an overview of GitHub for Windows and if it is similar to GitHub for Mac.
  • Jon asks what they did to make the install process so smooth.
  • K. Scott asks what technologies were used to build it.
  • Scott asks about the features that GitHub has that are missing from GitHub for Windows.
  • The guys discuss the decision to use WPF, which leads into a discussion about developer and designer interaction.
  • The guys talk about Metro UI.
  • Jon asks about the install and update process.
  • Kevin asks Phil about his transition from web development to desktop development.
  • Jon asks about the different OSS libraries and frameworks used to build it.
  • Kevin asks about unit and integration testing.
  • Kevin asks if they dogfooded GitHub for Windows.
  • The guys talk about line endings.
  • Kevin asks about Linus Torvalds’ recent comments about GitHub.

Show Links: