Futurice Tech Weeklies
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

 
Building a stream library from scratch

Building a stream library from scratch

January 14, 2021

In our last episode we talked about using a stream library. You understand a concept better if you implement it yourself. So we will build our own small streaming library in this live coding session.

 

Presenter: Jan van Brügge

 

Watch Now:
Building a stream library from scratch (Audio Only)

Building a stream library from scratch (Audio Only)

January 14, 2021

In our last episode we talked about using a stream library.  You understand a concept better if you implement it yourself. So we will build our own small streaming library in this live coding session.

 

Watch the video.

 

Presenter: Jan van Brügge

What is an observable/stream? How do they work?

What is an observable/stream? How do they work?

January 7, 2021

Streams are a handy tool to structure your application with asynchronous execution in mind. The core idea is to model the dataflow as a stream where at runtime data can be emitted at any time.

In this talk we will first go over the basic usage of streams, then build our own small RxJS with that to see what the differences between hot and cold streams are.

 

Presenter: Jan van Brügge

 

Watch Now:
What is an observable/stream? How do they work? (Audio Only)

What is an observable/stream? How do they work? (Audio Only)

January 7, 2021

Streams are a handy tool to structure your application with asynchronous execution in mind. The core idea is to model the dataflow as a stream where at runtime data can be emitted at any time.

In this talk we will first go over the basic usage of streams, then build our own small RxJS with that to see what the differences between hot and cold streams are.

 

Presenter: Jan van Brügge

 

Hacktoberfest 2020

Hacktoberfest 2020

November 27, 2020

Hacktoberfest is a month-long celebration of Open Source. The idea behind it is simple - create a minimum of 4 pull requests to open source repositories that are participating in the event. If you accomplish that goal, you get to choose a tee or plant trees.

This year was my second time participating, and I ended up being an (accidental) maintainer of an open-source repository. In this talk, I will introduce you to Hacktoberfest, and tell the story of Hacktoberfest 2020 from my perspective and share some learnings from this experience.

 

Presenter: Eeva-Jonna Panula, Developer

 

Watch Now:
Hacktoberfest 2020 (Audio Only)

Hacktoberfest 2020 (Audio Only)

November 27, 2020

Hacktoberfest is a month-long celebration of Open Source. The idea behind it is simple - create a minimum of 4 pull requests to open source repositories that are participating in the event. If you accomplish that goal, you get to choose a tee or plant trees.

This year was my second time participating, and I ended up being an (accidental) maintainer of an open-source repository. In this talk, I will introduce you to Hacktoberfest, and tell the story of Hacktoberfest 2020 from my perspective and share some learnings from this experience.

 

Presenter: Eeva-Jonna Panula, Developer

Shame and blame in development - Getting rid of toxic team and individual shaming habits

Shame and blame in development - Getting rid of toxic team and individual shaming habits

November 6, 2020
Test with these simple unit tests, if you are feeling shame on a personal level or as a team member:
As a developer, I’m not ________ enough.
As a team member, I’m not _______ enough.
If your mind auto-filled these for you with one or more words, this presentation is for you.
 
In this talk, we’ll be looking at non-technical terms like shame, guilt and scarcity and see how they might be manifesting in our own thoughts, habits and maybe even team practices. We’ll also be discussing how to live with thoughts and change our habits and team practices.
 
Presenter: Senja Jarva, Front-end Developer
 
Watch Now:
Shame and blame in development - Getting rid of toxic team and individual shaming habits (Audio Only)

Shame and blame in development - Getting rid of toxic team and individual shaming habits (Audio Only)

November 6, 2020
Test with these simple unit tests, if you are feeling shame on a personal level or as a team member:
As a developer, I’m not ________ enough.
As a team member, I’m not _______ enough.
If your mind auto-filled these for you with one or more words, this presentation is for you.
 
In this talk, we’ll be looking at non-technical terms like shame, guilt and scarcity and see how they might be manifesting in our own thoughts, habits and maybe even team practices. We’ll also be discussing how to live with thoughts and change our habits and team practices.
 
Presenter: Senja Jarva, Front-end Developer
 
Property based testing by (one rather complex) example

Property based testing by (one rather complex) example

October 30, 2020

Testing is hard. Testing asynchronous code is even harder. In this session, I will walk you through a few techniques on how to test (possibly async) code with random input data and which strategies you can use in your test suite to increase coverage, find more bugs while writing fewer tests.

 

Presenter: Jan van Brügge

Watch Now:
Property based testing by (one rather complex) example (Audio Only)

Property based testing by (one rather complex) example (Audio Only)

October 30, 2020

Testing is hard. Testing asynchronous code is even harder. In this session, I will walk you through a few techniques on how to test (possibly async) code with random input data and which strategies you can use in your test suite to increase coverage, find more bugs while writing fewer tests.

 

Presenter: Jan van Brügge

Play this podcast on Podbean App