Session List

Session List2019-10-02T20:07:53-05:00

6 (or so) new features of .NET 6

Presented by: Joseph Guadagno

.NET 6 takes us one step closer to the unified .NET platform where dogs and cats get along, Windows and Macs play nice together, and you can use .NET to develop for the Cloud, Mobile, Gaming, IoT, Desktop, AI, and the web. ...

Tags: .NETFormat: General SessionLevel: Introductory and overview

A Perfect Ten: The Data Model

Presented by: Leslie Andrews

Do you know what makes a great data model? What does it mean to be Third Normal Form or a Star Schema? When would you use one over the other and why? How can you identify bad designs? Join Leslie Andrews for a discussion on good and bad data models, and learn what you should do in order to create a...

Format: General SessionLevel: Introductory and overview

An Introduction to Kubernetes

Presented by: Jason Farrell

Kubernetes has become the defacto tool for orchestrating containerized applications. It changes the way we view deploying and operating applications giving teams immense flexibility which automating many aspects. Yet, it remains difficult to learn and can seem quite foreign to those just getting...

Format: General SessionLevel: Intermediate

Asynchronous JavaScript: Livin' On A Prayer

Presented by: Bob Fornal

There is a unique world where Single-Threaded JavaScript manages to be much more. JavaScript interacts with its environment in ways that allow it to handle Asynchronous activities. Using several detailed code examples, we will examine these examples in a unique way to show how these interactions...

Tags: JavascriptFormat: General SessionLevel: Introductory and overview

Automate Mobile Application Testing in the Cloud with Microsoft App Center

Presented by: Aaron LaBeau

Every year new mobile devices are released for iOS and Android. With the list of supported devices growing, testing applications on physical devices is becoming more challenging and costly. ...

Tags: Mobile, TestingFormat: General SessionLevel: Introductory and overview

Automating & Monitoring Seedling Growth in the Cloud Using IoT, Messaging & Micronaut

Presented by: Todd Sharp

It all started with a small project to pass the time during The Great Quarantine of 2020. I bought some chiles from the local farmer’s market (with proper face coverings and social distancing, of course), fermented my first batch of hot sauce, and shared it with a few friends around the globe. I...

Tags: Cloud, Hardware, Java, JavascriptFormat: General SessionLevel: Introductory and overview

Better Boxes and Lines - Communicating Architecture in a Remote Work World

Presented by: Brian Gardner

Current widely used architecture modeling techniques leave much to be desired, particularly in a world that is rapidly shifting to more remote work. Whiteboard diagrams become images lost in someones photo album, online diagramming tool files land in a shared drive that nobody else can access or...

Format: General SessionLevel: Introductory and overview

Better Component Isolation With React, GraphQL, and Relay

Presented by: Steven Hicks

React has reframed how we think about UI. Instead of controllers, we now think in components. It's like we have a crate full of Legos we can use to assemble our app. ...

Format: General SessionLevel: Intermediate

Better Interviews, Better Work

Presented by: John Lange

Being an interviewer for technical jobs is hard. Checking for technical competency can feel impossible. Asking questions that start with "tell me about a time when" can feel like it has no value. And for many people giving interviews, there is no training; you're left to figure it out on your own. ...

Tags: Leadership, Soft Skills/Business, Diversity/Equity/InclusionFormat: General SessionLevel: Intermediate

Binary Analysis for noobs - An Intro to Reverse Engineering

Presented by: Jason Slagle

Do you often find yourself wondering how security researchers discover bugs in systems? How do they earn bug bounties by examining existing software? Are you struggling in CTF challenges whenever you are fed a binary? If so this session is for you! ...

Tags: Other, SecurityFormat: General SessionLevel: Introductory and overview

Build and Ship It!

Presented by: Joseph Guadagno

If you are like me, you have many libraries, helpers, utilities that you have built over time that you use for multiple projects. You've thought about publishing them to NuGet so you can share them with other projects or your team but didn't because they contain secrets, intellectual property, or...

Tags: .NET, OtherFormat: General SessionLevel: Intermediate

Building Accessible Web Apps

Presented by: Cory House

Are your apps accessible? Can a blind user navigate your app with a screenreader? Can the colorblind consume your content? Since 2017, multiple US court cases have ruled that the Americans with Disabilities Act applies to websites and mobile apps. So there are legal risks to consider as well. In...

Tags: Design (UI/UX/CSS), Testing, Diversity/Equity/InclusionFormat: General SessionLevel: Introductory and overview

Building Android for Everyone

Presented by: Sierra OBryan

Accessibility creates a better experience for everyone. Jetpack Compose simplifies development and can help us more easily build more accessible apps. In this talk, we’ll dive into some common use cases, Android Accessibility APIs, and compare these to the accessibility tools available in Jetpack...

Tags: Mobile, Diversity/Equity/InclusionFormat: General SessionLevel: Introductory and overview

Building APIs at scale - Caching and how to avoid cache stampedes

Presented by: Matt Nedrich

As an API scales, it will likely need caching to remain performant. Cache stampedes are a type of cascading failure that can occur in systems under heavy load, as these systems attempt to service many concurrent requests and also keep their caches up to date. ...

Format: General SessionLevel: Intermediate

Building rugged DevOps pipelines with GitHub Actions

Presented by: Brian Gorman

This session dives into using GitHub actions to build out robust DevOps pipelines. In the session, we'll implement an architecture to build a temporary dev environment, and then push the code changes through the pipeline to an end release into production. In addition to just getting the CI/CD...

Tags: .NET, CloudFormat: General SessionLevel: Intermediate

ChatOps and DevOps: How to Use Comms as Incident Response

Presented by: PJ Hagerty

The most important tool in your DevOps toolbox is communication. Without it, nothing can be accomplished, especially resolving incidents when they occur. ...

Format: General SessionLevel: Intermediate

Common Accessibility Pitfalls: Climbing out, when you fall in.

Presented by: Chris DeMars

You, your users, and Alice from Wonderland have something in common. At one point, everyone has fallen into a hole of perplexity, confusion, and sometimes hysterical madness. Unlike Alice, we can navigate ourselves and our users around the chaotic abyss that we call the web. Shipping inaccessible...

Tags: Design (UI/UX/CSS), OtherFormat: General SessionLevel: Introductory and overview

Confessions of a TDD Late Adopter

Presented by: Jeffrey Miller

After two decades of rehashing Test Driven Development techniques, what’s left to say? ...

Tags: Soft Skills/Business, TestingFormat: General SessionLevel: Introductory and overview

Connecting Systems that Never Planned for Each Other - An Introduction to Apache NiFi

Presented by: David Snyder

Apache NiFi can be described as a Swiss army knife for data flow programming. Joe Witt, the creator of NiFi, describes it as a "broker between systems that never knew to plan for each other". This session will illuminate the main features of Apache NiFi, expand on the problems it is best suited...

Tags: Cloud, Big DataFormat: General SessionLevel: Introductory and overview

Consistent cloud environments with Infrastructure as Code

Presented by: Matthew Sheehan

Your SaaS app is doing great, but your cloud environment is growing more and more complex. After years of provisioning additional resources to keep it growing, nobody on the team remembers all of the dependencies anymore, and deployments are hitting snags because the development, testing, and...

Tags: CloudFormat: General SessionLevel: Introductory and overview

Crafting an interpreted programming language in 60 minutes

Presented by: Granville Schmidt

Are you curious how programming languages are designed and implemented? Do you have nightmares about the “magic” that happens when you run/compile your code? Have you ever wanted to create your own programming language from scratch? ...

Tags: Functional Programming, OtherFormat: General SessionLevel: Advanced

CSS Houdini - Just what CSS needed, more JavaScript

Presented by: John Lange

Coming soon to a browser near you is a brand new technology that will revolutionize your websites. Finally, JavaScript can be embedded into your CSS! ...

Tags: Design (UI/UX/CSS), JavascriptFormat: General SessionLevel: Intermediate

Dark UX Patterns

Presented by: Vitaliy Matiyash

Congratulations! You are the 1,000,000th visitor to our website. Click here to redeem your prize! Just provide your date of birth and phone number to get started. ...

Tags: Design (UI/UX/CSS)Format: General SessionLevel: Introductory and overview

Data Science on the JVM with Kotlin and Zeppelin

Presented by: Pratik Patel

The world of Data Science heavily uses Python and Python libraries such as NumPy and Pandas. While Python is a great platform, it does have some drawbacks - one of which is performance. As Java developers, we enjoy the familiarity of the JVM and the constellation of tools and libraries available for...

Tags: Big DataFormat: General SessionLevel: Intermediate

Design Patterns for Loosely Coupled Applications in .NET

Presented by: Barry Stahl

Building loosely coupled applications is critical to creating solutions that follow good object oriented principles. These principles help make sure our applications are testable, maintainable and extensible. In this session we will explore several design patterns that are key to building...

Tags: .NET, OtherFormat: General SessionLevel: Intermediate

Docker for .NET Developers

Presented by: David Merk

Seamless CI/CD and releases, if that’s the Docker dream… why is it such a nightmare for .NET developers? If you’ve seen Docker done well using .NET Core, you’ll agree Docker empowers a CI/CD pipeline so simple you could trust an intern to trigger the release. In this session, you’ll...

Tags: .NET, OtherFormat: General SessionLevel: Introductory and overview

Dungeons, Dragons, and Graph Databases

Presented by: Guy Royse

Are you an adventurer? Do you want gold? Experience? Levels? Of course you do! And where do you get these things? The dungeon, where else? That wonderful container of all things adventurous! But, unfortunately, dungeons aren't setup for the convenience of adventurers who wish to extract these fine...

Tags: OtherFormat: General SessionLevel: Introductory and overview

Easy Domain Driven Design

Presented by: Ryan Foote

Software development is hard. Even with the best intentions, and the most deliberate design processes, we often end up mired in the “big ball of mud” scenario. Where modifications are tedious, enhancements are fraught with unknown side-effects, and troubleshooting is downright nasty. By...

Format: General SessionLevel: Introductory and overview

Effective Data Visualization

Presented by: David Giard

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. ...

Format: General SessionLevel: Introductory and overview

Effective React State: 7 Years of Lessons Learned

Presented by: Cory House

Managing React state is hard. Why? Because there are so many options to consider! Local state, reducers, custom hooks, context, and over a dozen third-party libraries. In this session, we’ll explore the lessons I’ve learned from managing complex state in React over the last seven years. I’ll...

Tags: JavascriptFormat: General SessionLevel: Intermediate

End the Stigma: Become a Mental Health Ally

Presented by: Matt Williams

It is estimated that in the US, approximately one in five will ...

Tags: Other, Soft Skills/Business, Diversity/Equity/InclusionFormat: General SessionLevel: Introductory and overview

Enterprise Cloud Patterns - Data Management

Presented by: Pratik Patel

The Cloud has changed the way developers approach building applications. Whether you're building Monoliths in the Cloud, Microservices, or Cloud Functions, the keys to successful development, deployment, and operations are challenging. ...

Tags: Cloud, Big DataFormat: General SessionLevel: Intermediate

Enterprise Observability with OpenTelemetry

Presented by: Christopher Judd

Enterprise applications are complex. A transaction starting in the browser will go through proxies, api gateways, security appliances, application performance monitoring tools, logs, microservices and more microservices. Historically there has been no standard way to get observability and...

Tags: Cloud, Java, JavascriptFormat: General SessionLevel: Introductory and overview

Explain DevOps To Me Like I’m Five: DevOps for Managers

Presented by: Gene Gotimer

Organizations and leaders are often supportive of DevOps, but they don’t always understand what DevOps is and what it will change. It isn’t a one-size-fits-all issue; different environments need different benefits from a DevOps transformation. Join Gene Gotimer as he shows how to determine what...

Format: General SessionLevel: Introductory and overview

Exploring the Reactive Landscape

Presented by: Mary Grygleski

As Java is an object-oriented language that inherently supports the imperative programming style, asynchronicity presents a challenge that can turn the code into nightmare. One way to deal with the complexity of asynchronicity is to introduce reactivity onto the coding level (reactive programming),...

Tags: Functional Programming, JavaFormat: General SessionLevel: Introductory and overview

Extending Spring Data and Spring Data Redis

Presented by: Brian Sam-Bodden

In this session, Brian will take you along for a journey into the codebases of Spring Data and Spring Data Redis to help you understand how to build your own annotation-based Spring Data extensions. Whether you are building a framework or a business/application-specific extension, understanding the...

Tags: Big Data, JavaFormat: General SessionLevel: Intermediate

Failing Successfully

Presented by: Cassandra Faris

Failure is normal. It’s so normal that many software development teams encourage people to fail and fail fast. Failure is also scary. It makes us feel vulnerable. We may even worry that our jobs, relationships, or goals are on the line. Yet we hear countless stories of people turning failure into...

Tags: Other, Leadership, Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Finding Your Flow With Kanban

Presented by: Jeremy Jarrell

More and more teams are discovering that they're more productive and more effective with Kanban. Many of these teams who choose Kanban do so out of a desire to work in an agile way, but without the overhead of sprints. But, if your team has adopted Kanban simply because there are no sprints, then...

Tags: Leadership, Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Flour Water Salt Elixir: The Fundamentals of Artisanal Hardware Hacking

Presented by: Ole Michaelis

What’s more fun than telling computers what to do? Combining programming with other activities you love! As a bread lover and amateur baker, that was hitting the sweet spot in sourdough fermentation using a Raspberry PI, sensors, and some 3D printing. ...

Format: General SessionLevel: Introductory and overview

From A to Gen Z: Attracting and Retaining the Next Generation

Presented by: Rachel Kaip

The time has come. Gen Z is joining us in the workforce! This may seem scary as media outlets love to write clickbait articles about the how vast the generational gap is between Gen Z and those before them, but don’t believe everything you read online. ...

Tags: Leadership, Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Future-proof your Web Apps with Web Components and LitElement

Presented by: Kito Mann

Building a web app? Should you pick Angular, React, Vue, or the something else? Did you know that browsers have a built-in standard for building reusable components, called Web Components? With a little bit of help from LitElement and LitHtml — libraries from Google’s Polymer team — you can...

Tags: Design (UI/UX/CSS), JavascriptFormat: General SessionLevel: Introductory and overview

Getting started with Kubenetes Policy Development

Presented by: Robert Sirchia

This session is designed to get a user started in writing Kubernetes policies in Rust. We will, touch on what is a policy. How we are going to leverage Rust and Web Assembly to write our policy. What tools you will need to develop a policy. Build out a sample policy and test it on a local...

Format: General SessionLevel: Intermediate

Hacking Your Vacation: Using Data for Fun

Presented by: Becky Gandillon

Data can be powerful, meaningful, AND fun. Making data-driven decisions can level up your family vacation from awful to awesome. In this session, attendees will walk through a specific example showing how to analyze various data sources to avoid crowds, save money, and piece together a Disney World...

Format: General SessionLevel: Introductory and overview

How to build an Android application with JetPack Compose and Kotlin

Presented by: Aaron LaBeau

The world of mobile development is constantly changing and evolving. Google's new JetPack Compose framework for Kotlin allows developers to write mobile applications quickly by using design principles from functional programming while keeping the learning curve down. In this session, Aaron LaBeau...

Tags: MobileFormat: General SessionLevel: Introductory and overview

HTTP Security Headers You Need To Have On Your Web Apps

Presented by: Scott Sauber

In this session, you'll learn about every HTTP Security Header in existence (including HSTS, CSP, XFO, and more) from the bottom up. You'll get an overview of what they are, what they do, and how you can implement them to secure your web applications. On each of these, we'll demo a before and after...

Tags: SecurityFormat: General SessionLevel: Introductory and overview

Implementing an Event Sourcing strategy on Azure

Presented by: Eldert Grootenboer

In recent years the Event Sourcing pattern has become increasingly popular. By storing a history of events it enables us to decouple the storage of data from the implementation of the logic around it. And we can rebuild the state of our data to any point in time, giving us a wide range of...

Tags: .NET, CloudFormat: General SessionLevel: Intermediate

Implementing Ethics in Emerging Technologies

Presented by: Carol Smith

Ethics discussions abound, but translating “do no harm” into our work is frustrating at best, and obfuscatory at worst. We can agree that keeping humans safe and in control is important, but implementing ethics is intimidating work. Learn how to wield your preferred technology ethics code to...

Tags: Design (UI/UX/CSS), Other, Soft Skills/Business, Diversity/Equity/InclusionFormat: General SessionLevel: Intermediate

Introduction to CSS Grid

Presented by: Kara Luton

When it comes to building responsive web layouts we’ve used tables, floats and Flexbox. Now there’s CSS Grid. In this talk, we’ll go over what differentiates it from other techniques and why it’s completely changing the game. Through code examples and demos, you’ll walk out of this talk...

Tags: Design (UI/UX/CSS)Format: General SessionLevel: Introductory and overview

Introduction to Functional Programming: It Isn’t So Scary

Presented by: Justin Pihony

Functional programming has been around for decades, yet only recently has it become mainstream. It yields simpler, terser code which is easier to both test and debug, among other benefits. However it is still often seen as unapproachable, with zealots touting words like monad, functor, and other,...

Tags: Functional Programming, JavaFormat: General SessionLevel: Introductory and overview

Introduction to inner-loop security. Shifting left, but better.

Presented by: Josh Wallace

We can barely make it through an AppSec talk or article without hearing about the wonders of “shift left” and how it is the key to solving all of our security problems. Every intro to AppSec talk starts with the cost savings and return on investment associated with discovering security defects...

Tags: Security, TestingFormat: General SessionLevel: Intermediate

Jakarta EE 10 is Coming Your Way!

Presented by: Ivar Grimstad

Jakarta EE 9 lowered the barriers of entry and established a foundation for future innovation paving the way for Jakarta EE 10. ...

Tags: Cloud, Java, SecurityFormat: General SessionLevel: Intermediate

Keeping your Kubernetes Cluster Secure

Presented by: Gene Gotimer

Many organizations are shifting to containers and Kubernetes, and that move means learning new ways to secure their environments. Kubernetes clusters have to be hardened at different levels. We have to consider the nodes where the Kubernetes control plane is running. We also need to secure the...

Tags: SecurityFormat: General SessionLevel: Intermediate

Leadership is Not Management, Expectations Versus Reality.

Presented by: Stacie Bacon

Moving from the role of a software engineer to a technology leader is both a rewarding and challenging experience. In this session, I will share helpful tips, strategies, resources, and insights regarding the shift into leadership as I pull back the curtain on my journey going from expert doer to...

Format: General SessionLevel: Introductory and overview

Let’s Build a VR Game! Oculus Quest 2 + Unity + C#

Presented by: Lance Larsen

The Oculus Quest 2 has sold over 8 MILLION devices so far and is projected to sell 18-20 MILLION next year! For the first time VR has broken through the early adopter crowd and is increasingly becoming a mainstream consumer gaming and production device! ...

Tags: .NET, HardwareFormat: General SessionLevel: Introductory and overview

Let's Talk Bluetooth

Presented by: Leah Vogel

Bluetooth has its own lingo. Don't know much about it? Want to learn to speak it? You’ve come to the right place! ...

Tags: Hardware, OtherFormat: General SessionLevel: Introductory and overview

Life in the Fastlane: App Store Deployments That Won't Make You Lose Your Mind

Presented by: Keith Kurak

Imagine deploying your shiny new app to the Apple App Store- creating certs, uploading your app to Testflight, adding testers, taking screenshots on four different devices, filling in dozens of fields on the store description, clicking through EULA’s, and resubmitting five times because the...

Tags: MobileFormat: General SessionLevel: Intermediate

Master All Frontends in Real-Time with React Native

Presented by: Stephen Shary

Front-end development is fragmented with many different stacks that are tailored to: web, Android, or iOS. We demonstrate live how React Native can be used to develop on all three platforms at the same time. We will show how to kick start a new project, make it run on all three platforms and then...

Tags: Javascript, MobileFormat: General SessionLevel: Intermediate

Migrating a legacy React App to TypeScript

Presented by: Randall Koutnik

TypeScript's a powerful tool for understanding complex codebases. Unfortunately, you're working on an app that has many edge cases with a team that may not be on board for such a large migration. ...

Tags: JavascriptFormat: General SessionLevel: Introductory and overview

Mission Impossible Prep: Testing your JavaScript with Cypress

Presented by: Bekah Hawrot Weigel

You need to know what lurks in the shadows. You want to make sure your mission succeeds. There's no time to waste, so start writing your tests. ...

Format: General SessionLevel: Introductory and overview

Mistaken Identity: SAML and OAuth Security

Presented by: Wolfgang Goerlich

While everyone was focused on credentials, criminals quietly moved to exploiting mistakes in identity. You have a long and strong password? That’s sweet. You’re using all three types of multi-factor? That’s cute. It won’t matter when the adversaries compromise identity protocols after...

Tags: SecurityFormat: General SessionLevel: Intermediate

Modern Cross-Platform Development with .NET 6

Presented by: Sam Basu

Slated for Nov 2021, .NET 6 ushers in modern development stacks and polished tooling throughout much of the .NET ecosystem. With .NET MAUI, developers get to build native cross-platform apps for mobile & desktop from single codebase. With Blazor component model, C# can power modern web apps on the...

Format: General SessionLevel: Intermediate

Monolith Decomposition and Evolutionary Architectures: How to Safely Modernize Legacy Systems

Presented by: Ben Hoffman

Replacing and re-engineering a new system to replace a legacy or monolithic system, in its entirety, is risky. And after significant investment, the new system often suffers from many of the same issues the old system had. When you combine long development times with big-bang-style deployment, the...

Tags: .NET, CloudFormat: General SessionLevel: Intermediate

Moving Massive Mountains of Magnificent Data

Presented by: Barret Blake

Data over here. Data over there. These days there are massive piles of data everywhere. Companies use many different systems. Those systems need to interact and share data to be useful. But how to get that data from place to place? Most of the time, what's built in to these various systems doesn't...

Tags: Cloud, Big DataFormat: General SessionLevel: Introductory and overview

Nope, create-react-app is not what you want, and here's why

Presented by: Sara Gibbons

So you're looking to start a new site, have decided React is your framework of choice, but before you npx create-react-app, let's talk. ...

Tags: JavascriptFormat: General SessionLevel: Intermediate

Performance tuning for Azure Cosmos DB

Presented by: Hasan Savran

Azure Cosmos DB is a fully managed service that takes database administration off your hands. Fully Managed Database sounds good, but developers end up with some of the database administration work anyway. ...

Tags: .NET, CloudFormat: General SessionLevel: Intermediate

Promoted From Dev to Team Lead: 8 Things They Didn't Tell Me

Presented by: Yishai Beeri

Three years into my software engineering career (that I was loving), a freight train hit me. I was promoted to dev team lead. This is a common trend in the engineering world - where many times the sole paths to success for excellent engineers are through management paths. However, the skills that...

Tags: Leadership, Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Protecting your API with OAuth

Presented by: Dan Moore

OAuth is a well known standard and is useful for delegating authentication and authorization decisions to a central identity provider. As a developer, you’ve given a token when a grant completes. ...

Tags: Javascript, SecurityFormat: General SessionLevel: Introductory and overview

RediSearch: Completing the Beyond SQL Story with Search

Presented by: Brian Sam-Bodden

Do you automatically reach for a relational database for your application’s data needs? There is an unspoken impedance mismatch between expected rates of maturity between an application’s model and its data model. NoSQL/NewSQL and now “beyond SQL” solutions are often met with incredulity...

Tags: Big DataFormat: General SessionLevel: Introductory and overview

Rewriting History With Git

Presented by: Steven Hicks

Git is an amazing tool for version control. One can get a lot done with only a few commands — commit, merge, pull, and push. ...

Format: General SessionLevel: Intermediate

Risk Measurement and Management Using Open Source Tooling

Presented by: Joe Kuemerle

Even with tooling and automation, as developers build more and more software, there is more security work than a team can manage. Being able to prioritize work is a strategic advantage but how do you fairly and consistently judge what is important? ...

Format: General SessionLevel: Introductory and overview

Rock-Solid Components with TypeScript and GraphQL

Presented by: Mat Warger

Most recent javascript frameworks bring a solid component model to modern web development, but how can you guarantee that your components work correctly? In this session, you learn how the features of TypeScript can be leveraged to bring clarity and dependability when constructing components with...

Tags: JavascriptFormat: General SessionLevel: Intermediate

SAFe, Scrum, and shifting left at a Progressive Insurance

Presented by: Rob Sinkko

Progressive IT knew that the waterfall and agile methods weren't keeping up with the software release cycles. For a new multi-million dollar program, the Claims organization decided not to continue down that path and hope in 3 years that something resembling what they wanted was pushed to...

Tags: Leadership, Soft Skills/Business, TestingFormat: General SessionLevel: Introductory and overview

Safely Evolving Legacy Code

Presented by: Scott Sauber

A new ticket comes in. It's for "that app." You know the one. The one nobody wants to touch, because the code is a mess and yet the application is business critical. In this talk, the fancy technologies will be put to the side, and instead the the reality most people live in will be acknowledged....

Tags: TestingFormat: General SessionLevel: Introductory and overview

Scaling Systems: Architectures that grow

Presented by: Kendall Miller

It's harder than ever to predict the load your application will need to handle in advance, so how do you design your architecture so you can afford to implement as you go and be ready for whatever comes your way. It's easy to focus on optimizing each part of your application but your application...

Tags: .NET, CloudFormat: General SessionLevel: Intermediate

Securing Your API Endpoints - A Practical Authentication Guide

Presented by: Seth Petry-Johnson

It's never been easier to expose services over HTTP. It's also never been easier to inadvertently expose security holes via those same services. ...

Tags: Javascript, SecurityFormat: General SessionLevel: Introductory and overview

Self-Driving Robotic Cars - Starting on a budget

Presented by: Don Ward

Seven years ago Waymo learned that soap bubbles cause their self-driving cars to hesitate on whether to brake or not. Today the promise of self-driving cars is still only a promise. The industry continues to move forward and advances are made every day. Soap bubbles no longer cause havoc. The good...

Tags: HardwareFormat: General SessionLevel: Introductory and overview

Serverless on Azure

Presented by: Jason Farrell

Azure Functions are the serverless offering from Microsoft on Azure, enabling the fulfillment of many use cases without the need to worry about the servers. By responding to events within the Azure platform, Functions are granted access to a wide variety of use cases and situations. Perhaps their...

Format: General SessionLevel: Intermediate

So your company is now remote? How to smoothly onboard your new developers remotely

Presented by: Brittney Braxton

Due to the 2020 Pandemic, many companies were thrown into the world of remote working when they may have been previously very cautious and averse to embracing it. Some companies saw this new format as valuable for the business and stuck with it. Unfortunately, we cannot create a positive experience...

Tags: Leadership, Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Stand Back; I'm going to try Data Science!

Presented by: Matt Eland

Curious about data science and its relation to software engineering? Want to know how to dabble in artificial intelligence or machine learning side projects before taking the plunge? Come check out this session. ...

Tags: Big DataFormat: General SessionLevel: Introductory and overview

Stop your instincts from ruining your career: the science behind emotional intelligence

Presented by: Natalie Hylton

According to the Center for Creative Leadership, 75% of careers are derailed for reasons related to emotional competencies, including inability to handle interpersonal problems, unsatisfactory team leadership in times of difficulty or conflict, or inability to adapt to change or elicit trust. ...

Format: General SessionLevel: Introductory and overview

Surfing in Maui

Presented by: Sam Basu

You are invested in .NET and Xamarin technology stacks. But there are some pain points in the present reality. Perhaps you crave for cohesiveness, maturity and want to have more confidence in the Xamarin and Xamarin.Forms ecosystem? ...

Format: General SessionLevel: Introductory and overview

Sustainable Accessibility: Integrating accessibility checks into your CI/CD pipeline

Presented by: Ashley Stove

Accessibility is important, not only for your users but also to meet legal requirements for certain levels of compliance. Unfortunately, most companies lack developers and quality assurance analysts who are trained to produce and test accessible user interfaces to industry-standard levels....

Tags: Design (UI/UX/CSS), TestingFormat: General SessionLevel: Introductory and overview

Svelte, cybernetically enhanced web apps

Presented by: Ruby Jane Cabagnot

Svelte is a radical new approach to building user interfaces. Whereas frameworks like React & Vue do the bulk of their work in the browser, Svelte shifts that work into a compile step that happens when you build your app. And rather than applying techniques like virtual DOM diffing, Svelte writes...

Tags: JavascriptFormat: General SessionLevel: Introductory and overview

Ten Things Every Voice Application Should Do

Presented by: Jeff Blankenburg

In my experience building dozens of skills for Alexa, and working with hundreds of developers on their own voice applications, I've identified ten specific patterns that are common to the most successful of the bunch. This presentation will cover these ten topics, giving you the insight an...

Tags: Cloud, Design (UI/UX/CSS), Testing, Diversity/Equity/InclusionFormat: General SessionLevel: Introductory and overview

The Art of Readable Code: Rethink Your Approach to Coding

Presented by: Steve Green

We all have a lofty goal: programming style as documentation. Inspired by Steve McConnel’s “Code Complete,” Uncle Bob’s “Clean Code,” and Andrew Hunt’s “The Pragmatic Programmer,” this session will: ...

Tags: .NET, OtherFormat: General SessionLevel: Introductory and overview

The Case for GraphQL

Presented by: Kyle Schrade

We will be diving into why someone would want to use GraphQL and what are the benefits of using it. Starting from what is GraphQL and ending with how it can make your stack much more flexible and improve your day-to-day developer experience. We will look at many examples from our work at StockX that...

Tags: Design (UI/UX/CSS), Javascript, MobileFormat: General SessionLevel: Introductory and overview

The definitive deep dive into the .git folder

Presented by: Rob Richardson

What's in the .git folder? How are commits stored? How do branches work? We'll dive deep into the objects folder, unpack commits, look at the types of DAG nodes, examine object content, and build a complete visualization of the stored content. We'll also quickly look through Git hooks, Git config,...

Tags: OtherFormat: General SessionLevel: Advanced

The Elegance of “The Simplest Possible Thing”: Applying Simplicity Principles to Complex Problems

Presented by: Nate Berent-Spillson

Software development is complex work. Business requirements, platforms, and technology itself are all complex elements. Through all this complexity, software developers often try to create complex solutions that meet all the requirements at once. Similarly, when faced with a complex problem, they...

Tags: .NET, Cloud, Functional Programming, Java, Javascript, Leadership, TestingFormat: General SessionLevel: Intermediate

The Four Basic Principles of Accessibility

Presented by: Homer Gaines

Within the WCAG 2.1, web-accessible content is broken into four principles collectively referred to as POUR. This acronym stands for Perceivable, Operable, Understandable, and Robust. These four areas specifically target areas where users have the most trouble when accessing digital content and...

Tags: Diversity/Equity/InclusionFormat: General SessionLevel: Intermediate

The Human Side to Testing

Presented by: Amanda Perkins

We’re known for breaking things and testing the limits, and patience, of our team and our systems. We advocate for quality in all things and we advocate for the end user. But, none of us actually think about how our varied backgrounds influence what we do and how we test. In this session...

Format: General SessionLevel: Introductory and overview

The Mark 3 Exoskeleton

Presented by: Scott Preston

I started building exoskeletons for CodeMash in 2016. The Mark1 and Mark2 were heavy and cumbersome but a lot has changed in the past 5 years thanks to 3D Printers and Hobby Grade CNC machines. ...

Tags: Hardware, JavascriptFormat: General SessionLevel: Intermediate

The Most Tested Login Page Ever

Presented by: Scott Connerly

Automated testing is a mystery to some, an essential fortress to others, and many of the rest of us are somewhere in-between. Sure, you've probably heard of unit tests and API tests. ...

Tags: Javascript, TestingFormat: General SessionLevel: Intermediate

The Science of Testing

Presented by: Thomas Haver

In the past decade the software development paradigm has shifted to “deliver fast” -- with concomitant frameworks and methodologies to support that emphasis – but without proper consideration of quality. So most teams end up failing fast and hard when development continues beyond a shaky...

Tags: TestingFormat: General SessionLevel: Introductory and overview

The Super Spectacular Interactive Event Driven Light Show

Presented by: Barry Tarlton

The ability to properly design and implement highly resilient event driven systems is critical in our data centric world. But getting one’s mind around the complex choreography of this data driven architecture can be absurdly difficult. By using a Raspberry Pi Kafka Cluster, light bars, and...

Tags: Big Data, HardwareFormat: General SessionLevel: Intermediate

Time traveling in the cloud. Time series analytics with Microsoft Azure.

Presented by: Sam Vanhoutte

The data collected in IoT scenarios are often thought of as a ‘time series”. Through this data it’s possible to understand the past and use this data to anticipate the future. But time traveling is never straight forward. That’s why in this session Sam will walk you through the processing of...

Tags: .NET, Cloud, Big Data, PythonFormat: General SessionLevel: Intermediate

TinyML - AI in the Palm of your Hand

Presented by: Don Ward

Machine Learning has taken over the world. Decisions using data are being made in our daily lives every day in apps we use, to what ads we see in our social media. ...

Tags: Hardware, OtherFormat: General SessionLevel: Introductory and overview

Understanding Probabilistic Data Structures with 112,092 UFO Sightings

Presented by: Guy Royse

There are three reactions to the title of this talk: ...

Tags: OtherFormat: General SessionLevel: Introductory and overview

Using SVG to create responsive, interactive and animatable graphics

Presented by: Ben Hoffmann

A message is often best stated visually. Traditional methods of designing graphics, diagrams, and charts produce something that retains its aspect ratio, regardless of the size it is viewed. This may work fine for print and slide media, but fails to take advantage of viewing digital content on...

Tags: Design (UI/UX/CSS), Javascript, MobileFormat: General SessionLevel: Advanced

UX Design for Human-Centered Complex Systems

Presented by: Carol Smith

The complexity that arises when multiple systems are being brought together, or when artificial intelligence (AI) and other emerging technologies are being built, is reflected in the complexity of the decisions we need to make regarding the user’s experience (UX). Dynamic changes in content and...

Tags: Design (UI/UX/CSS)Format: General SessionLevel: Advanced

Verbs, Not Nouns: Writing Documentation Users Want to Read

Presented by: Brian MacDonald

Documentation should be complete and comprehensive, but that doesn't mean it has to be dull and boring. Engaging documentation focuses on what your users want to do, the tasks they're trying to accomplish, the problems they want to solve. Writing documentation with the focus on your user, instead of...

Tags: Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Visualizing Code

Presented by: Matt Eland

What happens if we combine the fields of software architecture and data visualization? In this talk, we'll explore what the source code and work item management systems we work with every day can tell us about the evolving nature of software and how we communicate it. ...

Tags: OtherFormat: General SessionLevel: Intermediate

Watch How The Giants Fall: Learning from Bug Bounty Results

Presented by: John Melton

Security is hard. We all miss things. Attackers find things. ...

Tags: SecurityFormat: General SessionLevel: Introductory and overview

Web A11y Patterns and Pitfalls

Presented by: Robert Cochran

The internet is no longer an optional aspect of modern life. It is how many of us conduct business and maintain relationships. A tool as critical as the internet needs to be usable by everyone. It is our responsibility to create a good user experience for ALL users. ...

Tags: Design (UI/UX/CSS)Format: General SessionLevel: Introductory and overview

What a global pandemic can tell you about better DevOps practices

Presented by: Jeremy Meiss

In early 2020 a global pandemic set in motion events which none of us could predict. With anonymous data collected from 900k+ devs, 25K orgs, and 30m+ builds/mo we found some interesting insights into better DevOps practices. Since then, we've seen even more interesting activities happen, which shed...

Tags: Other, Leadership, Soft Skills/BusinessFormat: General SessionLevel: Intermediate

Where has Jane Gone?

Presented by: Karen Linden

Have you ever been told if you were like that male developer over there you get somewhere? Have you removed you first name from your Resume to get more interviews? Have you been excluded from a meeting because afraid that they will offend you? Have you ever been called bossy? Have you ever...

Tags: Diversity/Equity/InclusionFormat: General SessionLevel: Introductory and overview

Who’s Afraid of the Big Bad Bluetooth?

Presented by: Leah Vogel

With the buzz around IoT devices, Bluetooth Low Energy technology has become increasingly popular. Apple's CoreBluetooth has been around since iOS 5, and offers a host of utility APIs. ...

Tags: MobileFormat: General SessionLevel: Intermediate

Writing the Next Great Tech Book

Presented by: Brian MacDonald

You have an idea for the next great technical book. Maybe you're excited about a new technology that nobody's written about yet. Maybe you're unimpressed with the books that are out there on your favorite topic. Maybe writing a book is on your bucket list. This session will help your idea reach its...

Tags: Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview

Yarn Berry: a next generation package manager

Presented by: Michael Richardson

The recently released Yarn Berry (aka Yarn 2) brings a host of great new features for JavaScript developers. The slick new CLI, more readable output, clear errors, and significant enhancements to workspaces make Yarn Berry a solid upgrade from the already impressive Yarn 1. But with an incredible...

Tags: JavascriptFormat: General SessionLevel: Introductory and overview

You’re Not Just Tired: The Psychology of Burnout

Presented by: Arthur Doler

After the events of the last year, burnout has been on everyone’s minds. Are you feeling nostalgia for the days when your job wasn’t such a hassle? Do you find yourself struggling to care about your job… or anything at all? You may be wrestling with burnout.. But what exactly IS burnout? If...

Tags: Leadership, Soft Skills/BusinessFormat: General SessionLevel: Introductory and overview