Sessions - All
.NET Collections Deep Dive
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Salon D
Abstract: The .Net framework provides a rich set of collection classes, but how much do you really know about them? In this presentation we’ll take a deep dive into the .Net 4.0 collection classes and examine which are best for what scenario and why. By the end of the presentation, you’ll no longer be happy just reaching for the same old collection you always have before, but you’ll be armed with the information required to pick the best collection for your needs.
Presented By: Gary Short
About the Speaker: Gary Short has 20+ years experience as a software developer and architect, working in sectors as diverse as banking, pharmaceuticals and utilities. Currently he is a Developer Evangelist for DevExpress. His interests lie in architecture, especially Technical Debt and Refactoring, as well as data mining and business intelligence.
Top
:- should_learn(Prolog, You).
Technology/Platform: Other Languages
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Salon E
Abstract: Prolog is not like any other language you are likely to come across. It is a logic driven, declarative language that has been around since the 70s. It is not OOP nor purely functional, and though it has influenced many languages it never really got popular outside of Japan. That's the bad news and most people stop here. However, the good news is that Prolog allows you to attack certain problems in an elegant and succinct way. Prolog and Prolog-like languages have found use in a variety of AI, scheduling systems, and the semantic web. This presentation is directed at novice Prolog programmers and people who may have never seen prolog. Prolog has very little syntax (more than Fourth, less than Ruby) and so that part is easy (you'll get a handout). The hard part of Prolog is that it's so different. We will cover the basics of Prolog and work our way up to a simple expert system. We will also cover how to use Prolog to consume and provide web services using the LGPL'd SWI Prolog.
Presented By: Joshua Smith
About the Speaker: Josh is a developer for American Greetings Interactive. He has 15 years of professional IT experience and has been a sysadmin (and still kinda is), programmer in various languages, consultant, employee and guy who makes sure the pop machine is full. He lives and works in Ohio with his wife and two children and tries to use his powers for good.
Top
A better way to get to done: NuGet Package Management
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Salon A
Abstract: Last year a collective effort of the .NET community and Microsoft started a project to help make you more productive. Join one of the non-Microsoft core team members as he deep dives into the awesome of NuGet. Come find out what package management means for you and the bottom line. You don’t want to miss this!
Presented By: Rob Reynolds
About the Speaker: Rob Reynolds has been programming in .NET since the early days of 1.0. In his day job he gets his hands dirty as a technical lead in the world of crop insurance. Who would have thought his prior experiences with calculus and FFA would have ever come in handy?! Rob is a C# MVP, an MCSD for .NET, holds a bachelor's degree in MIS from Kansas State University, is active in the Topeka .Net User Group, a regional INETA speaker, an eagle scout, and a veteran officer of the US Army Reserve. Rob is very active in OSS and manages several OSS projects. Some of those projects include UppercuT, RoundhousE, Chocolatey and NuGet. Rob is the FerventCoder because he is very passionate about his craft.
Top
A Few of My Favorite (Python) Things
Technology/Platform: Other Languages
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Salon D
Abstract: Python's "batteries included" philosophy means that it comes with an astonishing amount of great stuff. On top of that, there's a vibrant world of third-party libraries that help make Python even more wonderful. We'll go on a breezy, example-filled tour through some of my favorites, from treasures in the standard library to great third-party packages that I don't think I could live without, and we'll touch on some of the fuzzier aspects of the Python culture that make it such a joy to be part of.
Presented By: Mike Pirnat
About the Speaker: A Python nerd of 11 years and active in web development for over 15, Mike works at online greeting leader AG Interactive, where he serves as a wandering samurai, doer of deeds, righter of wrongs, integrator of systems, wrangler of code, bearer of standards, seeker of truth, advocate of excellence, educator, mentor, craftsman, and catalyst. He likes a nice glass of wine and long walks on the beach--unless there are lots of rocks, which hurt to step on.
Top
A Force of One: Agile and the Solo Developer
Technology/Platform: Software Process
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Salon G
Abstract: Ever been invited to a project kickoff party only to find out that you’re flying solo? Congratulations, you’ve just become the ultimate co-located, self-organized, cross-functional, energized agile team of one. Join us for this session where we explore how the lone coder can take advantage of the best agile has to offer in this era of ever shrinking budgets.
Presented By: Clint Edmonson
About the Speaker: Clint Edmonson is an Architect Evangelist in Microsoft’s North Central District, working with aspiring and seasoned architects to understand Microsoft’s latest developer and platform offerings and develop strategic roadmaps for their adoption. He lives in St. Louis, Missouri and is the host of www.notsotrivial.net.
Top
A Lap Around ASP.NET MVC 4
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Salon A
Abstract: As ASP.NET MVC continues its rapid delivery pace, there are many new features to explore, including a number of updated project templates, better support for mobile applications, and support for asynchronous methods. In this session, Steve Smith (ASPInsider and ASP.NET MVP) demonstrates these new elements, as well as code generation “recipes” that can easily be deployed via NuGet. You will leave this session ready to take advantage of the latest features ASP.NET MVC has to offer.
Presented By: Steven Smith
About the Speaker: Steve is a Senior Architect with The Code Project, a Microsoft Regional Director and MVP, and founder of NimblePros. He has been a regular conference speaker since 2001 and has written or contributed to several books on software development, including 97 Things Every Programmer Should Know. Steve founded and helps coordinate Northeast Ohio's Software Craftsmanship User Group located in Hudson, OH (HudsonSC.com). Steve is passionate about software craftsmanship and architecture and design best practices. He enjoys helping fellow programmers achieve their own "ah-ha" moments through speaking, his blog (http://SteveSmithBlog.com), videos, and other opportunities. Before joining The Code Project, Steve founded NimblePros, an agile software studio focused on software craftsmanship through their work, training, and tools designed to help developers deliver better software. Steve lives in Kent, Ohio with his wife Michelle, daughter Ilyana, and son Nikita. He enjoys biking, swimming, karate, and all manner of games when he is not immersed in the latest developments in software.
Top
Actor Model Programming in C#
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Nile
Abstract: With multi-core processors in all desktop computers and nearly every mobile device, developers must use asynchronous operations and concurrency to create responsive applications. The Actor programming model is an increasingly popular method of achieving the scalability benefits of concurrent computation without the impact to productivity that is inherent using traditional concurrency approaches. Stact is a library that enables C# developers to leverage the power of Actors, bringing the simplified concurrent programming model used by languages such as Erlang and Scala to .NET applications.
Presented By: Chris Patterson
About the Speaker: Chris is an architect for RelayHealth, the connectivity business of the leading healthcare services company in the US. There he is responsible for the architecture and development of applications and services that accelerate care delivery by connecting patients, providers, pharmacies, and financial institutions. Previously, he led the development of a new media delivery platform for TV Guide, enabling the launch of a new entertainment network seen on thousands of cable television systems. As an open-source contributor, Chris is an author of MassTransit, a .NET service bus framework, and Topshelf, a Windows service framework.
Top
Advanced IoC with Castle Windsor
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Nile
Abstract: All of us who use Castle Windsor IoC Container know how easy is to configure and use. But registering classes and interfaces is just the tip of the iceberg with Windsor. Have you ever wonder how to start using Aspect Oriented Programming in your code? Well if you are using Windsor, you already could! Without any setup! What about creating factories that just wrap Windsor functionality? What if I told you that you don't need to write those classes, Windsor can do it for you! Join me for a session in which we will explore together Windsor facilities (like Startable, TypedFactory and Nhibernate, etc) and AOP functionality provided out of the box!
Presented By: Amir Barylko
About the Speaker: Amir Barylko started his career in 1994 working for IBM as a senior developer while he was finishing his Masters degree in computer science. Since then he worked as team leader and architect for the past 15 years. Having started with languages like C++ and Java he spent many years coding in C# and training other developers in topics such domain modeling, abstractions, patterns, automation, dependency injection, testing, etc. Being an incurable geek, always thirsty for knowledge, his passion for technology moved him towards Ruby on Rails a few years ago, becoming an advocate of RoR web development. Also following he's teaching passion he did his first RoR training a year ago, and recently a TDD training with great reviews. Amir is a rare combination of high technical skills, lots of experience in a wide range of platforms, exceptional presentation skills and great sense of humor. His presentations are always rich in content and fun to attend.
Top
Agile & UX: What changes & other CRAP
Technology/Platform: Software Process
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Orange
Abstract: Are agile and user experience design compatible? Can they work together or is agile a square hole to the UX round peg? We contend that they are compatible. We help you recognize your company's UX appetite, regardless of software methodology. We then look at how agile changes things, discuss some of the UX practices developers need to understand (including CRAP), show how UX and developers can collaborate, and finally discuss agile and UX in the wild.
Presented By: Jon Stahl
About the Speaker: Jon co-founded LeanDog Software Studio in 2008 after 18 years of experience providing IT leadership in both Fortune 500 and start up organizations. His passion is eliminating waste, optimizing the performance of IT teams and helping organizations become lean and agile. Jon provides extensive hands on experience in organizational transformations to Agile and Lean software methods. He is an active thought leader in the Agile, Tech and Entrepreneurial Community. He openly shares his studies & learnings at conferences and meet ups. His company office is on a boat floating next to a WW2 Submarine in downtown Cleveland. In addition to providing a home for over a dozen monthly user group meetings at the LeanDog Studio in Cleveland, he has co-organized events such as Ignite Cleveland, Cleveland Startup Weekend and Code Retreat. He received his degrees from Ohio State University. He is married with two lovely children and two ugly bull dogs. Michael Norton (Doc) is an Agile Coach and a partner with LeanDog living in Wadsworth, OH. Doc's experience covers a wide range of development topics. Doc declares expertise in no single language or methodology and is immediately suspicious of anyone who declares such expertise. A frequent speaker, Doc is passionate about helping others become better developers, working with teams to improve delivery, and Software Craftsmanship. As a member of LeanDog, Doc provides coaching, mentoring, training, and delivery in Agile/XP/Lean software development techniques. He has more than 20 years of experience in software development and has been a promoter and practitioner of Agile since 1999. Past roles include Senior Consultant at ThoughtWorks, VP of Technology at the Samara Technology Group and Software Architect at Ohio Savings Bank.
Top
An Intro to Test Driven Development
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Zambezi
Abstract: Test Driven Development is more than just writing tests first. It requires a different thought process. I will show you that thought process, and how to become a more effective developer, write less code, reduce zero defects, deliver your code faster, and make it to happy hour!
Presented By: Philip Japikse
About the Speaker: An international speaker, Microsoft MVP, MCSD, CSM, and CSP, and a passionate member of the developer community, Phil Japikse has been working with .Net since the first betas, developing software for over 20 years, and heavily involved in the agile community since 2005. Phil works as the Patterns and Practices Evangelist for Telerik (www.telerik.com), and serves as the Lead Director for the Cincinnati .Net User’s Group and the Cincinnati Software Architect Group Phil is also the founder and president of Agile Conferences, Inc., a non-profit dedicated to advancing agile in all aspects of software development. In his spare time, Phil works part-time as a Firefighter/Paramedic, serves as Cub Master for his sons’ Cub Scout Pack, and volunteers for the National Ski Patrol. You can follow Phil on twitter via www.twitter.com/skimedic and read his blog at www.skimedic.com/blog.
Top
An Introduction to Expression Blend
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Sagewood / Zebrawood
Abstract: Microsoft Expression Blend is the premier GUI editor for WPF and Silverlight applications. In this presentation you will receive an introduction to the Blend UI and how to use it to quickly and easily build an application interface. Topics will include Configuration, Layout Controls, how to leverage Blend with Visual Studio, and more.
Presented By: Joel Cochran
About the Speaker: Joel Cochran is an Expression Blend MVP, an INETA Community Champion, and a Microsoft Certified Technology Specialist (MCTS) in Windows Forms and WPF. He is the founder of BlendSIG, a virtual Special Interest Group focused on Expression Blend and author of "Expression Blend in Action" by Manning Publications. He is also the author of "The Practical MVVM Manifesto" (http://practicalmvvm.com). He has been developing for Windows since 2003 and is a self-proclaimed "Blend Evangelist". A frequent speaker at User Groups and Code Camps, he enjoys teaching and writing about .NET and other topics. You can find him online at http://www.developingfor.net or on Twitter at http://twitter.com/joelcochran. Joel has served as the Director of Operations for Stonewall Technologies, Inc., an ISV, in Staunton, VA, since 2000.
Top
An Introduction to SignalR
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Nile
Abstract: SignalR, an asynchronous signaling library, is one of the new tricks in the Microsoft web stack. Think about the possibilities available to you in a browser when you've got constant, server-initiated conversations and real-time responsiveness from within the web browser (like chat, stock updates, publish/subscribe implementations, and so on). Brady Gaster will introduce you to SignalR and will walk through the process of setting up an MVC 3.0 application to work with SignalR using both it's Hub and Connection methodologies. From the server-side implementation of each, up through the jQuery code that allows for the web content to respond to server activity, and a brief investigation into the code SignalR dynamically creates to proxy the calls will be topics covered during this session.
Presented By: Brady Gaster
About the Speaker: Brady Gaster is a Windows Azure Technical Evangelist who works for Microsoft. Brady has been working with .NET for over a decade in numerous settings - government, education, consulting, gaming, and mobile, hosting, and most recently, the cloud. Brady's core competencies include web API development and integration, middleware development, TDD, service orientation, and continuous integration. His most recent endeavors include Windows Azure, playing around with the Kinect, SignalR, AOP, Netduino, Orchard CMS, Behavior Driven Development.
Top
Android Pro Tips
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Nile
Abstract: Android has made mobile development easy and accessible to thousands of developers, but what makes the best Android developers stand out? This discussion covers the tips and tricks that professional Android developers use to make featured apps.
Presented By: Michael Pardo
About the Speaker: Michael Pardo is a software engineer working on Android apps at Mobiata, now a subsidiary of Expedia. He has been working as a developer for over eight years. Most of that time was spent writing web apps using C#. Now he spends most of his time writing Android apps. He also writes an active record style ORM for Android called ActiveAndroid. ActiveAndroid allows you to easily persist objects to SQLite databases in Android. Prior to Mobiata, Michael has worked for Web Ascender, WhitePages, Artemis Solutions, and MC Squared.
Top
Android: Where You Can Stick Your Data
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Nile
Abstract: Most useful applications require persistent storage. Most persistent storage requires a database. Android offers several local storage options: preferences, files, and a database. Here, Android developers who are past "Hello World" and familiar with SQL will get a head start for easy database interactions. We will create and use a schema in the supported SQLite database, check its contents in the debugger, and explore its limitations. After this session, budding Android developers will know what to do with all that mobile data.
Presented By: Ted Neward & Jessica Kerr
About the Speaker: Ted Neward is an Architectural Consultant with Neduesic, LLC, specializing in high-scale enterprise systems, working with clients ranging in size from Fortune 500 corporations to small 10-person shops. He is an authority in Java and .NET technologies, particularly in the areas of Java/.NET integration (both in-process and via integration tools like Web services), back-end enterprise software systems, and virtual machine/execution engine plumbing. Jessica Kerr has programmed for twelve years at companies large and small. An expert in Java and back-end services, she is branching out into F# and Android development, writing articles for developerFusion.net and presenting to other consultants. Jessica is a resident of St. Louis, a consultant at Daugherty Business Systems, and a mother of two crazy nuts.
Top
Applied F#
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Salon G
Abstract: By now you will have heard many introductory talks on the subject of F#, now it’s time to take things a stage further. In this presentation we’ll have look at how I use F#. We’ll see examples of F# used to calculate values for some of the metrics that are important in my line of work. By the end of this session you will have a clearer understanding of how to use F# in your own projects.
Presented By: Gary Short
About the Speaker: Gary Short has 20+ years experience as a software developer and architect, working in sectors as diverse as banking, pharmaceuticals and utilities. Currently he is a Developer Evangelist for DevExpress. His interests lie in architecture, especially Technical Debt and Refactoring, as well as data mining and business intelligence.
Top
ASP.NET MVC vs. Ruby on Rails
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Salon H
Abstract: There has been a long debate lately about the similarities and differences of ASP.NET MVC and Ruby on Rails. In this session, Shay Friedman will walk you through the good, the bad and the ugly of both frameworks providing you points to consider when coming to choose one of them. Come and see how these two wonderful web development frameworks collide!
Presented By: Shay Friedman
About the Speaker: Shay Friedman is a Visual C#/IronRuby MVP and the author of IronRuby Unleashed. With more than 10 years of experience in the software industry, Friedman now works in CodeValue, a company he has co-founded, where he creates products for developers, consults and conducts courses around the world about dynamic languages and web development. You can visit his blog at http://IronShay.com.
Top
Async From the Inside
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Salon E
Abstract: This talk will assume you’ve either been to part 1, Bill Wagner’s talk “Async from the outside” - or that you’ve used the preview builds available with async. Using async and await in C# 5 can feel like magic - much as LINQ probably did when you first saw it years ago. Does that make you nervous? Is your immediate response to a new feature always, “I must know how this works”? Do you reach for the spec or ildasm before trusting the compiler? If so, this is the talk for you. The pixie dust can all be explained away though, and in this talk I’ll do exactly that. No more Santa Clause; good-bye Easter Bunny - they’ll be replaced by state machines, continuations, pattern-based awaiting and task builders. Having moved up in abstractions when using async, we’ll have to move down to the generated code to see how it’s all implemented. Be prepared to be somewhat frazzled by the intricate dance performed by the C# 5 compiler on your behalf - and then be very grateful that the end result is that you don’t need to write such code yourself any more!
Presented By: Jon Skeet
About the Speaker: Jon Skeet is a software engineer at Google London by day, and a C# "enthusiast" (to put it mildly) in his spare time. He is passionate about the intricacies of C# as a language, and keen to share his experiences whether through his blog or on Stack Overflow. Jon's book on C#, "C# in Depth" is published by Manning and now in its second edition. (Although Jon works for Google, he does not speak on behalf of Google.)
Top
Async From the Outside
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Salon E
Abstract: Traditional async programming models produce convoluted and hard to follow code. They rely on callbacks, developer created state machines, thread marshalling and other jargon we’d rather not look at every day. That led developers to prefer synchronous APIs whenever they were available. No more. C# 5 contains new features that enable you to write async programs that are much more clear and easy to comprehend.You’ll learn how to move up the abstraction layer and spend more of your valuable time expressing what you want done, rather than concentrating on the mechanics of asynchronous programming techniques. You’’ll also learn several techniques to maximaze the responsiveness of programs that use async APIs. WIth C# 5,the compiler sprinkles pixie dust on your code and it just works asynchronously. Once you’ve learned what Async features offer for you, you should learn how the pixie dust is implemented by attending Jon Skeet’s talk “Async from the inside”
Presented By: Bill Wagner
About the Speaker: Bill Wagner, SRT Solutions co-founder, is 25-year veteran of the software industry. He’s a recognized expert in software design and engineering, specializing in C#, .NET and the Azure platform. He serves as Michigan’s Regional Director for Microsoft and is a multi-year winner of Microsoft’s MVP award. An internationally recognized author, Bill authored the bestselling Effective C#, now in its 2nd edition, and its follow-up, More Effective C#. He also currently writes a column on the Microsoft C# Developer Center. Recently, Bill was awarded the Emerging Technology Leader Award by Automation Alley, Michigan’s largest technology consortium. He earned a Bachelor of Science degree in computer science from the University of Illinois at Urbana-Champaign.
Top
Automated Python Test Frameworks for Hardware Validation and Verification
Technology/Platform: Other Languages
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Indigo Bay
Abstract: When validating a piece of hardware instead of a piece of software, mocking and unit tests don’t help. Instead, a test framework needs to be primarily geared toward external instrument control, automated data collection, and mathematical analysis. Using Python, we’ll demonstrate an easy to use framework containing tests that configure DMMs and function generators, gather data from devices under test, then perform FFTs, phase analysis, and other data processing. We’ll also talk about a few issues that become much more significant in hardware analysis, such as adding randomness to tests while preserving repeatability, and generating highly combinatorial, device-specific tests on the fly. Finally, we’ll show the framework in action with a live test of a switch/measure system. Ben Fitzpatrick will be acting as demo minion and hardware wrangler.
Presented By: Barbara Jones
About the Speaker: Barbara Jones is a software engineer in the test & measurement industry, developing instrument drivers, tests, and data acquisition software in C++ and Python. She has been committed to promoting diversity in technical communities since she joined the CWRU section of the Society of Women Engineers. If she claims to be the inspiration for Mattel’s Computer Engineer Barbie, she’s lying... her degree is in Computer Science.
Top
BDD the .NET Way
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Salon D
Abstract: BDD has been embraced by many as the solution to "TDD drag" - helping developers keep focused on the business value of the software they create while at the same time covering their code with tests. This has been a challenge with .NET - the tools haven't been that expressive. Many .NET developers who want to do BDD turn to tools from other languages with a better history of BDD development, like Ruby’s RSpec. While such solutions work, wouldn’t it be nice to keep all the code for your domain solution and the tests in the .NET framework? Well you can and I’ll show you how.
Presented By: William Wallace
About the Speaker: William Wallace has been an IT professional since 1981, when he got paid to write software on his Apple II+ with a whopping 16K of memory. He has seen a lot of changes in the past three decades while working in both the private and public sector, writing software in BASIC, Assembly, C/C++, COBOL, Java, JavaScript, Pascal, and C#. In addition to his current day job at the Ohio Department of Alcohol and Drug Addiction Services, he has a thriving freelance consulting business that fills most of his free time. Because of all his time spent standing under the Waterfall, he is a committed Agile evangelist, earning both an Executive Certificate in Agile from the John Cook School of Business and a Scrum Master certification from the Scrum Alliance. He loves to learn and teach technology, and is currently working his way through the maze of Microsoft certifications.
Top
Be the Input: Kinect With Your Computer.
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Salon A
Abstract: Last year Microsoft released the Kinect, a completely new way of interacting with the computer that turns the user’s body into the input device. Using XNA as a platform, you will learn about how the Microsoft Kinect SDK works and how it can be used to control the computer. You will also learn to overcome the new challenges the Kinect introduces into building a user interface in this session. The Kinect is just the beginning of “touch-free” computing. The techniques you will learn in this session will give you a jump start on creating truly natural interfaces for the touch-free future.
Presented By: Ben Barefield
About the Speaker: During the day, Ben Barefield works as a software consultant for SRT Solutions where he works with clients to transform their needs into excellent software. At SRT he has spent learning time exploring many languages and technologies and continually expands his .Net knowledge for client work. His not-so-secret evening identity as a game developer has created games that have been popular with his friends and family.
Top
Beautiful Front End Code with Backbone.js and CoffeeScript
Technology/Platform: JavaScript
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Aloeswood / Leopardwood
Abstract: It's time to write client side code we can love every bit as much as our server side code. After years of missteps and bad ideas, things are finally taking shape to let us do it. Coffeescript provides a beautiful syntax for writing javascript that causes the noise to fade away and our intent to shine through. Backbone.js gives us an elegant MVC framework that provides just enough structure and guides our client side code towards the kind of clean, reusable codebase we are used to from server side frameworks. Combining these with practices we know work such as Test Driven Development, there's no longer any excuse at all for ugly front end code. In this session I'll share my experience writing real applications this way and show how these excellent technologies fit together.
Presented By: Chris Nelson
About the Speaker: Chris Nelson is a software developer who hails from the fair city of Cincinnati, Ohio. He has been developing web applications for about 15 years and is passionate about finding better ways to do it. He's spoken at most of the major and ruby and java conferences and is an advocate for ways to develop software that actually work (sometimes referred to as Agile).
Top
Becoming a Ruby Gemcutter
Technology/Platform: Ruby
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Cypress
Abstract: Welcome to the world of Ruby: where the gems are deep, rough, and rarely documented! No need to fear though, in this presentation you'll learn what a RubyGem is, how they're used in Rails and Ruby applications, and of course, how to make your own. You'll see just how easy it is to share your code with others in the Ruby universe, and why creating packages is a joy instead of a burden thanks to the tools and ecosystem of RubyGems.
Presented By: Nick Quaranto
About the Speaker: Nick is a firm believer in open source software, a proud member of Ruby community, and has been doing web development for as long as he can remember. He cut his teeth on classic ASP and ASP.NET at first, but discovered Ruby on Rails through his university and dove in head first. Nick pretends he's a bassist with famous prog rock bands when not coding.
Top
Blazing Fast Backend Services using Node.js and MongoDB
Technology/Platform: JavaScript
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Salon A
Abstract: This presentation will introduce Node.js and MongoDB, showing you how to use the two together to create a backend service. Following a brief introduction, we'll talk about ways to get started using these technologies by creating small, non-critical services. We'll also discuss the installation and popular Node.js modules, creating a logging solution, and finally load test a Rails application using these technologies.
Presented By: Mark Gustetic
About the Speaker: Mark Gustetic is a software engineer and has been working in the tech industry for the last seven years. He currently working as a Ruby developer with Cleveland startup Within3. He has worked with companies of many different sizes, from startup to large corporations like Progressive. He has worked with multiple different programming languages including: Ruby, C#, Node.js, and more.
Top
Bootstrapping Scala Development for Android
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Zambezi
Abstract: Session description forthcomingAndroid is shiny but programming in Java is dull. The last release to make any significant changes to the language was in 2004. Since then our expectations of what a language should provide has grown. While our smart phones may be as powerful as an early vintage 2000s desktop, there is no need to write code in a language of the same vintage. This is the story of an individual who longed to code in a modern language for his shiny new Android phone and found that bliss in Scala. This session demonstrates everything needed to hit the ground running starting with establishing a development environment, moving into a small crash course in Scala and rounding out the corners with a tour of the ecosystem around Android Scala development.
Presented By: Sam Corder
About the Speaker: Sam Corder is a developer in a Fortune 500 company working with identity technologies day in and day out. Night in and night out he exercises the technologies that keep his creative juices flowing including authoring the original .NET driver for MongoDB, and doing mobile development. He can be found on github at http://github.com/samus.
Top
Breakfast
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Wednesday January 11, 2012 @ 7:00 AM
Location: Keynote Dining Hall
Abstract: Join us in the main dining hall for breakfast and opening announcements! Your breakfast is Supreme Kalahari Breakfast Buffet: Farm fresh scrambled eggs with assorted toppings on the side including green onions, hot chopped ham, sautéed mushrooms, sautéed onions, diced tomatoes, wilted fresh spinach, shredded cheddar, provolone and pepper jack cheeses, jalapeños and dill sauce velouté, applewood smoked bacon, breakfast potatoes, kielbasa sausage, classic eggs Benedict, fresh seasonal fruit, assorted muffins, breads, jams, preserves, jellies, creamery butter, orange juice, fresh brewed coffee, tea and milk.
Presented By: No Speaker
About the Speaker:
Top
Breakfast
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 7:00 AM
Location: Keynote Dining Hall
Abstract: Join us in the Keynote and conversational dining hall for opening announcements followed by the first keynote. Your breakfast is Supreme Kalahari Breakfast Buffet: Farm fresh scrambled eggs with assorted toppings on the side including green onions, hot chopped ham, sautéed mushrooms, sautéed onions, diced tomatoes, wilted fresh spinach, shredded cheddar, provolone and pepper jack cheeses, jalapeños and dill sauce velouté, applewood smoked bacon, breakfast potatoes, kielbasa sausage, classic eggs Benedict, fresh seasonal fruit, assorted muffins, breads, jams, preserves, jellies, creamery butter, orange juice, fresh brewed coffee, tea and milk.
Presented By: No Speaker
About the Speaker:
Top
Breakfast
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 8:15 AM
Location: Keynote Dining Hall
Abstract: Our breakfast today is a bit later in the morning. Join us in the keynote and conversational halls for announcements. Your breakfast is Supreme Kalahari Breakfast Buffet: Farm fresh scrambled eggs with assorted toppings on the side including green onions, hot chopped ham, sautéed mushrooms, sautéed onions, diced tomatoes, wilted fresh spinach, shredded cheddar, provolone and pepper jack cheeses, jalapeños and dill sauce velouté, applewood smoked bacon, breakfast potatoes, kielbasa sausage, classic eggs Benedict, fresh seasonal fruit, assorted muffins, breads, jams, preserves, jellies, creamery butter, orange juice, fresh brewed coffee, tea and milk.
Presented By: No Speaker
About the Speaker:
Top
Breaking the Barrier with Node.js on Windows and Azure
Technology/Platform: JavaScript
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Salon A
Abstract: Node.js provides a beautiful new platform for building server side applications, which until now has been inaccessible to the Windows developer. Microsoft has been working as a core contributor to the Node project to break this barrier and provide a great Node story on Windows. Come to this talk and we’ll talk about Node.js, why you should care as a windows developer and how you can build node applications both on-premise and in Azure.
Presented By: Glenn Block
About the Speaker: Glenn is a PM at Microsoft working on support for node.js in Windows and Azure. Glenn has a breadth of experience both inside and outside Microsoft developing software solutions for ISVs and the enterprise. Glenn has also been very active in involving folks from the community in the development of software at Microsoft. This has included shipping several products under open source licenses, as well as assisting other teams looking to do so. Glenn is also a frequent speaker at local and international events and user groups. When he's not working and playing with technology, he spends his time with his wife and daughter staying caffeinated in Seattle or exploring the world.
Top
Bring the Users: Integrating UX into Your Organization
Technology/Platform: Design/UX
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Orange
Abstract: User Experience (UX) can be surprisingly difficult to bring into organizations. This session will give you the facts to back up your convictions. Carol will provide you with clear and convincing responses to tough questions about UX and usability methods. You’ll leave with facts about the Return on Investment (ROI) of UX, how to respond to UX skeptics, and how to turn your entire team into usability evangelists.
Presented By: Carol Smith
About the Speaker: Carol Smith has worked as both an employee and consultant in a wide variety of industries. She has helped businesses through their first usability study, and worked with organizations as they grew their UX practice. Through her business, Midwest Research, LLC, she researches and communicates user needs to clients to help them improve products and also conducts usability tests on websites, software, and consumer products. Carol has a Master's degree in Human-Computer Interaction and is the Treasurer and Director of Education and Training for UPA International, an organization that promotes usability concepts and techniques worldwide. Carol enjoys spending time with her husband and two young children and runs when she can.
Top
Building for the Cloud
Technology/Platform: Java
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Nile
Abstract: Netflix has moved its production services from being completely datacenter-based, to being primarily cloud-based in a little over a year. This talk will briefly explain why we did it and why we chose Amazon's AWS. The talk will then delve into the evolution of our build and deployment architecture, starting with how our orignal monolithic DC-based SQL-tied webapp was built and deployed, and then detailing the evolution of our continuous integration systems which helped prepare us for the cloud move. And finally, it will cover our current full build pipeline and deployment system which keeps us agile in the cloud now by providing quick turnaround, and rapid roll-out and recovery.
Presented By: Carl Quinn
About the Speaker: Carl Quinn has been developing software professionally for 30 years, starting with BASIC on an Apple II, slogging through C/C++ on DOS, Windows and embedded, and finally landing in the Java on Linux world. The one thread through his career has been an inexplicable attraction to developer tools, spending time building them at Borland (C++ & Java IDEs), Sun (Java RAD), Google (Java & C++ build system) and most recently at Netflix (Java build and deployment automation). Carl also co-hosts the Java Posse podcast, the #1 ranked Java technology podcast.
Top
Building Metro Style Applications in Windows 8
Technology/Platform: Windows 8
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Sagewood / Zebrawood
Abstract: The recent announcement of Windows 8 and the Metro interface has caused a lot of excitement. It has also raised a lot of questions for .NET developers. What’s WinRT? Does this mean that .NET or Silverlight or WPF are going away? Will my existing .NET skills transfer over to this new paradigm? What happens to desktop applications? How do I write Metro style applications? This presentation will answer all these questions and give developers a better idea of where Windows is heading in the future. You will see how to develop Metro style applications using both HTML 5/JavaScript stack as well as with C# with XAML. You’ll see how Metro style applications are fundamentally different from traditional desktop applications and discuss the attributes of a quality Metro style application.
Presented By: James Bender
About the Speaker: James is the Vice President of Technology at Improving Enterprises in Columbus, OH. James has been involved in software development and architecture for 16 years. He 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, SOA, WCF, WF, cloud computing, and agile development methodologies. He is an experienced mentor and author. James is a Microsoft MVP. James book "Professional Test Driven Development with C#: Developing Real World Applications with TDD" was release in May of 2011
Top
Building Testable Applications in PHP
Technology/Platform: Other Languages
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Indigo Bay
Abstract: I think it's safe to say that at this point, having SOME sort of automated testing for your application is considered a best practice. Unfortunately, creating a testable application is like having 6-pack abdominal muscles: everyone wants them but few are willing to put in the hard work to make it happen. This talk will approach the idea of Test-Driven Development / Behaviour-Driven Development from a different angle, instead taking a look at strategies for structuring your application is such a way that continuous integration and delivery of your application is not only possible but easily achievable. We will start by looking at anti-features of an application: ways of building things that make them very difficult to test. From there we will progress onto things like Demeter's Law, dependency injection and how to create the complementary infrastructure to test your application. Finally we will focus on building your confidence level with respect to flawless deploys from "all hands on deck, we're deploying" to "that's the 12th change we pushed into production today".
Presented By: Chris Hartjes
About the Speaker: Chris Hartjes has been building web applications of all shapes and sizes since 1998, ranging from catalogs for CD compilations for professional DJ’s to large-scale dating web sites. Currently working for Moontoast helping them build out their social commerce platform. He lives in Milton, Ontario, Canada with his long-suffering wife, two daughters, a furry pig masquerading as a cat, and the reincarnation of the Roman god of the underworld in feline form.
Top
Building Windows 8 Applications with HTML 5 and jQuery
Technology/Platform: Windows 8
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Salon G
Abstract: One of the many new advances in Windows 8 is the ability to create Windows applications using HTML, CSS and JavaScript. In this session, we'll take a look at the Windows 8 technology stack on which these applications run, how HTML/CSS/JS apps actually run, and discuss the implications of the different ways to utilize third party libraries such as jQuery. We'll then migrate an MVC application which utilizes jQuery into a Metro-style application. By the end of this session, you'll have a solid idea of what it means to have a Metro-style application built with web technologies.
Presented By: Rich Dudley
About the Speaker: For an entire decade, Rich inhabited cubicles at several companies in the same office park, eventually leading a team of developers building data warehouses, web-based BI applications and integrating mission critical systems. Today, as a Technical Evangelist for ComponentOne, Rich travels the country sharing new technologies with an eye toward the usefulness of these technologies to the poor souls still in their cubicles. Rich has been working with Azure since the early beta days, with Windows Phone 7 since before you could leave one in a bar, and is co-author of "Microsoft Azure: Enterprise Application Development" from Packt Publishing (http://bit.ly/msazurebook). Follow Rich's blog at http://c1.ms/c1_richd, or on Twitter at http://twitter.com/#!/rj_dudley.
Top
C# Stunt Coding: I Dare You to Try This at Home
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Salon H
Abstract: Do you want to write code that adapts to code that calls it? Write C# libraries that perform actions you never thought possible in a statically typed language? This session will show you coding techniques based on Expression Trees that enable you to write meta-code that examines the code that calls it and adapts its behavior based on the caller. You’ll learn to write general purpose algorithms you never dreamed were available in C# or .NET. If your mind has been blown enough yet, we'll go into the Roslyn API set and build code that builds more code to do even more interesting and crazy things. All in the name of good, never evil.
Presented By: Bill Wagner
About the Speaker: Bill Wagner, SRT Solutions co-founder, is 25-year veteran of the software industry. He’s a recognized expert in software design and engineering, specializing in C#, .NET and the Azure platform. He serves as Michigan’s Regional Director for Microsoft and is a multi-year winner of Microsoft’s MVP award. An internationally recognized author, Bill authored the bestselling Effective C#, now in its 2nd edition, and its follow-up, More Effective C#. He also currently writes a column on the Microsoft C# Developer Center. Recently, Bill was awarded the Emerging Technology Leader Award by Automation Alley, Michigan’s largest technology consortium. He earned a Bachelor of Science degree in computer science from the University of Illinois at Urbana-Champaign.
Top
C#'s Greatest Mistakes
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Orange
Abstract: C# is a fabulous language. A lot of care has been paid to its design, and the specification is precise and well-written. It’s pragmatic and powerful, giving some of the features which make scripting languages terse while maintaining the benefits of static typing. So what’s not to like? Well... nothing’s perfect. In this session I’ll explore some aspects of C# which perhaps took too much legacy from C++ and Java, some “gotchas” from newer features which can cause pain if you’re not aware of them, and some aspects which are simply not quite as smooth as they might be.
Presented By: Jon Skeet
About the Speaker: Jon Skeet is a software engineer at Google London by day, and a C# "enthusiast" (to put it mildly) in his spare time. He is passionate about the intricacies of C# as a language, and keen to share his experiences whether through his blog or on Stack Overflow. Jon's book on C#, "C# in Depth" is published by Manning and now in its second edition. (Although Jon works for Google, he does not speak on behalf of Google.)
Top
CANCELLED - Creating a Cross-Platform Application in C# and Monotouch: A Case Study
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Nile
Abstract: Monotouch, from Xamarin, is a set of libraries and tools that enable a software developer familiar with Microsoft technologies and C# to target mobile devices on the iOS (iPhone/iPad) and Android platforms. In this talk, you will see how ALPHCE, Inc. took a family of health-diagnostic questionnaires that had been developed for the Windows desktop, and brought it to the iPad. This required architectural changes, rethinking of user interface, and brought along the inevitable pains experienced at the bleeding edge of new technologies. This is a technical talk, with plenty of source code and demonstrations.
Presented By: Brian Schuth
About the Speaker: Twenty years ago Brian Schuth put his philosophy degree in the closet, started work as a software developer, and never looked back. Working in a polyglot of languages, from m4 and perl to Javascript, C# and Ruby, he has created software primarily for the health research and epidemiology. An advocate and evolving practioner of Agile practices, he is currently an independent contractor, working wherever the next gig takes him. He spends most of his time in Eastport, Maine, his adopted home town, where he explores Agile practices in theatrical direction when not sitting in front of his keyboard.
Top
CANCELLED - Fast Track Mental Models
Technology/Platform: Design/UX
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Salon D
Abstract: Mental Models are like steroids for the UX process. They create a rich context and rationale for both near-term and future features and content while aligning them with your user's goals, philosophies and motivations. A research driven mental model can give you a timeless, solid framework for moving forward with confidence on content strategy, information architecture and user experience decisions. When the time and/or money aren't available for a full-scale mental model process, (or when you simply want to sneak it in) you can still create a rich mental model that will provide a solid foundation for features, content strategy and general marketing strategy. I'll present the fast-track version of Indi Young's Mental Model methodology. Originating from real-world examples, this run-through of key steps and tools will give viewers all the tactics, selling points and confidence necessary to start introducing the mental model approach to smaller scale projects. Who will benefit: Anyone responsible for, involved in, or interested in the overall user experience, design strategy, content strategy or information architecture of a project.
Presented By: Eric Wiley
About the Speaker: Eric is the founder of Infotoken, an user-centered interaction design studio based in Northeast Ohio. He works closely with stakeholders, subject matter experts and developers to evolve human-computer interactions by way of actionable design documentation and prototypes. Eric has been working in the interactive industry since 1995; with specific focus on the content strategy, information architecture, and interface components of the user experience. He collaborates regularly with design studios and in-house teams to develop better interfaces for web, industrial devices and software. He is a regular contributor to the air traffic control interface component of the Federal Aviation Administrationʼs ongoing NextGen project; a comprehensive overhaul to the national airspace system. Eric is an active member of the Cleveland Web Standards Association and local leader of the Cleveland Interaction Design Association. He lives in Peninsula, Ohio with his wife and their son.
Top
CANCELLED - The User Obsessed Developer
Technology/Platform: Design/UX
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Orange
Abstract: In software, User Experience specialists determine how people will interact with an application. Their research is not typically part of the developer's domain, and quite often for good reason. However, that does not mean that developers have nothing to do with the user experience. Quite the opposite, programmers have a great deal of influence over the way people, from internal team members all the way to the end user, experience a product. The way code is written affects stability, performance and how quickly the team can respond to feature requests. It can even influence the opinion of key business stakeholders. This talk will highlight the problems that occur when we don't consider our users. We'll also explore how our code affects team members who aren't programmers. Attendees will learn how, through code, we can help ensure a great experience for all of our users.
Presented By: Joe Fiorini
About the Speaker: Joe is a Ruby & Javascript developer, husband and father from Cleveland, Ohio. He works for LeanDog Software where he builds solutions for customers using Ruby on Rails. He has contributed to a number of open source projects including RSpec, Ruby on Rails and GitX. He is currently writing his first screencast on Backbone.js.
Top
CANCELLED - Windows 8: Porting a Real SilverLight Application to WinRT
Technology/Platform: Windows 8
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon G
Abstract: Windows 8 is coming and there is a brand new kid in town called Windows Runtime (WinRT) to build applications. In this session we are going to look at what it takes to port an existing SilverLight application to run natively in the Metro interface within Windows 8. We'll be using a real world production application written in SilverLight that has Facebook and Twitter features (in other words this is not some contrived demo example). We'll walk through what's missing, what didn't work, what was hard, what was easy, what is painful and what is awesome. After leaving this session developers will have a real world benchmark of what it is going to take to port existing SilverLight applications to Windows 8 and WinRT.
Presented By: Keith Elder
About the Speaker: Keith Elder is the co-host of the popular online technology podcast Deep Fried Bytes. He is also a Director of Software Engineering at Quicken Loans, the nation’s largest online mortgage lender based in Detroit, MI and is the founder of the Hattiesburg, MS .Net User Group called Hub City NUG. Keith is an experienced technologist, systems administrator, software engineer, speaker, trainer and all around geek. As an experienced educator, trainer and speaker he has logged thousands of hours in front of the classroom teaching students of varying ages from the 6th grade to the college level. He has trained countless developers from various business sectors ranging from top auto manufactures, fortune 500 companies and Universities. As a Microsoft MVP he speaks throughout the United States at major technical conferences, Code Camps, and .Net User Groups. Keith’s ability to explain complex topics with a friendly common sense southern attitude make him a highly regarded speaker at technical conferences. You can read more about Keith’s interests, hobbies, rants and raves on his blog at http://keithelder.net/.
Top
CANCELLED: ClojureScript: One () to rule them all
Technology/Platform: Other Languages
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Salon E
Abstract: ClojureScript has changed the game for JavaScript developers. It's not a small step forward, It's a rocket ship to another dimension. If you're writing JavaScript heavy applications, you owe it to yourself to peek into it's inevitable future. Join Clojure/core's Aaron Bedra as he steps through the ideas behind ClojureScript and demonstrates how to start using it on your applications. Aaron will build a basic web service, then move on to building the front end without ever leaving the Clojure language. You'll watch in amazement as you begin to ponder such things as "why did I ever bother with JSON", and "wow, I didn't realize how much I lost while switching programming contexts". You will walk away from this talk armed with the things you need to get started writing your own ClojureScript code. Warning, side effects may include euphoria and unexplained oubursts of joy.
Presented By: Aaron Bedra
About the Speaker: Aaron Bedra is a member of Clojure/core and a developer at Relevance, Inc. where he spends his time as a tech lead, speaker and author. He is a frequent contributor to the Clojure language and its supporting libraries as well as an active member of the Clojure community. Aaron is the co-author of Programming Clojure, 2nd Edition
Top
Capability vs. Suitability
Technology/Platform: Software Process
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Salon D
Abstract: Software marches forward; each new piece is better than the last! Not quite... it's a bit more subtle than that. There are patterns in the history of our industry: each tool or practice is a reaction to something before it. There is also a pattern in our responses: many considered structured programming and the relational model too restrictive for "practical" work in their early days. Likewise, C, Java, and Ruby were all "too slow for practical work" when they began rising to popularity. By paying attention to the patterns in our history, and to our responses, we can better understand both the history and our current tools' place in it. Maybe we can even answer the big question: what might the next "too slow for practical work" tool be?
Presented By: Gary Bernhardt
About the Speaker: Gary Bernhardt is a creator and destroyer of software compelled to understand both sides of heated software debates: Vim and Emacs; Python and Ruby; Git and Mercurial. He runs Destroy All Software, which publishes advanced screencasts for serious developers covering Unix, Ruby, OO design, and TDD.
Top
CI++: Going Beyond Continuous Integration
Technology/Platform: Software Process
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Indigo Bay
Abstract: Continuous Integration has become a proven practice for improving software quality by ensuring that the codebase is _integrated_ (validated, compiled, and unit tested) on a _continuous_ (on check-in or scheduled) basis. It’s a great first step on the road to quality production code, but it’s just that: a first step. Beyond the gates of continuous integration lies a path filled with quality quagmires, from countless configuration files to database script disasters to deployment automation. While many developers will shrug their shoulders and say that it’s not their problem, the true professionals will not only take an interest in how their code makes it through production, but advocate for an end product that reflects the quality of their work. In this technology-neutral talk, we’ll explore how to take the foundation laid by continuous integration all the way through production, discuss how to deal with both the technical challenges and the people challenges (management, operations, etc), and show how a single developer can make a huge impact on the software development organization.
Presented By: Alex Papadimoulis
About the Speaker: Alex Papadimoulis is the founder and editor of The Daily WTF, a leading how-not to guide for developing software. Residing in Berea, Ohio, he is a software engineer at Inedo, which helps software developers automate their build-deploy-release process with BuildMaster.
Top
Code Kata and Analysis
Technology/Platform: Ruby
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Cypress
Abstract: A Code Kata is a simple programming exercise, practiced repeatably by a developer. Much like a musician practices scales and finger exercises to develop his musical skills, a developer will practice code katas to develop his programming skills. This talk will be a live performance of a simple TDD-based code Kata, followed by an analysis of the forces and choices involved in the feedback loop between the code and the tests encountered during the kata. By examining this interaction of tests and code, we come to a better understanding of how to use tests to actively affect the direction of our design. By reflecting on the process, we understand how to pick "what to test next". This talk is targeted for developers who have started using Test Driven Design (TDD) and feel that they don't quite "get it" yet, and are looking for guidance in the technique.
Presented By: Jim Weirich
About the Speaker: Jim Weirich first learned about computers when his college adviser suggested he take a computer science course: "It will be useful, and you might enjoy it." With those prophetic words, Jim has been developing now for over 25 years, working with everything from crunching rocket launch data on supercomputers to wiring up servos and LEDs on micro-controllers. Currently he loves working in Ruby and Rails as the Chief Scientist at EdgeCase, but you can also find him strumming on his ukulele as time permits.
Top
CodeMash Familes: Dinner at the Reserve
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 6:00 PM
Location: The Reserve
Abstract: Meet up with other CodeMash family members.
Presented By: No Speaker
About the Speaker:
Top
CodeMash Families: Pottery Painting
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 2:30 PM
Location: TBD
Abstract: As a group, we’ll receive a 20% discount. New to KidzMash this year: Stain Paints. Get immediate results with no 2-day wait for firing. Paint pottery – or one of the $5 tiles – and get it back the same day!
Presented By: No Speaker
About the Speaker:
Top
CoffeeScript is for Closers
Technology/Platform: JavaScript
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Salon E
Abstract: CoffeeScript—that "little language" that compiles to JavaScript—has become something of a big deal in recent months. Is it all just hype, or does CoffeeScript really deliver on its promise to give us JavaScript without the bad parts? In this session, and with the aid of several Hollywood and pop-culture clichés, Brandon will provide a zero to working overview of CoffeeScript: how to get it, how to learn it and how to start using it in your projects.
Presented By: Brandon Satrom
About the Speaker: Brandon is a web evangelist for Microsoft, based in Austin, TX. A unapologetic lover of the web, Brandon loves to talk about HTML, JavaScript, CSS, open source and whatever new shiny tool or technology (like CoffeeScript) has distracted him from that other thing he was working on. Brandon loves writing and speaking and loves hanging out with and learning from other passionate developers, both online and in person.
Top
Concurrency in Python
Technology/Platform: Other Languages
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Salon H
Abstract: This talk is about global interpreter locks, CPU bound threads, thrashing, scaling to multiple boxes, and generally having fun handling millions of requests. We will talk about everything from why you might want a threaded server and when you need async. I'll briefly introduce the threading module, the multiprocessing module, the queue module, gevent, zmq, and talk about how we use *all* of this stuff to manage thousands of activities a second.
Presented By: Mark Ramm
About the Speaker: Mark Ramm has been solving problems with Python for over a decade, and has been hacking on python web libraries and frameworks for much of that time. Right now, he's working to try to help SourceForge.net recapture it's mojo. In his free time he's written books, magazine articles, a bunch of code, and a quite few tweets.
Top
Continuous Integration on Mobile Platforms
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Zambezi
Abstract: Just because you're coding Mobile applications doesn't mean that you can't take advantage of the benefits Continuous Integration (CI). Come to this session and learn all about CI on both the iPhone and Android platforms. Learn the difference between Hudson and Jenkins, all about headless emulators, as well as the best tools to use for unit testing, functional testing and beta app deployment of your mobile apps.
Presented By: Godfrey Nolan
About the Speaker: Godfrey Nolan is founder and president of RIIS and author of Decompiling Java. Godfrey specializes in requirements capture using visualization tools such as iRise and Balsamiq and requirement management tools such as ReqPro and CaliberRM primarily in the Detroit Metro area and is currently using executable requirements at a couple of clients in the automotive and telecommunications space.
Top
Continuous Test Automation through CI
Technology/Platform: Ruby
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Cypress
Abstract: There are many ways to consider on how to design and execute effective automated tests and continuously keep the pulse on quality of product delivery. However when it comes to leveraging existing CI pipeline for functional and performance testing many may not realize that main ingredients are already built-in. This presentation will share the recipes on how to propel automated testing with immediate feedback to the entire team. This presentation is based on: • Hudson/Jenkins CI engine • Ruby and Rake to setup, execute and tear-down test environments • Hpricot (Ruby gem) and Hudson plug-ins to report and trend graphical results dynamically • .NET test tools (Visual Studio MS Team System and Telerik WebAii)
Presented By: Leonard Fingerman
About the Speaker: I'm a passionate software test professional who continuously strives to find better ways to improve software quality. Through various test automation methods and techniques I was able to demonstrate effectiveness and progress for a number of software projects - large and small. I have presented various test automation topics at IASA conference, Agile Atlanta user group as well as Atlanta Java user group.
Top
Cooking Up Environments with Chef
Technology/Platform: Ruby
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Salon D
Abstract: Configuring development, staging and production environments from scratch can be and extremely boring and time consuming task that only grows as your company grows. Chef is a tool that helps you deal with configuring any number of environments that can be as easy as a single click. In this talk I will show the basics of starting out with Chef and talk about my experiences of creating Chef scripts for both Linux and Windows environments that make it a breeze to scale your infrastructure, or just rebuild your development environment when you delete that all important system file.
Presented By: Colin Gemmell
About the Speaker: Colin Gemmell is Web/Application Developer from Glasgow, Scotland. He has gained a wide range of experience in his time as a developer working on everything from enterprise applications to small promotional web-sites. Starting out first Borland Delphi before graduating to .NET he made the jump to Ruby on Rails and hasn’t yet looked back. A constant presence in the in the Glasgow tech community Colin has spoken a numerous programming and tech events and conferences covering the length and breadth of the UK. He also current runs the Glasgow Ruby User Group.
Top
Crafting Wicked Domain Models
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Salon H
Abstract: At its heart, much of Domain-Driven Design is all about object-oriented design. The challenge with elegant designs is that they all start out ugly. But our domain objects don't need to stay as anemic, data-centric property bags. With a small set of well-honed refactoring techniques, we can turn an ugly domain model into a wicked domain model, where our business objects respect boundaries, take our commands, and never, ever find themselves in a bad state.
Presented By: Jimmy Bogard
About the Speaker: Jimmy oversees the technical design and architecture of solutions delivered, evaluating potential technologies and increasing awareness of technologies on the horizon. Jimmy has delivered solutions ranging from shrink-wrapped products to enterprise e-commerce applications for Fortune 100 customers. He is also a Microsoft Certified Application Developer (MCAD) and is an active member in the .NET community, leading open source projects, giving technical presentations, and facilitating technical book clubs. Jimmy is a member of the ASPInsiders group, the C# Insiders group, and received the "Microsoft Most Valuable Professional" (MVP) award for ASP.NET in 2009, 2010 and 2011.
Top
Cross-platform mobile apps with jQuery Mobile
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Zambezi
Abstract: jQuery is the hugely popular JavaScript framework that powers almost half of the top ten thousand most visited websites. You’ll learn how you can use these everyday web technologies to create compelling mobile experiences for your visitors while still supporting older devices. We’ll be covering topics such as navigational structure, layouts, toolbars and the all important list view. But just building a mobile site will only get you so far. You’ll also learn techniques to improve your page load times and tips to roll your own theme with style sheets and icons to help your apps stand out from the crowd.
Presented By: Mike Bobiney
About the Speaker: Mike Bobiney is the founder of Tap Through Apps, an iOS and mobile web application consulting business based out of Livonia, MI. He has done work in various capacities for Fourtune 500 companies and local businesses in the Detroit area. Mike’s wide range of interests as it applies to software craftsmanship has lead him to begin experimenting with open source products. As a result, he’s taken it upon himself to bring the Detroit Ruby user group to Downtown Detroit where Mike helps organize monthly meetups.
Top
Database Migrations for Web Applications
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Indigo Bay
Abstract: How do you deploy database changes with your web application today? Are you still rolling scripts by hand to move your database from one version to the next? In this session we will take a look at how to manage database schema changes in your web application through exploring the change lifecycle. We will take first version application and walk through the upgrade process showing you the tools and techniques needed to keep your schema changes reliable and consistent.
Presented By: Colin Bowern
About the Speaker: Colin Bowern is a solutions architect and coach focused on the advancement of organizational goals through pragmatic technology investments. His work spans music, financial, public sector, and technology industries including start-up and multi-national organizations like Microsoft, Bank of Montreal, and officialCOMMUNITY. Colin engages teams and executive management to boost productivity and drive innovation using user-centric design and promoting craftsmanship in software engineering. Recognized by the community for interactive contributions in public speaking, community building, and writing, Colin has been awarded a Microsoft Most Valuable Professional designation for ASP.NET/IIS for the past several years. His work appears across books, forums, and web casts. You can find out more about Colin on the web at ColinBowern.com.
Top
Dealing with Data in a Windows Phone 7 Mobile Application
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Nile
Abstract: Storing, retrieving, and querying data in a mobile application raises some interesting problems. Most applications don’t just deal with data locally, but also have to interact with a central data store. How do you deal with these issues when your application is running on a device that can often times be disconnected? In this session we will explore these problems and solutions using examples in Windows Phone 7. We will also look at a few open source libraries that you can use in your applications to get up and running quickly.
Presented By: Jeff Fansler
About the Speaker: Jeff Fansler is the Founder and President of Fanzoo Technology, Inc. He is also a father, hockey player, home brewer, major geek, and enjoys long walks in his office with a picture of the beach on the monitor. Jeff’s career has been focused on bringing the benefits of software and the internet to a wide range of business needs. Jeff started Fanzoo Technology, Inc. in 2006 and has helped several clients design, develop, and support products and custom line of business applications. Throughout his career he has learned a lot about the business of software but more than anything, he has learned that there is always more to learn and that everyone has something to contribute.
Top
Design Patterns for Parallel Programming
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Salon G
Abstract: You have started developing applications that take advantage of today’s multi-core processors. Come learn how to take your parallel programming skills to the next level. This session will focus on design patterns in parallel programming. Come learn about Parallel Loops, Fork/Join, Producer/Consumer, Map/Reduce and other design patterns used in parallel programming.
Presented By: Michael Slade
About the Speaker: Michael Slade is an Applications Programmer – Lead with Progressive Insurance. Prior to joining Progressive, he was a senior software engineer with ABB, where he spent 12 years building real-time, highly concurrent Windows applications to help ABB customers automate their chemical, power, and manufacturing plants.
Top
Developers Can’t Design (and Other Completely Untrue Design Myths)
Technology/Platform: Design/UX
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Orange
Abstract: Designers are designers and developers are developers and never the twain shall meet, right? Except – not really. There are some imaginary lines drawn around the two disciplines of design and development, but the truth is they are closely intertwined, and it can be very useful for a developer to have design knowledge and skills in his or her toolbox. This presentation will correct some commonly-held misconceptions about design, cover the basics of design from a developer’s perspective and explore how a developer can employ these principles to build clearer, cleaner and more usable applications. Discussion: What is design, or more to the point, what isn’t it? Introducing the design myths we’re going to debunk: design is decoration, design is entirely subjective, and design is separate from development. Myth #1: Design is decoration. Typically, design is defined as only the visual layer on top of website or application. However, design also encompasses structure, content and organization, at all levels of a project. Myth #2: Design is subjective. True, there is difficult-to-define element of creativity to design. But, just like coding, design has rules and guiding principles, such as those dealing with color theory, typography, negative space, ratios and contrast. Myth #3: Design is separate from development. They are different disciplines, but having each work in tandem will produce stronger products that won’t need design retrofitting later down the road. Developers can facilitate this with a bit of design know-how integrated into their communication and process.
Presented By: Jen Myers
About the Speaker: Jen Myers is an interaction designer in Columbus, Ohio, where she also teaches HTML/CSS and organizes the web development education program Girl Develop It Columbus. Her particular areas of interest are interactive user experience design, teaching innovation and creating technical solutions for social causes. She spends the rest of her time writing, watching good movies and raising a future geek girl.
Top
Developing Enterprise Mobile Apps
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Zambezi
Abstract: This talk will cover architecting and implementing an Enterprise Mobile App. The development will be done using OpenMobster, an open source platform for mobilizing cloud services. It will involve writing a Sync App. It will cover how to write the Cloud side channels to expose the Enterprise backend. Then on the device side this data will be available for access in offline mode. As the data changes on one device, the Sync Engine will automatically push it to the Cloud and other devices using that piece of data. You will also learn how to use the cross platform Java API for performing Push. Push is the mechanism used by the Cloud to notify the device of some change that may have occurred on the Cloud. The Java API abstracts the low-level details of Push associated with iPhone and Android.
Presented By: Sohil Shah
About the Speaker: I am currently the Chief Engineer at OpenMobster. OpenMobster is an open source platform for mobilizing Cloud services. It consists of a very efficient sync platform to store Cloud data locally on the device and then keeping it in sync with the Cloud and your other devices. A short definition would be 'iCloud for the Enterprise'. Before OpenMobster I worked on JBoss Portal as a senior software engineer at Red Hat. My duties involved architecting and implementing the Portal infrastructure on the CMS and Security side. I have spoken multiple times at JBoss World on the topic of Single Sign On.
Top
Dinner
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 6:00 PM
Location: Keynote and Conversational Dining Halls
Abstract: Join us for a wonderful meal in the keynote and conversational dining halls. Dinner tonight is the Kalahari's buffet with vegetables, salads, and main entrees of beef short ribs, walleye, and a spinach/artichoke/cheese ravioli.
Presented By: No Speaker
About the Speaker:
Top
Dojo: Ball Flow Agile Exercise
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Rosewood
Abstract: Come join others for this fun exercise that demonstrates some of the principles of flow and agility. No computers or computer knowledge necessary, as this is a low-tech, fun, team-oriented exercise. You may wish to bring a camera for this one, and this is definitely a fun exercise to take back to your organization to demonstrate agile principles in action.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: Bowling Game Kata
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Rosewood
Abstract: Come work through the classic Bowling Game kata with fellow developers in your language of choice. Bring a laptop with your tools of choice, or pair up with someone else on their machine.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: FizzBuzz Kata
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Rosewood
Abstract: Come work through this relatively simple string-based coding kata that's been used quite a bit in interviews over the last several years. Work on your own or with another developer in your language of choice. Bring a laptop with your tools, or pair up with someone else on their machine.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: Gilded Rose Refactoring Kata
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Rosewood
Abstract: The Gilded Rose kata is a refactoring kata that begins with an existing implementation of a simple storefront. The task is to add some additional features to the storefront, and in the process you may want to refactor the (rather low quality) code. Bring a laptop with your tools, or pair up with someone else on their machine.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: Greed Kata
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Rosewood
Abstract: Work through a kata that implements the rules of a simple dice game called Greed. Work on your own or with another developer in your language of choice. Bring a laptop with your tools, or pair up with someone else on their machine. This particular kata begins fairly simply, but as additional rules are added it can be a challenge to maintain a simple, clean design that doesn't accumulate a lot of repetition and technical debt.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: Marshmallow Challenge Game
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Rosewood
Abstract: No computers needed. The Marshmallow Challenge is a team building exercise which has been featured in a TED talk. You'll work with a handful of fellow CodeMash attendees using limited resources to build the tallest structure you can capable of holding aloft a single marshmallow. Bring your cameras and feel free to stop by and observe if you can't make it on time.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: Potter Books Kata
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Rosewood
Abstract: Harry Potter's movies may be done, but you can still test your coding skills with this exercise. Your task is to implement a discounting algorithm that ensures customers receive the correct price when they purchase several Harry Potter books. Be warned, this one is trickier than it first appears. Work on your own or with another developer in your language of choice. Bring a laptop with your tools, or pair up with someone else on their machine.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: String Calculator Kata
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Rosewood
Abstract: Improve your skills by working through the String Calculator kata. This relatively simple exercise slowly adds a series of requirements, often taking turns you might not expect. Work on your own or with another developer in your language of choice. Bring a laptop with your tools, or pair up with someone else on their machine.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dojo: Tennis Scoring Kata
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Rosewood
Abstract: Get a little better at your craft, or just figure out how the heck scoring works in Tennis. Or both! This exercise requires you to implement a tennis scoring algorithm. Unlike the Bowling Game kata, your code must work interactively as the game is played. Work on your own or with another developer in your language of choice. Bring a laptop with your tools, or pair up with someone else on their machine.
Presented By: NimblePros
About the Speaker: NimblePros is an agile software studio located in Hudson, Ohio. NimblePros focuses primarily on Microsoft technologies with an emphasis on software quality and craftsmanship. In addition to consulting services, NimblePros provides software tools Nitriq and Atomiq, software auditing services, and online training in partnership with Pluralsight On-Demand. NimblePros also runs the Northeast Ohio Software Craftsmanship group, HudsonSC.com, which meets the 3rd Wednesday of each month.
Top
Dynamic .NET Demystified
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Salon E
Abstract: It's been a few years since dynamic .NET went mainstream with the promotion of the Dynamic Language Runtime into .NET 4, but it's still largely viewed as a fringe technology. This session aims to change that by reviewing what the DLR is, diving into how it works with C# 4 and Visual Basic 10, and looking at some interesting applications of the DLR. In particular we'll discuss C# interop with IronPython and IronRuby; Clay, a dynamic library used by Microsoft's Orchard CMS; and simplified data access through Microsoft.Data, Simple.Data and Rob Conery's Massive.
Presented By: Keith Dahlby
About the Speaker: Keith Dahlby is a new father, Git enthusiast, .NET developer, language geek and C# MVP from Cedar Rapids, IA. He leads the E-Commerce at J&P Cycles and blogs about various software development topics with Los Techies. His open source efforts include posh-git, a Git environment for PowerShell, and FSRazor, F# support for the Razor view engine. Keith has spoken at community events around the Midwest and he studied Human-Computer Interaction at Iowa State University. His talks have been described as "terrific!", "very interactive!", and "the best I've seen all hour!".
Top
Dynamic in a Static World
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Salon E
Abstract: C# 4.0 introduces the Dynamic keyword. The team said it was to add better support for COM, yet we’ve already seen its usage extend to ASP.NET MVC 3 and other scenarios. The truth of the matter is, when it comes to working with things such as XML and JSON, dynamic types can really enhance productivity. If you’re a fan of static typed languages and whether or not you like dynamic languages, come to this session and learn to love the new dynamic keyword. We’ll see how you can really gain productivity and flexibility when using it appropriately. Used in quite a few OSS projects already, dynamic really has changed the scenery when it comes to writing applications in C#.
Presented By: Hadi Hariri
About the Speaker: Hadi Hariri is a developer, speaker, podcaster and Technical Evangelist at JetBrains. His passions include software architecture and web development. Book author and frequent contributor to developer publications, Hadi has been speaking at industry events for over a decade. He is based in Spain where he lives with his wife and two sons, and runs the .NET Malaga User Group. He is also an ASP.NET MVP and ASP.NET Insider.
Top
Easy & Effective Usability Testing
Technology/Platform: Design/UX
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Orange
Abstract: Getting user feedback on your progress is key to making successful interfaces and it doesn’t have to take months. In this session you will learn how setting up regular usability tests can allow you to save time doing the studies and without sacrificing quality. In this session you will learn strategies and techniques that can be used for making traditional and remote usability testing methods easier to plan and conduct. We will cover usability testing from planning through analysis, and ways to provide useful and usable recommendations to the team. This session will cover the following topics: • Planning tips and tricks • Recruiting methods • Note taking and managing observers • Specific tips for methods (Traditional, Rapid Iterative Testing and Evaluation (RITE) • Specific tips for locations (in-person, on-site, remote) • Brief review of software • Analysis • Sharing your findings • Making usable recommendations
Presented By: Carol Smith
About the Speaker: Carol Smith has extensive experience conducting usability studies remotely, in the lab and in the field. Through her business, Midwest Research, LLC, she researches and communicates user needs to clients to help them improve products and also conducts usability tests on websites, software, and consumer products. Carol has a Master's degree in Human-Computer Interaction and is the Treasurer and Director of Education and Training for UPA International, an organization that promotes usability concepts and techniques worldwide. Carol enjoys spending time with her husband and two young children and runs when she can.
Top
Effective Data Visualization: The Ideas of Edward Tufte
Technology/Platform: Design/UX
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Orange
Abstract: We spend much of our time collecting and analyzing data. That data is only useful if it can be displayed in a meaningful, understandable way. Yale professor Edward Tufte presented many ideas on how to effectively present data to an audience or end user. In this session, I will explain some of Tufte's most important guidelines about data visualization and how you can apply those guidelines to your own data. You will learn what to include, what to remove, and what to avoid in your charts, graphs, maps and other images that represent data.
Presented By: David Giard
About the Speaker: David Giard has been developing solutions using Microsoft technologies since 1993. He is a Microsoft MVP; an INETA mentor; and the President of the Great Lakes Area .Net User Group. David has presented at many of the conferences and user groups around the Midwest. He is a recovering certification addict and holds an MCTS, MCSD, MCSE, and MCDBA, as well as a BS and an MBA. He is the host and producer of the mildly popular online TV show Technology and Friends. You can read his latest thoughts at www.DavidGiard.com. David lives in Michigan with his two teenage sons.
Top
Effective use of FindBugs in large software development efforts
Technology/Platform: Java
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Salon H
Abstract: FindBugs is a static analysis tool that finds coding mistakes in Java programs. It is widely popular, with more than a million downloads. In a student involving hundreds of engineers at Google, the issues identified by FindBugs were evaluated as should fix or must fix issues 81% of the time. However, many projects and developers use FindBugs on an ad-hoc basis, with individual developers running FindBugs sporadically. Some projects use FindBugs as part of their continuous build system, but find themselves unsure of the return on their investment and wondering if there might be a more effective way to use FindBugs. When first applying FindBugs is a large project and seeing hundreds or thousands of issues, others simply give up on using FindBugs. I'll briefly review FindBugs, and describe techniques for cost-effective integration of FindBugs into the software development process for medium to huge software projects, with a focus on new features available in FindBugs 2.0. Topics include how to customize FindBugs to prioritize and filter issues important to your project, how to store bug data in a cloud so that everyone working on the project shares information about when the issue was first seen and whether people think the issue is important to fix, and ways to use annotations to help FindBugs detect even more errors in your code.
Presented By: Bill Pugh
About the Speaker: Professor at Univ. of Maryland, inventor of Skip Lists, lead on FindBugs, 6 time JavaOne Rock Star, one of the puzzling type-it brothers, and part time fire eater.
Top
Erlang: An Intro for C# Developers
Technology/Platform: Other Languages
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Salon E
Abstract: Would you like to build massively parallel, distributed, fault-tolerant, cross-platform, easily maintainable systems with less code and look cool doing it? If so, the opensource programming language Erlang has some real sweet spots for you. If you're unfamiliar with Erlang you may be surprised to learn how battle tested it is: Facebook's chat backend, CouchDB, RabbitMQ, GitHub's backend and Amazon's SimpleDB are all written in Erlang, and every phone call you make is likely helped along by some Erlang somewhere. So how does a functional programming language with Prolog and telecom roots solve so many of the big problems that Enterprisey languages famously stink at? What's so darn special about Erlang? What are the pieces and the tools? What does it look like? How do I (as a C# developer) even get started with Erlang?
Presented By: Bryan Hunter
About the Speaker: Bryan Hunter is a geek, a founding partner of Firefly Logic and the president of the Nashville .NET User Group. Bryan is obsessed with Lean, functional programming (Erlang, C# and F#), CQRS and Caliburn.Micro. He has been speaking on each of these subjects tirelessly for years at meetups, bars, user groups, bars, regional conferences and bars. You can say hi to Bryan on Twitter (@bryan_hunter), read his blog at http://codeswamp.com, and see what Firefly Logic is all about here: http://fireflylogic.com
Top
Exploiting a RESTful Approach
Technology/Platform: Ruby
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Cypress
Abstract: We'll illustrate how much a RESTful architecture buys you when building a Rails application with respect to topics such as: reduced application code, clean client-side interaction, cacheability and scalability, and crafting great public APIs. If you haven't looked at the theory of REST in detail or just need a refresher, we'll cover the essence of the theory as a means of illustrating just how low-friction this approach makes building web applications with rich client experiences. This talk will feature examples and code in Ruby on Rails on the server and Backbone.js on the client, but the ideas are applicable to the design of any web application.
Presented By: Matt Yoho
About the Speaker: Matt Yoho is a developer and agile enthusiast with a love for Ruby and the web who works for EdgeCase, LLC in Columbus, OH. He is a supporter of the Software Craftsmanship movement and is the Apprenticeship coordinator at EdgeCase. He likes comic books, karaoke, Free Software, and sweet potato fries. He is one fairly hep cat.
Top
Free Pizza: A Glimpse Inside Domino's Pizza's Mammoth Online Operation
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Salon H
Abstract: Several years ago Domino’s Pizza contracted an outside firm to build an on-line ordering site for them. At that time, very few people were using the web for commerce. As the years went by more and more hungry people were turning to the web for their pizza and wings. Not designed for such a massive number of orders, the outsourced site was in trouble. With no more bailing wire and duct tape available, it was clear something needed to be done. A decision was made to bring the business in-house, not just the software development, but the entire operations around the site. This presentation will explore the adventure of such a massive undertaking and the happy go lucky days that followed.
Presented By: Bill Heitzeg
About the Speaker: Bill Heitzeg manages the eCommerce platform for Domino’s. He has worked on a number of eCommerce projects, before joining Domino’s, including Sabre and Travelocity. He has also done quite a bit of software consulting and training in the past as well. He likes to brew beer and will most likely bring some to CodeMash.
Top
Functional Alchemy: Tricks to keep your C# DRY
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Nile
Abstract: C# 3.0 and LINQ gave us anonymous delegates, lambdas and closures, and C# 4.0 improved on them. But these “functional” features have applications beyond messing about with IEnumerable<T>. In this session I’ll present 10 simple and not-so-simple uses of first-class functions to help cut down on repeated code and improve maintainability, and hopefully leave the audience with a new and exciting way of approaching coding problems.
Presented By: Mark Rendle
About the Speaker: I’m currently employed as Principal Software Architect at Dot Net Solutions Ltd, where we are creating all manner of software and services on the Microsoft stack, including ASP.NET MVC, Windows Azure, WPF and Silverlight. Since April 2011, I have been a Windows Azure Development MVP. My career in software design and development spans three decades and more programming languages than I care to remember. C# has been my favourite language pretty much since the first public beta, when you had to write the code in a text editor and compile it on the command line. Those were the days. You kids today, with your IntelliSense™ and your ReSharpers, don’t know you’re born… In my spare time, I work on the Simple.Data not-an-ORM project, and build developer-centric tools for mobile devices, including the award-winning Pocket C# for Windows Phone 7. That’s when I’m not just geeking out learning new programming languages and frameworks; 2011 is the year of JavaScript/CoffeeScript, F# and Nancy.
Top
Functional Programming in Java
Technology/Platform: Java
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Sagewood / Zebrawood
Abstract: Functional programming is in the air. The most common question in java programmers mind is whether it is useful and possible to do functional programming(FP) in Java ? I will start of with a quote from Timothy Budd, “Research results from the psychology of programming indicate that expertise in programming is far more strongly related to the number of different programming styles understood by individual than it is the number of years of experience in programming.” So FP will help you to become a better Java developer. And the good news is FP is language agnostic. Its a style that you learn and can use in almost all programming languages. Outline of the presentation - Introduction to FP with examples written in Java - Why FP is important to learn and explain the benefits of FP in enterprise software development - Overview of the FP libraries available in Java (functionaljava, lambdaj etc)
Presented By: Nilanjan Raychaudhuri
About the Speaker: I am Nilanjan Raychaudhuri working for Livingsocial. Previously worked in companies like Pillar technology and Thoughtworks. I have managed and developed software solutions for more than 12 years and specializing in integrated multi-tiered web and server applications. I am known for hard work, well-tested code, and clean OO design. I believe in high-discipline agile methodologies, customer focus, simple tools applied elegantly, and continuous improvement. I believe I am almost unique among programmers having strong skills with both databases and objects together. I have a passion for the elimination of duplication in design, code, data, and most of all – effort. I write software for a living. But since I enjoy creating things and solving problems, I also write software on my pastime. I am currently working on scala-webmachine (restful resource framework). In past I worked on other open source projects like Panopticode, scala-inline and autotest4j. When I am not working on projects I play with functional programming and DSL. Currently writing a book on Scala programming language called “Scala in Action” from Manning publication.
Top
Gadgeteering with the .NET Micro Framework and Visual C#
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Salon A
Abstract: By day, you are a master of the TPS report creation and all things virtual that make your bosses look good. By night, you create all sorts of marvelous electronic gadgets to aid you in your secret life of fighting crime. Or at least you would, if you could just get past all the hassle of correctly connecting up all the hardware and just focus on the programming. Well now you can, thanks to Microsoft .NET Gadgeteer, an open-source toolkit for building small electronic devices using the .NET Micro Framework and Visual C#. I’ll show you how to build and program your first device so you can finally begin your career as a crime fighter. Costume, faithful sidekick and cool superhero name not included.
Presented By: William Wallace
About the Speaker: William Wallace has been an IT professional since 1981, when he got paid to write software on his Apple II+ with a whopping 16K of memory. He has seen a lot of changes in the past three decades while working in both the private and public sector, writing software in BASIC, Assembly, C/C++, COBOL, Java, JavaScript, Pascal, and C#. In addition to his current day job at the Ohio Department of Alcohol and Drug Addiction Services, he has a thriving freelance consulting business that fills most of his free time. Because of all his time spent standing under the Waterfall, he is a committed Agile evangelist, earning both an Executive Certificate in Agile from the John Cook School of Business and a Scrum Master certification from the Scrum Alliance. He loves to learn and teach technology, and is currently working his way through the maze of Microsoft certifications.
Top
Game Rooms
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Wednesday January 11, 2012 @ 12:00 AM
Location: Ironwood and Banyan
Abstract: Two rooms chock full of all sorts of games for those interested in some entertainment throughout the conference. Game rooms open Wednesday afternoon and will remain open until late Friday. Rooms will be open until well after midnight.
Presented By: No Speaker
About the Speaker:
Top
Get the Tech Out of Your Cukes
Technology/Platform: Ruby
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Salon F
Abstract: Cucumber is a great tool for writing executable specifications. When written well they provide the basis for a team's understanding of the specification. When they run successfully they provide a confirmation that a feature is done and working properly. The problem is that most Cucumber features are written poorly. They often include technical terms or a lot of unnecessary details that hide the behavior we are trying to describe. This problem is so profound and pervasive in the industry that some are beginning to believe that is is not possible to describe behavior well with Cucumber. This talk and hands on demonstration will bring attention to typical smells found in cucumber scenarios. Once we discuss a smell, we'll look at an example that exhibits that problem and then refactor the code and feature to clean it up. Along the way we'll also introduce some common design patterns that can be applied to keep your code nice and d.r.y.
Presented By: Jeff Morgan
About the Speaker: Jeff Morgan has spent 25 years writing software, holding various roles including Senior Developer, Manager of Application and Enterprise Architect, Director of Technology and most recently Chief Technology Officer at LeanDog. He has been an evangelist for the Agile Software Development movement since 2003 and has spoken at several organizations, conferences, and technical events. He has coached agile teams for the past seven years with an emphasis on the engineering practices like TDD, Pair Programming, and ATDD. He is also the author of several popular Ruby gems. He is passionate about the Cleveland IT community and his company, LeanDog, currently sponsors and hosts 6 technology group meetings each month in downtown Cleveland. His company also sponsors GiveCamps to build and donate software to local non-profit organizations.
Top
Getting Your Hands Dirty with the Roslyn APIs
Technology/Platform: .NET
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Salon G
Abstract: The cat’s out of the bag! Not only is Project Codename “Roslyn” delivering the next generation C# and Visual Basic compilers and language services, it also provides a powerful set of APIs for building "code aware" tools and extensions. In this information-packed session, we'll explore six major Roslyn APIs in depth, covering parsing, retrieving semantic information, analyzing data and control flow, and scripting. Armed with this knowledge, we'll see how easy it is to leverage the APIs to analyze and generate C# and VB source code, add C# scripting support to an application, or even extend the existing C# and VB language service features in Visual Studio.
Presented By: Dustin Campbell
About the Speaker: Dustin Campbell is a senior program manager on the Visual Studio team, where he works on the Visual Basic and C# language service experiences. Currently, he is focused on the future of Visual Basic and C# in Project Codename Roslyn. Before joining Microsoft, he developed much of the low-level plumbing of the award-winning CodeRush and Refactor! products at DevExpress. A regular speaker, Dustin is a noted authority in many advanced areas of the Microsoft .NET Framework and dives deep “under the hood” of any technology that he works with. Dustin is a programming language nut. His favorite color is blue.
Top
GWT is Smarter than You
Technology/Platform: Java
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Salon F
Abstract: Google Web Toolkit is five years old now, and has changed greatly since it was launched at JavaOne in 2006. Most already know that GWT allows you to cross-compile Java into JavaScript for HTML applications, but there is much more to it. In this session we will look at the best-practices that are baked into GWT. These include safety and optimization, but also a lot of things many people developing HTML applications might know they should be doing, but don't because it is hard. In short, GWT can write your code better than you can. If you haven't worked with GWT, or haven't looked at it in years, this session will provide and solid overview of all the fundamental components included in the toolkit. Outline I. The Original Release a) Perfect caching strategies b) i18n c) Image compositing d) Compression optimization e) Testing, Packaging II. 1.x Evolution a) SOYC b) Improved compression c) JavaScriptObject Overlay d) Handlers vs Listeners e) Pluggable dev server III. 2.x Breathrough a) OOPHM b) New Resources System c) Compiled Stylesheets d) data: image inlining e) UIBinder f) Compiler point-cuts g) CSS3 optimized Layout IV. 2.x Evolution a) Improve i18n/RtL support b) SpeedTracer c) Editors framework d) Spring Roo and Data bound widgets V. The Capital-F Future a) More HTML5 b) Stealing from the future! c) Dart/Dash d) SourceMaps
Presented By: Robert Cooper
About the Speaker: Robert Cooper is a developer based in Atlanta where he develops telemedicine apps at Reach Heath. He is the author of GWT in Practice and a contributor to a number of open source projects including Shortyz Crosswords for Android.
Top
Hands-On Responsive and Adaptive Web Design
Technology/Platform: Design/UX
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Orange
Abstract: This session will be a hands-on walk through of the latest responsive and adaptive web design techniques. Attendees will walk away with a working knowledge of how to implement a responsive front-end on their sites. Particular attention will be given to ensuring that sites are built responsibly (for example, proper image sizes are served to the device). Additionally, the session will cover techniques that can be used on the server in combination with client-side technologies to offer a more seamless user experience. Specific topics covered: - fluid grids - flexible media (images/video/...) - media queries - polyfills - useful resources - effective testing Because this topic is so new, the specifics will certainly change as we approach the conference date. Never fear, I'll make sure that the content presented is fresh and current as well as easy to understand and applicable.
Presented By: Ben Callahan
About the Speaker: President of Sparkbox and Founding Partner of FORGE, Ben is a thought leader on front-end development sharing his ideas about the web on the Sparkbox Foundry and industry blogs like Smashing Magazine. His leadership at Sparkbox has driven the organization to be a leading provider of responsive web design and he continues to push for better user experiences outside the context of specific devices.
Top
Have Fun the Rong Way
Technology/Platform: Ruby
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Cypress
Abstract: Rong is a client-server Pong implementation written in Ruby that hopes to take a whack at your office productivity. Though Pong itself is a relatively uncomplex game, it allows a variety of interesting game programming problems to be explored when constructing the game in a robust manner as a client-server application. We'll talk through the structure of the implementation, the involved libraries, including libraries supporting 2-D game development in Ruby, and the techniques involved in creating a responsive network-based game.
Presented By: Matt Yoho
About the Speaker: Matt Yoho is a developer and agile enthusiast with a love for Ruby and the web who works for EdgeCase, LLC in Columbus, OH. He is a supporter of the Software Craftsmanship movement and is the Apprenticeship coordinator at EdgeCase. He likes comic books, karaoke, Free Software, and sweet potato fries. He is one fairly hep cat.
Top
High Performance Developer & Designer Collaboration
Technology/Platform: Design/UX
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Orange
Abstract: Join us in this session to hear a story about how two Compuware employees Tim Fisher and Kate Pricer, a developer and a visual designer, have worked side-by-side the past six months on a variety of web and cross-platform mobile apps. Perhaps your familiar with the concept of pair programming for developers? Tim and Kate will tell you how they have used a similar strategy for merging technology and design to achieve high performance design and implementation cycles. Within Compuware they have formed a team known as “Fisher Pricer” which has gained recognition throughout the company for the innovative way they have been working and collaborating side-by-side, merging design and technology on each project they work on. One of their recent projects was an award winning mobile app for the Maker Faire Detroit which they created from scratch in just a few weeks. Their style of working enables close collaboration and rapid feedback shaving weeks off a typical back and forth period between a development team and a design team. Learn how together they conceive the user experience and UI layout for their projects followed by individual yet highly collaborative work on the graphic design and coding of the projects. Can this strategy work for you? Join us to learn how it has worked at Compuware.
Presented By: Timothy Fisher & Kate Pricer
About the Speaker: Tim has over 20 years of experience in the software development field. He has served in roles ranging from lead developer to chief architect for a variety of large and small companies. He is also the author of the Java Phrasebook and the Ruby on Rails Bible. Currently, Tim works as a technical consultant for Compuware in Detroit, Michigan where he is currently leading the technology teams for Compuware Ventures. Tim’s main area of development focus over the past year has been mobile app design and development. Outside of his day job, Tim is very active in the local development community having organized multiple user groups and is lead developer on multiple open source projects. Kate is a recent graduate of the International Academy of Design & Technology. Since joining Compuware in 2011, Kate has already had a significant impact at Compuware. Kate has been the lead designer on several web and mobile projects. Her accomplishments have also included being the designer of the logo for Compuware Ventures and the lead designer for several start-ups that are funded by Compuware Ventures. For the last 6 months, Tim and Kate have worked closely collaborating on several mobile and web projects including an award winning app developed exclusively for Maker Faire Detroit 2011. Within Compuware they have formed a team known within Compuware as “Fisher Pricer” which has gained recognition throughout the company for the innovative way they have been working and collaborating side-by-side, merging design and technology on each project they work on.
Top
Intro to Android Development
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Zambezi
Abstract: In this session we’ll cover the basics of Android development. We’ll start by looking at how an app flows and how views relate to activities. Next we’ll look at different view controls and how to connect and handle different events. Then we’ll get familiar with intents are and how to fire them. Finally, we’ll cover how to get your app out to the market and onto devices.
Presented By: Chris Risner
About the Speaker: Chris Risner is a Senior Software Engineer and Team Leader at Quicken Loans, the nation’s largest online mortgage lender based in Detroit, MI where he leads the mobile development team responsible for bringing amazingly engineered applications to mobile devices. Before leading the mobile development team Chris worked on many large scale enterprise applications in Java and .NET. Chis is a prodigious learner who loves technology of all flavors and has a vast amount of experience in Smart Clients, Asp.Net MVC, C#,, Java, Objective C, Android and iOS. Chris speaks from his many successes in different areas of technology. You can find out more about Chris at http://chrisrisner.com
Top
Intro to RavenDB: NoSQL is Rapping at Your Door
Technology/Platform: .NET
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Aloeswood / Leopardwood
Abstract: The use of non-relational databases is a growing movement, and can be a great solution in some scenarios. RavenDB is the foremost document database for .NET, and offers support for JSON, LINQ, a REST-ful API, automatic indexing, transactions, horizontal scalability, and many more features. In this talk we'll discuss the pros and cons of non-relational databases, explore features of RavenDB, and walk through some examples of putting RavenDB to work.
Presented By: David Neal
About the Speaker: David is a father, geek, musician, and software developer living in the Nashville, TN area. David is currently the Director of Development for Cell Journalist, an online social media service provider for TV stations, newspapers, and radio. Prior to joining Cell Journalist, David was a senior software engineer for Telligent, the premier social networking platform for .NET that powers some of the largest online communities, such as Microsoft's ASP.NET Forum, MSDN Blogs, Dell, and Game Informer. David is passionate about software craftsmanship, user experience, music, and bacon. David also serves on the leadership team for the Nashville .NET user group.
Top
Introducing Continuous Delivery
Technology/Platform: Software Process
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Indigo Bay
Abstract: This session will focus on the practices needed to implement a good continuous delivery system as an extension of a CI process. It will touch, very briefly on CI and how a good CI setup is needed as a precursor for continuous delivery. The session will then talk about what benefits continuous delivery will give us and some potential strategies to overcome the pitfalls and the obstacles of moving a team towards a continuous delivery environment.
Presented By: Paul Stack
About the Speaker: Paul Stack is currently employed as a team lead for an internationally known restaurant booking service where he leads a team working on the .Net platform. Paul has spoken throughout the UK at developer user group events and at a number of regional events. He usually speaks about his experiences of continuous integration and about the movement from continuous integration to continuous delivery.
Top
Introducing Heroku - The Polyglot Cloud Application Platform
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon H
Abstract: Please select from the following options – 1) Ruby 2) Java 3) Python 4) Node.js 5) Clojure 6) All of the above If presented with the above quiz, Heroku would pick #6. Heroku provides a fully managed cloud platform that lets you develop in any of the above languages (with more on the way). With no servers, routers, load balancers etc. to manage, you’re free to focus entirely on your code. With Heroku, you can scale your application up or down with a single command, deploy your code with a simple git push command and monitor your application logs and status in real time. Interested in finding out more? Come join us for an introduction to Heroku and see how you can develop your next application in the cloud. We promise – no more quizzes. Just some code and some command lines.
Presented By: Sandeep Bhanot
About the Speaker: Sandeep Bhanot is a Developer Evangelist at Salesforce.com. In a prior incarnation (he is Indian after all), he was an Enterprise Architect and SOA Consultant. As a Developer Evangelist at Salesforce.com, he helps spread the gospel of the Cloud and Heroku.
Top
Introducing iOS Programming
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Salon F
Abstract: In this session, we will be creating a really simple iPhone application from scratch. We will learn the basics of developing in Object Oriented C, using XCode 4. This session will also include some tips on Mac and XCode environments in order to improve the development experience. After this session, we will realize that developing for iPhone isn't as hard as some developers tend to believe like a CodeStock attendee stated in his/her feedback last year; "I had never seen XCode or Objective C before and I walked away from this session believing that it was within reach."
Presented By: Gun Makinabakan
About the Speaker: Gun Makinabakan has a Master's Degree from Purdue University, Indianapolis specializing in parallel computing and cloud computing technologies. In late 2008 Gun co-founded iMobileCode, a mobile application development company operating in US and Turkey. With applications in 4 major platforms, user base of couple millions and tens of millions of monthly usage rate; iMobileCode became one of the leaders in mobile world in Turkey. Since 2008, iMobileCode has developed multi platform mobile application for various companies including Ford, msnbc, Fox TV and Coca Cola. Gun has given presentations in national conferences in Turkey, CodeStock 2010 & 2011, Atlanta Cocoa Camp and various local user groups in US about mobile application development and Amazon Web Services.
Top
iOS Networking: Bonjour, iCloud!
Technology/Platform: Mobile
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Salon F
Abstract: Mobile devices are so useful because they can get on the net with their built-in wi-fi or cellular data radios. But how does this work? In iOS, we have a slew of networking APIs, each appropriate in different situations. From decades-old BSD sockets to the new-in-iOS-5 iCloud, there are a wide range of networking calls available to your app, and an equally wide range of semantics in how to use them. In this talk, we'll start with high-level abstractions like iCloud and other objects that can either load from or save to a URL, then progress down through the stack, grabbing arbitrary content from URLs, self-networking with Bonjour and Game Kit, and finally accessing the socket layer with CFNetwork and BSD sockets.
Presented By: Chris Adamson
About the Speaker: Chris Adamson is an iOS and Mac developer, editor, and author, based in Grand Rapids, Michigan. He is the co-author of Core Audio (Addison-Wesley Professional) and iPhone SDK Development (Pragmatic Programmers), among others. He has several apps on the App Store, including the navigation app "Road Tip". He maintains a corporate identity as "Subsequently & Furthermore, Inc.", and has thus far owned 11½ Macs.
Top
It's the Little Things
Technology/Platform: Design/UX
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Cypress
Abstract: In design the user experience is paramount and getting the little details right can make a huge difference. In this presentation Brad talks about his experience designing interfaces for mobile devices and looking at how little changes can have a big impact on how we use them. You will be introduced to the world of human interface guidelines for mobile devices. What can we learn by comparing and contrasting the guidelines of these mobile players and how can we incorporate it into our apps and websites? What are the main differences in developing for these platforms and what do user experience designers need to take into account before starting a project? Should you focus on building an app or make your website mobile friendly instead?
Presented By: Brad Colbow
About the Speaker: Brad Colbow is an award-winning web designer, illustrator and speaker best known for his comics that are published monthly in .Net magazine and "The Brads" a weekly strip found on his personal website. His work has appeared on the New York Time's website, CNET, Smashing Magazine and elsewhere. You can find out more about him and his work on his website colbowdesign.com
Top
Jam Session
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 7:00 PM
Location: Crown Palm
Abstract: Bring your favorite musical instrument, borrow one from someone else, or just hang out in Crown Palm and enjoy off-the-cuff music from CodeMash attendees and family members.
Presented By: No Speaker
About the Speaker:
Top
Java SE 7: The Platform Evolves
Technology/Platform: Java
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Aloeswood / Leopardwood
Abstract: The Java SE 7 release is the result of nearly five years of industry-wide development involving open review, weekly builds and extensive collaboration between Oracle engineers and members of the worldwide Java community via the OpenJDK project. Over the past year the OpenJDK community has continued to grow, including the addition of major vendors such as IBM and Apple. In June Oracle announced that the Java SE 7 Reference Implementation will be based entirely on the OpenJDK open source code. The Java SE 7 release includes new features such as small language changes for improved developer productivity, a new Filesystem API, support for asynchronous I/O, a new fork/join framework for multicore performance, improved support for dynamic and script languages, updates to security, internationalization and web standards and much more. In this session, we'll provide an overview of the these new features and highlight the major improvements.
Presented By: Scott Seighman
About the Speaker: Scott Seighman is a Principal Sales Consultant with Oracle where his primary focus is architecting open solutions that span the computing landscape, from embedded devices to cloud architectures. Based in Cleveland, Scott is tasked with cultivating the technical staffs within Oracle's Partner community through training, workshops, webinars, product evaluations, and demos. Prior to joining Oracle, Scott spent 12 years with Sun Microsystems as a systems engineer, promoting Java technologies (ME, SE, EE) throughout the Midwest.
Top
JavaFX 2 for JVM Language Hackers
Technology/Platform: Java
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Aloeswood / Leopardwood
Abstract: JavaFX 2.0 is the next version of a revolutionary rich client platform for developing immersive desktop applications. One of the new features in JavaFX 2.0 is a set of pure Java APIs that can be used from any JVM language, opening up tremendous possibilities. This presentation demonstrates the potential of using JavaFX 2.0 together with alternative languages such as Groovy and Scala. It also will showcase the successor to JavaFX Script, Visage, a DSL with features specifically targeted at helping create clean UIs.
Presented By: Stephen Chin
About the Speaker: Stephen Chin is a technical expert in RIA technologies, and Chief Agile Methodologist at GXS. He coauthored the Apress Pro JavaFX Platform title, which is the leading technical reference for JavaFX, and is lead author of the Pro Android Flash title. In addition, Stephen runs the very successful Silicon Valley JavaFX User Group, which has hundreds of members and tens of thousands of online viewers, and also is co-organizer for the Flash on Devices User Group. Finally, he is a Java Champion, chair of the OSCON Java conference, and an internationally recognized speaker featured at Devoxx, Jazoon, and JavaOne, where he received a Rock Star Award. Stephen can be followed on twitter @steveonjava and reached via his blog: http://steveonjava.com/
Top
Keynote: How We Got Here, And What To Do About It
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 12:30 PM
Location: Keynote Dining Hall
Abstract: If you are developing software and getting paid for it, software process is part of your life. Even the absence of a defined process is a process of sorts. For over forty years the world of software development has been churning through forms of process, with each successor disclaiming the validity of its forebears to the cheers of those liberated from the oppressive chains of process past. But if the latest acclaimed process is the answer, why do so many groups slough off what seemed to be working well a scant few years ago in favor of yet another choice? Furthermore, the time between process changes gets shorter and shorter. Waterfall reigned for ages, then RUP, then Scrum and XP, and now Lean/Kanban, each enjoying successively shorter seasons of favor as the de facto choice. Process is but a framework to facilitate the collaboration of a group of people to produce a desired outcome. It is not a substitute for culture, technical excellence, discipline, and product strategy. In this keynote, Barry emphasizes the need to continue thinking critically about the processes and practices we embrace, accounting for the context in which they exist, and the importance of reflection and refinement at both the organizational and personal levels
Presented By: Barry Hawkins
About the Speaker: Prior to his career in software, Barry Hawkins spent 10 years designing, selling, and delivering turn-key industrial packaging and marking systems into manufacturing plants throughout the southeastern United States. He was responsible for the implementation, maintenance, and support of every system he sold, which was a formative experience that continues to influence his approach to consulting and coaching. Barry has played various roles in his 15 years in the software industry, including lone developer, team lead, director, and Agile coach and mentor. Barry is one of the few native Atlantans, currently specializing in coaching and mentoring for Agile software development in addition to doing contract software development. Over the years, he has developed on multiple platforms, focusing primarily on Microsoft technologies and then Java from 2003 onward. He views technology as a set of tools, and embraces the use of dynamic as well as statically-typed languages, procedural, object-oriented, and functional programming, each having their own strengths in a given problem domain.
Top
Keynote: Rethinking Enterprise
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 8:15 AM
Location: Keynote Dining Hall
Abstract: It used to be easy: building an 'enterprise' app meant using EJB, or COM+, or Web Services. It meant building a big, high-throughput, transactionally-oriented client/server system in a server-side-heavy topology. But (they tell us) that's over now. It's all "cloud", and "mobile": small clients accessing large servers living in a data center "someplace else", in a high-throughput manner. Somehow it doesn't feel any different. Neither did mainframes, for that matter. How are we end up here? What's the new "enterprise" developer supposed to do? What about all the new stuff (dynamic and/or functional languages, "NoSQL", and more)? Where does that all fit in? And what does all this have to do with geometry and history, again?
Presented By: Ted Neward
About the Speaker: Noted architectural expert, author and speaker Ted Neward will share insights into this topic honed over a decade of working with a wide range of organizations. An Architectural Consultant with Neudesic, LLC, Ted holds no patents, founded no open source frameworks, and invented no languages, choosing to revel instead in endless rounds of Halo, pizza, and gallons of Diet Coke.
Top
KidzMash - Learn to Program using Scratch
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 1:00 PM
Location: Acacia
Abstract: In this session we will build a video game using a language called scratch. With a little up-front instruction and planning, the kids will get started and quickly be off to the races and writing software. I even have some luck teaching adults so talk mom and dad into staying, too!
Presented By: Matt VanVleet
About the Speaker:
Top
KidzMash / CodeMash Families: Movie Night!
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 8:00 PM
Location: Acacia
Abstract: Movie TBA.
Presented By: No Speaker
About the Speaker:
Top
KidzMash / CodeMash Families: Scavenger Hunt ENDS
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:30 AM
Location: Acacia
Abstract: Bring your completed scavenger hunt sheet back and receive a prize!
Presented By: No Speaker
About the Speaker:
Top
KidzMash/CodeMash Familes: Lunch @ Great Karoo
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 12:00 PM
Location: Great Karoo
Abstract:
Presented By: No Speaker
About the Speaker:
Top
KidzMash: Creative Problem Solving Strategies
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 11:00 AM
Location: Acacia
Abstract: Come get your brain busted. We’ll sharpen your creative problem solving skills with our verbal and hands-on challenges. Each challenge will reward you for thinking in new and creative ways. Originality, creativity, and style will earn your team points in this friendly competition. We’ll do both thinking problems and hands-on challenges in this fun-filled brain-busting session.
Presented By: David Damstra
About the Speaker:
Top
KidzMash: Dance Party & T-Shirt Autographing Farewell Party
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:30 PM
Location: Acacia
Abstract: Get your groove on and burn some Kalahari Calories as we boogie the afternoon away with Joe and his heart-pumping soundtrack. THEN, stick around and autograph all of your friends’ t-shirts in a grand KidzMash farewell. We’ll provide the iron-ons and fabric markers – you provide the t-shirt!
Presented By: No Speaker
About the Speaker:
Top
KidzMash: LEGO Robots
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 10:30 AM
Location: Acacia
Abstract: Terry – involved in the First Lego League in Aurora, Ohio – will use robots to teach about FLL/FTC robotics programs and Lego NXT hardware and software.
Presented By: Terry Phillips
About the Speaker: Not available.
Top
KidzMash: Microcontrollers
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 1:00 PM
Location: Acacia
Abstract: Microcontrollers are everywhere. Come learn what they are and what you can do with the ones available in stores. Together, we’ll explore how to use microcontrollers to blink lights, make sounds, and manipulate robots. We’re bringing our bigger robot (Microsoft’s Reference Platform 2011 – Eddie) to demonstrate.
Presented By: Lwin Mang & Min Mang
About the Speaker:
Top
KidzMash: Scavenger Hunt
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 10:00 AM
Location: Acacia
Abstract: Come sign in, pick up your KidzMash schedule, and grab a scavenger hunt sheet!
Presented By: N/A
About the Speaker: N/A
Top
KidzMash:Android Programming
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:00 PM
Location: Acacia
Abstract: In this session, we will show you how to get started in Android development, from installing the development platform to building your first application or two. We will demonstrate how easy it is to make a native application on Android. And together, we’ll make an application. (7th-12th Grade)
Presented By: Lwin Mang and Min Mang
About the Speaker:
Top
KizMash / CodeMash Families: Lunch @ Great Karoo
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 12:00 PM
Location: Great Karoo
Abstract:
Presented By: No Speaker
About the Speaker:
Top
Lightning Talks
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 7:15 PM
Location: Zambezi
Abstract: Lightning talks! If you're not familiar with the format, lightning talks are short talks limited by a specific duration. We're going to shoot for a 5 minute cap, with the entire lightning talk session going no more than 90 minutes. You're free to talk for less than 5 minutes, but *not* more than 5 minutes. :-) Additionally, you're free to use slides or not; however because of podium limitations we're going to ask that if you do use slides that they be in PDF format so we don't have to deal with the 1,001 presentation formats. Lightning talks don't have to be limited to software development! While talking about coding is certainly fine, feel free to talk about your passion for chess, beer making, Star Wars, or anything else which strikes your fancy. CodeMash veteran Corey Haines will be the captain in charge of the lightning talk event, and will be following up to this email over the next day or two with more information about how to add your talk to the list.
Presented By:
About the Speaker:
Top
Lunch
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Wednesday January 11, 2012 @ 12:30 PM
Location: Keynote and Conversational Dining Halls
Abstract: Join us in the main or conversation dining halls for lunch. Today's lunch is Soup and Sandwich Bar: A true favorite. Your choice of two soups accompanied by sliced roast beef top sirloin, turkey, smokehouse ham, tuna and chicken salad, assorted cheeses, lettuce, tomato, onions, assorted breads and spreads, potato salad, coleslaw, fresh cookies and coffee, tea or milk. Soups are Tomtato Florentine and Beer Cheese with Kielbasa.
Presented By: No Speaker
About the Speaker:
Top
Lunch
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 12:15 PM
Location: Keynote and Conversational Dining Halls
Abstract: Join us for a Fajita Fiesta: A fantastic south of the border buffet including southwestern style salad, fried corn tortilla chips with salsa, soft flour tortillas, fajita seasoned chicken and beef, sautéed onions and peppers, shredded cheddar cheese, guacamole, sour cream, chopped tomatoes and shredded lettuce. Served with ranchero beans, Spanish rice, churros, fresh brewed coffee, tea and milk.
Presented By: No Speaker
About the Speaker:
Top
Lunch
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 12:00 PM
Location: Keynote and Conversational Dining Halls
Abstract: Join us for African Getaway: A taste of Africa. Flame-kist coconut maple chicken, pork loin harissa, cinnamon roasted top sirloin with peri-peri sauce, confetti vegetable couscous, graham masala spiced glazed carrots, crisp garden greens with Peppadew vinaigrette and elephant foot bread, Amarula trifles and fresh brewed coffee, tea and milk.
Presented By: No Speaker
About the Speaker:
Top
Making a Mockery of Hard to Test Code
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Indigo Bay
Abstract: Test Driven Development can be hard. Oh, sure, it's easy to write the standard bank account tests that you see in all of the demos. But what about real life? What about that service that hasn't been developed yet? What if the code you are trying to test doesn't follow Uncle Bob's SOLID principles? I will show you how free mocking tools will brighten your day!
Presented By: Philip Japikse
About the Speaker: An international speaker, Microsoft MVP, MCSD, CSM, and CSP, and a passionate member of the developer community, Phil Japikse has been working with .Net since the first betas, developing software for over 20 years, and heavily involved in the agile community since 2005. Phil works as the Patterns and Practices Evangelist for Telerik (www.telerik.com), and serves as the Lead Director for the Cincinnati .Net User’s Group and the Cincinnati Software Architect Group Phil is also the founder and president of Agile Conferences, Inc., a non-profit dedicated to advancing agile in all aspects of software development. In his spare time, Phil works part-time as a Firefighter/Paramedic, serves as Cub Master for his sons’ Cub Scout Pack, and volunteers for the National Ski Patrol. You can follow Phil on twitter via www.twitter.com/skimedic and read his blog at www.skimedic.com/blog.
Top
Making Crazy Money with Games and the Cloud
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon A
Abstract: Everyone seems to be working on a game these days. And why not? You can make some great money, have fun building something, and become famous. Many new games, especially casual games, are using the cloud. Not just to reduce their startup costs, but to innovate. Come see how you can build a modern game that uses the cloud to startup and scale. Real world gaming scenarios included.
Presented By: Brian Prince
About the Speaker: Brian H. Prince is a Cloud Evangelist for Microsoft. He gets super excited whenever he talks about technology, especially cloud computing, patterns, and practices. His job is to help customers strategically leverage technology, and help them bring their architecture to a super level. In a past life Brian was a part of super startups, super marketing firms, and super consulting firms. Much of his super architecture background includes building super scalable applications, application integration, and award winning web applications. All of them were super. Further, he is a co-founder of the non-profit organization CodeMash (www.codemash.org). He speaks at various international technology conferences. He only wishes his job didn’t require him to say ‘super’ so much. Brian is the co-author of “Azure in Action”, published by Manning Press. Brian holds a Bachelor of Arts degree in Computer Science and Physics from Capital University, Columbus, Ohio. He is also a zealous gamer. For example, he is a huge fan of Fallout 3, Portal, and pretty much every other game he plays.
Top
Massive Scalability for ASP.NET you can Afford
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Salon H
Abstract: The fastest query is the one never run - Using Microsoft Server AppFabric Cache you can dramatically improve the performance of your web / enterprise application without investing in big hardware or complicated programming. We'll take a real-world application with performance issues, add AppFabric cache to it to demonstrate the difference even short term caching can make to your application. We'll then walk through how you can make this effortless using code injection. The code samples will be specific to AppFabric and .NET but the concepts and approaches are common to many application platforms.
Presented By: Kendall Miller
About the Speaker: Kendall Miller is one of the founding partners of Gibraltar Software, an Independent Software Vendor (ISV) that develops and markets commercial applications for .NET developers, including: Gibraltar – an application logging and monitoring platform; and VistaDB – a small-footprint, SQL Server-compatible embedded database engine. Both products are used by customers around the world ranging from individual consultants through Fortune 100 companies and governments. Before starting Gibraltar Software, Kendall worked for multiple startups leading their technology development from concept through profitability. In each case, he's focused on translating enterprise-level performance and capabilities down to smaller companies. Using multiple generations of Microsoft technologies over the past 15 years, Kendall is experienced with the details of modern .NET development as well as the challenges that have stayed the same for generations. You can follow his blog at rocksolid.gibraltarsoftware.com or on Twitter (@KendallMiller).
Top
Mastering Change With Mercurial
Technology/Platform: Software Process
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Indigo Bay
Abstract: Managing change is a crucial part of building software. Mastering the source control tool Mercurial will help you gain significant insight into how your code is changing. That insight will allow you to track down bugs, remove duplication, discover refactorings, and maintain quality. We'll do a quick tour of basic Mercurial, then dive into its more advanced features. While advanced, they are still practical enough to be used during your day to day development. Essential features we'll discuss include named branches, Mercurial Queues, the record extension, aliases, shell functions, log acrobatics, blame, and sub repos. Though the topic here is Mercurial, the practices and concepts also apply to Git.
Presented By: Kevin Berridge
About the Speaker: Kevin Berridge is passionate about techniques and principles for building great software regardless of language or platform. For the past 10 years he has been working on products that make a difference in the Justice and Health Care industries. He is in charge of Software Engineering at Pointe Blank Solutions and runs the Burning River Developers meetup in Cleveland. Kevin is always excited to learn about the underlying principles that influence the way we do development today. When not hacking, he's probably playing jazz trombone.
Top
Metrics-Powered Ruby/Rails Performance
Technology/Platform: Ruby
Difficulty Level: Advanced
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Cypress
Abstract: Ruby can't scale. Tell that to LivingSocial, GroupOn, Gowalla, Sony, and the rest of our community pushing millions of requests per day. Scaling an application isn't about piling up hardware and dropping in the newest database fad, it's the combination of design and refinement. In this session, we'll look at refining Ruby code using tools to: * Measure memory and object allocation * Find CPU-intensive hotspots * Isolate data-store bottlenecks * Evaluate code complexity This is not about info-porn. It's about finding the 1% of your code that, through optimization, can dramatically improve performance.
Presented By: Jeff Casimir
About the Speaker: Jeff Casimir has been writing Ruby and Rails applications since 2005 and started Jumpstart Lab in 2009. He currently travels the world teaching the best Ruby/Rails classes on earth.
Top
Mobile Smackdown, Iron Chef Style
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Keynote Dining Hall
Abstract: You're probably seen, or at least heard of, the Iron Chef television show. Competitors are expert chefs, and they are presented with a set of ingredients at the beginning of a challenge. They need to incorporate those ingredients into a delicious meal in a very limited amount of time. This session will be exactly like that, except our competitors will be buiding mobile applications, not squid souffle. They will be given a set of somewhat unrelated ingredients at the beginning of our time, and then given 45 minutes to build an application using those ingredients. There will be three projectors on the wall at the same time, and you'll be able to see the entire process of prototyping an application from scratch. If you are a mobile developer (or aspiring to be one), you do not want to miss this session. NOTE: This session has been moved to the main dining hall to faciliate simultaneous display on three awesometastic screens.
Presented By: Jeff Blankenburg
About the Speaker: Jeff. Geek. Dad. Phone Guy. Hey You. These are all names that Jeff Blankenburg has been called in the last 15 minutes. His 12 years of web and mobile development experience led him to Microsoft, where he has had the privilege to speak to software developers all over the world. Jeff has published numerous mobile applications, as well as a book on writing apps. (He recommends that you buy both. Twice.) He will be happy to sign your copy of any book you have, written by him or not, lowering the value of the book significantly.
Top
NEW - Dealing with Information Overload
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Aloeswood / Leopardwood
Abstract: As developers, we are asked to absorb even more information than ever before. More APIs, more documentation, more patterns, more layers of abstraction. Now Twitter and Facebook compete with Email and Texts for our attention, keeping us up-to-date on our friends dietary details and movie attendance second-by-second. Does all this information take a toll on your psyche or sharpen the saw? Is it a matter of finding the right tools and filters to capture what you need, or do you just need to unplug. Is ZEB (zero email bounce) a myth or are there substantive techniques for prioritizing your live as a developer? Join Scott Hanselman as we explore this topic…perhaps we’ll crowd-source the answers!
Presented By: Scott Hanselman
About the Speaker: My name is Scott Hanselman. I work out of my home office for Microsoft as a Principal Program Manager, aiming to spread good information about developing software, usually on the Microsoft stack. Before this I was the Chief Architect at Corillian Corporation, now a part of Checkfree, for 6+ years. I was also involved in a few Microsoft Developer things for many years like the MVP and RD programs and I'll speak about computers (and other passions) whenever someone will listen.
Top
New Rules of UI Design: Golden eggs found by a wary software interface designer
Technology/Platform: Design/UX
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon D
Abstract: What separates a good user interface from a bad one? How do you make sure that your customers' experience with your software leaves them feeling good about you? We will go over some rules, tips, and tricks for designing a good user interface that will hopefully lead you to building better and more usable applications in the future.
Presented By: Joe Nuxoll
About the Speaker: Joe Nuxoll is best known in the software technology world as a co-host of the popular podcast "The Java Posse". By day, Joe is a UI designer for Tesla Motors, and is working on the in-car user interface for the new Model S. He's also a race driving instructor and avid photographer. Before Tesla, he held significant positions at several top-tier Silicon Valley technology companies including Apple, Sun, Navigenics, Borland, and more than his fair share of startups.
Top
Once Upon a Time in Clojureland - Learning Clojure with a Fairy Tale
Technology/Platform: Other Languages
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Aloeswood / Leopardwood
Abstract: Clojure is a powerful, elegant, and dynamic programming language on the JVM. This presentation will be a gentle introduction to the language with code examples presented in a fairy tale format. Join Princess Chloe in the kingdom of Clojureland and help her fight an evil wizard and an infinite headed hydra while learning an introduction to Functional Programming and the basics of the Clojure language along the way.
Presented By: Carin Meier
About the Speaker: Carin started off as a professional ballet dancer, studied Physics in college, and has been developing software for both the enterprise and entrepreneur for the past 15 years. She comes from a solid Java background, but has discovered a passion for the power and elegance the dynamic languages of Ruby and Clojure. When left to daydream, she thinks about the dynamics of flocks of birds, what the giant squids might really be doing down there in the deep, and maybe opening a first-rate cheese shop one day.
Top
Organized Javascript with Backbone.js
Technology/Platform: JavaScript
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Salon F
Abstract: Is your codebase well organized and easy to maintain? Is your Javascript less so? Disorganized Javascript is expensive. It makes bugs hard find and even harder to fix, leads to new features taking longer to build and causes slow performance in browsers. It has always been difficult to keep Javascript organized. Until now. Backbone.js allows any developer to organize code in a familiar MVC architecture without being a Javascript expert. It uses the best parts of the Javascript language to respond to user interaction and interact with the server. This talk will focus on learning Backbone.js through real code samples from a production application before and after implementing Backbone.js. The audience will leave this talk knowing how to incrementally replace their existing Javascript with Backbone.js.
Presented By: Joe Fiorini
About the Speaker: Joe is a Ruby & Javascript developer, husband and father from Cleveland, Ohio. He works for LeanDog Software where he builds solutions for customers using Ruby on Rails. He has contributed to a number of open source projects including RSpec, Ruby on Rails and GitX. He is currently writing his first screencast on Backbone.js.
Top
Painful Java Puzzlers and Bug Patterns
Technology/Platform: Java
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Aloeswood / Leopardwood
Abstract: With experience based on Java Programming Puzzlers (previously presented with Joshua Bloch), looking at thousands of coding mistakes found by FindBugs, and working with students and developers writing Java code for over 15 years, I'll discuss some common Java coding puzzlers and bug patterns, and techniques you can use to avoid them. While inexperienced developers can be particularly subject to many of these mistakes, they also occasionally bite experienced developers. Many of them are puzzlers, in the sense that they are hard to detect in code reviews, exhibit surprising behavior, and hard to debug. I'll avoid esoteric puzzlers that are largely a theoretical possibility, and focus on real bugs that occur with a distressing frequency in real code, illustrated by examples from current open source software. The talk will be accessible and value both to those new to the Java programming language and those with more than a decade of experience.
Presented By: Bill Pugh
About the Speaker: Bill Pugh is a professor at the University of Maryland, inventor of Skip Lists, lead on FindBugs, 6 time JavaOne Rock Star, one of the puzzling type-it brothers, and part time fire eater.
Top
Panel: Software Quality.
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Wednesday January 11, 2012 @ 7:00 PM
Location: Keynote Dining Hall
Abstract: This year's discussion will focus on Software Quality. Carl Franklin will moderate the panel. Audience participation is strongly encouraged. Microphones will be provided, as will paper for writing questions (for those who may be intimidated by the huge room that is now the main dining area).
Presented By: No Speaker
About the Speaker:
Top
Parallel Programming in Windows 8 Metro Applications
Technology/Platform: Windows 8
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 1:45 PM
Location: Salon G
Abstract: Windows 8 will bring a new style of Windows applications: Metro. Metro style applications bring a new set of issues in writing applications that take full advantage of our computers. When do I use the new Async capabilities of .Net 4.5, and when do I use the Task Parallel Library? What happens when Windows 8 suspends my application when switching to another Metro application? Come learn the answers to these questions and others as we explore parallel programming in Metro applications.
Presented By: Michael Slade
About the Speaker: Michael Slade is an Applications Programmer – Lead with Progressive Insurance. Prior to joining Progressive, he was a senior software engineer with ABB, where he spent 12 years building real-time, highly concurrent Windows applications to help ABB customers automate their chemical, power, and manufacturing plants.
Top
Pecha Kucha
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 6:00 PM
Location: Keynote dining hall
Abstract: PechaKucha is an event filled with short talks. During the day there will be a poster board up for people to sign up with ANY topic. Everyone will be allotted 400 seconds. Presenters must have a deck with 20 slides set to auto advance after 20 seconds. 20 slides, 20 seconds each. More info at http://www.pecha-kucha.org/
Presented By: No Speaker
About the Speaker:
Top
PHP with Windows Azure
Technology/Platform: Other Languages
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 4:50 PM
Location: Salon A
Abstract: Open Source and Microsoft have never been the best of companions. But with the Windows Azure platform, Microsoft set out to support and promote interoperability. This session will take a tour around one of the most robust third-party language libraries - the Windows Azure SDK for PHP. I will describe the SDK’s features; and demonstrate how to create and deploy a web site to the cloud using familiar PHP tools and concepts.
Presented By: Brent Stineman
About the Speaker: Brent has a passion, a passion for 'the cloud'. Nothing has captured the imaginations of IT as much as the potential of this brave new frontier. For the last three years, this passion has been focused on the Windows Azure platform, sharing his excitement, experience, and first-hand knowledge with anyone that wants to listen. Brent was recognized in 2010 as an inaugural Microsoft MVP (Most Valuable Professional) for the Windows Azure Platform.
Top
Polyglot Programming: The Power of Hybridization
Technology/Platform: Other Languages
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon E
Abstract: Programming languages always seem to do some things well but not others: Python punts when it comes to user interfaces, Java’s artificial complexity prevents rapid development and produces tangles, and it will be awhile before we see benefits from C++ concurrency work. The cognitive load of languages and their blind spots increases the cost of experimentation, impeding your ability to fail fast and iterate. If you use a single language to solve your problem, you are binding yourself to the worldview limitations and the mistakes made by the creator of that language. Consider increasing your wiggle room by crossing language boundaries, complementing a language that is powerful in one area with a different language powerful in another. Language hybridization can speed development to quickly discover your real problems, giving you more time to fix them. After making a case for hybridizing your thinking in general, I will present a number of simple examples; first showing the benefits of using other languages with multiprocessing in Python and Actors in Scala, then hybridization creating a Go language JSON-RPC server and a Python client, and finally a Python web server with a web client using CoffeeScript, jQuery and Ajax. All examples are kept small so that the syntax of each new language can be explained.
Presented By: Bruce Eckel
About the Speaker: Bruce Eckel (www.BruceEckel.com) is the author of Thinking in Java (Prentice-Hall, 1998, 2nd Edition, 2000, 3rd Edition, 2003, 4th Edition, 2006), Thinking in C++ (PH 1995; 2nd edition 2000, Volume 2 with Chuck Allison, 2003), C++ Inside & Out (Osborne/McGraw-Hill 1993), and First Steps in Flex (with James Ward, 2008) among others. He's given hundreds of presentations throughout the world, published over 150 articles in numerous magazines, was a founding member of the ANSI/ISO C++ committee and speaks regularly at conferences. He provides public and private training and consulting in programming languages and software system design.
Top
Preparing for Release to the App Store
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Salon F
Abstract: This presentation will take on the perspective of the independent developer and what needs to be considered prior to releasing an App onto Apple’s App Store. While the information shared will be useful to larger companies and corporations, the assumed actor will be an individual one person does it all perspective (as larger companies would need to involve communications, marketing and legal representation for many of the steps to a successful launch). The presentation will include such topics as setting up a relationship with Apple, preparing for a web presence, and how to handle user feedback and suggestions. It will also go into device provisioning, pricing, and the use of promo codes when getting people to use your App for the first time.
Presented By: Geoffrey Goetz
About the Speaker: Geoffrey Goetz is a Mobile Architect at Compuware Corporation in Columbus Ohio, as well as a published author for GigaOm's TheAppleBlog. Geoffrey’s online articles have been picked up in syndication by popular sites including USA Today, Money, Fortune, Forbes and The New Your Times. Geoffrey is also a published book author ("Mastering JBuilder") and veteran international speaker on a variety of topics ranging from Win32, to Java, to Mobile. He has been on the development scene in central Ohio since graduating from Ohio State in 1992. Geoffrey has been a speaker on mobile development at CodeMash, MobileX and the local CIDUG meetings. You may also recall several presentations that Geoffrey has delivered Borland Developers Conference as well as locally at COJUG as far back as the late 90's. Geoffrey’s involvement on the mobile scene started with J2ME (as featured in the January 2000 issue of JDJ) and includes such ubiquitous platforms as Java Ring/Smart Card (when such things existed). Geoffrey has also recently been involved in cross platform and native development on both the iOS and Android platforms for various Fortune 100 and 1000 companies.
Top
Putting Web API Security Issues to REST
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Salon F
Abstract: A common security mantra is "don't roll your own" - but when developing modern web APIs, this may seem easier said than done. Unlike older, over-specified API protocols, the general concepts which underpin REST APIs do not offer much guidance on security best-practices. Worse still, some techniques that have gained widespread use have been shown to be fundamentally flawed. This session will cover some common classes of mistakes in developing and using secure web APIs, and show how reinventing the wheel can sometimes be dangerous. Along the way, we'll cover problems with authentication and authorization, information leakage, and (im)proper uses of transport-layer security, among others.
Presented By: Adam Goodman
About the Speaker: Adam is a co-founder and Principal Security Engineer at Duo Security, where he and his cohorts work to radically improve the ease-of-use in strong authentication systems. He was previously a founding engineer at Zattoo, Europe's largest live-streaming Internet TV operator, where he led the development of the secure P2P distribution and digital rights management protocols that carried the first live broadcasts of Europe's second-largest pay TV operator over the Internet. Adam also enjoys puns way too much for his own good...
Top
Rails Development on Windows...Seriously.
Technology/Platform: Ruby
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Cypress
Abstract: I started programming Rails on Windows in 2008. The experience was not the best but I still made the best of it. Fast-forward to 2011 and because of tools like RailsInstaller, Windows users have things almost easier than Mac/Linux. This talk will focus on some of the best-practices that I've found when using Windows for Ruby on Rails development.
Presented By: Evan Machnic
About the Speaker: Evan Machnic is a PANDA at Engine Yard and individual Rails Developer. He is also an occasional Rails on Windows masochist.
Top
Rapid Android development with JRuby
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Zambezi
Abstract: If you aren’t building a mobile app today, maybe these tidbits of information will convince you otherwise: 70% of the world’s population has a mobile phone; what’s more, over a million Android devices are activated weekly. 1/2 of all local searches are done on a mobile device; moreover, over 90% of mobile Internet access is social media related. Clearly, if you aren’t building mobile apps today, you will be soon. In this session, I’m going to show you Ruboto, a framework that leverages the power of JRuby to enable you to quickly build and deploy Android apps. As you’ll see, with the expressiveness of Ruby and the full stack nature of this Rails-like framework, you can go from idea to device in short-order. You will leave this session with the knowledge of how to rapidly build a GPS enabled mobile app targeting Android using your existing Java and/or Ruby skills. Now it's up to you to build the next Angry Birds with your new skills!
Presented By: Andrew Glover
About the Speaker: Andrew is the CTO of App47, where he gets to play with iOS, Android, Ruby, Rails, Heroku, AWS, MongoDB and everything else that is cool these days. He carries around an iPhone, iPad, and HTC Droid phone and in his free time hacks on Node.js.
Top
Registration
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Tuesday January 10, 2012 @ 5:00 PM
Location: Registration Booth A
Abstract: Come sign in and get all your conference goodies! NOTE: Tuesday evening's registration is in Registration A.
Presented By: No Speaker
About the Speaker:
Top
Registration
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Wednesday January 11, 2012 @ 7:00 AM
Location: Registration Orange
Abstract: Come sign in and get all your conference goodies!
Presented By: No Speaker
About the Speaker:
Top
Registration
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 7:00 AM
Location: Registration Orange
Abstract:
Presented By: No Speaker
About the Speaker:
Top
Registration
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 8:00 AM
Location: Registration Orange
Abstract:
Presented By: No Speaker
About the Speaker:
Top
Reinventing Business
Technology/Platform: Software Process
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Salon E
Abstract: Over half of US workers hate their jobs, and most of this unhappiness seems to come from dysfunctional organizational structures. What if, instead of causing misery, an organization was designed to create happiness among its workers? I’ll talk about the research I’ve been doing on this subject for the past several years, companies I’ve visited, how I’ve struggled against my own preconceptions and limitations, the surprising number of others who are pushing on the same ideas and writing books on the subject, a few things I’ve found that seem like answers, and the questions that continue to accumulate. You should come away with a new perspective on what could be possible with organizations of the future.
Presented By: Bruce Eckel
About the Speaker: Bruce Eckel (www.BruceEckel.com) is the author of Thinking in Java (Prentice-Hall, 1998, 2nd Edition, 2000, 3rd Edition, 2003, 4th Edition, 2006), Thinking in C++ (PH 1995; 2nd edition 2000, Volume 2 with Chuck Allison, 2003), C++ Inside & Out (Osborne/McGraw-Hill 1993), and First Steps in Flex (with James Ward, 2008) among others. He's given hundreds of presentations throughout the world, published over 150 articles in numerous magazines, was a founding member of the ANSI/ISO C++ committee and speaks regularly at conferences. He provides public and private training and consulting in programming languages and software system design.
Top
SESSION UPDATED: Building an English-based Rules Engine Using .NET and IronRuby
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon G
Abstract: In this session we will explore writing an English-based rules engine that allows developers to create domain-specific rules for an application that can be easily understood by anyone. We will use a combination of C# and the DLR (dynamic language runtime) with IronRuby on the .NET platform to create a way to write, manage, and process rules for an application.
Presented By: Keith Elder
About the Speaker: Keith Elder is the co-host of the popular online technology podcast Deep Fried Bytes. He is also a Director of Software Engineering at Quicken Loans, the nation’s largest online mortgage lender based in Detroit, MI and is the founder of the Hattiesburg, MS .Net User Group called Hub City NUG. Keith is an experienced technologist, systems administrator, software engineer, speaker, trainer and all around geek. As an experienced educator, trainer and speaker he has logged thousands of hours in front of the classroom teaching students of varying ages from the 6th grade to the college level. He has trained countless developers from various business sectors ranging from top auto manufactures, fortune 500 companies and Universities. As a Microsoft MVP he speaks throughout the United States at major technical conferences, Code Camps, and .Net User Groups. Keith’s ability to explain complex topics with a friendly common sense southern attitude make him a highly regarded speaker at technical conferences. You can read more about Keith’s interests, hobbies, rants and raves on his blog at http://keithelder.net/.
Top
Social: Attendee Party
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 7:00 PM
Location: Conference venue
Abstract: Join us in the conference venue for cocktails, an assortment of hors d'oveurs, and socializing!
Presented By: No Speaker
About the Speaker:
Top
Social: The Womack Family Band and Chris Castle
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Wednesday January 11, 2012 @ 8:30 PM
Location: Grand Hall
Abstract: Come join us for some wonderful music as the Womack Family Band and Chris Castle return to CodeMash to share their wonderful music with us!
Presented By: No Speaker
About the Speaker:
Top
Storyboards: New development in iOS5
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Salon F
Abstract: An iPhone app moves from screen to screen as the user taps and swipes. You can paper prototype or you could use a digital tool to get the feel of your app. Or you could just start developing it using the new storyboard architecture included in Xcode. This session will show you how to use Storyboards to layout and create an application in iOS5 for iPhone or for iPad.
Presented By: Daniel H Steinberg
About the Speaker: Daniel Steinberg has spent the last three decades programming the iPad, iPhone, and Mac OS X. OK, he hasn't. But he's been programming the iPhone and the iPad since the SDK's first appeared in beta and Mac OS X for many years before. Daniel is co-author of the book iPad Programming from the Pragmatic Programmers and author of their book Cocoa Programming. Daniel presents iPhone and Cocoa training for the Pragmatic Studio and consults through his company Dim Sum Thinking. When he's not coding or talking about coding for the Mac, the iPhone, and the iPad he's probably cooking or hanging out with his wife and daughter.
Top
Test Driving - beyond the parking lot
Technology/Platform: Ruby
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 1:45 PM
Location: Cypress
Abstract: CANCELLED -- Automated tests are a foundation of agile software development. Many experts teach that developers should write unit tests and testers should write higher-level tests. However, many of the practices, such as test-driven development and pair programming, say little about how these practices fit into the development process. Shannon Code (a developer) and Dawn Code (a tester) describe and demonstrate ATDD (acceptance test driven development), from discussing the story to considering it done done. Early in the process they agree on story scope and develop a shared vocabulary. The tester and developer discuss the approach to solving the problem and begin to work out a test approach. Together, they write a series of acceptance tests to pin down the details of how the story will work. These team members agree up front on what will be tested, resulting in more solid production code from the beginning. Come and watch how this process unfolds when supported by an environment that is set up to execute tests and provide feedback and quickly as possible.
Presented By: Dawn Code
About the Speaker: Dawn Code is a software test evangelist who has been working to integrate testers as members of software development teams and improving the working relationships between testers, developers, and everyone else for the past 9 years. When not speaking at testing and agile conferences and user group meetings, she spends her time working in the open source community. She also writes actively, publishing articles and posting to her blog at passionatetester.com
Top
Testing the Security of Your Web Apps with Backtrack 5
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:35 PM
Location: Zambezi
Abstract: The recent break-ins at Sony and Epsilon were partially tracked to web application failures. Not network security problems. Not server misconfiguration. Coding failures. Defects. Does security make it into your unit tests? Do you do security checks as part of your integration testing? Bill will use BackTrack 5 - an industry-standard penetration testing tool - to show some techniques for breaking into your own applications, and making sure no one else does.
Presented By: Bill Sempf
About the Speaker: Hi, my name is Bill Sempf, and I am an enterprise architect. Though I used to hate the term enterprise architect, it is clearly the only thing out there that defines what it is that I do. My breadth of experience includes business and technical analysis, software design, development, testing, server management and maintenance and security. In my 18 years of professional experience I have participated in the creation of well over 200 applications for large and small companies, managed the software infrastructure of two Internet service providers, coded complex software happily in every environment imaginable, and made mainframes talk to cell phones. In short, I make the technology that people are using every play nicely together.
Top
Ubiquitous App development with PhoneGap
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 10:45 AM
Location: Indigo Bay
Abstract: You’ve been tasked to build an app for your company that does x,y, and z. You’ve also been informed that it needs to work on iOS and Android. You think “no problem!” -- that’s what HTML 5 is for! But then you find out that the app needs native features like GPS and a camera. What are you to do? PhoneGap is an innovative framework that allows you to build mobile apps in HTML 5 that have access to device features reserved for native apps. Simply put: with PhoneGap, you can build HTML 5 apps that can use device features like geolocation, the accelerometer, and even a camera, for example. In this session, you’ll learn how to build a web-based mobile app using HTML 5 and JavaScript that is able to live inside the PhoneGap container and take advantage of native features, such as GPS. You’ll see that with PhoneGap the same web app can then be deployed onto an iOS device and an Android one. One app. Multiple device platforms. Job done.
Presented By: Andrew Glover
About the Speaker: Andrew is the CTO of App47, where he gets to play with iOS, Android, Ruby, Rails, Heroku, AWS, MongoDB and everything else that is cool these days. He carries around an iPhone, iPad, and HTC Droid phone and in his free time hacks on Node.js.
Top
UI Automation - Testing iOS Apps from the Top Down
Technology/Platform: Mobile
Difficulty Level: Beginner
Start Time: Friday January 13, 2012 @ 9:30 AM
Location: Salon F
Abstract: So, for the nth time, you fire up your awesome iOS app to run through your testing steps. Manually. Over and over. And you have to do the same tests on the iPad. And the iPod touch. On iOS 4 and then 5. And you just want to pull your hair out. Oh, and you just found a memory leak. Fix it and start over again. And again. Now we have UI Automation, Apple's official UI testing framework. You manipulate your app with Javascript through the views and controls, similar to the way you'd manipulate a web page. The scripts can drive the simulator or even the device. As part of Instruments, Apple's performance monitoring and debugging tool, you can automate your apps through all kinds of scenarios and evaluate the performance or memory usage. Its so powerful and flexible that it can look a little overwhelming at first. We'll investigate the framework through live interactive demos against a real application and walk through good practices to keep your test suite organized as it grows. A very basic understanding of iOS and Javascript programming is assumed.
Presented By: Jonathan Penn
About the Speaker: Jonathan Penn is a mobile and web app developer with a long history of quality work sprinkled with mischief. As an independent contractor, Jonathan loves helping clients through training and bootstrapping new ideas with vigor and discipline. Aside from working with hard-to-solve problems, he is the mad scientist behind the apps at Navel Labs (http://navel-labs.com), and scribbler-in-chief at Cocoa Manifest (http://cocoamanifest.net), a technical blog for exceptional iOS resources and commentary.
Top
Vagrant: Virtualized Development Environments Made Simple
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 11:00 AM
Location: Salon D
Abstract: Have you ever wished that your local development sandbox could look exactly like production, but you've got a mismatch between your local OS and your production OS? And what about the age old "it works on my machine" excuse that quite often stems from differences between developer sandboxes? Many have turned to virtualization, creating a machine image that can be passed around the team. But who manages the template? How do you keep things in sync? In this session, we'll explore Vagrant (http://www.vagrantup.com), an open source tool that allows you to easily create and manage virtual development environments that can be provisioned on demand and "thrown away" when no longer needed. Our agenda will include: * Creating new base OS templates using the Vagrant Veewee plugin * Creating a new development box using Vagrant * Provisioning the box using Puppet * Provisioning the box using Chef * Deploying a simple web application to a multi-box development environment * Packaging and distributing the box within your team
Presented By: Matt Stine
About the Speaker: Matt Stine is a Technical Architect at AutoZone in Memphis, TN. He is an eleven year veteran of the enterprise software and web development industries, with experience spanning the healthcare, biomedical research, e-commerce, and now retail store domains. His current focus is the development and support of an enterprise Java platform supporting 4600+ AutoZone stores. Matt appears frequently on the No Fluff Just Stuff symposium series tour, as well as at other conferences such as JavaOne, SpringOne/2GX, The Rich Web Experience, and The Project Automation Experience. He has served as Agile Zone Leader for DZone, and his articles also appear in GroovyMag and NFJS the Magazine. Matt is also author of the Selenium 2.0 DZone Refcard. Matt is also the founder and past president of the Memphis/Mid-South Java User Group. His current areas of research emphasis include lean/agile software development, continuous delivery, DevOps, and infrastructure as code using tools such as Puppet, Chef and Vagrant.
Top
Vendor Sessions
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 3:00 PM
Location: Various-See Sponsors for details
Abstract: Join our sponsors as they present sessions on cutting edge technologies, methodologies, skills and career development, and a host of other topics. Find details on specific sessions at each sponsor's booth.
Presented By: No Speaker
About the Speaker:
Top
Vendor Sessions
Technology/Platform: Other
Difficulty Level: Intermediate
Start Time: Friday January 13, 2012 @ 3:00 PM
Location: Various-See Sponsors for details
Abstract: Join our sponsors as they present sessions on cutting edge technologies, methodologies, skills and career development, and a host of other topics. Find details on specific sessions at each sponsor's booth.
Presented By: No Speaker
About the Speaker:
Top
Waterpark Party
Technology/Platform: Other
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 10:00 PM
Location: Waterpark
Abstract: Join us in the Kalahari's awesome waterpark for a fun-filled evening! The entire park is reserved just for CodeMash attendees and their families! Be sure to visit the sponsors at their cabanas around the wave pool! The party starts at 10pm and runs until 1AM. Shuttles will be available until 2AM to get offsite guests back to their hotels.
Presented By: No Speaker
About the Speaker:
Top
What the heck are they doing over there? Inside the Microsoft Web Stack of Love
Technology/Platform: .NET
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Orange
Abstract: Oh yes. Building web applications on the Microsoft stack continues to evolve. There’s lots of great tools to leverage but it can be difficult to keep up with all the options. In this technical and fast-paced session, you’ll learn from Scott Hanselman how the pieces fit together. We’ll look at The Next Version of Visual Studio, ASP.NET MVC 4, WebForms 4.5, NuGet, Scaffolding, Web API, SignalR, Entity Framework Code First (Magic Unicorn Edition) plus Migrations, jQuery and lots, lots more. We’ll also see how many times Scott can say “unobtrusive” in a single talk. You’ll leave this session with a clear understanding of the technology options available on the Microsoft Web Stack. What’s changed and why? What direction are we going? Let’s see what we can build in an PowerPoint-free hour with the Microsoft Web Stack of Love. We’ll also talk about how you can use the Next Version of Visual Studio to work on and enhance your existing .NET 2, 3 and 3.5 apps as well. Two weeks of content in one hour. Guaranteed.
Presented By: Scott Hanselman
About the Speaker: My name is Scott Hanselman. I work out of my home office for Microsoft as a Principal Program Manager, aiming to spread good information about developing software, usually on the Microsoft stack. Before this I was the Chief Architect at Corillian Corporation, now a part of Checkfree, for 6+ years. I was also involved in a few Microsoft Developer things for many years like the MVP and RD programs and I'll speak about computers (and other passions) whenever someone will listen.
Top
What's New In Windows Phone Mango
Technology/Platform: Mobile
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location: Salon G
Abstract: Come learn about the newest features in Windows Phone Mango, including enhanced emulator, Fast Application Switching, Multitasking, Reminders, Background agents, Sensors, Tiles and Local Database.
Presented By: Jesse Liberty
About the Speaker: Jesse Liberty is a Senior Developer-Community Evangelist on the Windows Phone Team. Liberty hosts the popular Yet Another Podcast and his blog is required reading. He is the author of numerous best-selling books, including Programming Reactive Extensions and LINQ and the forthcoming Migrating to Windows Phone. He was a Distinguished Software Engineer at AT&T; Software Architect for PBS and Vice President of Information Technology at Citibank and can be followed on twitter at @JesseLiberty
Top
Windows 8 Metro App with Near Field Communication
Technology/Platform: Windows 8
Difficulty Level: Beginner
Start Time: Thursday January 12, 2012 @ 3:35 PM
Location: Aloeswood / Leopardwood
Abstract: So Windows 8 is just cool! Add NFC to that and we have a super cool experience. We will create a simple metro app with Windows 8 , add ability to use NFC to communicate with another Windows 8 machine and create a multi player game. You will see how easy it is to use NFC in Windows 8 and write your own application.
Presented By: Parag Joshi
About the Speaker: Parag Joshi (@ilovethexbox ) is an independent consultant and has over 13 years software development experience working on various Microsoft based technologies. He has been developing on .NET since the first beta. He is an active member of the Cincinnati .NET User Group (@CINNUG) and runs an XNA Linked-In User Group at http://LetsXNA.org with support from CINNUG. With the new Windows Phone 7 ecosystem, he is busy developing Windows Phone XNA games for his 7 year old son and getting advanced input from his 15 month old daughter. You can check out the Let’s XNA site for more community XNA game development.
Top
Writing Solid Ruby Code
Technology/Platform: Ruby
Difficulty Level: Intermediate
Start Time: Thursday January 12, 2012 @ 9:45 AM
Location:
Abstract: Do you always seem to be fixing bugs in your software project? Are you spending more time fixing defects that actually implementing new behavior? If so, this talk is for you. In the mid-90s, Steve Maquire wrote a book that strongly effected the way I developed software. Primarily writing in C and C++ in those years, the struggle to deliver bug free software was especially a challenge. In the book "Writing Solid Code", Steve gives sage advice on the problems of developing large software projects and the challenges that go with making sure your softare actual does what you think it should. Although as Ruby developers we are no longer using C to deliver our large projects, the challenge of writing solid, reliable code is still before us. Based on Maquire's advice and my own years of Ruby experience, this talk will show developers tools, techniques and practices that they can use to improve their software and begin writing solid code.
Presented By: Jim Weirich
About the Speaker: Jim Weirich first learned about computers when his college adviser suggested he take a computer science course: "It will be useful, and you might enjoy it." With those prophetic words, Jim has been developing now for over 25 years, working with everything from crunching rocket launch data on supercomputers to wiring up servos and LEDs on micro-controllers. Currently he loves working in Ruby and Rails as the Chief Scientist at EdgeCase, but you can also find him strumming on his ukulele as time permits.
Top




























































Connected