Friday, March 18th
Welcome and Dinner - Fireside Room
Fireside Chat - Carl Erickson and Micah Alles - Fireside Room
What It Means to "Consult" - Drew Colthorp - BoatHouse Living Room
We use the word "consultant" in our email signatures and "thinking like a consultant" is an activity we value. What do these mean? And what do they mean, specifically at Atomic? This talk will explore both as well as practical considerations for interacting with your customer.
Automotive Safety vs. Improved UX - When Worlds Collide - Matt Rozema - BoatHouse Bar
The ever-growing feature sets of modern automotive embedded systems have greatly enriched UX behind the wheel. However, these enhancements have also greatly increased the effort and complexity required to maintain adequate quality and safety standards. This talk will briefly describe this balancing act in more depth as well as provide a few real solutions that I have seen, especially as they relate to bootup timing of large embedded systems.
Happy birthday, World Wide Web. It's time to grow up. - Mike Swieton - BoatHouse Living Room
The Web is almost middle-aged now - older than any Scotch I can afford to drink. But the modern web is still young and immature. We'll take a look at the key technologies and turning points that have made the web what it is today, and where it's going. I'll preach my own opinions on what we've gotten right, what's wrong, and what's next. My prognostications won't be correct, but hopefully they'll be thought-provoking.
FAILURE - Phil Kirkham - BoatHouse Bar
A useful mnemonic for testing error handling - Functional, Appropriate, Impact, Log, UI, Recovery, Emotions.
What's the deal with PunchIt? - Matt Nedrich - BoatHouse Living Room
Last summer I spent two months making updates to PunchIt. Over the course of the project I developed a better understanding of, and appreciation for how PunchIt works. I would like to share some of my experience, investigate some of PunchIt's history, explore its architecture, and help Atoms understand how it plugs into our project invoicing workflow a little better.
RDP Tools & Processes - Bryan Elkus - BoatHouse Living Room
I'd like to discuss a way to better collect, coach and have a knowledge base for the RDP Sessions. There doesn't seem to be much consistancy in RDP Sessions. I have been working on a spreadsheet to document what tools and processes we use to run an RDP. This came about when I had to lead one but no real direction was available. I don't want other atoms to deal with that and I think we can create a more uniform and useful tool to ensure a great project kickoff and learnings. We would like feedback and a discussion around how we can make this useful to atoms. (not sure what event type it should be, the more interaction I think the better, might be good to have someone take notes too)
Hadron Session - BoatHouse Living Room and BoatHouse Bar
A number of Atoms will be giving informal presentations in a SpinDown-like atmosphere.
Atomic Jam - BoatHouse Bar
Saturday, March 19th
Gun Lake Run/Walk - Kimberly Wolting
Breakfast - Terrace Grill
A Tale of Two Projects: Atomic Scrum in the context of greenfield startup and brownfield enterprise - Brittany Hunter and Kimberly Wolting - Fireside Room
This talk will compare-and-contrast case studies of two projects, VAEI and Eaton. We will share how the Atomic SCRUM process and evolving Product Owner role shaped these projects and set both up for success. Brittany and Kim worked together for several months on the VAEI NexGen Inquiry project, where Brittany held the role of Product Owner and Kim was the designer. Later, Kim went on to take up the Product Owner role for Eaton. We feel that a strength of the talk will be showcasing how Atomic processes can be custom fit for very different customers with different needs and constraints.
In our talk, we’ll give an overview of Atomic SCRUM and the Product Owner role (building on Micah’s talk from last Atomic-Con), using VAEI’s NexGen Inquiry product as an example of the “ideal” greenfield project where we operated under a tight budget and deadline constraints, but were empowered to make many decisions about technology and process. We’ll share how Kim and her team flexed the process to work with a Fortune 500 company with an antiquated tech stack and processes in a brownfield environment. Along the way, we’ll talk about tools, deliverables, processes, pain points, and learnings from each project.
Atomic Teams & Roles - Micah Alles - Fireside Room
I'll walk through examples of ideal steady-state team compositions through the lens of the maker-centric and team-centric roles we play which make for the most productive and fun environments to do great work for our clients.
The Value of Design - Jonah Bailey - Fireside Room
This talk with explain what design IS and what design ISN'T. It will put design in the context of Atomic's business model and make a case for seeking out and consulting with a designer on every project, even when they aren't attached to it. On the occasion that you work with an external designer, this talk will educate the audience on how to seperate a good designer from a bad one. It will also detail how to work with a designer in ways that will bring out the best in them and leverage design to maximize the success of your project.
On Being a Good Boss - Carl Erickson - Fireside Room
At times I've been a good boss, and at times a bad boss (or manager, to use a less emotionally charged word). I recently came across a framework that gave me a simple way of understanding one of the key differences between those two modes. I think this framework has utility beyond our formal managerial structure (i.e. for more than MPs). My talk will describe the Radical Candor approach, share my perspective and experience as a manager, and propose its widespread adoption within Atomic.
Lunch + Atomic Jeopardy - Will Pleasant-Ryan - Terrace Grill
Prove your developer chops in a special Atomic version of Jeopardy focusing on programming languages, algorithms, and other developer topics. There might be a few curveball categories on design or marketing in there too! Contestants will be selected randomly from the audience.
1:00 - 3:00 PM
The Birds and the PCBs: Where Baby Circuit Boards Come From - Jaime Lightfoot - BoatHouse Living Room
1:00 PM - 3:00 PM
NOTE: You'll need to bring a laptop for this workshop.
This part talk, part workshop would be an introduction to circuit board design and layout. A simple circuit (consisting of a four character, 7-segment display controlled by a microprocessor) would be presented and explained from a circuit theory point of view. The schematic would be explained, from the components in the design, their functions and how they were selected, as well as how a schematic would be made in Eagle (PCB design software). Ideally, everyone would make their own schematic, but in the interest of time, the schematic will be pre-made and explained. The second half would be a more hands-on workshop. Each person, now understanding the purpose of the components and the relations between components, will get to layout (route) their own board.
The educational end result will be a crash course in designing PCBs using Eagle software (one of the few free/inexpensive options for hobbyists), allowing Atoms to develop their own hobby project hardware in the future. They would also be familiar with basic circuit components and understand some common circuit features. The physical end result will be a finished board that can be ordered and received roughly 2-3 weeks after AtomicCon, allowing Atoms to explore embedded software applications after the boards are received.
A possible followup brown bag talk about soldering and/or embedded software might follow once the boards arrive, back at AO.
Native mobile apps with ClojureScript - Chris Farber - Fireside Room
I'll provide an overview of the architecture that makes it possible to build iOS and Android apps with ClojureScript, followed by a discussion of the engineering tradeoffs compared to developing in the platforms' native languages. Tradeoffs discussed will include performance, user experience, development experience, and code reuse between platforms.
How to find your way. Alone. In the dark. Without a flashlight. Behind enemy lines. In the rain. - Mike Swieton - Fireside Room
Not every platform is "easy" per se, but if you're using the latest version of a popular framework on a greenfield project then your first day is usually straightforward at least.
But when you are on a 5 year old legacy project, none of those qualifiers apply. At all. It's in a technology we don't use anymore. You have no experience whatsoever with the business domain. You've never even logged in to the app!
In this talk you'll see how I recently fixed a real bug in a customer's project, starting from "The number on this page is wrong!" to "Our recursive algorithm to identify important nodes needed to exclude a few more than it was."
- Techniques that are generally applicable for every project: using 'grep' effectively, thinking about language conventions and capabilities, testing things
- Techniques useful for web apps (identifying whether problems are client or server, and narrowing things further)
- Techniques useful for debugging Rails apps (taking advantage of its strong conventions).
These will help you to find direction when you have no idea what's going on.
I Am Functional OO And You Can Too! - Will Pleasant-Ryan - Fireside Room
Many of us are interested in functional programming and would love to use it more, but projects frequently have constraints that steer us toward an Object Oriented language. But don't despair! There are many techniques you can use to leverage functional concepts in traditional OO languages like C# or Ruby. I will be demonstrating various options for bringing functional concepts like immutability, function composition, pure functions, and ADTs to an OO language. The techniques shown will vary from mild tweaks you can apply to standard patterns, all the way to extreme - and perhaps ill-advised - departures from idiomatic OO.
Rx - The Reactive Revolution - Patrick Bacon - Fireside Room
In this talk I'll explain why you should strongly consider ReactiveX for your next project, regardless of language or platform.
How the Psychology of Negative Emotions Can Make Us Better Consultants - Darrell Hawley - BoatHouse Living Room
Emotions are what make us human. Nobody disputes that. But if that’s the case, why are we so often hesitant to share our negative emotions? This seems especially true when the person we perceive as the guilty party is within earshot. Fortunately for us, there’s Rational Emotive Behavior Therapy - REBT. REBT gives us a mechanism to inspect the component parts of a negative emotion allowing us to arrive at more satisfying conclusions. Join us as we explore REBT and how it can improve our consulting skills.
Planning an Attention-Getting Blog Post: Idea to Outline (Workshop) - Lisa Tjapkes - BoatHouse Living Room
I'll walkthrough the basics of planning and organizing a blog post and draws in readers. Attendees will work in groups to brainstorm and develop post ideas, then think about outlines, introductions, and headlines.
expect(Testing).to be Automated - Jason Porritt, Patrick Bacon and Greg Williams - Fireside Room
3:15 - 4:15 PM
Automated testing has been part of Atomic's culture from day one. We have a history of pushing the boundaries of what's testable and deriving a lot of value out of the tests we build. Let's spend some time together with a few broadly-experienced Atoms -- Patrick, Greg, and Jason -- leading a collaborative discussion on the state of testing at Atomic: what is working well, what boundaries we're running up against today, and our hopes & dreams for the future.
Stop Calling Me That!!! - Phil Kirkham - BoatHouse Living Room
I'm a TESTER not a QA person so I can't 'QA your program' and if you ask me to QA it then it wont get tested. So what is the difference and why does it matter?
Architecting for Value - Drew Colthorp - Fireside Room
We talk a lot about testing and languages and patterns at Atomic. All in service of building better software. But while our practices and tools matter – a lot – in delivering value to our customers, they're only part of what's necessary to find success in technical implementation of a product. Getting these things right is important, but with the wrong architecture, they won't matter.
This talk will take a look at the high-level technical design of projects and how to think about an architecture in the context of our customers' needs and our own business model. I'll outline common patterns, heuristics, criteria for crafting and evaluating customer product architectures, and tie these back into concrete technology choices and tooling patterns.
Dinner + Open Spaces Voting
We'll have a whiteboard setup where folks can suggest activities for the evening. At 6:30 PM, we'll have each speaker give a 15-second pitch for their activity and open it up to everyone to dot-vote for activities. We'll assign rooms at 6:45 PM.
Rooms to be announced after voting.