January 16, 2013
A small group of us like to meet once a month for the NWCPP meetings at Microsoft, and then we go out for beers and argue about D, programming, movies, and any other idiot things that come to mind.

I suspect that there may be a few of you in the area who may not know about this, so feel free to join in.

----------------------------------------
Welcome to 2013!! I would like to welcome Jeff Tucker as our presenter for the January meeting. Pizza is being provided by Randstad Technologies.

Time and Location:

January 16, 2013, Microsoft Campus building 40 Steptoe. PLEASE NOTE THIS IS NOT OUR NORMAL MEETING ROOM!!! The presentation will start at 7:00 PM.

Title: Metadata and reflection in C++

Abstract:
A robust reflection/metadata system in C++ can be extremely powerful and has many applications, particularly in game programming.  It can facilitate sophisticated debug output and logging, trivial factory implementation, automatic serialization and deserialization for any arbitrary object, automatic binding to a GUI system, and even automatic binding of objects and function to a scripting language (both Lua and Python are popular).  The typeinfo/RTTI system currently in C++ however is simply not up to this level of functionality, so a more sophisticated solution is necessary.  In this talk, I will implement a simple, yet powerful, meta reflection system in C++, completely from scratch, and using test-driven development.  I will also show how I leverage a similar system in my own game engine.  Finally, I promise there will be no more than three PowerPoint slides.

Bio:
Jeff Tucker is a lecturer of Computer Science at DigiPen Institute of Technology, where he teaches classes on networking, databases, programming, and software engineering.  He has been a software engineer for the past 13 years and formerly worked at Microsoft on the Windows Core Networking team.  He also currently does research in procedural content generation and graphics algorithms as well as making computer games.





Thanks,

Lloyd