Sessions

Below are the sessions for Prairie Dev Con Winnipeg 2019!

Sessions

Filter based on category or technology!


A Day in the Life of a Netflix Engineer

Adam Jordens

Dev

Netflix is a large, ever changing ecosystem system serving millions of customers across the globe through cloud-based systems and a globally distributed CDN. This talk will cover my experiences over the past four years and share a few useful lessons learned from operating at “reasonable” scale.


A Guide to JavaScript's Scary Side

Jonathan Mills

Dev, Web

We all know that JavaScript has good parts. But some areas are not for the feint of heart. We hear terms like Prototypes, Hoisting, Closures, Event Loop, and all this weird async/callback behavior. Why in the world would you ever setTimeout to 0, and why can I never rely on ‘this’? In this talk, Jon will show you how all this works…and how to use these tools to your advantage. It’s time to shine a light under the bed of JavaScript. Much like scary monsters under the bed, when the lights come on, the monsters are not so scary after all.


Accessibility Guidelines & Tools: How Do I Know My Site/App is Accessible?

Ashleigh Lodge

Dev, Materials
Download Session Materials Here!

Have you ever looked at the Web Content Accessibility Guidelines (WCAG)? Like most standards documents, they’re dry and not very clear, so let’s make them more accessible! I’ll strip the WCAG docs down to their basics and introduce various tools you can use to check the accessibility of your website or app. Whether it’s an audit tool such as aXe or WAVE, a colour contrast tool built into your browser, or a colour-blindness simulator, you’ll learn how to use these tools, interpret the results, and create an accessibility checklist and a plan for fixing common issues.


Actionable Detection - A practical use of Natural Language Processing to determine key items for response in a customer service context

Josh McPhail & Jordan Cole

Dev

Sometimes a single machine learning classifier is not enough. Often to achieve the highest results you need to combine many together. In this session we will show you how.


Adding Search Capabilities to your Applications with Elastic Search

Rod Paddock

Dev, .NET, AWS, Materials
Download Session Materials Here!

User: We need to add the capabilities of Google Search to our application. Developer: When do you need this? User: Next week would be Greaatttt! Developer: OH!

So you need to add a search engine? Have no fear Elastic Search is here! In this session you will learn how to install and implement search solutions using the industry standard solution known as Elastic Search. In this session you will learn:

  • How to Install Elastic Search
  • How to load your .NET objects into one or more searchable indexes.
  • How to retrieve your objects using natural language.
  • How to scale your applications using Amazon Web Services.


Agile End to End Testing with CodeceptJS

Jeff Mychasiw

Dev, Web

In a rapidly expanding company like Bold Commerce, validating our e-commerce applications using browser based end to end testing is critical. Scaling e2e automation across our growing number of product teams requires features such as a low barrier to entry and the ability to adapt to future changes in testing technology.

We have found that CodeceptJS meets these requirements and more. CodeceptJS combines multiple testings tools into one unified API along with a collection of components that promote scalable construction patterns.

The overall theme of this presentation is how Bold is adopting e2e automation across it’s many product teams and how CodeceptJS is able to adapt as our needs grow and change.


Applied Laravel

Alexander Trauzzi

Dev, PHP

At ArtMoi, we use Laravel to do the heavy lifting for all of our new development. What does that mean? Well, some of the things we use in the framework to build our API are:

  • An out of the box extensible CLI
  • Database migrations
  • Dependency injection
  • Contextual validation
  • Resourceful routes
  • Events
  • Reusable business logic with jobs
  • Portable filesystem operations
  • Queue workers

Whether you find yourself working in PHP for the first time, are a seasoned PHP developer who has skimmed the docs or whether you’re a daily user of Laravel; My hope is to give you the confidence to use some of the best features of PHPs most popular framework.


Azure DevOps + Azure ML = MLOps

Alice Gibbons

Data Science/AI

Empowering data scientists and app developers together to help bring ML models to production! MLOps enables you to track / version / audit / certify / re-use every asset in your ML lifecycle and provides orchestration services to streamline managing this lifecycle. Using Azure ML + Azure DevOps we will demonstrate how to automate the end to end lifecycle of a ML/AI project.


Building a Culture of Continuous Delivery at Netflix

Adam Jordens

Dev, DevOps

An exciting retelling of the continuous integration and delivery story at Netflix and how we’ve managed to stay on top of quite explosive infrastructure growth.

We’ll focus on tools and techniques that should be generally applicable to organizations of all sizes.


Building High Performance React Applications

Joe Karlsson

Web, React, Materials
Download Session Materials Here!

React is built with performance in mind. But when is React slow? React is filled with hidden performance issues that conspire to slow down your code and ruin the user experience. Learn exactly what is fast, what is slow, and what you can do to squeeze that last bit of performance out of your React code.

In this talk we’ll discuss common bottlenecks in React and when you might be making your program work harder than it should. We will discuss how Best Buy builds components that stay fast, even during the enormous stress of Black Friday traffic. You will learn practical ways to speed up your real world React applications today. This talk will cover:

  • Use key correctly
  • Manage shouldComponentUpdate
  • Extend PureComponent
  • Use Immutable Data
  • Stateless Components
  • Build for Production
  • Analyze WebPack Bundle
  • Render when Really Needed
  • Make it Work, Then Make it Fast

This talk is for developers curious to learn how to make high performance React applications. You may or may not have already used React, but to get most out of the talk, you should be familiar with the basics of JavaScript.


Building Trust in Teams

Richard Campbell

Dev Teams, Dev Life

Today businesses run on software, and the quality of that software is directly affected by the level of trust the team members responsible for that software have with each other - from management to developers to operations folks to data administrators - everyone has a hand in the success of software, but without trust, that success is hampered. What can you do to improve the levels of trust in your team? Join Richard Campbell as he discusses his experiences building trust within teams with time, effort, honesty and pizza.


Canopy: Easy Automated UI Testing for the Web

Eric Potter

Dev, Testing, Materials
Download Session Materials Here!

Automated UI tests are a great way to quickly validate full stack behavior in your application. They complement unit tests by testing your entire system. Canopy is a powerful and intuitive open source tool for writing automated tests for web applications. It provides access to the power of the Selenium WebDriver through a DSL that is easy to learn and use. The DSL is built on top of F#, giving you the full power of that language and its ecosystem. In this session, we will look at how to get started, even if you have no F# experience.


CloudWatch-ing: Creating More Useful Logs & Alerts with AWS

Rhia Dixon

DevOps, AWS

Logging is essential for visibility and resiliency, especially when monitoring and debugging software applications. However, overzealous logging of everything can do more harm than good. For integrated applications, generating massive files of data no one reads can lead to days of troubleshooting and weeks of fixing the “fix”. The time lost multiplies when these logs live in various places with no system to sound the alarm. Learning to use Amazon CloudWatch for streamlined, meaningful, centralized logging and alerts can drastically reduce the time it takes to notice issues, find bugs, and fix them. Attendees will learn how to use Terraform to create metrics and alerts from AWS CloudWatch logs.


Concurrency-First Development in Go

Adam Krieger

Dev, Go

Concurrent programming is hard, mainly because the traditional tools contradict a more natural way of thinking. Mutexes and semaphores are value-centric tools for protecting integrity, but humans think in trains of thought and sequences of events. Golang, and the actor model of programming flow, work together extremely well. In this talk we’ll go over examples of advancing complexity, and by the end you should feel confident enough to Go on your own.


Demystifying Git - Git Under the Hood

David Crossman

Dev

When working within a project using Git, you notice a folder .git with a bunch of files and folders containing all types of information. The technical talk will cover some plumbing and porcelain commands with Git and how it manages your files within the .git folder. We will do a deep dive into how Git store data and how it all comes together to track changes for files and folders.


Design for Non-Designers from a Non-Designer

Jay Harris

Dev Teams, Design

Elegant design requires talent, but talent is not a prerequisite for avoiding bad design. If you lack artistic touch and prefer rules and logic over the ethereal art form, the fundamental tenets of composition can enable you to apply Design as a programming paradigm. Spend an hour with a coder learning the logic of design—hacking pixels instead of bits—and free yourself of your excuse for horrible designs.


Docker Isn't Just All Hype; Create Robust Deployments for Vue.js and ASP.NET Core

Rob Richardson

Dev, Web, DevOps, Vue, ASP.NET, Containers

You’ve built a SPA and an API backend, and you’re now looking to deploy with ease. Docker is the natural fit, but where do we begin? We’ll use the Vue CLI and the dotnet CLI to startup our codebases, then craft Dockerfiles to deploy these with ease in various configurations. Whether you’d rather deploy both parts together or scale different pieces separately, Docker can empower you to deploy your solutions at cloud scale.


Dockerizing Your Legacy Apps

Darryl Shpak

Dev, DevOps, Containers, Docker, Materials
Download Session Materials Here!

The hype around Docker focuses on distributed microservices, but what about those legacy applications you have? You know the ones…monoliths running on hand-crafted servers, maybe using local storage, maybe running on Windows. You don’t have the time or money to completely re-architect them, so are you stuck on the sidelines, unable to use containers? Absoutely not! In fact, you might benefit from containers more than anyone else!

In this talk, I’ll look at ways that teams can benefit from using Docker on legacy server-hosted applications with no architecture — or even code! — changes.


Durable Azure Functions: Hyperscale Orchestration at Bargain Basement Prices

Simon Timms

Dev, DevOps, Azure

Durable Azure Functions provide an orchestration solution on top of Azure Functions to unlock powerful workflows. In this session, you’ll learn how to build, deploy and manage Durable Functions using Azure DevOps and AppInsights. By the end of this session, you will know how to build a reliable web of functions which can transparently scale to handle massive workloads at a minimal price.


Enterprise Cloud Management: Tools and Best Practices

Tyler Doerksen

Cloud, Azure

The hyper-scale capabilities of Microsoft Azure public cloud can be a game changing for large enterprise organizations. However, these organizations often have existing management policies and practices. In this session you will learn how to provide the necessary controls without hindering the power of public cloud. This session is built from real-world experience working with the Canada’s largest Azure customers plus some new features announced at Microsoft Ignite.


Explore Winnipeg’s Open Data using Vue.js

Andrew Burton

Dev

The City of Winnipeg’s Open Data Administrator will take you through the development of an application powered by the city’s Open Data portal, using the world’s greatest javascript framework, Vue.js. In this session you will learn:

  • About the city’s Open Data program
  • Rapid prototyping with Vue.js
  • How to confidently make bold statements


Finding your place in the Cosmos: When and why you should consider Azure Cosmos DB

Eric Potter

Dev, Data, Cosmos DB, Materials
Download Session Materials Here!

Azure Cosmos DB gives you exciting new ways to access your data. You have new storage paradigms. You can connect to it from your C#, JavaScript, Python, or Java application. You can write stored procedures in JavaScript. You can easily integrate with Azure Functions. You get all of this with incredible access speeds.

In this presentation, you will learn what you can do with Cosmos DB. You will learn how you can benefit from the new storage models that Cosmos DB provides. You will learn about the various options for storing and retrieving data. You will be shown what SDKs are available. Most importantly, you will learn when and why you would want to consider using it.


From Localhost to Production: Managing Your Code With Azure DevOps

Jay Harris

DevOps, Cloud, Azure

Your code compiles. Your unit tests pass. Your website works on localhost. But “It works on my machine” does not get your site deployed to your production environment. Azure DevOps can handle much of the process of between localhost and production. Continuous Integration can build and test your application, release workflows can automate your deployments to test and production environments, and everything can be customized to employ manual interaction and gatekeeping for quality control and human oversight. Getting your application to production does not need to be an invasive, manual process. Learn to use the strength of Azure DevOps to manage your path to Production.

Learning Objectives:

  • An introduction to Continuous Integration and Azure DevOps
  • An introduction to builds and continuous integration using Azure DevOps
  • An introduction to release management and automated deployments using Azure DevOps


Git Out of Trouble

David Crossman

Dev

The technical talk will cover recovering from screwing up in Git, and figuring out how to fix your mistakes. By reviewing some common Git commands, we will cover how to recover from the common mistakes. In this workshop we will run through the following scenarios:

  • Too Many (small) Git Commits!
  • Git Commit Message Sucks
  • Git Committed to the Wrong Branch
  • Accidental Git Commit
  • Just Make it Go Away!
  • Breaking Things With Git


Google Cloud Functions: What do they do? Do they do things? Let's find out!

Craig Tataryn

Dev, Cloud, Google Cloud, Materials
Download Session Materials Here!

Ever hear the term “Edge Function” being thrown around? Google Cloud Platform provides a way to deploy, manage and run them. These functions operate in the cloud and are the archetype of what Microservices aim to be. In this session you will be shown how to write, test, deploy and run Google Cloud Functions (GCF). We will go over the ways in which GCFs are triggered, what capabilities they have at their disposal and how they fit into your overall strategies when it comes to your product’s architecture. Other Google Cloud Platform products such as Google Cloud Storage and PubSub will also be explored and discussed. Last but not least, we’ll touch on various pitfalls one must navigate when dealing with GCFs as well as how to setup VS Code in order to effectively write and debug your code.


How I Accidentally Tried To Process an Extra $8.2 Million (And Other Things to Avoid in the Cloud)

James Chambers

Dev, Cloud, Azure

We’re going to have a look at some real-world code in this session and talk about the safeguards and strategies you can employ to help build great cloud-based apps. Most developers have deployed something to a cloud service provider, but most of us have hesitations when it comes to using a broader spectrum of cloud services. In this session I hope to put your mind at ease, working from scenarios I’ve encountered while helping to bring a startup online and walk you through a set of lessons learned in the cloud. Come for the strategy, stay for the anecdotal absurdities.


How to Generate High Fives in your Data Science Team

Michael Phelan

Dev

Data Scientists and ML devs are different. They’re usually less interested in money and glory. And as for company success? Meh. They usually aren’t in it for the same reasons other people are in it for. What motivates them? I believe we get the best out of our highest value resources by letting them fail as a team, so that when they succeed, they do so as a team. And when the team success the high fives are awesome. Data Scientists don’t all fit neatly into one box, but they all love those high five moments. The “Holly cow, José solved it!” moments. Those are the moments that increase their appetites for success, and their willingness to work as a team.

In this session, we’ll discuss how we’ve achieved success in data science, including:

  • Embracing failure as a team
  • Getting buy-in on change
  • Earning victories together
    • Attendees will leave this session with ideas of how to structure and encourage data science developers in their organizations.


Inclusive Diversity: Do You Want to Build a Bracelet?

Rhia Dixon

Dev Life, Dev Teams

We want more diversity and more inclusion, but where do we start? There is a marked disconnect when trying to reach and engage those who differ from us in race, gender, religion, age, ability, etc. I believe this disconnect happens because we struggle to find genuine planes of engagement. It is not enough to hire or reach out to someone just because of how they fit in the demographic scheme of things. Tokenism is not the answer. People need to feel truly included and valued as individuals. If there is no effort to engage on relatable levels and have genuine discussions about things we have in common, we will not be able to hold on to these very valuable people. This is NOT a lecture. Be prepared to be your authentic self and shuffle around a bit! In this interactive session, we will have meaningful conversations as we construct unique bracelets using the beads you select to explore a different perspective on diversity & inclusion.


JS and Parallel Processing(!?)

Joe Karlsson

Dev, Web, JavaScript, Materials
Download Session Materials Here!

For a long time, JavaScript was missing any kind of processing threads. While the single-threaded model added to developer comfort, it also made the platform unable to do serious and time-consuming calculations, and the only way to circumvent it was to do it on a remote server.

Luckily, with the introduction and widespread adoption of Web Workers, we can now do resource-intensive calculations on background threads. A Web Worker allows you to run JavaScript in the background, without affecting the performance of the page. Even if you are running really resource intense code in the browser, you can continue to do whatever you want: clicking, selecting things, etc., while the Web Worker runs in the background.

In this talk, we will explore:

  • Web Workers, how and when you can use them, and their peculiarities
  • Perf and framerate benefits (with data!)
  • Polyfilling for naughty browsers
  • Future: WebGL, Canvas2D, and other marvels browser vendors are cooking up


Keeping Up

Jonathan Mills

Keynote

Hey, what are your thoughts on Docker? How about Kubernetes? Have you started looking at Vue yet? Although, WebAssembly will replace JavaScript before too long..... Every time I go to an event, I am hit with questions like this. I often feel like I am running up a down escalator and simply can't keep up. Do you ever feel overwhelmed with the constantly changing landscape of software development? Every time we turn around there is something new to keep our eye on. In this session, I encourage you to stop for a minute and take a breath. I will work you through some resources and skills that will help you trim back the noise and allow you to focus on the things that are really important and simply keep an awareness of the rest.


Kotlin is as awesome as you've heard. Here's why.

Justin Lee

Dev, Java

Most presentations introducing a new language are really just language tours. A lot of interesting language features are shown but it’s not always clear why one would choose to adopt that new language. This presentation looks at a number of interesting features of the language and ecosystem that are more interesting than just a fancy new for loop. No one switch languages because of a for loop. So we’ll look at a number of “big ticket” features of the language and ecosystem that do more to distinguish Kotlin than mere syntax sugar alone can provide. It will reasonably fast paced as we try to cover as many interesting tidbits as we can get through.


Level Up with Generative Testing

Shane Charles

Dev, Testing

In this session, we will begin by separating Property Based Testing (PBT) from Unit Testing. We’ll go over some useful patterns to help keep us coming up with properties. Diving into generators to exercise control over our inputs and to generate complex objects. Where PBT should be used and when unit testing would be better suited. We’ll then follow it up with some real world property based testing.


Living and Breathing Documentation

Sean Feldman

Dev, Documentation

Join a journey of one documentation site that has transformed from an ugly duckling into a beautiful swan. Learn about the hardships of maintaining code documentation that stays current, helps customers, excites developers, and doesn’t suck over time.

A story of our product web site, https://docs.particular.net/nservicebus/ and the transformation it went through. This talk will focus on how the changes have affected the customers, the developers, and influenced other companies.


Machine Learning for developers that know nothing about ML

Dylan Smith

Dev, Data Science/AI

Machine Learning is hot, hot, HOT! But if your background is web/api/app development, and not a PhD in stats/math, it probably looks like a completely alien world. I can’t turn you into an ML developer in 1 hour, but I can try and demystify what it means to do ML development. The different approach to solving problems with ML rather than regular coding, give an overview of one specific ML model technique, and how ML developers can apply it in a bunch of interesting ways. And go over the things that people spend most of their time struggling with in the ML world (feature engineering, overfitting, hyperparameter tuning, etc).


Making it Rain: Truly Cloud Native JVM Applications with Quarkus

Justin Lee

Dev, Cloud, Java, JVM

At Red Hat, we’re leveraging our vast middleware experience and emerging technologies to push the state of the art. Based on Oracle Labs’s GraalVM/SubstrateVM, we’re building the next generation stack for building JVM based applications for use in traditional as well as containerized environments.

The phrase “cloud native Java” gets thrown around a lot these days. Every one is excited about “cloud this” and “serverless that”. No one wants to be left behind in this brave new world. Many frameworks and architectures have stepped up to try to fill that gap for Java. At Red Hat, we’re building what we believe to be one of the most exciting and effective answers to the question of Java applications in a containerized world. Boasting a multiparadigm development model, this approach promises to truly, finally reach that promised land called “cloud native.”

In this talk, we’ll cover not only the technology we’re developing to achieve this but, of course, what it means for you as a developer and how you can make use of it all. We’ll open up the engine to see how the pieces fit together and then we’ll put it all together in one amazing demonstration.


Native Platforms are Dead. Welcome to the Web Platform.

David Wesst

Dev, Web

Welcome to the future.

As web standards continue improve to replace traditional programming models and and the Cloud provides a seemingly infinite amount of infrastructure; the web is no longer the future, but our new reality.

It is in this new reality where the web browser is king, and the OS is nothing more than thrown the king sits upon.

But all is not lost. Your existing development practice can live on in this new world, but only if you learn how to survive. In this session, let David be your guide to gaining taming the web for your enterprise and moving your classic development practice into this browser driven reality.


Operating a Cloud Service at Scale

Dylan Smith

Cloud, Azure

When we first launched Azure DevOps we had practically zero telemetry, and very little experience within our team of running a cloud service at scale. In the past 5 years we’ve not only gone from almost zero to ~8TB/day of telemetry, but we’ve developed the practices, processes, tools and most importantly culture needed to operate at scale. We’ve made some mistakes along the way and learned a lot of lessons. For example, collecting 8TB/day of telemetry may sound great, but trying to turn that overwhelming amount of data into actionable insights is a huge challenge.


OSS: Building with Microsoft

Sean Feldman

Dev, Azure, OSS

In this talk, I’ll cover how Azure Service Bus was open-sourced and how the community drove its .NET Standard implementation. How significant decisions took place, the trade-offs made, see code evolution over time. The story of a collaborator and customer, interwinding with Microsoft big wave of embracing open-source. Just like marriage, had its ups and downs.


Polyglot Programming - Staying Ahead of the Curve

Quinn Wilson

Dev Life

With the vibrancy and wealth of options in the tech world these days, can you be anything but a Full Stack developer? I’m a self professed Full Stack developer and the teams I have joined in the past few years have seen me becoming a Just In Time expert at multiple technologies. We are in the age of the polyglot developer but there are experts in established and legacy technologies that don’t seem to go out of demand.

In this talk I will compare and contrast my experiences on teams with experts and generalists, look at how to stay in demand, and explore ways to future-proof your career.


Real-time Mapping Applications with Angular 7, ArcGIS and Firebase

Adam Michaleski

Dev, Web, Angular, Google Cloud, GIS

With the software engineering industry being in the midst of the “Internet Of Things” age, mapping applications have become more and more important. Being able to easily visualize data on maps is useful, but the barrier to entry can often be tough to overcome. In this talk, we’ll walk through how simple it can actually be to create great looking mapping applications accessible on any browser. ArcGIS will provide is with a professional GIS mapping framework that is used heavily by GIS specialists across a wide variety of industries. ArcGIS will give us capabilities such as 3D terrain and models and a wide variety of data visualizations we can leverage out of the box. For the cherry on top, we will connect our application with Google Cloud’s Firebase to enable real-time updates via Firestore. Once the audience has heard this talk, I hope that it will get their gears turning on the possibilities of these technologies.


Redux: The MVC Framework for Data

Rob Richardson

Web, React

The MVC Pattern provides elegant abstractions for web requests. Redux provides similar patterns for data movement in React. Angular has RxJS and Vue has VueX with similar patterns. Let’s dig deep into the way data flows through the Redux, demo strategies to get started, and look at ways to debug and troubleshoot it when things go wrong. You’ll leave with a solid understanding of the Redux pattern and appropriate times to use it.


Responsible JavaScript

Jeremy Wagner

Dev, Web, Materials
Download Session Materials Here!

While the performance of JavaScript engines in browsers have seen continued improvement, the amount of JavaScript we serve increases unabated. We need to use JavaScript more responsibly, which means we must rely on native browser features where prudent, use HTML and CSS when appropriate, and know when too much JavaScript is just that: Too much.

In this talk, we'll explore what happens to performance and accessibility when devices are inundated with more JavaScript than they can handle. In this session, we'll cover some tips for tweaking your build pipeline to output smaller bundles, differential serving, as well as some novel techniques you can use to tailor delivery of scripts with respect to a person's device capabilities and network connection quality. When you walk out of this session, you'll be equipped with new knowledge to make your sites as fast as they are beautiful.


Securing Your Data within Microsoft's Power Platform

David Drever

Power Platform

Adoption of Microsoft’s Power Platform (PowerApps, Microsoft Flow and PowerBI) in the workplace has been great, but it is still tempered with some uncertainty. The uncertainty is seen a great deal in corporations that are just starting to deal with cloud technologies. Many enterprises are concerned that it is very easy to lose control of their data when utilizing tools they can’t totally control. In this session, we will discuss the different ways that O365 admins can secure their organization’s data while still gaining the benefits, flexibility, and robustness of the tools within Microsoft’s Power Platform.


So Your Boss Says You Need To Learn Data Science

Susan Ibach

Data Science/AI

Data Science is the new buzzword. But when does data become big data? When should I actually use Data Science at work? Do my current skills translate to data science? In this session we will demystify the world of data science so you can understand the process, the tools, and the lingo.

I find many developers are confused by data science. Sure there’s lots of free online resources to go learn, but where do you even begin? It’s hard to know where to start when you don’t know what you don’t know! If you start in the wrong place you end up looking at diagrams and formulas that leave you lost and confused. In this session we’ll break data science down into a language and process developers can understand. The process from problem definition to testing to releasing code into production. The tools and terms so you know where to start for the problems you are trying to solve in your office.


Starting Over

Jeff Strauss

Keynote

Adversity. A necessary component of life. Inevitably, we all reach professional and personal moments that require us to take a deep breath and a giant step back. Moving forward again often feels difficult, even impossible. We suffer, immobilized by fear.

But fear is more than some pesky roadblock. It is a rational response to adversity. Whether facing a major code refactoring, the changing technology landscape, a new role, or even a fresh career, we can learn to leverage fear and uncertainty to move beyond our hurdles and get the job done! Key life skills exist that can be developed to conquer adversity. Learn to assess risks, build relationships, and recognize opportunities for growth.

Starting over may seem insurmountable. Armed with the right skills, perspective, and a little patience, nothing truly is.


Terraforming your Azure DevOps Pipelines

Alice Gibbons

Cloud, Azure

Infrastructure as Code, Configuration as Code…Everything as Code! In this session I will go through an end-to-end devops pipeline that uses Azure Pipelines, Terraform and Ansible to deploy a microservices application.


The Easiest Framework You Ever Did Use - A Crash Course in Vue.js

James Chambers

Web, Vue

In this talk we’ll look at the use of Vue.js in existing applications as well as in new projects. We’ll look at the barriers you might face when considering front end frameworks, why you might choose Vue.js instead of other libraries and frameworks out there, and where it may not be right for your organization. We’ll spin up Vue.js in both brownfield and greenfield scenarios, and then dive into some production code used by a little bakeshop that allows customers to book birthday parties and create their own birthday invitations.


The Perils and Promise of Artificial Intelligence

Richard Campbell

Data Science/AI

Artificial Intelligence has been looming on the digital horizon for years, but recent rapid advancements have put AI in the world spotlight. What happens next? Richard Campbell discusses the history of AI and how it has evolved, as well as the opportunities and concerns that everyone should have as this technology enters our lives. The promise of artificial intelligence is a world that allows humankind to further tap their own potential with lives of greater convenience, safety and opportunity. But that same technology can be used to limit, obfuscate and control. How do we as a society manage this rapidly evolving power to make a better world?


The Power of SQL Server Stored Procedures

Rod Paddock

Data, Materials
Download Session Materials Here!

SQL Server stored procedures seem to have a bad reputation. This reputation is not deserved, and this session will demonstrate techniques for unleashing the real power of stored procedures. In this session you will learn the following techniques:

  • High Speed Data Loading
  • Adapting Stored Procedure calls to .NET objects
  • Building Complex Search Screens using Stored Procedures

By attending this session you will learn the true power of stored procedures.


Tokens and Applications and Security, Oh My!

Kim Noel

Dev, Web, Security

Between cookies, tokens, keeping users authenticated, and handling resource access, securing these apps can be tricky - you may even feel like you need a second page (gasp!) for your authentication setup! But we have the technology to create truly secure single-page applications. In this talk, we’ll walk through the process of securing a single-page application that will apply to nearly any SPA framework. Between Angular, React, & Vue it can be hard NOT to build SPAs these days. But having to deal with cookies, tokens, auth, & resource access - you may even feel like you need a second page (gasp!) for security. Fear not, for the technology to create truly secure SPAs is there and I’ll show you how.


Understanding the ASP.NET Core Landscape

David Paquette

.NET, ASP.NET, Web

ASP.NET Core is now a mature platform, offering developers with a sometimes overwhelming set of options to choose from: MVC vs Razor Pages, Razor Components/ Blazor, Razor Views vs client-side rendering, Windows vs. Linux, Kestrel vs in-process IIS vs nginx. In this session, we will get a high level overview of the ASP.NET Core landscape. We will start with a break down the different programming models provided by ASP.NET Core, along with some examples of when you might choose a particular programming model. We will also dive into the seemingly endless options for hosting an ASP.NET Core app.


What Is It? How to Analyze Images With Code

Susan Ibach

Data Science/AI, Materials
Download Session Materials Here!

AI & Machine learning are daunting topics. In this session we will focus specifically on image analysis. We will start by looking at Computer Vision API services. How to call them, what do they do well? When do they fall short of our needs. Then we will examine the Custom Vision Service, a user friendly tool that allows you train models to recognize domain specific images. You can build Hot Dog/No Hot Dog in under 5 minutes! Again we will examine when this is the right tool for the job. If neither of these meets your needs, we won’t teach you how to write your own neural network from scratch to analyze images (not going to happen in 60 minutes!) but we will share some good resources to help you get started. No session would be complete without a great takeaway.


What's New in .NET Core 3.0

Jason Bock

Dev, .NET

.NET Core is the runtime for writing modern applications. Its speed, efficiency, and cross-platform capabilities provide .NET developers with flexibility and power. In 2019, Microsoft released .NET Core 3.0, and in this session, we’ll cover what’s been added. We’ll review new features and APIs that you can use wherever .NET Core goes.


What's New in C#8

Jason Bock

Dev, .NET

C# is an open-source, mature object oriented language, used by millions of .NET developers, yet its evolution is still underway. In this session, we’ll cover the latest features that have been added to C#8 and how they work in detail so you’ll know when to use them effectively in your new .NET projects. You’ll also see the direction C# may be going with future versions of C#.


Why Go? A Retrospective on Using Go At An E-Commerce Company

Mark St. Godard

Dev, Go, Materials
Download Session Materials Here!

Go is becoming a popular language of choice for building apps and APIs. This talk will cover some of the top reasons why you might want consider Go:

  • Simplicity
  • Concurrency
  • Performance
  • The Go Toolchain

We will cover how Go differs from other languages and some of “the Go way” of doing things. Lastly we’ll discuss how we’ve used Go in production to build APIs in a micro service, gRPC world! Come check out how Go works and how it might be a fit for your next project!