Futurice Tech Weeklies
You Make My Head Spin: Reducing Motion on the Web

You Make My Head Spin: Reducing Motion on the Web

April 16, 2021
Some people suffer physically when they encounter something like parallax scrolling or horizontally scrolling text. It can cause them nausea, dizziness, or other symptoms that can last for hours. These people can turn the "reduce motion" settings ON from the system level. As a developer, you have tools to respect that setting.

In this talk, Eevis discusses why motion can trigger the symptoms mentioned above and what kind of animations can be problematic (this can be surprising for some!). She also shows you how to respect the user’s settings with the prefers-reduced-motion media feature.
 
Presenter: Eeva-Jonna Panula
 
Watch Now:
You Make My Head Spin: Reducing Motion on the Web (Audio Only)

You Make My Head Spin: Reducing Motion on the Web (Audio Only)

April 16, 2021
Some people suffer physically when they encounter something like parallax scrolling or horizontally scrolling text. It can cause them nausea, dizziness, or other symptoms that can last for hours. These people can turn the "reduce motion" settings ON from the system level. As a developer, you have tools to respect that setting.

In this talk, Eevis discusses why motion can trigger the symptoms mentioned above and what kind of animations can be problematic (this can be surprising for some!). She also shows you how to respect the user’s settings with the prefers-reduced-motion media feature.
 
Presenter: Eeva-Jonna Panula
 
 
React Error Boundary ft. TDD with Testing Library

React Error Boundary ft. TDD with Testing Library

April 9, 2021

Error Boundary is a React component that catches JavaScript errors anywhere in their child component tree, which enables graceful handling of runtime errors and offers a way to recover from them. The way it is used makes it important to have it well-tested.

In this talk, Layla talks about what error boundaries are and why they are a valuable tool in your React toolbox. She also builds you an example of how to test those error boundaries with React Testing Library using Test-Driven Development.

 

Presenter: Layla Ouyang

 
Watch Now:
React Error Boundary ft. TDD with Testing Library (Audio Only)

React Error Boundary ft. TDD with Testing Library (Audio Only)

April 9, 2021

Error Boundary is a React component that catches JavaScript errors anywhere in their child component tree, which enables graceful handling of runtime errors and offers a way to recover from them. The way it is used makes it important to have it well-tested.

In this talk, Layla talks about what error boundaries are and why they are a valuable tool in your React toolbox. She also builds you an example of how to test those error boundaries with React Testing Library using Test-Driven Development.

 

Presenter: Layla Ouyang

 
Adversarial Stylesheets: User-styles for better Accessibility

Adversarial Stylesheets: User-styles for better Accessibility

April 1, 2021

User-defined stylesheets allow users to make customizations to websites with CSS to better accommodate their needs and preferences. For example, users can add back removed focus styles or redefine how sticky elements behave on different zoom levels to help make sites more accessible, when they are otherwise less so.

In this talk, Fotis walks you through how to create and use user-styles and showcases an example of his own user-styles written for Duolingo's website.

Presenter: Fotis Papadogeorgopoulos

 

Watch Now:
Adversarial Stylesheets: User-styles for better Accessibility (Audio Only)

Adversarial Stylesheets: User-styles for better Accessibility (Audio Only)

April 1, 2021

User-defined stylesheets allow users to make customizations to websites with CSS to better accommodate their needs and preferences. For example, users can add back removed focus styles or redefine how sticky elements behave on different zoom levels to help make sites more accessible, when they are otherwise less so.

In this talk, Fotis walks you through how to create and use user-styles and showcases an example of his own user-styles written for Duolingo's website.

Presenter: Fotis Papadogeorgopoulos

 

Observable Notebooks - Rapid Development and Dissemination

Observable Notebooks - Rapid Development and Dissemination

March 26, 2021
Observablehq.com is where you can create, collaborate, and learn with data — all in the browser. Observable increases data exploration and visualization by opening up the toolset, the skills, and the access to empower a diverse user community.
Tom is an Observable Ambassador and will give a whirlwind tour of the platform, including what features are useful for non-dataviz applications. Observablehq is built from the ground up around reactivity and thus offers the tightest development loop in the business. Furthermore, it pushes literate programming to the next level with the addition of interactivity. All-in-all, it's a new development paradigm with potential for significant productivity boosts.
 
Presenter: Tom Larkworthy
 
Watch Now:
Observable Notebooks - Rapid Development and Dissemination (Audio Only)

Observable Notebooks - Rapid Development and Dissemination (Audio Only)

March 26, 2021
Observablehq.com is where you can create, collaborate, and learn with data — all in the browser. Observable increases data exploration and visualization by opening up the toolset, the skills, and the access to empower a diverse user community.
Tom is an Observable Ambassador and will give a whirlwind tour of the platform, including what features are useful for non-dataviz applications. Observablehq is built from the ground up around reactivity and thus offers the tightest development loop in the business. Furthermore, it pushes literate programming to the next level with the addition of interactivity. All-in-all, it's a new development paradigm with potential for significant productivity boosts.
 
Presenter: Tom Larkworthy
 
A foray into the world of Progressive Web Apps

A foray into the world of Progressive Web Apps

March 19, 2021
Progressive Web Apps or PWAs are web applications that offer native-like functionality for mobile devices. Coined in 2015, PWAs share a few traits with modern web development like responsiveness, linkable and safe but add their own unique aspects with connectivity independence and re-engageability.
 
In this talk, Graham walks you through what PWAs are and how they are made. He also talks about the pros and cons you can weigh when you're making a decision between a native app and a PWA.
 
Presenter: Graham Daw
 
Watch Now:
A foray into the world of Progressive Web Apps (Audio Only)

A foray into the world of Progressive Web Apps (Audio Only)

March 19, 2021
Progressive Web Apps or PWAs are web applications that offer native-like functionality for mobile devices. Coined in 2015, PWAs share a few traits with modern web development like responsiveness, linkable and safe but add their own unique aspects with connectivity independence and re-engageability.
 
In this talk, Graham walks you through what PWAs are and how they are made. He also talks about the pros and cons you can weigh when you're making a decision between a native app and a PWA.
 
Presenter: Graham Daw
 
Learning in public

Learning in public

February 19, 2021
When Juhis started blogging in 2013, he used to look up to other bloggers as authorities and definite experts on their fields. This led to a lot of "I don't know enough to write about this", "Someone has written this better already" and "I don't have anything to say" thoughts that self-censored a lot of his potential blog posts.
 
More recently, he's taken a different approach with blogs and talks: learning in public. By documenting his own learning journey and experimentations and sharing what he has learned about software development, he has ended up in a lot of great discussions with fellow developers. These discussions have further helped him become better at writing software.
 
In this talk, Juhis highlights how he approaches learning in public, shares inspirational moments of improvement with community and hopes to inspire you to start learning in public.
 
Presenter: Juha-Matti Santala (Juhis)
 
Watch Now:
Learning in public (Audio Only)

Learning in public (Audio Only)

February 19, 2021
When Juhis started blogging in 2013, he used to look up to other bloggers as authorities and definite experts on their fields. This led to a lot of "I don't know enough to write about this", "Someone has written this better already" and "I don't have anything to say" thoughts that self-censored a lot of his potential blog posts.
 
More recently, he's taken a different approach with blogs and talks: learning in public. By documenting his own learning journey and experimentations and sharing what he has learned about software development, he has ended up in a lot of great discussions with fellow developers. These discussions have further helped him become better at writing software.
 
In this talk, Juhis highlights how he approaches learning in public, shares inspirational moments of improvement with community and hopes to inspire you to start learning in public.
 
Presenter: Juha-Matti Santala (Juhis)
 
PL Theory 1: How to categorize programming languages along multiple axes

PL Theory 1: How to categorize programming languages along multiple axes

February 12, 2021
In programming, everything is a trade-off. This first session of our Programming Language Theory series highlights how various languages differ from each other on multiple axes like programming paradigms, memory management etc. — and what kind of tradeoffs are made while designing programming languages.
 
Presenter: Jan van Brügge
 
Watch Now:
PL Theory 1: How to categorize programming languages along multiple axes (Audio Only)

PL Theory 1: How to categorize programming languages along multiple axes (Audio Only)

February 12, 2021
In programming, everything is a trade-off. This first session of our Programming Language Theory series highlights how various languages differ from each other on multiple axes like programming paradigms, memory management etc. — and what kind of tradeoffs are made while designing programming languages.
 
Presenter: Jan van Brügge
 
HSL schedule on Amazon Alexa

HSL schedule on Amazon Alexa

February 5, 2021

"Hey Alexa, when does the tram 3 to Meilahti leave?"

Kha Nguyen built an application combining Amazon Alexa's voice assistant with Helsinki Regional Transport Authority's (HSL) data API to build functionality to know when specific buses and trams leave from near his home.

As you know, Amazon Alexa is a virtual assistant that can be programmed to make your life easier. Kha explains how Alexa works behind the scenes and how to use its interfaces to run custom Javascript code based on different voice commands and intents.

After this talk, you'll know the basics of building custom Alexa commands.

 

Watch Now:
HSL schedule on Amazon Alexa (Audio Only)

HSL schedule on Amazon Alexa (Audio Only)

February 5, 2021

"Hey Alexa, when does the tram 3 to Meilahti leave?"

Kha Nguyen built an application combining Amazon Alexa's voice assistant with Helsinki Regional Transport Authority's (HSL) data API to build functionality to know when specific buses and trams leave from near his home.

As you know, Amazon Alexa is a virtual assistant that can be programmed to make your life easier. Kha explains how Alexa works behind the scenes and how to use its interfaces to run custom Javascript code based on different voice commands and intents.

After this talk, you'll know the basics of building custom Alexa commands.

 

Writing a telegram bot on AWS Lambda in Haskell

Writing a telegram bot on AWS Lambda in Haskell

January 29, 2021

Many projects these days do not use a traditional backend any more, but have moved their logic to FaaS (Function as a Service) like AWS Lambda.

The core idea is that you don’t have to manage a server, and instead you just upload code and it will be executed on some event. Normally AWS only supports Nodejs, Python and a few more languages for this service. But with custom runtimes, we can deploy any language!

This Tech Weeklies episode shows you how to write a stateless service (in our case a telegram bot) in Haskell and deploy it to AWS Lambda with Terraform.

 

Presenter: Jan van Brügge

 

Watch Now:
Writing a telegram bot on AWS Lambda in Haskell (Audio Only)

Writing a telegram bot on AWS Lambda in Haskell (Audio Only)

January 29, 2021

Many projects these days do not use a traditional backend any more, but have moved their logic to FaaS (Function as a Service) like AWS Lambda.

The core idea is that you don’t have to manage a server, and instead you just upload code and it will be executed on some event. Normally AWS only supports Nodejs, Python and a few more languages for this service. But with custom runtimes, we can deploy any language!

This Tech Weeklies episode shows you how to write a stateless service (in our case a telegram bot) in Haskell and deploy it to AWS Lambda with Terraform.

 

Presenter: Jan van Brügge

 

Cool new things in Apollo Client 3.0

Cool new things in Apollo Client 3.0

January 22, 2021

If you have worked with GraphQL and React, you’ve probably used Apollo Client as the GraphQL client library. For those who aren't familiar with it, Apollo Client is a comprehensive GraphQL client library providing features for state management, caching, and data management in the frontend.

In July 2020, version 3.0 was released, and it brought some new features, especially to state management. This talk introduces some of these features.

 

Presenter: Eeva-Jonna Panula

 
Watch Now:
Cool new things in Apollo Client 3.0 (Audio Only)

Cool new things in Apollo Client 3.0 (Audio Only)

January 22, 2021

If you have worked with GraphQL and React, you’ve probably used Apollo Client as the GraphQL client library. For those who aren't familiar with it, Apollo Client is a comprehensive GraphQL client library providing features for state management, caching, and data management in the frontend.

In July 2020, version 3.0 was released, and it brought some new features, especially to state management. This talk introduces some of these features.

 

Presenter: Eeva-Jonna Panula

 
Podbean App

Play this podcast on Podbean App