Code Camp NYC - The Real Time Web with SignalR

13. September 2014 09:13 by cagomez in   //  Tags:   //   Comments (1)

Thanks to everyone for attending my session on SignalR.  I talked about quite a few things in the session that I linked to below.

If you’re looking for links to materials for SignalR, here they are!

PowerPoint Slides (Looks like DropBox will open these for you now right in your browser)

These days I’ve really latched onto using GitHub as the place to update these demos with new techniques and ideas.  Combine that with continuous deployment and I hope to soon be able to provide people with working code and running samples.

Chatter Demo

[View on GitHub] - Clone Url: https://github.com/SpaceShot/Chatter.git
Demonstrates SignalR basics.
Also includes Windows 8 Store version to demonstrate cross-platform capabilities of SignalR as your backend.

Stock Ticker Demo

[View on GitHub]  Clone Url: https://github.com/SpaceShot/StockTicker.git
Demonstrates IHubContext so you can make calls to clients from outside a SignalR Hub.
Demonstrates how you can avoid putting your business or simulation logic in SignalR Hubs.

Game Board Demo

[View on GitHub]  Clone Url: https://github.com/SpaceShot/SignalR-BoardGame.git
Demonstrates self-hosting SignalR in a Console app.
Demonstrates cross-origin request support with the client web pages originating from a separate MVC project.

Videos to watch

Building Real-time Web Apps with ASP.NET SignalR (Build 2012)

Scaling the Real-time Web with ASP.NET SignalR (Build 2013)

Under the covers with ASP.NET SignalR (NDC 2013)

dotNetConf 2014 SignalR – Introduction to SignalR as part of the online dotNetConf

Understanding SignalR Performance (NDC 2014) – Talks about how to think about wringing the best performance and how to measure

SignalR Lightning Round

23. July 2014 18:21 by cagomez in   //  Tags:   //   Comments (0)

Thanks for attending Philly.Net’s 15 minutes of Fame with our fast paced topical talks in fifteen minutes each.

If you’re looking for links to materials for SignalR, here they are!

Chatter Demo

[View on GitHub]
Demonstrates SignalR basics.
Also includes Windows 8 Store version to demonstrate cross-platform capabilities of SignalR as your backend.

Stock Ticker Demo

[View on GitHub]
Demonstrates IHubContext so you can make calls to clients from outside a SignalR Hub.
Demonstrates how you can avoid putting your business or simulation logic in SignalR Hubs.

Videos to watch

Building Real-time Web Apps with ASP.NET SignalR (Build 2012)

Scaling the Real-time Web with ASP.NET SignalR (Build 2013)

Under the covers with ASP.NET SignalR (NDC 2013)

dotNetConf 2014 SignalR

Getting Started With Publishing Games

22. April 2014 14:27 by cagomez in   //  Tags:   //   Comments (0)

I created a few videos that can help you get started with publishing games on Windows.  I’m going to continue making videos and blogging about them.  The videos are a way for you to see in bite-sized increments how to get started publishing games.

First, I decided to use the Unity game engine (www.unity3d.com) because you can get started for free, and you can publish to the Windows Store, Windows Phone store, Android, and iOS right away.

There’s no question the web site is a little misleading about this, so I will be making more videos where I introduce basic concepts but I’d also like to go through the last mile of platform specific content that will get your game approved.

To start, you can get the complete free Visual Studio Express 2013 for Windows (to make Windows Store apps) and the free Unity engine download, and these videos show you how:

The Real Time Web presented at First State .Net User Group

27. February 2014 16:30 by cagomez in   //  Tags:   //   Comments (0)

Thanks to everyone for attending my presentation about SignalR, OWIN, and the Real Time Web at First State .Net User Group.

Links

Building Real-time Web Apps at Build 2012 (good overview, but getting outdated. SignalR 1.x)
http://channel9.msdn.com/Events/Build/2012/3-034/player

Scaling the Real Time Web at Build 2013
http://channel9.msdn.com/Events/Build/2013/3-502

SignalR under the covers (Create a SignalR “lite” on stage)
http://vimeo.com/68383353

OWIN and Katana
http://www.asp.net/aspnet/overview/owin-and-katana/getting-started-with-owin-and-katana

The ASP.NET SignalR Getting Started Site:
http://www.asp.net/signalr/overview/signalr-20

Cross Platform Chat Sample on GitHub:
https://github.com/SpaceShot/Chatter

SignalR in action: A “board game” sample:
http://spaceshot.net

Forza 5 crashing – Should you go wireless?

21. January 2014 08:40 by cagomez in   //  Tags:   //   Comments (0)

(For YouTube videos of the crashing issues, where I demonstrate corrupt downloads of Forza Motorsport 5, and a full history of my troubleshooting of the Xbox One and Forza 5, see here: Forza 5 crashes on specific track every time, broken since launch)

I know what you are thinking.  How can this possibly be related?  I don’t know.  But for three people with three different Xbox One consoles, it seems to be working to switch from wired to wireless and redownloading.  Want the details?  Read on…

I had given up on Forza 5 and, truth be told, looked into returning my Xbox One.  My retailer return period expires in a week or so, and I was kind of done with being the troubleshooter over this.

Then I made some connections on Twitter and YouTube.  People had seen my blog posts, forum posts, and videos and said “I have the same problem!”

To make a long story short, one of these people (@tiwahu on Twitter) thought there might be an issue with using the Wired connection on Xbox One with our crappy Verizon supplied Fios 10/100 routers.

What is interesting about this is your natural inclination is “wired is better.”  I was asked by support a few times if I was connected wired into the router, and asked to provide more details about that. They preferred wired.  Who wouldn’t?

More...

Forza 5 crashes on specific track every time, broken since launch.

19. December 2013 10:31 by cagomez in   //  Tags:   //   Comments (0)
The following is an email I sent to a support email and also posted on the Forza Motorsport forums.  I needed to post it here because the folks at @XboxSupport have been the only ones to be truly responsive to my issues.  However, I can not keep describing the whole issue 140 characters at a time since each new day I encounter a new person who needs me to start over with them.
 
I keep the whole twitter thread link saved here:
 
 
Anyone reading this for the first time, please review that thread and the youtube video I discuss.  I have also extensively explained the issues in the linked forum posts.
 
What is very clear is that every time I install the game, the install appears to not completely work and at least one track will never load for me (no matter the game type, car, or user profile).  That track (so far it has been one per download but it doesn’t have to be.  Other Forza Motorsport forum users report problems with more than one) will crash forever, on any race type, mode, or user profile until i delete and redownload the game.
 
The problem is I can not get a clean download where I can prove every track works.  Each time, it may be a different track that is corrupt.  I still think it is possible for more than one to be corrupt.
 
So far no one appears to be able to help me.  I have had this problem since launch, although it took awhile to figure it out, and since Dec 8th I have been keeping meticulous notes about it.
 
We are almost at a month since launch and it is getting really annoying when you think about the hard earned money you've spent on a console and a game and the vendor of that game will either censor or refuse to respond to your pleas to help them troubleshoot the game.
 
They have the money already so perhaps that explains that...
 

Philly.NET Code Camp 2013.2 - SignalR

25. November 2013 12:44 by cagomez in   //  Tags:   //   Comments (1)

Thanks to everyone who attended my talk about using SignalR “in the real world.”  Besides being an introduction to SignalR for everyone who’s curious about this technology, we talked about some more advanced scenarios I have experience with, including using the IHubContext interface to broadcast from outside a SignalR Hub and the exciting “cross platform” scenario that is enabled by the several SignalR clients out there.

I wanted to start getting all the code we looked at up on github.  I will continue to update this post until all the samples we saw are ready for you to try.

https://github.com/spaceshot/chatter – This is the repository holding the chat web app and windows store app.  They should work together.

I did develop these projects in Visual Studio 2013, which has built in Git support and it is a lot easier to clone the projects directly from GitHub and begin working.  If you have a need for Visual Studio 2012 support, please let me know.

Up next, I need to get the StockTicker sample (modifying an existing service) up and finally the “game board” sample where you could move game tokens around a sample grid.

Coming soon are my tutorial writeups for those who didn’t make the code camp talk!

SignalR Videos

23. November 2013 13:56 by cagomez in   //  Tags:   //   Comments (0)

Here are three great videos to get you up to speed on SignalR

 

Building Real-Time Web Apps With SignalR
This talk was about SignalR 1.1, but the foundation applies.Build2012

 

 

 

 

 

Scaling the Real-Time Web with SignalR 
About SignalR 2.0 and begins to explore performance and scalability. Build2013

 

 

 

 

Under the covers of SignalR 
An on stage demonstration of building a SignalR-like framework.  Great to understand how it works.Ndc2013

SignalR 2.0 brings us closer to OWIN

3. November 2013 13:33 by cagomez in   //  Tags:   //   Comments (0)

So I got tripped up at Central Penn.NET’s Code Camp with SignalR 2.0.  I realized there are a lot of blog posts that need to happen to explain some of the changes.

One of the great things about NuGet and the building of a .NET ecosystem around NuGet packages is that installing components you want to make your application go has never been easier.  It’s never been easier to stay up to date.  It’s never been easier to adopt new versions.

But there is such a thing as breaking changes…

In my talk yesterday about using SignalR in the real world, I got tripped up when doing the Stock Ticker that updates as stock prices change.  I know now that a breaking change in SignalR 2.0 obsoleted the common MVC era extension method for setup that many modules use.

In SignalR, you would go into your Application_Start method in Global.asax and add:

RouteTable.Routes.MapHubs();

Many components add an extension method to allow you to add routes with simple syntax, but it becomes custom syntax.  That does violate the spirit of OWIN a bit, and I think the SignalR team is definitely very supportive of OWIN.

So when you create an MVC project and use SignalR 2.0, you now following the OWIN standard and create a Startup class that has any startup logic you need.  In this case, it’s mapping our hubs:

This also means we say goodbye to the Microsoft.AspNet.SignalR.Owin NuGet package since this implementation doesn’t need the setup being provided by that package anymore.  More info on that in the SignalR faq.

So for now, here is a link to download the completed Stock Ticker sample.  I’m going to investigate now whether a different version of SignalR is automagically downloaded to you when you create your first SignalR Hub class via tooling or whether you go with NuGet.

I know that you can install specific versions of packages using NuGet, but I think most people don’t do this when they hit File > New Project.  It might be something I do from now on in presentations just to make sure something hasn’t changed, even in the last few days!

StockTicker Sample Download

Hands On with SignalR - Philly.NET

4. September 2013 22:40 by cagomez in   //  Tags:   //   Comments (3)

Thanks to everyone who came to see Nick Berardi and I introduce SignalR development to you.

A reminder that the link to the materials for tonight are here: Hands-On Materials

I have placed the "extended" Word document in the zip, but left the project in it's original state.  

How many people would like to see the architecture fleshed out?  I mentioned in the talk that I held off separating the StockTicker and the HubContext because I thought it would detract from learning about SignalR, but I firmly believe you can keep your current systems decoupled as long as they have a way to subscribe or notify others of pertinent changes.  I might work on that just to have a solid reference for how you use this technology in the real business world.  Too many people start thinking SignalR couples too tightly to your logic, but it doesn't have to be this way!

About the author

Chris Gomez has been writing Windows software for about 20 years.  In 1984, an IBM 8088 PC came home. There wasn't much to do with it so he wrote games in BASICA.  This blog is for those of us who've made a career developing software but want to learn to make games.

Month List