• May 19-20, 2017
  • ·
  • MotorCity Casino, 2901 Grand River Avenue, Detroit

GeePaw Hill: Keynote - How Does "Complexity" Change the Game?


Complexity, chaos, blah-blah-blah, whatever. How's this mad new rush of definition & theory really going to change what we do? The good news is we have part of what we need. If we position the valuable parts of agility within the new conceptual frameworks, we can see more easily how to proceed. We can heighten the value of what we have, extend its range, and add new practices that emphasize the most valuable strategies.

This session is an idea-generator. By considering the old practices in the new framework, we'll build ourselves a set of clues, steps, paths, and experiments to start wrestling our new development model into line with our new understanding of professional geekery.

About GeePaw Hill

GeePaw Hill is an independent software development coach. A geek for nearly 40 years, he has been doing, teaching, and coaching software using the various techniques of agility since the late '90s. He's worked with large teams and tiny ones all over the world, creating everything from satellite control modules to desktop graphics to that old standby, it-puts-the database-on-its-web-browser-skin. As a speaker, he is well known for providing a funny heady mixture of irreverence & insight. GeePaw lives in central Virginia at an intentional community, with his glorious and ever-growing family.

Tiffani Ashley Bell: Keynote - On Human Rights and Human Wrongs: A Talk on Cities and Water


What are human rights? What are human wrongs? In this talk, I will walk through what happens when people and cities fall into either one of those categories by telling the story of citizen mistreatment and water affordability in two American cities—Baltimore and Detroit.

About Tiffani Ashley Bell

Tiffani Ashley Bell is Founder and Executive Director of The Human Utility (formerly known as the Detroit Water Project), a platform enabling people from around the world to help people in Detroit and Baltimore with their water bills.

Since its founding in July 2014, the organization has helped over 950 families and is a Y Combinator-backed not-for-profit.

Tiffani was also a 2014 Code for America Fellow and previously, was the CEO + founder of Pencil You In, enabling businesses to operate more efficiently by accepting appointments online.

Tiffani is a front and back-end developer working primarily with Ruby on Rails and iOS. She finished at Howard University in 2008 with a Bachelor of Science in Systems & Computer Science.

Jennifer Marsman: A Dance with Intelligent Dragon Drones


Drones are increasingly used in various commercial and consumer scenarios – from agriculture drones (providing farmers with crop and irrigation patterns) to consumer drones (that follow you around as you engage in action sports), to drone racing. Drones are outfitted with a large number of sensors (cameras, accelerometers, gyros, etc.), and can continuously stream these signals in real time for analysis.

This talk introduces the landscape of the various drone technologies that are currently available, and shows you how to acquire and analyze the real-time signals from the drones to design intelligent applications. We will demonstrate how to leverage machine learning models that perform real-time facial detection along with predictions of age, gender, emotion, and object recognition using the signals acquired from the drones. You will walk away understanding the basics of how to develop applications that utilize and visualize these real-time insights.

This talk includes fun with drones, how to tackle the problem of world hunger, and some Game of Thrones silliness. It is targeted at data scientists, students, researchers, and IT professionals who have an interest in building intelligent applications using drones and machine learning. It will be a fun and exciting exploration as we demonstrate a drone with the power of recognizing faces. You will learn how to leverage these same machine learning models to imbue intelligence into drones or other applications.

About Jennifer Marsman

Jennifer Marsman is a Principal Developer Evangelist in Microsoft’s Developer and Platform Evangelism group, where she educates developers on Microsoft’s new technologies. In this role, Jennifer is a frequent speaker at software development conferences across the United States. In 2009, Jennifer was chosen as "Techie whose innovation will have the biggest impact" by X-OLOGY for her work with GiveCamps, a weekend-long event where developers code for charity. She has also received many honors from Microsoft, including the Central Region Top Contributor Award, Heartland District Top Contributor Award, DPE Community Evangelist Award, CPE Champion Award, MSUS Diversity & Inclusion Award, and Gold Club. Prior to becoming a Developer Evangelist, Jennifer was a software developer in Microsoft’s Natural Interactive Services division. In this role, she earned two patents for her work in search and data mining algorithms. Jennifer has also held positions with Ford Motor Company, National Instruments, and Soar Technology. Jennifer holds a Bachelor’s Degree in Computer Engineering and Master’s Degree in Computer Science and Engineering from the University of Michigan in Ann Arbor. Her graduate work specialized in artificial intelligence and computational theory. Jennifer blogs at and tweets at

George Hotelling: A Smart Home To Call Your Own

MCC4, Saturday, 4:00 PM


The stuff in your home is getting smarter every day. It’s time to take control of it with Home Assistant, a Python open source app.

This talk will provide an overview of how Home Assistant can be set up and configured to make your home smarter. You’ll be able to control your smart home devices so that your home starts working for you. With presence detection, logging, and mobile access, you’ll be the master of your domicile.

Once we see what Home Assistant can do we will explore how to write a custom components to start automating our own devices. Welcome to the world of tomorrow!

About George Hotelling

George learned how to program, then shortly after the joy of figuring out a really tough bug. Since then, he has created many more tough bugs and even figured out some. He has worked for small companies and large in software engineering and leadership roles. George now works as a JavaScript Wrangler at Automattic because of his love for open source and making the web a better place.

He lives in Michigan, USA outside of Detroit with his wife, 2 children and 2 dogs. In his spare time he enjoys brewing beer, video games and getting outside.

Mark Yoon: Beyond diversity - 5 ways to be more inclusive

MCC4, Saturday, 11:00 AM

Our community is aware that diversity is key to success. But token representation in race, gender, or sexual orientation is not enough. Diverse teams often fail to include and benefit from the contributions of all members.

Let's break this issue down to every day habits and behaviors. We'll dive into how small changes in speech, meetings, pairing, social activities and perks can add up to make sure we harness the benefits of diversity we're seeking.

About Mark Yoon

Mark designs and develops web and mobile applications. He believes that user experience and creativity are essentials of software development, and that technology is just a small part of addressing the diversity of human need. He is an amateur woodworker, metalworker, and sailor.

Alaina Kafkes: Build Her Up: On Supporting University Women in Tech


In my time at Northwestern University, I've built a women in tech organization from 10 to almost 200 members, funded 70 women to attend Grace Hopper, and founded a Chicago-area women's hackathon (BuildHer). I'd love to talk about how tech professionals can best encourage and retain women under the tech umbrella starting at the university level, and hopefully continuing into the workforce.

About Alaina Kafkes

Alaina is a senior at Northwestern University, where she studies computer science and sporadically dabbles in medicine and linguistics. At NU, she is best known for co-organizing Women in Computing, co-founding BuildHer, and not understanding how to pronounce the word “corgi.” Recently, she’s coded cool things at Clarifai and GE Healthcare, but right now she's an iOS dev and UX researcher in Northwestern’s Delta Lab. Current fascinations include origami and Samoyed puppies.

Steven Hicks: Code Is Communication

MCC4, Friday, 10:00 AM


Code is communication. Between you and the compiler, definitely. But more importantly, code is communication between you and the next developer. Code that communicates poorly is code that cannot be maintained, and code that cannot be maintained is costly.

In this session, we'll discuss ways to be a better communicator in your code. We'll look at many examples of code that might leave you scratching your head and discuss ways to improve them. We'll see how principles of effective verbal and written communication relate to the fundamental principles of writing clean code. The code samples are in JavaScript, but the principles are applicable to any object-oriented language. You'll leave this session with a better understanding of how to write clean and maintainable code.

About Steven Hicks

Steven Hicks is a full-stack web developer with almost 20 years of experience. He believes in clean, readable, and maintainable code. Steve likes to use the right tool for the job, especially if the right tool is JavaScript. He strongly believes that if you ain't falling, you ain't learning.

When he isn't crushing 1s and 0s or playing with his kids, you can find Steve at a triathlon, on his mountain bike, or in a climbing gym.

Kerri Miller: Crescent Wrenches, Socket Sets, and Other Tools For Debugging


Software exists in a constant state of failure, facing pressure on many fronts - malicious intruders, hapless users, accidental features, and our own limits of imagination all conspire to bring our system to a screeching halt. Untangle even the most tangled of Gordian Knots by building your own toolkit for inquiry, by relying on the simplest technique of all: asking "why?"

About Kerri Miller

Kerri Miller is a Software Developer and Team Lead based in the Pacific Northwest. She has worked at enterprise companies, international ad agencies, boutique consultancies, start-ups, mentors and teaches students, and finds time to work on Open Source projects. Having an insatiable curiosity, she has worked as a lighting designer, marionette puppeteer, sous chef, and professional poker player, and enjoys hiking, collecting Vespas, and working with glass.

Jeff Kelley: Dates and Times in Swift


Date and time APIs are notoriously difficult, even though we all have an intimate understanding of the problem domain. Why is are time zones so hard to get right in an app, yet so easy to reason about? I know what I mean when I say “Three hours from now,” so why is it different in code? How could a developer write a bug when handling Daylight Savings Time more than once? In this talk, we’ll take a tour of the date and time APIs in Swift’s standard library, solve some common problems, and figure out why things aren’t always as easy as they seem to be. You’ll leave with a newfound respect for the intricacies of the problem domain, new tools for handling dates and times in your apps, and a huge appreciation for the team at Apple that writes the Calendar API.

About Jeff Kelley

Jeff Kelley is a developer for Apple platforms at Detroit Labs and author of Developing Apps for Apple Watch and Learn Cocoa Touch for iOS. He’s been working with iOS since its infancy in 2008. Apps he’s worked on have been in the top 10 free app list, demonstrated on-stage at WWDC, and consistently among the top-rated in their categories. When not working on iOS apps, Jeff listens to an inordinate amount of podcasts and organizes the Motor City CocoaHeads group in Detroit.

Michael Falanga: Deep Dive Intro to Functional Programming


By now, you have probably heard of immutability, have likely heard of pattern matching, and it is quite possible that you have heard of currying. If you have been somewhat intrigued by these things, you may have heard of algebraic data types. But what you might be missing is how you can leverage these things to write better programs.

This talk will go deep into those introductory topics, explain their importance to programming and show you how to apply them in a program. You can take these concepts-turned-techniques with you, and leverage the functional features that have been creeping into out OO languages.

About Michael Falanga

Mike is a software professional who has been developing applications since the late 90s.

After a few years of experience, Mike found that the silver bullet to software development is people. He firmly believes that software is a means to an end; and that programmers simply act as "middle men" between the end users and their vision.

Mike is always striving to bring the Whole Team together to build software in a sustainable and highly visible manner. He does this by promoting thinking and techniques that enhance clarity and align expectations.

When not programming, Mike spends time with his wife and their five boys. Usually in a car while driving from one of their events to the next….

Sara Gibbons: Don't Rewrite, React!


Legacy web applications live all around us. But in today's ES6 world what do we do with all these apps? Sure we would each love to say "Let's rewrite it!" But what do we do when that's not an option.

Enter React.

Let's face it, most apps take year to build. Time, money... it's not something you can easily toss aside for the latest JS Framework hotness. The great thing about React is that it's a library. A library that can easily be integrated to bring these legacy apps into an ES6/one-page world.

In this session we are going to talk about what React is, what it can do, and how to integrate it into your existing legacy apps.

About Sara Gibbons

Sometimes chef, full-time mom, but 100% geek, Sara spent her youth building Legos, solving puzzles, and playing video games. Little did she know it was priming her for an amazing Software Engineering career.

Sara spent two years studying Actuarial Science before a friend convinced her to take a C++ class to help him pass. By the end of the semester she'd switched her major and was getting ready for her first internship. Born and raised in the Motor City, Sara quickly worked her way toward a software position working for one of the big three and 15+ year career began to work for progressively smaller and smaller companies. In that time, working across many projects, disciplines, and experience working with teams of all sizes and makeups.

Sara co-organizes Girl Develop It Ann Arbor, Detroit.rb, Great Lakes Software Excellence Conference, and BitCamp.

When she's not working or volunteering she's building Legos all over again with her four beautiful children and man child husband.

April Jefferson, Brielle Maxwell: Elevate your Changemaking with LEAN + Design for Social Impact

@@_AprilJefferson, @briellenyc

Embracing LEAN thinking and an Agile mindset has a way of showing up in your personal life. It may begin at home with how you manage chores, make decisions, and collaborate with your family and friends. If this mindset can change your day to day lives, can it not also change the impact you make in your life. Explore with us how lean and agile can empower design thinking in a purposeful way to create social impact in your community. Lets ideate together on how we can apply our learnings for social change. Be prepared to walk away empowered to act on your ideas to impact social good.

About April Jefferson

Coach that enjoys helping organizations, executives, management, teams, and individuals on their journey to create awesome solutions with positive organizational cultures by leveraging Agile and LEAN. Enjoys walking in curiosity, seeking to understand others, discovering new ways to solve problems collaboratively, motivating others with positivity, as well as, cultivating other’s potential. In like manner, passionate about empowering others to foster their gifts for social change.

About Brielle Maxwell

Brielle is a design entrepreneur with a mind for how design processes can align in a new breed of businesses. She created Live With Design to focus on the intersection of design, technology and social innovation. Through an interdisciplinary approach, she hopes to expand the dialogue of design for social impact.

With a background in design management, Brielle communicates the importance of human centered design through a business lense. Brielle is a versed facilitator with 5 years of hosting panels and facilitating workshops for her Meetup New York Designers for Social Change. By day she is a UX architect, bringing creative web and mobile app solutions to life. Focusing on user-centered outcomes has allowed her diverse clientele of dynamic businesses, nonprofits and startups to expand their impact.

Matthew LaForest: Elm and Elixir: Made for each other


The established players on the server (Ruby, PHP, Java, and C#) and client (oh hey there Javascript) have been established for a while. But there were technologies, even on the web, before them, and they won't be the kings forever. It is time to take a look into the future. Let's take a look at a couple of the future players in the web world that are already here today.

Elixir gives us a powerful concurrency model, fault tolerance, and a powerful functional interface with a nice easy to consume syntax. Sitting on top of the Erlang VM, which brings it's battle tested performance and fault tolerance to the table. It gives us some surprising new power in our server side world.

Elm is a brand new language that runs in javascript world. It provides a powerful type system, and a strong architectural model for building rich client side applications.

See how these two languages, developed completely independently with wildly different backgrounds, play so well with one another, and give us a glimpse to where our web development world may be going.

About Matthew LaForest

Always avoiding the fads to explore the systems that felt "right" to him. Matt has developed a passion for developing maintainable quality software that delivers what his customers really need (even if they don't know what that is). He jumped on the React bandwagon pretty early, and is passionate about helping that community develop better practices to help them develop quality maintainable software.

In his spare time, which with two toddlers is basically non-existent, Matt like to explore what is next, after JS and/or React, and doing projects around his house, like attempting to finish a basement despite no knowledge of construction or carpentry.

Ellen Mey: Embrace the Suck: Thoughts on Perseverance from a Junior Dev

How do you push through when the client just threw you under the bus for making changes they approved, when Xcode has crashed for the tenth time today, and your boss just said “Java, JavaScript, same thing”?
Research has shown that grit and perseverance are better predictors of success than self-discipline, but what if you don’t feel like a particularly gritty person? The good news is perseverance is a skill that you can foster and grow. Through tales of both triumph and woe, we will dive into research based strategies that can be put into practice tomorrow. Whether you’re looking to pull yourself up by the bootstraps or help those you mentor conquer the next hurdle, this talk aims to add some tangible perspective to the elusive concept of grit.

About Ellen Mey


Nara Kasbergen: Empathy As A Service: Supporting Mental Health in the Tech Workplace

MCC4, Saturday, 2:00 PM


At any given time, 1 in 5 Americans are living with a mental illness, such as depression, bipolar disorder, generalized anxiety disorder, substance use disorder, burnout, or ADHD. Statistically, all of us working for an organization with 5 or more employees have at least one colleague who is affected. At the same time, the tech industry is often characterized by high stress, long hours, workplace pressure to be available by phone and e-mail after-hours or sometimes even while on vacation, social pressure to constantly network and attend conferences and make a name for yourself, and the precarious balance between trying to do good by contributing to open-source and maintaining some semblance of free time that doesn't involve coding. Given how this demanding environment increasingly blurs the line between our professional and personal lives, how can we ensure that the most vulnerable among us aren't being left behind?

As a community, the single most damaging thing we can do is continue to treat mental health as a personal shortcoming that can't be talked about openly. We shouldn't think of it as "somebody else's problem"; the 4 in 5 of us who don't currently have mental health disorders must do our part to help end the stigma. This talk will begin with an overview of key statistics about mental illness, followed by the efforts of the non-profit organization Open Sourcing Mental Illness to gather more data about mental health in the tech industry, the ALGEE action plan taught by the Mental Health First Aid training course, and finally conclude with ideas and strategies for making our tech workplaces more accommodating and inclusive.

About Nara Kasbergen

Nara Kasbergen is a full-stack developer in NPR (National Public Radio)’s Digital Media group, where she's worked on a variety of projects, most notably the third-party developer platform for NPR One. She recently joined the tech conference speaking circuit because of her interest in Developer Experience (DX), community-building, the intersection of humans and code, and her volunteer work for Open Sourcing Mental Illness, a non-profit organization raising awareness about mental health in the tech industry.

Though she has no noticeable accent, she hails from The Netherlands and lived in Munich, Houston, Pittsburgh, Tokyo, and New York City prior to settling down in Washington, DC. In her spare time, she satisfies her foodie habits by trying out all of the best restaurants in the city, collects board games, and watches too much Netflix.

Kristen Smith: Getting Started with the Particles: Photon & Electron

MCC4, Friday, 1:00 PM


From : "A tiny, reprogrammable Wi-Fi development kit for prototyping and scaling your Internet of Things product. The Photon is a $19 tiny Wi-Fi development kit for creating connected projects and products for the Internet of Things. It’s easy to use, it’s powerful, and it’s connected to the cloud." In this session, we’ll build a few simple programs to show off some of the basic functionality of this versatile (and adorable) device. From a blinking “Hello, World!” LED to a sensor-driven “When to Water Your Houseplant”, we’ll explore some of the countless project possibilities the Photon enables! Then we’ll check out the Electron! Where the Photon gets your Things connected via Wi-Fi, this particle gets them connected via 3G. We’ll expand on what we learned from the Photon to build a 3G-enabled DIY GPS tracker using the Electron!

About Kristen Smith

Kristen is a software developer in Columbus, OH. She has been in software consulting since 2010. She has a passion for gadgets and for learning how to make them do cool things.

Cat Swetel: How and Why to Have Inclusive Meetings


In most tech shops (and beyond), meetings are seen as a necessary evil, but what if they could be more? Coming together as a group can help your team define problems more clearly, reach shared understanding, and explore potential experiments and/or solutions. However, to accomplish any of these outcomes, a meeting must provide a good environment for divergence, for people to raise new ideas and voice concerns, followed by convergence. During this session, you will learn why divergence of thought is important for problem solving and innovation. You will leave the session with a toolbox of practical ways to create an inclusive meeting environment regardless of your role or positional power in the organization.

About Cat Swetel

Cat has experience applying lean principles in a variety of settings: from startups to large enterprises, warehouses to web, etc. She is passionate about increasing diversity in tech. In her leisure time, Cat enjoys hiking and reading feminist literature. She lives in Phoenix, AZ with her husband and son.

Layne McNish: How teaching a robot to play music taught me to love (code) again


When your motivation is starting to sputter,
what can you do to pull it out of the gutter?
Try combining an Arduino
with some solenoids and Dino.
Add ukulele to set your heart aflutter.

We've all felt the ebbs and flow of our motivation to push ahead our coding practice in our free time. How can we reinvigorate our desire to learn and grow without feeling the all too familiar burn out?

One solution is to take stock of your passions and combine them with your desire to improve your coding skills. We will learn together through my failures, setbacks and successes building this project to amalgamate our various interests to create an exercise that will be enjoyable (when it's not falling to pieces), as well as challenging. Finally, we will come out the other side with a silly robot who will play some musical tunes for us.

About Layne McNish

Professional cellist turned Software Engineer. Fun fact: I used to be John Stamos on Facebook.

Alex Harms: How to like people you can't stand (for a team that thrives)


"But I don't want to like them. I don't _like_ them!"

We all know emotional safety is important for a team to problem-solve, learn from mistake, and figure out how to improve -- together. And emotional safety requires kindness. But kindness on the surface (with maybe disdain, judgment, or plain dislike underneath) doesn't actually work. People can tell when you're insincere. So what do you do?

How about this. In this session, you'll learn specific empathy skills for understanding yourself better, and understanding other people better. In the process, you may be surprised to find fondness growing where you thought none could.

About Alex Harms

Alex Harms is a team coach and occasional coder who wants to make the world a little gentler for developers and tech teams. From a place of mindfulness and empathy, Alex helps disempower fear, strengthen communication, and build connection, so that tech teams learn together and thrive. Author of the Little Guide to Empathetic Technical Leadership. Coach at Maitria.

Chris DeMars: I Can't See: Low Vision A11Y & Users.


When you think of low vision, what comes to mind? A user that is near sighted? How about far sighted? Maybe partially blind? These are all qualifying cases of poor vision, but low vision is more complicated than the prescription of glasses or contacts.

According to the World Health Organization, they categorize low vision based on specific levels of visual acuity and field of vision (, 2016). With that in mind, we as developers can look at different categories of low vision including color vision, visual acuity, contrast sensitivity, etc and make an effort to bake in things like zoom, non-conflicting colors, and re-wrapping of columns in to our code.

My talk will cover what vision accessibility is, different categories of low vision, what the needs of the users are, and what we as developers can do to achieve a great user experience for low vision users.

About Chris DeMars

Chris DeMars is a UI developer first, UX architect always, working out of Detroit, Michigan. Chris is also an instructor, teacher assistant, and volunteer for the Ann Arbor chapter of Girl Develop It and co-organizer for the Ann Arbor Accessibility Group. Chris loves coming up with solutions for enterprise applications, which include modular CSS architectures, performance, and advocating for web accessibility. When he is not working on making the web great and inclusive you can find him writing blog posts, recording episodes of his podcast, Tales From The Script, watching horror movies, drinking the finest of beers, or in the woods of northern Michigan.

Sam Jones: Life After Nil


Ruby is late to the type system party. Let’s give Ruby something smart to say when it gets there. You’ll take a journey with Haskell’s type system. Along the way, you’ll learn how types can let you forget about nil, declaratively model your domain, and allow your compiler to drive your design.

How can ANYONE be productive in a language without if/else, while, or even classes? Let me show you! Haskell is proof that sometimes constraints can be liberating. There are murmurs that a type system will be coming to Ruby. Before that happens, you should get informed about what is hot in the current type system market. Haskell is known for its type system, but instead of describing it with dense language, let’s take a journey through code examples. Throughout our trip, we will avoid scary buzzwords like “monad” and “algebraic data type” because, honestly, what good is a formal definition when you don’t understand the power behind the concept.

About Sam Jones

I am a double agent at Test Double living in Philadelphia, PA. I have a passion for learning and teaching. I am a cook and cyclist in my free time, as well as a Husband and Father. I love Ruby for its freedom and extensibility and Haskell for the way it encourages me to expand my thinking.

Devney Hamilton: Machines Learning Human Biases: How Does It Happen? Can We Unteach Them?

MCC4, Saturday, 1:00 PM

Machine learning techniques rely on some assumptions, like that the future will resemble the past, and that data is objective. Those assumptions have held up well in machine learning applications like advertising and self driving cars. But what about applications that predict a person’s future actions and use that prediction to make a big decision about that person’s life? What if we train our machine learning systems on data containing human biases that we do not want to reinforce in the future? This talk first dives into how Google's Word2Vec learns gender biases from input data, and promising work from MIT on how we can use math to 'unteach' the system these biases. It then looks at statistics-based prediction techniques used to make decisions in criminal sentencing - how racial bias comes into these systems, the risks and consequences of exacerbating that bias, and the possibility of accounting for it in a way that the systems can 'unlearn' the bias. Throughout, we consider a set of questions we must ask when applying machine learning to make decisions about one another. The audience is invited to take apply these questions to other human-focused applications such as in health, hiring, insurance, finance, education, and media.

About Devney Hamilton

I work with Sassafras, a worker-owned tech cooperative based in Ann Arbor. Before that I developed software with an education technology company, community organizers, and Atomic Object; and taught with Girls Who Code. I like working with people to grow food, community, and helpful software.

Kevin Zurawel: Making NES Games, or: Assembly For People Who Think Assembly is Weird and Hard


The Nintendo Entertainment System, or NES, defined the look and feel of "video games" for an entire generation. At its core, it featured a MOS Technologies 6502 processor and a custom "Picture Processing Unit". All of your favorite games for the system were written in assembly, and with modern tools, you can write your own games for the NES in assembly too! We'll start with a look at how binary numbers work, and then jump right in to 6502 assembly and how the NES works at the hardware level. Finally, we'll look at some common tricks used by popular games and how to get started working on your own games.

About Kevin Zurawel

Kevin is a front-end developer at Braintree, where he works on tools that power merchants large and small. He is interested in programming music, making and analyzing games, and the intersections between code and the physical world.

Dillon Kearns: Out of Sight, Out of Mind: Confident Frontends With Elm


How do you measure code maintainability? One meaningful metric might be the amount of code you need to reason about to make a change. This talk will explore why Elm and The Elm Architecture score high by this measure. We will also look at patterns for keeping code easy to reason about as you scale an Elm application.

Some cognitive-load-reducing features we’ll discuss are:
- Elm’s powerful type system which allows you to make undesirable states impossible to express
- Elm’s compiler which makes runtime exceptions virtually impossible
- Elm’s deterministic view function: one model state can only result in one view
- Elm’s update function: a single source for all side-effects and updates to the model

We will also explore how to avoid making a "componentized" Elm app in the style of React or Angular 2+ and why the alternative is more maintainable.

About Dillon Kearns

Dillon is an Agile Coach and XP Craftsman based out of Southern California. He found his way into software through an unlikely path studying piano performance. Fortunately, this education in deliberate practice and collaboration techniques has served as a solid foundation for developing and teaching Agile skills and mindsets. Dillon is a full-stack coach, and believes that effective software requires the right mix of empathy, mindset, organizational structures, and craftsmanship skills. He also loves programming languages and functional programming.

Jeff McWherter: Planning For Accessibility


Accessibility is a facet of web development that many companies still think of as an afterthought. Studies show that 20% of the population have some type of disability. While not all these disabilities make it difficult forth to access the internet, its unwise and sometimes even violates the law the exclude this population.

This session will discuss the standards, provide thoughts on why its important to foster an environment that cares about accessibility, and provide key concepts and tools to use to make accessibly easier. Targeted for developers and project managers the goal of this session is to introduce everyone to the fundamental principals and business related factors of web accessibility.

About Jeff McWherter

Jeff McWherter is an entrepreneur, manager, and software developer who calls Lansing Michigan home. A graduate of Michigan State University, Jeff has spent over 15 years working to better the software development community not only in Michigan but also around the country. In 2010 Jeff was awarded with the Microsoft Most Valuable Professional (MVP) for the third year in a row.

Jeff is a three time published author, with Testing ASP.NET Web Applications (Wrox Press), Professional Test Driven Development with C# (Wrox Press), and Professional Mobile Application Development (Wrox Press). Jeff is very active in developing programming communities across the country, speaking at conferences and organizing events such as the Lansing Give Camp, pairing developers with non-profit organizations for volunteer projects.As an entrepreneur Jeff has helped to grow Gravity Works Design and Development, into a stage two business with a reputation for detail-focused design and sound development practices.

In 2013 Gravity Works was named to the 50 Companies to Watch in Michigan,. Jeff has been named as one of the 10 individuals to watch over the next 10 years by the Lansing Chamber of Commerce, and also received the Corp Magazine Entrepreneur of distinction award. Hard work, passion and selflessness are the characteristics that Jeff attributes to his success.

Priya Rajagopal: Practical MVP and MVVM Patterns for your iOS Apps


Is the Model View Controller (MVC) design pattern not working too well for your iOS apps? Despite your best efforts, does the dreaded “Massive View Controller” creep up on you making your code unmaintainable and unreusable? Then this talk is for you! In this session, I’ll discuss how you can better architect your iOS apps by adopting two popular alternatives to the MVC pattern – the Model-View-View Model (MVVM) and the Model-View-Presenter (MVP) . I’ll provide an overview of these patterns and we will walk through code (in swift) that demonstrates these patterns in practice. Whether you are just starting off building iOS apps or you have been doing it for some time, this talk can benefit you.

About Priya Rajagopal

Priya Rajagopal has been professionally developing software for 19 years. She is a Mobile Developer Advocate at Couchbase where she frequently speaks and blogs about Couchbase Mobile , develops tutorials and actively engages with the developer community. In her spare time, does technical consulting and mentoring. She is an active member of the local mobile development community where she frequently talks on mobile development related topics and organizes the Mobile Monday, Ann Arbor meetup group. Although her current interests lie with mobile development, she has previously worked on a range of technologies including IPTV, Social TV, targeted advertising, network management and platform security.
She is a co-inventor on 22 technology related patents. In her spare time, she enjoys watching movies with her family.

Jane Prusakova: Privacy in the Digital Age, Or Can you Keep a Secret?


Computers and the Internet-Of-Things generate data about our every move, passing thought or feeling. There is also a comprehensive set of data on our life’s context: our whereabouts, connections, physiological state, patterns of movement, and deeply ingrained subconscious behaviors.

While that information may not be immediately visible or easy to learn from, it is created, collected and saved. Over time, the pile of data grows. The processing technologies become more sophisticated and powerful. The data that was originally “anonymous” becomes easily identifiable. And no data is ever “forgotten”.

In this session we will consider what data is being collected, the implications of cross-processing streams of data from different sources, and the power of metadata. There are no more secrets.

Inspired by “Data and Goliath: The Hidden Battles to Collect Your Data and Control Your World” by Bruce Schneier

About Jane Prusakova

I am a software architect and developer, an Agile proponent, and a great believer in building valuable software that users will love to use. I build large back-end systems that require high-performance and high-reliability, and process vast amounts of data. I believe that successful software is created by strong teams, requires good engineering practices, and evolves in close collaboration with the users. As a Principal Consultant for Improving Enterprises, I work with distributed teams on distributed software. As a consulting team, we focus on technical excellence, close contact with the client, and rapid iterations.

Steve Jackson: Searching for Failure

MCC4, Saturday, 10:00 AM


Do you avoid failure? Learn to succeed by embracing failure!

Discover how you can use failure to learn faster, build resilient software, and enable innovative teams. Learn how cognitive biases make failure seem unattractive. Explore experimenting with failure to overcome this stigma and supercharge learning. Investigate the skills to reframe failure and enable a mindset and culture suitable for success in a world full of random events.

About Steve Jackson

Steve Jackson is a double agent at Test Double. He loves creating unique solutions and solving impossible problems with software. Steve is passionate about improving the craft of delivering software and fostering environments where professionals want to continuously improve. You can find him in various locations pairing and learning with anyone that's interested.

Dillon Kearns, Eric Heikkila, Wyatt Sutherland: Seeing the Light: Using lasers to illuminate the benefits of evolutionary design and collaboration

MCC4, Friday, 2:00 PM

@dillontkearns, @ericheikkila

This workshop is for all involved in the software life cycle from requirements to release. Using laser puzzles, experience big design up front contrasted with incremental and evolutionary design. Feel the impact of hand offs and specialization versus working together.

About Dillon Kearns

Dillon is an Agile Coach and XP Craftsman based out of Southern California. He found his way into software through an unlikely path studying piano performance. Fortunately, this education in deliberate practice and collaboration techniques has served as a solid foundation for developing and teaching Agile skills and mindsets. Dillon is a full-stack coach, and believes that effective software requires the right mix of empathy, mindset, organizational structures, and craftsmanship skills. He also loves programming languages and functional programming.

About Eric Heikkila

With a passion for problem solving, an inquisitive mind, and a hunger for learning, Eric is at home turning ideas into software and mentoring others in Agile techniques to make a positive impact in peoples lives.

About Wyatt Sutherland

Over the last 16 years Wyatt has provided a mix of managerial and technical experiences, coaching senior leadership, managers, analysts, architects, developers, testers, business owners, coaches and other Agile practitioners. He has led organizations through their transition to sustainable modern Agile practices and coached Lean, eXtreme Programming, Scrum, Kanban, and software craftsmanship in environments such as Ford Motor Company, Cisco, John Deere, BMW, Paylocity, Nokia, NavTeq, XPress, Bank of America, Walgreens, Management Science Associates, Blue Cross Blue Shield and others.

Erika Carlson: self.improve(): Building a Technical Career


How do we find success and fulfillment as software developers? We learn to code, we learn to use code as a tool to solve difficult problems, we get better at both coding and problem-solving, and then... what's next? Beyond technical growth, how do you find fulfillment in your work? If you've ever struggled to picture what your career could look like in 5 years, this talk is for you. Discover how learning continuously, teaching others, caring for yourself, and asking the right questions can get you where you want to go (even if you aren't sure where that is yet). This talk will explore what comes after code: digging into new challenges, expanding perspective, and turning fears into pathways for growth.

About Erika Carlson

Erika Carlson is the Director of Apprenticeship & Training at Detroit Labs, where she blends her love of programming with her passion for helping others grow. Erika was studying psychology in 2011 when she wrote her first line of Python code. She fell in love with programming, decided to change paths, and became a software developer. Since then she has built Java enterprise software, created websites for nonprofits, and worked on iOS applications with millions of users. Erika founded the Detroit chapter of Girl Develop It, and has taught programming and web development to students of all ages. She believes deeply in the potential of technology to make a difference in people's lives and create positive change in the world.

Magnus Stahre: Taking a byte of Java Bytecode


Java, Scala, Groovy, Kotlin, JRuby, Jython, Clojure. What do all these languages have in common? They are all powered by Java Bytecode. With the current ecosystem of languages running on the JVM, it is becoming important to learn more about the least common denominator. This talk gives an introduction to Java Bytecode, with practical examples and an implementation of a very simple JVM based language.

About Magnus Stahre

Magnus Stahre is a software craftsman doing application development for two decades.

He is currently an Agile craftsman at Pillar Technology where he solves difficult problems while coaching others on techniques and tools that help developers work better.

He is also a dedicated Unix lover, having started his career as a sysadmin.

Dave Copeland: The Effective Remote Developer


Being on a distributed team, working from your home or coffee shop isn't easy, but it can be incredibly rewarding. Making it work requires constant
attention and care, as well as support from your team and organization. It's not something that will just work out if you sign up for Slack and buy a

We'll learn what you can do to be your best self as a remote team member, as well as what you need from your environment, team, and company. We won't talk about technical stuff like remote pairing or chatbots. We *will* talk about the human stuff: how can you be present and effective when you aren't
physically around?

About Dave Copeland

David Copeland is a programmer and author. He's the author of “Rails, Angular, Postgres, and Bootstrap”, "The Senior Software Engineer" and "Build Awesome Command-Line Applications in Ruby". He has over 18 years of professional development experience from managing high-performance, high-traffic systems at LivingSocial or building the engineering team at Opower to working consulting gigs large and small. Currently, he's Director of Engineering at fashion start-up Stitch Fix, building a platform that will change the retail shopping experience.

Sarah Withee: The Power of Secrets


Secrets can be scary if they get out. That's the very feeling I had when I wrote a Medium post revealing my biggest secret, which was read by thousands. In this talk, I will share the story of how and why I came to share this secret with the world. I'll also talk about how sharing this ultimately made me a better teammate, developer, and person, and how it had the complete opposite reaction than I expected. Through these experiences, I’ll share my insights on why being more open benefits you and your team.

About Sarah Withee

Sarah Withee is a polyglot software engineer, public speaker, teacher and mentor, and hardware and robot tinkerer located in Pittsburgh, PA. She has a passion for technology, and has ever since she wrote her first computer programs in elementary school. She captivates audiences with both popular and powerful technical and anecdotal talks. She gives workshops to teach programming and hardware building to women in tech, as well as to students of all ages. She's mentored middle and high school robotics teams to world championships. She's even helped organize five conferences, been on a Google Year in Search video, and started the viral hashtag #SpeakerConfessions. She lives up to her username @geekygirlsarah.

Jonathan Tower: TypeScript: The Why and the How


With the growing popularity of libraries like Angular 2, its underlying language--TypeScript--is also growing quickly in popularity. In this session I'll give you much more than just a basic introduction to the language and its syntax and constructs--I'll give you the reasons why you should care from a software engineering perspective. We'll also take a look at the tooling that comes with TypeScript and how it can help you incorporate it into your next JavaScript project.

About Jonathan Tower

Jonathan "J." Tower is a Microsoft MVP and business owner with over seventeen years of software industry experience. He loves solving problems and the creative aspects of software work, as well as sharing what he's learned and building the technology community.

His current technology interests include C#, .NET, ASP.NET, and several JavaScript frameworks, as well as a few different mobile app technologies.

J. lives in Grand Rapids, Michigan with his wife and children, where he uses his passion for organizing the tech community to run a user group and several annual conferences.

John Sawers: Your Emotional API: How Being A Better Human Makes You A Better Developer

MCC4, Friday, 4:00 PM


Feelings are messy and uncomfortable, so why can't you just ignore them? Because it doesn’t work; you’ll write substandard code and be a suboptimal teammate.

Research shows that emotional regulation skills have a significant impact on your job performance. In this talk you’ll learn how emotions are affecting your work and what you can do about it.

I use the metaphor of an API as a way to talk about how your emotional system functions. We’ll go over some of the code in your emotional API, and how we can refactor it.

This will improve your coding, your relationships, and the arc of your career.

About John Sawers

I’m the co-founder and CTO of Data Simply; I’ve been programming professionally for two decades. In recent years I have also been supervising emotional release workshops called "Purpose, Passion, Peace", based on the work of Alfred Adler. These workshops were designed to create a safe space for people to finally face feelings they’ve been avoiding for most of their lives.