Iowa Code Camp - Speakers

Registration is closed. See you Saturday!

Get the schedule, session lists and speaker bios on our mobile app.
Android | iOS | Windows Phone

Aaron Ladage

Aaron Ladage is a UI engineer for DEG in Overland Park, Kansas. He's currently obsessed with creating faster, leaner responsive sites, and architecting front-end workflow tools and processes that help other developers do the same. Outside of work and freelance, Aaron is a cliché Kansas City BBQ snob and brews some really bad beer. He's the creator of, a testing utility for onscreen keyboards, input types and validation patterns, and Yeo+Lab, a front-end website scaffolding tool, with his DEG teammates. - @aladage

12:45 PM - 2:00 PM : Ballroom C : Don't Get Bootstrapped Down: Reading the Fine Print on Responsive Frameworks (Level: 100)

Adam Barney

Adam Barney is a nerd. After buying a Commodore 64 with money from his paper route in the 4th grade, he’s never stopped learning about computers and how to make these stupid machines do cool things. Adam is now a Microsoft MVP (C#) and ASPInsider, and runs his own independent consulting company, Barney Consulting in Lincoln, NE. - @cabarney

2:15 PM - 3:30 PM : Room 123 : Meet Aurelia (It’s a JavaScript Client Framework) (Level: 200)

Anne Bougie

Anne is a software engineer with Skyline Technologies living in the Fox Cities area. She has been a developer for over 17 years in website and mobile technologies. She has an extensive background in .NET as well as Javascript and Python. - @bougiefever

10:30 AM - 11:45 AM : Room 123 : End to End Javascript Testing (Level: 200)

Benjamin Oakes

Benjamin Oakes is a senior software engineer at Continuity, where he helps save community banks across the United States. Continuity is based in New Haven, CT, with a small office in downtown Iowa City. He believes in the power of appropriately-applied pair programming and its use to support team building, knowledge sharing, and mentorship. He blogs at - @benjaminoakes

2:15 PM - 3:30 PM : Ballroom F : AMA: We pair program (almost) everything. Ask me anything! (Level: 200)

Brad Dwyer

Founder of Hatchlings, a social gaming company that has reached over ten million players. - @braddwyer

2:15 PM - 3:30 PM : Room 122 : Realtime in Real Time (Level: 100)

Brandon Weber

Web developer at National Pork Board and freelance consultant. - @brandonmweber

9:00 AM - 10:15 AM : Ballroom A : DevOops (Level: 100)

Brandon Williams

Brandon is currently an independent software consultant. His focus is on adding value to businesses that he consults and is currently using Ember to help create great user experiences. When not working he's hacking on open source, preparing talks for conferences or user groups and learning new things. He has proficiency in Ember.js, JavaScript, Python, and Vim. - @williamsbdev

10:30 AM - 11:45 AM : Ballroom B : An introduction to Ember CLI (Level: 200)

Cecil Williams, Rich Harms, Ben Skiff

Cecil G. Williams is an agile coach and senior software engineer at Source Allies, director of curriculum for Tech Journey, and an adjunct instructor & tutor in information technology at Kaplan University. Cecil uses his more than 20 years of information technology experience combined with his more than 8 years of university teaching experience to share his knowledge on agile and many of the software development engineering practices. Richard Harms is a senior software engineer for Source Allies where he works with clients to architect and implement a variety of IT solutions. Prior to joining Source Allies, he was CTO at an online retailer where he was responsible for the technical and design teams that maintained their internal applications as well as customer-facing sites. While there, he built a variety of software for the company including product, customer and content management systems. Professional interests include ERP and order management software, virtualization, Java and JEE, and Linux. During his downtime, he enjoys ice skating and playing hockey, photography and video production, and is an avid motorcyclist. Ben Skiff is a Software Engineer at Source Allies. Ben graduated from the University of Iowa in May of 2014 with a major in Computer Engineering with a focus on software development, and a minor in Mathematics. He interned With Pearson Testing and Assessment during his senior year at Iowa. He joined Source Allies immediately after graduating, and has since worked with them on a variety of software development projects. - @cecilgwilliams, @richharms

9:00 AM - 10:15 AM : Ballroom D : Sharing code between Windows, Android, and iOS apps (Level: 100)

Chris Hoekstra

Chris Hoekstra is an Android artificer at Jack Henry & Associates, a company fixated on providing the best user experience for banks and their customers. Working from the JHA Cedar Falls office, he is focused on their mobile product with a heavy emphasis on Android development. Chris studied at the University of Northern Iowa where he earned a B.S. in Computer Science and has since found a love in user facing software. In a previous life, he has spent time working on web front ends as well as some embedded development. - @HoekstraChris

3:45 PM - 5:00 PM : Room 123 : How to train your Android custom views (Level: 200)

David W. Body

David W. Body is an experienced web developer who loves all things related to software development and programming. He is proficient in JavaScript and Ruby, comfortable in Clojure, and gets by in Python. He also messes around with data analysis and DevOps and is an avid runner. David is currently available for freelance and contract work. - @david_body

10:30 AM - 11:45 AM : Ballroom D : Git Demystified (Level: 200)

Dustin Thostenson

Dustin Thostenson is an independent .NET consultant, leading Delta 3Consulting. He has been a developer and trainer in the Des Moines,Iowa area for almost 2 decades. His focus has been on MS technologies with an emphasis on web development. Experiences span from developer to architecture and mentoring roles. To keep busy Dustin helps lead the Iowa .NET User Group, dsmHack and volunteers in Central Iowa. To keep it real he spends time with his wife and 4 kids. To keep it random he speaks at regional conferences and tweets @dustinson. - @dustinson

3:45 PM - 5:00 PM : Ballroom D : Navigating Independent Consulting with Failure Driven Development (Level: 200)

Ed Leighton-Dick

Ed Leighton-Dick is a SQL Server performance and architecture expert with over twenty-three years of experience in development, database administration, and system administration. In 2014, he founded Kingfisher Technologies, a consultancy focused on SQL Server performance, architecture, and security. Ed volunteers his time with PASS, including roles as Midwest Regional Mentor, Chapter Leader of I-380 PASS SQL Server User Group, and organizer of SQLSaturday Iowa City. He can often be found teaching sessions at local, regional, and national events, including user groups, SQLSaturday events, and Iowa Code Camp. Outside of work, he is a devoted husband, father of two beautiful girls, and beginning runner. Ed can be reached through his blog,, and on Twitter at @eleightondick. - @eleightondick

10:30 AM - 11:45 AM : Room 122 : Protecting Your Data With Encryption (Level: 200)

Elizabeth Groom

Elizabeth is a software engineer with over 10 year experience working with Cartegraph Systems in Dubuque IA. She is passionate about process, earning her scrum master certificate in 2013. Her second passion is data, big data, small data all data. Data is so sexy! - @ElizabethAGroom

9:00 AM - 10:15 AM : Ballroom B : Intro to R for the C# developer (Level: 100)

Iain McCoy

Iain McCoy is a programmer and juggler from Melbourne, Australia. He has a keen interest in how immutability, purity and types can help us be more effective programmers. - @imccoy

9:00 AM - 10:15 AM : Room 123 : Programming is Broken but there is hope (Level: 200)

Iowa Code Camp

Sessions hosted by Iowa Code Camp - @iowacodecamp

8:00 AM - 5:30 PM : Atrium : Sponsor Area (Level: 100)

8:00 AM - 9:00 AM : Atrium : Breakfast (Level: 100)

8:30 AM - 8:45 AM : Ballroom A : Opening Session (Level: 100)

10:15 AM - 10:30 AM : Atrium : Break (Level: 100)

10:30 AM - 11:45 AM : Room 129 : Open Space Discussion (Level: 100)

11:45 AM - 12:45 PM : Atrium : Lunch (Level: 100)

12:45 PM - 2:00 PM : Room 129 : Lightening Talks (Level: 100)

2:00 PM - 2:15 PM : Atrium : Break (Level: 100)

2:15 PM - 3:30 PM : Room 129 : Open Space Discussion (Level: 100)

3:30 PM - 3:45 PM : Atrium : Break (Level: 100)

5:00 PM - 5:30 PM : Ballroom A : Closing Session (Level: 100)

Jason Bock

Jason Bock is a Practice Lead for Magenic ( and a Microsoft MVP (C#). He has 20 years of experience working on a number of business applications using a diverse set of frameworks and languages such as C#, .NET, and JavaScript. He is the author of "Metaprogramming in .NET", "Applied .NET Attributes", and "CIL Programming: Under the Hood of .NET". He has written numerous articles on software development issues and has presented at a number of conferences and user groups. He is a leader of the Twin Cities Code Camp ( Jason holds a Master's degree in Electrical Engineering from Marquette University. Visit his web site at - @jasonbock

10:30 AM - 11:45 AM : Ballroom A : What's New in C#6 (Level: 200)

3:45 PM - 5:00 PM : Ballroom C : Code Reactions - An Introduction to Reactive Extensions (Level: 200)

Jason Groom

Employer: IBM Title: Delivery Analyst Whats a delivery analyst? I am a data analyst, that specifically focuses on service delivery processes, and data. I make recommendations, and facilitate change based on my analysis of the data mined from a variety of sources. -

2:15 PM - 3:30 PM : Ballroom D : What is Data Science Anyway? (Level: 100)

Jennifer Strater

Jennifer "Jenn" Strater is Co-Founder of Gr8Ladies, an organization for the support women in the Gr8 community. She uses Groovy and Grails daily and is an active participant in the Gr8 community. She regularly attends her local user group, GroovyMN, and annual conferences including Gr8ConfUS. Jenn also presents introductory interactive sessions at various Minnesota tech events including as part of the Gr8Workshops initiative and at national conferences including the Grace Hopper Celebration of Women in Computing. During the 2015 conference season, she will be speaking at international venues including Greach, the Groovy spanish conference, Gr8Conf Eu, and Gr8Conf US. - @jennstrater

12:45 PM - 2:00 PM : Room 122 : No-Nonsense NoSQL (for Groovy and Grails) (Level: 200)

Jon von Gillern

Jon is a C# MVP and Consultant from West Des Moines, Iowa. He became interested in code in his junior high programming class when, in a ""delusion of grandeur"", Jon convinced himself he found a pattern to prime numbers using BASIC-A. Although deflated after realizing his theory was quite silly, his passion for writing software flourished and Jon continued on to get a degree in Computer Engineering from Iowa State University. He has been paid to develop everything from Excel Macros to large scale genetic visualizations using WPF. Currently, Jon is the tech lead for two new developer tools - Nitriq Code Analysis and Atomiq Duplicate Code Finder. - @vongillern

10:30 AM - 11:45 AM : Ballroom F : RegEx for Fun And Profit (Level: 100)

12:45 PM - 2:00 PM : Ballroom A : Designers? We don't need no stinkin' Designers! (Great UI Made Easy) (Level: 100)

Jose Quinones

Jose Quinones is a JAVA turned Microsoft .Net developer who has been programming for 15 years, working in enterprise development teams to full-stack developer roles. He is currently employed with two very unique companies, one being a firearms auction house and the other services customers in the EB-5 Visa program as the Web, Mobile and Cloud Services Manager. In his role he is currently the architect and developer of a new auction management application to be hosted in Azure. - @josequinonesii

9:00 AM - 10:15 AM : Room 122 : Dapper, the Micro-ORM that will turn your head. (Level: 200)

Josh Larson

Josh specializes in responsive, mobile-first web development and search engine optimization at Happy Medium and has been developing websites for over five years. He is constantly researching the latest trends and technologies on the web and enjoys keeping a brand's presence fresh online. Josh holds a degree in journalism and Spanish from Iowa State University. - @jplhomer

2:15 PM - 3:30 PM : Ballroom C : Writing a WordPress Plugin Doesn't Have to be Scary (Level: 200)

Lee Brandt

Lee has been writing code in one capacity or another for more than two decades. He is the Director of R&D at PaigeLabs in Kansas City, where he codes for clients and teaches others. He speaks internationally about software tools and practices. Lee is a .Net MVP, but has spent the last few years writing some Objective-C and a lot of JavaScript. - @leebrandt

12:45 PM - 2:00 PM : Ballroom B : Javascript LevelUp (Level: 200)

Matt Busche

Matt Busche is a Husband, Dad, programmer, speaker and responsive design enthusiast. He works at Nationwide Insurance in Des Moines as a developer where he can be found programming ColdFusion, Grails, Java, JavaScript and sometimes even Ruby. - @mrbusche

10:30 AM - 11:45 AM : Ballroom C : Responsible Responsive Web Design (Level: 200)

Matt Milner

Matt Milner is an independent consultant and trainer who, from the early days of the internet, was building websites and databases to help organizations manage their business. Over the years he has built numerous systems using web technologies such as ASP.NET and integration technologies including BizTalk Server, WCF, WF, and yes, even MSMQ. Currently Matt splits his time between building applications and teaching other developers about the latest Microsoft technologies including Azure, Xamarin and Web API. In addition to creating training videos for Pluralsight Matt contributes to the community by speaking at code camps, user groups, and international conferences including Tech Ed, Dev Days, and DevWeek. - @milnertweet

3:45 PM - 5:00 PM : Ballroom A : You got your HTML in my mobile app! You got your mobile app all over my HTML! (Level: 100)

Matthew Nuzum

Matthew Nuzum is an author, web developer and speaker working to advance technology training. He has worked for and founded several start-ups as well as in the enterprise sector. Matt loves to teach and now does training seminars across the midwest on a variety of technical topics. - @newz2000

9:00 AM - 10:15 AM : Ballroom C : Beyond REST: Real time apps with Node.js and WebSockets (Level: 300)

Mike Cole

Mike Cole is a developer currently focusing on .NET working remotely from Cedar Falls for ClickPoint Software in Scottsdale, AZ. He's been around the proverbial block in the IT profession and has a wide array of experience in many fields. He is an officer of the CVINETA user group and is actively involved in the community. He is incredibly lazy and is always looking for easier and more streamlined ways to solve everyday problems. His passions in life include his family, sarcastic memes, the outdoors, and always having the last word. - @colemike

2:15 PM - 3:30 PM : Ballroom A : TypeScript for the .NET Developer (Level: 100)

Mike Harris

Mike Harris is a software craftsman and life long learner, who is constantly searching for the best tools for the job. Mike enjoys learning new program languages, tools, and techniques which he uses in his day-to-day work as a Software Developer at Robert W. Baird & Co. Mike blogs at - @MikeMKH

3:45 PM - 5:00 PM : Ballroom B : There and Back Again - A Developers Travels in the Land of Clojure (Level: 100)

Nate Adams

Nate has worked in the IT industry for over fifteen years. The first thirteen as a developer, and more recently as the manager of the Patterns, Platforms and Practices group at Integrated DNA Technologies. Nate is passionate about agile software development processes and continually improving how software is written and delivered. - @psiberknetic

3:45 PM - 5:00 PM : Ballroom F : Selling Scrum to your organization (Level: 100)

Nathan L Smith

Nathan Smith is an Engineering Lead at Chef Software, Inc. He builds and uses web products for Chef. He lives in Iowa City. - @nlsmith

12:45 PM - 2:00 PM : Room 123 : Test Driven Infrastructure with Chef (Level: 200)

Riley Eynon-Lynch

I was a programmer at Microsoft, a high school teacher in Iowa, and a camp director in Virginia. I loved all three, and started bringing them together for ed tech in our last company, ActiveGrade. Now I'm having a great time making Pear Deck, leading as a CEO and following as a programmer! - @rileylark

12:45 PM - 2:00 PM : Ballroom F : How Pear Deck Works - Architecture and Dev Workflow (Level: 300)

Ryan Doll

Ryan brings more than 10 years of development experience across multiple technologies at VML. As a Web Architect, he currently focuses on client-side and mobile development with technologies such as HTML5, JavaScript and CSS3. Since joining VML in 2005, Ryan's expertise has been utilized on a number of client engagements, including Dell, Gatorade, Southwest Airlines, ESPN, Sprint, Cartoon Network, Walmart, Sam's Club, Serengeti, Ford of Canada and Emerson Network Power. With a passion for technology and a desire to innovate, Ryan is always looking for new ways to take emerging technologies and combine them with creative ideas. Reliable and effective, he is seen as the go-to guy for many challenging VML projects. - @ryandoll

12:45 PM - 2:00 PM : Ballroom D : FizzBuzz Buzzkill: Rethinking the Developer Interview Process (Level: 100)

Tom Henricksen

Who am I? I'm Tom Henricksen from West Des Moines, Iowa. For the past fifteen years Information Technology has been both my career and hobby. Currently I work as a Development Services Manager at Zirous. Why am I an IT Career Coach? My role includes reviewing resumes and social profiles as well as interviewing potential candidates. This gives me an inside track on helping Information Technology candidates find the right fit, plan a great career, or take their current career to a higher level. It's not enough to be an IT professional with great technical skills. It's also important to be able to showcase your talent. Proper and effective communication with key stakeholders will help you articulate your value to an organization. My goal is to work with you to develop and hone these skills allowing you to achieve your professional IT goals. Engaging will show you how making some changes in your approach will increase your success. - @TomHenricksen

9:00 AM - 10:15 AM : Ballroom F : Beyond Agile, What is the next big development paradigm? (Level: 100)

Wendy Istvanick

I have been a developer with ThoughtWorks for over 19 years and have enjoyed solving technical problems and making people happy along the way. I also love to travel. So life as a consultant has been great, giving me many chances to enable solutions while living in places I never would have dreamed of living while growing up, including Brazil, France, and India. In addition to coding on many projects I have had the opportunity to facilitate training both internal to ThoughtWorks and at client sites over the years thus being able to share my craft with others. - @jemappellewendy

2:15 PM - 3:30 PM : Ballroom B : My Love/Hate Relationship with Lombok (Level: 100)

Zac Harlan

Zac Harlan is an application development manager for J&P Cycles which is based in Anamosa, Iowa. J&P Cycles is the world's leading aftermarket retailer for motorcycle parts and accessories and one of Iowa's largest eCommerce sites. Zac believes in Agile development processes and works to focus his and his teams efforts on "being Agile" more than "doing Agile". As a software professional for well over a decade Zac prides himself on being a "full stack" developer having worked in such industries as eCommerce/retail, manufacturing, telecommunications, and health care. Zac carries with him a pragmatic approach to building software and looks to improve processes that will improve the business, both inside and outside of software - @ZacHarlan

Zach Cox

Writes code for Jack Henry & Associates. - @zcox

3:45 PM - 5:00 PM : Room 122 : Hands-On with Kafka (Level: 200)

Session Levels


Level 100 Description:
Introductory and overview material. Assumes little or no expertise with topic and covers topic concepts, functions, features, and benefits.

Level 200 Description:
Intermediate material. Assumes 100-level knowledge and provides specific details about the topic.

Level 300 Description:
Advanced material. Assumes 200-level knowledge, in-depth understanding of features in a real-world environment, and strong coding skills. Provides a detailed technical overview of a subset of product/technology features, covering architecture, performance, migration, deployment, and development.

Level 400 Description:
Expert material. Assumes a deep level of technical knowledge and experience and a detailed, thorough understanding of topic. Provides expert-to-expert interaction and coverage of specialized topics.