Desert Code Camp 2013.2

I'll be speaking at Desert Code Camp on Saturday, November 9th, in Chandler, Arizona.  I'm doing an insane 5 session marathon.  If you live in the area, or care to visit, please consider one of my sessions:

Date and Time Fundamentals

Managing dates and times properly is one of the most difficult things to get right in software. This is mostly due to us stupid humans and the how we have introduced nuance into our calendars and clocks. In this session, I will help you straighten it all out. We will cover general concepts such as UTC and GMT, daylight savings time, local time vs. instantaneous time, time zones and the different time zone databases, ISO8601 standards, important date-time gotchas, and more. We will dive deep into classes for managing time in the Microsoft .Net framework, including DateTime, DateTimeOffset and TimeZoneInfo. We will then take a brief look at NodaTime - a C# library aimed at replacing those classes. We will also get a quick look at the JavaScript Date object, and a few JavaScript date/time libraries including moment.js. Code samples will be in either C# or JavaScript, but much of the information is relevant to any modern software language or architecture.

JavaScript Dates - What a Mess!

In this session, we will explore some of the limitations and defects of the JavaScript Date class. We will also explore several JavaScript libraries that make date and time issues easier, and will talk about proposed changes to the ECMAScript standards surrounding time zones and internationalization. This session will be pure JavaScript, using Node.js and Browser examples, and should apply equally well to .Net, Python, PHP and Ruby developers. (If you are not familiar with concepts like daylight saving time and time zones, then you should also attend my Date and Time Fundamentals session.)

Discovering Noda Time - A Better .Net Date/Time API

Noda Time is an alternative date and time API for .NET. It helps you to think about your data more clearly, and express operations on that data more precisely. In this session, we will explore the Noda Time API, its data types, and cover many common use cases. We'll also talk about IANA Time Zones, and why they are superior to Windows time zones. By the end of the session, you should feel comfortable using Noda Time in your applications. (If you are not familiar with concepts like daylight saving time and time zones, then you should also attend my Date and Time Fundamentals session.)

A first look at RavenDB

Have you wanted to break in to NoSQL but were intimidated by other options? Do you think scalable multi-entity transactions are not possible without a full RDBMS like SQL Server? Fed up with the mapping overhead that comes with ORMs like Entity Framework? Come take a closer look at RavenDB. This next-generation document database was designed specifically with .Net developers in mind. Learn how easy it is to use to add a schemaless, structured data store to your .Net applications. No prior knowledge of RavenDB or NoSQL is required, but you should have familiarity with C# and general application development.

What's new in RavenDB 2.5

RavenDB, the NoSQL Document Database for .Net, has gone through many enhancements and upgrades. In this session, I will highlight as many of the latest and greatest features as possible in the time allotted. If you are not familiar with RavenDB, you should first attend my other session, "A first look at RavenDB".