Here you can learn more about the sessions and add them to your schedule using the mobile app!
Monitoring and Instrumentation Strategies Tips & Best Practices
by Jonah Kowall
Monitoring is complicated, and in most organizations consists of far too many tools owned by too many teams. Fixing monitoring issues requires people, process, and technology. Hear common issues seen in the real world including what should be monitored or collected from a technology and a business perspective.
Investigate what instrumentation is most scalable and effective across languages, commonly used APIs, and possibilities for capturing data from common languages like Java, .NET, and PHP. Cover browser and mobile instrumentation techniques. Get tips on which APIs to use, what open source tools and frameworks can be leveraged, and how to coordinate and communicate requirements across your organization.
- What is instrumentation, and what to instrument, collect, and store
- How this can be accomplished on common software stacks
- How to work with application owners to collect business data
- How correlation works in custom open source or packaged monitoring tools
One Data Pipeline to Rule Them All
There are a myriad of data storage systems available for every use case imaginable, but letting application teams choose storage engines independently can lead to duplicated efforts and reinventing the wheel. This talk will explore how to build a reusable data pipeline based on Kafka to support multiple applications, datasets, and use cases including archival, warehousing and analytics, stream and batch processing, and low-latency "hot" storage.
This talk is for application, infrastructure, or data developers and anyone interested in using event buses for data ingestion and processing/storage. A basic familiarity with different types of data storage systems and the concept of extracting data from one system and loading it into another (ETL) would help but is not required.
Attendees should expect to leave with a basic familiarity of the concepts of event sourcing, data buses, tiered storage, and be able to reason better about their data systems and how they're connected.
Fantastic Types and Where To Use Them
by Luke Westby
Building Stateful Microservices With Akka
It seems like all the dust about microservices has finally settled. We know how to design, develop and operate them. Although most of the microservices are stateless - they delegate things like persistence and consistency to a database or external storage. But sometimes you benefit when you keep the state inside the application.
In this presentation I’m going to talk about why you want to build stateful microservices and design choices you make. I’ll use Akka framework and explain tools like Akka Clustering and Akka Persistence in depth and show a few practical examples.
Node.js server side render in the Age of APIs
by Ruy Adorno
In this talk we'll see how leveraging APIs in both server and client side is giving birth to new libraries and frameworks and what is the role of a front end developer in this post-full stack world.
Designing Everyday Privacy and Security
Two factor shouldn't be just for security experts and encryption shouldn't be presented as defensive. I will look at security from the position of a utility for everyone. Framing it as friendly, important and placing importance on your personal data. Security and Privacy are complex ideas important to everyone. Learn how to lower the bar to entry using language, layout and levity.
Get your fancy pants on with Elixir
With Elixir you get all the power of Erlang and it’s hardened frameworks and libraries like OTP and cowboy with a Ruby-esque syntax. When WhatsApp was sold to Facebook, everyone was talking about Erlang. Everyone wanted to know how it was possible to build such a resilient and highly scalable system. With hot code swapping, the BEAM Machine allows zero downtime deployments and gives you highly available systems.
Organizing Applications In The React Ecosystem
by Alex Wilmer
Since the release and rise of React, client side architecture has become increasingly modular and there have been dozens of popular, but not necessarily compatible, strategies for organizing applications. There exists a plethora of boilerplates and articles on the subject and it's far too early declare a winner.
This talk will examine the top methodologies over the past two years and see how they have evolved. The examination will consist of applying these methods to minimum viable examples in a digestible form to illustrate and magnify the advantages and pitfalls at different levels of scale.
In the end we will look at how the Ontario Institute of Cancer Research is organizing several open source applications to benefit from all the lessons learned along the way.
Isomorphic React sans Node??
by Ben Ilegbodu
Health: The Most Important Dev Tool
Working in the tech industry often involves spending long hours sitting down, staring at a screen, consuming copious amounts of pizza and caffeine. The work is mentally demanding and can be stressful. In the rush to get everything done, it can be easy to neglect our health. But a healthy body and mind are necessary for effective performance. Based on HR training, research, and personal experience, this session provides realistic suggestions for managing your well-being at work. It covers the connection between physical and mental health, as well as how to discuss these topics with your employer. You’ll leave with a better idea of how to take care of yourself and be a happier, healthier, more productive person.
Remote working: Swings & Roundabouts
Remote teams, when built right, are a wonderful unicorn of trust, freedom, and creative productivity. However, in pursuing this unicorn, it’s difficult to remember that working remotely is incredibly difficult— professionally, psychologically, and personally. It affects everyone differently— developers, designers, managers, and everyone in between. In this talk we'll dispel some myths around remote teams and collaboration, torture the Sword of Damocles metaphor, and share some learnings around making those remote teams work, both professionally and interpersonally. Hopefully, we'll achieve vaunted unicorn status.
Jack of all trades, Development with Vuejs
Vuejs is considered component driven, extensible, approachable, and performant view library. Whether you’re a web dev without the frameworks or have been deep in development with Angular, Ember, or React, Vue has a something for you.
In this presentation, we will go over the Vue fundamentals, dive into state management, data fetching with Vue, and then wrap up with building your application for production. We will have a mix of defining what Vue is as well as an actual application demonstrating how the different pieces fit together in the real world. Vue has great documentation and the library is fast by default. The choices we have available to build user interfaces today are vast, exploration is time consuming, but I believe it’s worth the effort to get started building and delivering products using Vue.
Building a Better API with JSON:API
by Chris Guzman
Enough with the bike shedding conversations about your API’s structure. If you’ve implemented API endpoints or consumed APIs it may bug you that every API seems to be different. What if there was a universal standard that made sense?
Enter JSON:API, a standard for creating self explaining JSON APIs introduced by Yehuda Katz and Steve Klabnik that can increase productivity and take advantage of generalized tooling. Clients built around JSON:API can efficiently cache responses, sometimes eliminating network requests entirely.
What Rocky Horror taught me about Shadow DOM and CSS
When I was fifteen I put on an excessive amount of makeup, punk clothes, and bravado to lip sync a song about a sultry space alien intent on making the world fabulous. Then I took off the costume and resumed being a regular Star Wars and computer science nerd. Shadow DOM, too, is about setting up a façade to contain style and content that doesn’t leak out into the rest of the world.
My talk will show how you can use Shadow DOM today to turn hairy HTML and CSS into scoped pieces that can be styled and composed naturally. I’ll talk about best practices for styling and scoping individual components as well as theming with Shadow DOM. All this while talking about my connection to an irreverent B-movie.
Oh Behave!: Behavior-Driven Development with Cucumber
Cucumber is a powerful and versatile tool for collaboration and testing, but many developers don’t know how best to incorporate it into their workflows. In this talk, Dana Scheider of the Cucumber Core Team will show you how to supercharge your products and processes with Cucumber.
React Native Ra11y
The React Native platform has taken the world by storm. Big names like Uber, Instagram, Tesla and Facebook are leveraging the platform to accelerate their development process while maintaining high quality. There is generally a strong correlation between great quality apps and the level of accessibly features built in. We’ll go through the general methods of making your React Native apps accessible and explore some of the gotchas in this endeavour.
by Jana Beck
UX of Voice Interfaces
by Hira Javed
Tackling Technical Debt: Getting Started with Continuous Integration Testing
As developers, we understand the importance of writing scalable, quality code. Testing provides a safeguard against much of the technical debt we would otherwise accumulate with faulty logic and missed use cases. However, implementing tests also tends to be lower priority for many teams. It's important to recognize why technical debt can be so crippling to a team's productivity, and how continuous integration testing and code coverage applications can help the lifespan of a project _and_ the sanity of a team. We'll look at some hard data to back up this assertion and walk through a simple open source project integration with Codecov and Travis CI. Both are easily accessible, multi-language applications that offer teams continuous integration testing and status updates right in a Github repo.
Progressive Web Apps
What exactly are Progressive Web Apps and how can we build one? Can we improve apps built with React or any other library/framework without adding too much complexity? When was the last time you were about to install a mobile app but decided not to? Maybe you felt like you didn’t want to go through the hassle of installing it, or maybe you just didn’t want use to up any more memory. Whatever the reason, almost every single mobile user has experienced this at some point.
However, most people feel a lot less restricted to open up a browser and just type in to the address bar. The convenience, security and simplicity of just typing a URL into an address bar is a powerful advantage of the web, and Progressive Web Apps (PWA) combine this with the feel of native applications.
In short, PWAs are applications that use modern web capabilities to provide a user experience similar to that of mobile and native apps. This presentation will go over how you can add a number of progressive aspects to your application including faster load times, offline support and the ability to install to your mobile home screen.