This isn't a talk about becoming a better developer - you may be less in need of that than you think! This is a talk about feeling like a better developer. It's a talk about overcoming doubts that will hold you back both personally and professionally. It's a talk about feeling confident with your own ability, while working in one of the most complex, fast-paced, and ever-changing industries in the world.

This is the story of a company that survived a much needed transformation of its product and codebase, but most importantly, of its culture. There's no real prescription for being agile. It's about the journey a team takes to discover how to best work together and deliver great products.

In this presentation, I'll share a candid view of a team trying to overcome a slow product development process. How we refactored our way out of badly coupled code, moved to continuous deployment, and greatly improved our approach to product and software development.

It's a battle in the trenches everyday working in financial services keeping our users protected, making sure that hackers aren't breaking in and diverting funds or using our system as a laundering machine.

We'll journey through some lesser known attack vectors hackers can use to break into systems and best practices to both detect and prevent attacks. What are some easy ways to fight these in your app? How do you know if you're safe?

Wikipedia, the Webster's Dictionary of our generation, defines a Use Case as "a list of steps, defining interactions between a role and a system, to achieve a goal."

If you cut your teeth on RoR, at some point you've probably shuffled domain logic from views to controllers to models to POROs in pursuit of Separation of Concerns.

Now it's time to introduce Use Cases as a contextual, well-defined interface between your Rails controllers and your domain entities. Walk through real examples and learn how these nifty little classes reveal your user stories while hiding implementation detail.

Depression is a topic that many people avoid talking about, but one that touches everyone's lives. In the developer community in particular many people are affected by depression and mental illness, yet it can be difficult to understand what people are going through or how to help. I want to show you how I came to understand what it means to have clinical depression, and the single most important thing we can do about it.

Open source is at the heart of the Ruby community and there's great value in contributing. I found this out after becoming a maintainer of one of the most popular Ruby gems. Open source helped me dramatically raise my coding abilities, reputation, and salary - all while meeting people from around the globe.

You'll learn how to get started and maintain a high velocity open source codebase + tips for effective communication with collaborators. Whether you're new to Ruby or sitting on a quarter of a million rubygems downloads, you'll walk away with a clear path to open source success.

Over time, programming languages have allowed programmers to work at higher and higher levels of abstraction. Very little code is written in machine language or assembly language anymore.

Despite this long-term trend, most programming languages that have emerged over the past 5 years (e.g. Go, Rust, Swift) are lower-level than Ruby. Arguably, Ruby is the highest-level language in wide use today, despite being over 20 years old.

This talk will explore the possibilities of a new language that would operate at an even higher level of abstraction, making programming even simpler.