impure-logo
impure pics
10 Reasons to use Haskell by Serokell

10 Reasons to use Haskell by Serokell

January 30, 2021
Cats Effect error-handling decision tree

Cats Effect error-handling decision tree

January 15, 2021
Do Notation

Do Notation

January 4, 2021
A Simple Drinking Game

A Simple Drinking Game

January 4, 2021
GADTs

GADTs

December 27, 2020
Applicative palindrome checker

Applicative palindrome checker

December 9, 2020
Thank you to all the people improving tools

Thank you to all the people improving tools

December 6, 2020
Kinds

Kinds

December 1, 2020
Here's a little secret

Here's a little secret

November 14, 2020
No rush

No rush

October 23, 2020
Eithenberg

Eithenberg

October 10, 2020
The answer is always traverse

The answer is always traverse

October 3, 2020
Paper. What we talk about when we talk about monads

Paper. What we talk about when we talk about monads

September 13, 2020
Mini-patterns by Kowainik

Mini-patterns by Kowainik

August 29, 2020
Hie files

Hie files

August 16, 2020
Who would you like to be?

Who would you like to be?

August 8, 2020
What's your salary...

What's your salary...

July 26, 2020
Typed Holes

Typed Holes

July 2, 2020
Haskell vs Mainstream tooling

Haskell vs Mainstream tooling

June 27, 2020
WOW

WOW

June 21, 2020
fs2. Stream and Pull, two sides of the same coin?

fs2. Stream and Pull, two sides of the same coin?

June 13, 2020
fs2. Stream and Pull, two sides of the same coin

fs2. Stream and Pull, two sides of the same coin

June 6, 2020
Am I using lenses correctly?

Am I using lenses correctly?

May 31, 2020
How does an fp dev change the lightbulb?

How does an fp dev change the lightbulb?

May 28, 2020
My Haskell codebase

My Haskell codebase

May 2, 2020
Choose wisely

Choose wisely

April 24, 2020
Optics 101

Optics 101

March 22, 2020
Monad transformers be like

Monad transformers be like

March 6, 2020
Haikus

Haikus

March 1, 2020
Edward Kmett vs. The World

Edward Kmett vs. The World

February 15, 2020
Very Rare

Very Rare

February 1, 2020
Imports Basics

Imports Basics

January 25, 2020
I & FP

I & FP

January 18, 2020
When I've finally figured out recursion schemes

When I've finally figured out recursion schemes

January 12, 2020
Heyting Algebra

Heyting Algebra

January 10, 2020
Functional Programming

Functional Programming

January 5, 2020
Laws, laws, laws

Laws, laws, laws

December 29, 2019
The list of reasons not to use haskell in production

The list of reasons not to use haskell in production

December 15, 2019
How to remove a field from a record in purescript

How to remove a field from a record in purescript

December 15, 2019
The greatest surprise

The greatest surprise

November 30, 2019
Functions

Functions

October 31, 2019
Semigroups and Laws

Semigroups and Laws

October 27, 2019
Haskell Extensions Game

Haskell Extensions Game

October 20, 2019
Dynamite Effects

Dynamite Effects

October 11, 2019
Advanced Haskell Interview

Advanced Haskell Interview

August 31, 2019
Haskell Extensions

Haskell Extensions

August 1, 2019
Simple json transformation with purescript

Simple json transformation with purescript

July 21, 2019
How I imagine 47deg office

How I imagine 47deg office

July 2, 2019
Official internal guidelines for picking a language

Official internal guidelines for picking a language

June 22, 2019
Me gently persuading my colleagues into pure fp

Me gently persuading my colleagues into pure fp

June 2, 2019
Picking proper tools

Picking proper tools

May 18, 2019
Oh, what a day, what a lovely day

Oh, what a day, what a lovely day

May 3, 2019
Frameworks, languages and other tools

Frameworks, languages and other tools

April 27, 2019
How to come up with lib names

How to come up with lib names

April 20, 2019
Monad is not a box

Monad is not a box

April 12, 2019
How many levels of lenses are you on?

How many levels of lenses are you on?

April 6, 2019
Choose your own adventure

Choose your own adventure

March 24, 2019
Parallel typeclass

Parallel typeclass

March 18, 2019
Monad-Applicative consistency law

Monad-Applicative consistency law

March 18, 2019
Tagless Final Club

Tagless Final Club

March 9, 2019
How to introduce fp

How to introduce fp

February 21, 2019
Operator Wars

Operator Wars

February 9, 2019
Operator Wars Reality

Operator Wars Reality

February 9, 2019
Sweet Haskell song

Sweet Haskell song

February 2, 2019
Motivational poster

Motivational poster

January 20, 2019
Metals logo ideas

Metals logo ideas

January 15, 2019
And how am I supposed to?

And how am I supposed to?

January 13, 2019
Byzantine Generals Blockchain Origins

Byzantine Generals Blockchain Origins

January 5, 2019
Droste logo ideas

Droste logo ideas

December 28, 2018
Cats Effect ContextShift cheat sheet

Cats Effect ContextShift cheat sheet

December 22, 2018
The bright future

The bright future

December 14, 2018
scala-steward logo ideas

scala-steward logo ideas

December 8, 2018
Another Cats Effect cheat sheet

Another Cats Effect cheat sheet

December 2, 2018
The birth of FP in scala

The birth of FP in scala

November 24, 2018
fs2 logo ideas

fs2 logo ideas

November 21, 2018
Cats Effect Typeclasses cheat sheet

Cats Effect Typeclasses cheat sheet

November 17, 2018
Deploy to sonatype

Deploy to sonatype

November 10, 2018
Haskell dilemma

Haskell dilemma

November 4, 2018
OK Hoogle, how do I get out of IO?

OK Hoogle, how do I get out of IO?

October 28, 2018
Conference dilemma

Conference dilemma

October 23, 2018
Gitter game

Gitter game

October 20, 2018
Me doing Scala

Me doing Scala

October 15, 2018
Who is Tambara? And why it needs to be freed?

Who is Tambara? And why it needs to be freed?

October 11, 2018
Wonderful dream

Wonderful dream

October 7, 2018
fs2 Concurrency

fs2 Concurrency

September 30, 2018
Paper. Theorems for free!

Paper. Theorems for free!

September 26, 2018
When Fabio explains smth on Gitter

When Fabio explains smth on Gitter

September 26, 2018
Before and after FP

Before and after FP

September 19, 2018
Impure logo ideas

Impure logo ideas

September 15, 2018
Concurrency vs Parallelism

Concurrency vs Parallelism

September 12, 2018
If you were also wondering

If you were also wondering

September 8, 2018
Check out testz/testz

Check out testz/testz

September 8, 2018
Concurrency Primitives in cats-effect

Concurrency Primitives in cats-effect

September 2, 2018
Literally me

Literally me

August 30, 2018
Naming my future son Oleg

Naming my future son Oleg

August 23, 2018
Melon Mask

Melon Mask

August 22, 2018
Where to? To the stars!

Where to? To the stars!

August 17, 2018
When your cats or intellij are misbehaving

When your cats or intellij are misbehaving

August 9, 2018
Scalawags reboot from Desney

Scalawags reboot from Desney

August 2, 2018
Names don't matter

Names don't matter

July 29, 2018
When life gives you tuple of lemons

When life gives you tuple of lemons

July 28, 2018
Me and Java

Me and Java

July 28, 2018
Why should you care about RT

Why should you care about RT

July 13, 2018
Cats import game

Cats import game

July 7, 2018
Why do people keep comparing cats and scalaz?

Why do people keep comparing cats and scalaz?

June 29, 2018
Rare pic of working in Haskell

Rare pic of working in Haskell

June 19, 2018
Typeclasses in scala

Typeclasses in scala

June 17, 2018
Shared state in fp

Shared state in fp

June 10, 2018
Mentorship program

Mentorship program

June 9, 2018
Why fp?

Why fp?

June 2, 2018
When life gives you a tuple of options

When life gives you a tuple of options

June 2, 2018
Motivational way

Motivational way

May 27, 2018
Backpressure origins

Backpressure origins

May 26, 2018
Cancelable IO

Cancelable IO

May 15, 2018
Who would win in a fight?

Who would win in a fight?

May 10, 2018
Motivational

Motivational

May 1, 2018
Saddest tip

Saddest tip

April 28, 2018
How to write monad tutorial

How to write monad tutorial

April 28, 2018
Variance science

Variance science

April 26, 2018
Who is pure boi?

Who is pure boi?

April 21, 2018
Thread Pools Basics

Thread Pools Basics

April 21, 2018
Never go back to the future

Never go back to the future

April 14, 2018
Path to Tagless Final

Path to Tagless Final

April 9, 2018
Important checklist

Important checklist

April 8, 2018
How to post code snippets on Gitter

How to post code snippets on Gitter

April 8, 2018
fp for mortals

fp for mortals

April 7, 2018
double-cross

double-cross

April 7, 2018
Did somebody say tf?

Did somebody say tf?

April 7, 2018
Compiler probz

Compiler probz

April 7, 2018
Effects vs Side-effects

Effects vs Side-effects

April 2, 2018
Cats imports

Cats imports

April 2, 2018
What is referential transparency

What is referential transparency

April 1, 2018
Try not to bookmark anything. I have no idea what I'm doing.