Chris Gomez


Chris has been writing Windows software professionally for 19 years. His day jobs have included developing kiosks for theme parks and retail stores and building portfolio analytics for commercial lending. Today His hobby for game development started much earlier by making games using ASCII characters in text mode using BASICA. However, in his free time, you’ll find Chris playing the latest games on his Xbox 360 or Windows Phone 7.

Master Git with GitHub and Visual Studio Team Services

Friday, February 24th, 2017 at 8:30 am

Git is the distributed source control system that’s barged into nearly every open source project and into corporate source control everywhere. Now you find yourself having to understand Git, with it’s arcane commands and strange outcomes that leave you wanting to throw away your work and start over time and again.

This full day lab will teach you how Git works, so you can understand what is happening to your local repository and how to get back on track. We’ll discuss the two leading places where you might interact with Git repositories: GitHub and Visual Studio Team Services.

* How Git Works
* Understanding the Commit Graph, Branches, and Tags
* “Distributed” source control – facts and legends
* Hands on with tools you might prefer to the Command Line
* How will you REALLY use Git at work?
* Hands on With GitHub
* Hands on With Visual Studio Team Services (Git Source Repositories)

Who needs Visual Studio? A look at using .NET Core everywhere else

Saturday, October 22nd, 2016 at 1:30 pm

.NET Core is here! We’ve heard how it is lightweight and cross-platform and that you can use the tools that make you happy. Most of us are going to let Visual Studio do the heavy lifting, and that’s fine, but you can learn much about how things work under the hood if you put the IDE aside and work with .NET Core without ever touching it.

To demonstrate, Chris will demonstrate acquisition and use of .NET Core on a VM untouched by a Visual Studio installation. We’ll compare the outcome to doing the same on Linux, and learn what the Omnisharp effort is all about.

The goal is to talk about how you can achieve the most friction-free experience for projects that want to be accessible on different platforms for people with different tastes. This session is perfect for .NET veterans who are brand new to .NET Core and want to see what the brave new world looks and feels like.

Git: A practical guide for the rest of us

Saturday, October 22nd, 2016 at 10:00 am

Git burst onto the scene and became the hot new must-have source control system. Boasting of a “distributed model”, you’ve probably heard how there’s no central server or that everyone has their own repository. You might have also heard that sometimes you just have to throw your repo away and start over when you get stuck… because that’s just how it is. Maybe you experienced similar frustration yourself.

Join Chris as we go over an introduction to Git as a source control system. We’ll get some myths out of the way, and look at practical ways to use Git in your organization or to contribute to source on GitHub. With a few simple techniques, you can then decide for yourself to use tools for some tasks or be a command line jockey if you like.

[Panel] Hack Your Career: tools, tips, and techniques that help you grow as a developer

Saturday, April 9th, 2016 at 3:00 pm

A new programming language is created every 13 days. A new framework is announced every 47 hours. And, a new cloud API is unveiled every 5.2 minutes. Are any of those statistics true? Who knows. But one thing’s for sure: staying up-to-date as a developer is a full-time job in itself… so how the heck do you do it?

Come join Chris Gomez, Todd Snyder, and Jess Chadwick – the hosts of the Static Void Podcast – as they lead an open discussion about the ways that developers not only keep up with the quickly changing landscape of software development, but maybe even gain a little productivity and (dare we say) enjoyment while doing it.

This isn’t any normal panel discussion, however – this is crowd-sourcing at its finest. In this session, you and your fellow peers are the panelists and we are the moderators, just there to keep the conversation going… and maybe throwing in a few colorful comments of our own. Regardless of whether you are a starry-eyed coder who just wrote your first app last week or a veteran with a stare of someone who’s seen the horror of their buddies overwhelmed by stack overflows, you have something to offer. So, come down and join the conversation – we promise you won’t be disappointed!

Oh, and no need to wait for the session to begin in order to start the discussion: feel free to submit topic suggestions on JabbR (HackPhillyCC room on jabbr.net), or tweet them with the hashtag #HackPhillyCC.

Group Exercise with Continuous Integration

Wednesday, March 9th, 2016 at 5:30 pm

You must bring a laptop. Don’t forget that power supply. We recommend more than 1 Gb of RAM and at least 10 Gb of free disk space. We will help you get organized and install the right software for continued virtual fun! We have wireless Internet access so you can download on-site.

Over three months we will cover Git and Team Services and how you can start using them at work. The third session will be a team exercise with assigned work items, burndown charts, Kanban boards, and continuous integration in Team Services.

Visual Studio Team Services is a free service for small groups of developers (5 or less). You can sign up for a free account at theVisual Studio Team Services website.

Visual Studio Code is a free editor from Microsoft and can be downloaded at the Visual Studio Code website.

If you don’t have Visual Studio you can download the community edition at the Visual Studio Community website.

GitHub is the most popular cloud hosted Git service. Create an account and install the tools.

Git with Visual Studio and Team Services

Wednesday, February 10th, 2016 at 5:30 pm

You must bring a laptop. Don’t forget that power supply. We recommend more than 1 Gb of RAM and at least 10 Gb of free disk space. We will help you get organized and install the right software for continued virtual fun! We have wireless Internet access so you can download on-site.

Over two months we will cover Git and how you can start using it at work. The second session will show how to integrate Git with Visual Studio, Visual Studio Code, and Team Services.

Visual Studio Team Services is a free service for small groups of developers (5 or less). You can sign up for a free account at theVisual Studio Team Services website.

Visual Studio Code is a free editor from Microsoft and can be downloaded at the Visual Studio Code website.

If you don’t have Visual Studio you can download the community edition at the Visual Studio Community website.

GitHub is the most popular cloud hosted Git service. Create an account and install the tools.

Git and Github

Wednesday, January 6th, 2016 at 5:30 pm

You must bring a laptop. Don’t forget that power supply. We recommend more than 1 Gb of RAM and at least 10 Gb of free disk space. We will help you get organized and install the right software for continued virtual fun! We have wireless Internet access so you can download on-site.

Over two months we will cover Git and how you can start using it at work. The first session will concentrate on use of local Git and a Git server like Github.

 

ECMAScript 6 – The “new” JavaScript you can use today

Wednesday, December 16th, 2015 at 5:30 pm
ES6 was finalized in June and the new features are being added to the browsers and platforms we all use every day.  Of course, this brings about a new era of compatibility, feature detection, and things for you to learn to stay on top of JavaScript!

First, let’s take a look at the new features and what you might use to make your JavaScript development easier.  There will be cheers, and there will be jeers!  Then we’ll take a look at the current state of implementation, including the various ways you can use it today.  You can learn plenty about how today’s JavaScript really works by studying the changes that were proposed and ratified for ES6!

Web Dev Panel

Saturday, October 10th, 2015 at 3:00 pm

SignalR – Get the maximum from the Real Time web

Saturday, October 10th, 2015 at 1:30 pm

We’ve all seen the SignalR demos with the chat application and the stock quotes updating from the server. So let’s move past that and get to high performance real-time web applications. You might need fast bidirectional capability for a game or you simply need to support more clients than one SignalR host can handle. So how can you test those limits on your servers? And how do you figure out what is wrong with your hub when it doesn’t work?!?

After a quick refresher on how to use SignalR, we’ll dive into these more advanced topics. We’ll stress test a server, debug through real problems that kept me up at night, and have a little fun with everyone’s Internet connected devices.

Game Development Made Easy and Fun

Saturday, October 10th, 2015 at 10:00 am

You’re a developer, right? Then you have all the skills you need for game development. Philly GameWorks (http://bit.ly/pgwmeetup) presents this showcase of great tools to make your first game.

We are going to focus on three toolsets in this session: Unity, Construct2, and Phaser. This showcase session will highlight the key features of each and show you games running in a browser. There will be plenty of demonstrations and we’ll look at the highlights of how you build your game in each tool.

Whether you want to publish to mobile devices or the Windows stores, you can do it. You can even publish on your own web site thanks to today’s modern browsers. There’s never been a better time to enjoy the fun of game development and send your creations to the world!

ASP.NET 5 SignalR

Wednesday, August 5th, 2015 at 6:45 pm

SignalR makes it easy for you to enable real time communication between your server and client.  Your server code can make calls “back into the JavaScript” of your web page and your web pages can make calls “to server methods” in SignalR Hub classes.  Great for server updates and multi user applications, you can use this technology today in your ASP.NET applications.

We will build a simple demonstration of JavaScript code “calling back into the server” and C# server code “calling back into JavaScript”.  We’ll deliberately create a few bugs and turn on SignalR’s debugging tools to fix them.  If time permits we’ll have some multiuser fun as well.

OmniSharp – Lighter Cross-Platform tooling for ASP.NET

Wednesday, July 22nd, 2015 at 7:00 pm

Who needs Visual Studio? The OmniSharp project seeks to make ASP.NET 5 development a breeze in several popular cross platform editors like Sublime Text, Brackets, Atom, and more. Even Microsoft has gotten into the act with Visual Studio Code. Would it make sense for some of your development team to use a low cost or free IDE to work on your code base? Could you persuade others who work on their Mac that they too could contribute to your code? Let’s quickly dive into as many of these as we can and see if they might appeal to you.

Kids Can Code Night

Wednesday, June 17th, 2015 at 5:30 pm

Jump start your daughter or son’s interest in programming at this special interactive night dedicated to kids from around six to twelve years old!  Your kids can get started today building apps, games, and directing robots using simple languages and tools.  Georgian and his daughter will show you how they worked together to complete fun puzzles that sparked her interest in code.  Fun retail robots exist today that grow with your child, allowing them to start playing with them at a young age, and coding for them using progressively more complex languages until they are building mobile apps for them on today’s professional modern platforms.

Afterwards, Chris will follow up with an introduction to simple game development environments you may already have in your home.  If you have Windows 8, you could already be using Project Spark to interactively create games that run on the PC and Xbox One that automatically get shared with the world.  Chris and his four year old daughter had a blast making games together using simple tools she could interact with and enjoy.

Please bring your youngsters for this interactive program complete with prizes and snacks!

Web Developer by Day, Game Developer by Night

Saturday, March 21st, 2015 at 11:30 am

Today’s modern browser is an excellent platform for games. If you’re developing web applications, you already have the skills you need to make and publish your first game! What you need to learn now are the fundamentals of game development. It is a different way of thinking than we are used to when building business applications, but the result is high performance graphics, audio, and controls that you can use to make the game you’ve always wanted. Support touch, mouse, keyboard, or the controller from your Xbox! The web is truly ready for game development.

In this talk, Chris will introduce you to PhaserJS. It takes care of the basics so you can concentrate on your game. We’ll build a basic game using HTML and JavaScript and you’ll see that it fits right at home on phones, tablets, and desktops. We’ll discuss using powerful toolkits like Apache Cordova to publish to iOS, Android, Windows Phone or the Windows Store. Afterwards, you’ll have taken your first step into the world of building games and have the support of a growing community behind you!

A Lap Around Functional Programming

Wednesday, January 21st, 2015 at 7:15 pm

Functional programming in the .NET world shows up in its purest form in F#, but this style of development is ready for you to use in many environments you probably already use.  C# has many functional features today (you probably already are).

Many of us are ASP.NET developers and using JavaScript more and more.  JavaScript is, first and foremost, a functional language.

Following up on Stachu’s look at F#, Chris will take a lap around the tools you can use today in Visual Studio and a quick survey of other options taking the functional world into modern enterprise development.  With distributed applications becoming the norm, it helps to have these tools in your bag to avoid the issues that we’re facing today.

JavaScript Tools

Wednesday, September 3rd, 2014 at 5:30 pm

You must bring a laptop. Don’t forget that power supply. We recommend more than 1 Gb of RAM and at least 10 Gb of free disk space. We will help you get organized and install the right software for continued virtual fun! We have wireless Internet access so you can download on-site.

Over eight months we will cover JavaScript in depth. This is month three. These Hands-On Labs will use a mix of popular tools and Visual Studio. VS 2012 or 2013 are recommended and you won’t need to install anything else to complete the labs.

Our journey continues with coverage of popular JavaScript tools for testing, editing, and enhancing your code.

SignalR Jumpstart Lightning Round

Wednesday, July 23rd, 2014 at 7:45 pm
In this talk, we’ll see how easy it is to add SignalR to your application and:
  • start calling javascript methods in the client browser from your server (what?!)
  • start calling server methods on your server from the client (whoa!!),
  • stop embedding all your business logic in SignalR hubs for use in the real-world (phew!!),
  • create cross platform clients that work together in ways you haven’t thought of before (WOW!)

SignalR – Enabling Real-Time Games and Apps on the Web

Sunday, June 22nd, 2014 at 9:00 am

In a short time, SignalR has grown from a humble open source project to an officially supported part of the ASP.NET namespace. SignalR enables you to break the dependency on the web’s request/response cycle without having to curate the whole process of creating web sockets, long polling, and using the right servers. SignalR does it for you with an intuitive architecture that lets you focus on building an app that updates the server and connected clients as things happen.

After a short introduction beginning at File > New Project so everyone can get up to speed on the power of ASP.NET SignalR, we’ll see new and advanced scenarios that make this technology exciting. Multiuser communication, “server push” scenarios, and high performance multiplayer games are now easy to create using the skills you already have as a .NET developer. Using C# and JavaScript, Chris will code and demonstrate multiplayer games that everyone in the room can join in on immediately. If you’re interested in the frontier of web games, you’ll even learn about the technologies you need to know to make that happen. There will definitely be lots of code!

ASP.NET SignalR: The Real-Time Web in the Real World

Saturday, November 23rd, 2013 at 3:00 pm

ASP.NET SignalR enables “real time” and “server push” scenarios where you can break the dependency on the request/response cycle and communicate back to your connected clients whenever you need to! Instead of writing ajax style polling that constantly pings your server, take advantage of the features that the big sites do like long polling, server sent events, and web sockets, but without having to care what your server and connected browser support. SignalR provides a friendly abstraction with a beautiful API that will have you building real time stock tickers, chat applications, or multiplayer games in no time.

Join Chris as he demonstrates the use of SignalR to power the communication of a simple multiplayer game that everyone with an internet connection will be able to try together. Chris will also provide real world experience on the ups and downs of development as well as how you can host SignalR anywhere with the power of OWIN. Connect your browser users AND thick clients from WPF and WinRT together. It works. It’s awesome.

SignalR

Wednesday, September 4th, 2013 at 5:30 pm

You must bring a laptop. Don’t forget that power supply. We recommend more than 1 Gb of RAM and at least 10 Gb of free disk space. External USB or Firewire drives really help. We will help you get organized and install the right software for continued virtual fun! We have wireless Internet access. If not, make sure that all required software is on your machine when you arrive.

Over the next six months we will cover the latest Microsoft tools for responsive web site development. The series starts with layout and controller basics. This will be followed by sessions on jQuery and plug-ins, templating tools like jsRender, scaffolding, REST, WebAPI, SPAs and SignalR.

These Hands-On Labs will use Microsoft Visual Studio Express 2012 or Visual Web Developer 2010 Express Service Pack 1. Visual Studio 2012 is recommended and you won’t need to install anything to complete the labs. If you are using Visual Web Developer 2010 you must install the components below. You can install all of them by clicking the following links:

Nick Berardi introduces SignalR development by showing how to build a simple browser-based chat application. You will add the SignalR library to an empty ASP.NET web application, create a hub class for sending messages to clients, and create an HTML page that lets users send and receive chat messages. This session will continue and build upon your knowledge of ASP.NET MVC that you have learned in previous classes.
After completing a SignalR tutorial, you decide to dive into a real project.  That’s when the questions start.  How do my services call into listening clients independently?  Can I use this technology in places other than just web sites?  And most importantly… when it doesn’t work, how do I figure out what’s wrong?
Chris Gomez will start with a working ASP.NET web site that retrieves data from a server.  We’ll upgrade it so the server uses SignalR to tell clients when the data is updated and what has changed.  Flipping this model around has profound benefits that you may just want to use in every project from now on!

Host the Web Anywhere With OWIN

Wednesday, June 19th, 2013 at 7:45 pm

Are OWIN and Katana the Microsoft projects you’ve never heard of? OWIN defines an open standard interface between .NET web servers and web applications.

So what does that mean? It means decoupling .NET web development from the server we always had to use: IIS. There are good use cases to host web frameworks in something other than IIS, such as your own application, and OWIN enables portability of your work. It can run in IIS… or it can run anywhere you need it.

The Realtime Web with ASP.NET, SignalR, and JavaScript

Saturday, May 11th, 2013 at 8:30 am

We’ve built web sites for years on the idea that they were stateless and changes occurred on a callback to the server.  That’s changing in a big way, and you can leverage your .NET skills to get up to speed.

The web is becoming stateful, real-time enabled, and programmable. In this talk, we will build a practical example of a real-time board game built on HTML5 and JavaScript that gets realtime state updates from a server that self-hosts SignalR.  All players can see what is happening as it happens.  The server exposes a public API that outside developers can use to extend your platform and add more value.  Starting at File > New Project, you will get an introduction to the HTML5 Canvas, JavaScript object patterns, ASP.NET SignalR, and how to embed a JavaScript engine for extensibility right in your server.

Start building extensible and powerful web applications after seeing how the way the web works is changing for good.

The New Web: Realtime, Stateful, Programmable

Wednesday, February 20th, 2013 at 7:00 pm

Today, the web isn’t what you remember.

It used to be stateless. Every call to your site began with a detective story of figuring out who the user was and hydrating their “state” so you
could continue useful work. The web didn’t remember state.

It used to be based on request and response.  Code was delivered to the  browser like a postman dropping off a package and speeding away.  You had to call back in to get updates. Sure, we have AJAX to poll for updates these days, but those are just endless calls for new packages behind the scenes.  The web wasn’t realtime.

It used to be filled with static applications.  Users click on the buttons, controls, and widgets provided and the web application can only do
what the developer implemented.  Sure, we “extend” web sites with REST “APIs”, but this isn’t the same thing as an SDK.

The web is becoming stateful, real time enabled, and programmable. Together, this lets us do some very interesting things. In this talk, you will see a practical example of a real-time board game implemented with a server maintaining game state so all players can see what is happening as it happens. We’ll use the HTML5 canvas, Javascript, jQuery, SignalR, and the power of embedding a scripting language for your users to extend your functionality.

Start building extensible and powerful web applications after seeing how the way the web works is changing for good.

Game Development with XNA

Wednesday, June 20th, 2012 at 5:30 pm

Have you ever thought about making video games but have decided that you’re just a “line-of-business” developer? Does game development seem like a mystic black art? Nonsense! The XNA Framework is ready for you to use C# or Visual Basic to create fantastic games that you can publish today for Windows Phone, the PC, and the Xbox 360. You can leverage your existing .NET skills and make money on Microsoft device platforms as well as other publishing channels. But how do you get started? Come see how surprisingly easy it is to create your own games with XNA Game Studio. We’ll start at File > New Project and use graphics, sound, music, and read input devices to create a complete game with no previous game development experience required!

Storing Passwords The Right Way

Wednesday, August 17th, 2011 at 6:45 pm

Web sites everywhere ask us to create new accounts and new passwords. When you build your site, do it the right way. Store your users passwords safely and securely so you won’t be the next victim of a hacker attack and the next lead story on the nightly news. You have a responsibility to get this right. We’ll see what .NET does for us and what we can do on our own to safeguard our users.