James Bender


James is the Appication Development Practice Lead at ICC in Columbus, OH. James has worked as a developer and architect on everything from small, single-user applications to Enterprise-scale, multi-user systems. His specialties are .NET development and architecture, TDD, Web Development, JavaScript, cloud computing, and agile development methodologies. He is an experienced mentor and author. James is a Microsoft MVP and former President of the Central Ohio .NET Developers Group. James’s book “Professional Test Driven Development with C#: Developing Real World Applications with TDD” was released in May of 2011 and his new book “Developing SPAs: Working with Visual Studio 2015, AngualrJS and ASP.NET Web API” will be out in the first quarter of 2016. James’s Twitter ID is JamesBender

This is My Side, That’s Your Side – Keeping Your Unit Tests Isolated with Mocks

Saturday, April 9th, 2016 at 1:30 pm in

An important goal of Test Driven Development (TDD) is to be able to isolate your code under test. This means the method and class you are testing at any given time should not interact with other classes or external resources like data stores or web services. So how do you test code the relies on these things? You use mock objects to stand in for them! This session will explain the basics of mocking including the different types of mocks (mocks, stubs, fakes, etc.). You will see how to use a mocking framework to make your test writing fast, easy and more dependable. You will also learn some good patterns for creating and using mocks and shown some anti-patterns to avoid. Lastly, you’ll be shown how to introduce mocking and unit testing into an environment that was not really designed for it.

How I Learned to Love Dependency Injection

Saturday, April 9th, 2016 at 8:30 am in

Tightly coupled applications lead to heartache. They are difficult to manage. They are difficult to maintain. The create applications that are inflexible. They make TDD, or even TAD (Test After Development) all but impossible. It doesn’t have to be this way. You’ve probably heard fancy terms like “Dependency Injection” and “Inversion of Control” but what do these mean and can they really help you write better applications and make testing easier? What about all those exotic frameworks? And what the heck is a “container?!” The bad news; this knowledge is a MUST HAVE for most testable applications these days. The good news, they are simpler than you think and besides simply making your code testable will also lead to good architecture practices that will help you develop better applications. This session will explain and demonstrate how these concepts some easy to use frameworks can help make your C# or VB.NET application more loosely coupled, easier to work with, more flexible, more maintainable and more testable.

From Zero to TDD in a Day

Friday, April 8th, 2016 at 8:30 am

Sold OutTest Driven Development (TDD) means freedom. The ability to bake quality into your application as you develop it can change the way you think about software frees you from the fear of creating applications that are brittle and don’t respond well to change. It affects the way we approach, design and write applications. Test Driven Development is powerful. Yet many developers allow themselves to be intimidated by what they perceive as added complexity.

This one-day boot camp will get you started down the road to TDD mastery. We’ll start with an overview of the concepts and benefits of test-first development with some simple hands-on examples. We’ll also cover some more complicated topics such as Dependency Injection, Mocking and philosophies of software craftsmanship.

Everything you need to know about REST

Saturday, May 11th, 2013 at 12:00 pm in 008

RESTful services are the next big new, yet not so new thing. After years of dealing with SOAP Developers, Architects and even Users are looking for a simpler alternative for working with resources on the net. REST based services provide a simple and inter-operative way to use web services in everything from C to JavaScript. In this session you’ll learn everything you need to know about designing and developing REST services. We’ll discuss routing, HTTP verbs, return codes and designing service routes. You’ll be shown some simple and free tools to help you develop and test your services and you’ll learn how to quickly and easily create your own REST services (to return POX and JSON) in .NET using WCF or ASP.NET MVC.

Everything you need to know about REST

Saturday, November 17th, 2012 at 8:30 am in 209

RESTful services are the next big new, yet not so new thing. After years of dealing with SOAP Developers, Architects and even Users are looking for a simpler alternative for working with resources on the net. REST based services provide a simple and intraoperative way to use web services in everything from C to JavaScript. In this session you’ll learn everything you need to know about designing and developing REST services. We’ll discuss routing, HTTP verbs, return codes and designing service routes. You’ll be shown some simple and free tools to help you develop and test your services and you’ll learn how to quickly and easily create your own REST services (to return POX and JSON) in .NET using WCF or ASP.NET MVC.