Christian Gill

Installing Obsidian in Ubuntu

All the steps, yes even Profit!, are required to install from scratch. To do a manual update, when a new instal...

Muchachos, ahora nos volvimo' a enloquecer

Muchachos, ahora nos volvimo' a enloquecer En Argentina nací, tierra de Diego y Leonel De los pibes de Malvinas que jamás olvidaré Las final...

Recap of the state management history in React

DALL·E 3 prompt: Sharp digital depiction of React's state management journey. Starting from the l...

Generic discriminated union narrowing

DALL·E 3 prompt: Sharp digital drawing symbolizing the concept of '' ...

Stream, Season 2

phone with twitch app A few weeks ago I started to stream again after taking a break for a couple of months. I'm now on Season...

A day in the life of a software engineer

DALL·E 3 prompt: atercolor artwork of a software engineer relishing a work-from-home day. The scene spa...

Code Reviews Comments Convention

A convention to clarify the intention of a comment in a Pull Request (PR) review using prefixes. xkcd standars...

Composing predicates

A few days ago I was writing some validation functions that were basically a composition of several other predicates. Whic...

Crossposting to dev.to

Last week I migrated all my articles from dev.to. I wrote a Haskell script to do that (duh!) Although I'm posting in Col...

TypeScript Short links

typescript playground If you know or use TypeScript you ought to be familiar with its Playground. It is an awesome tool,...

ZuricHac 2020

alt Last weekend I participated in ZuricHac. It was an awesome event. Well organized 👏🙇 and full of interesting people! Zu...

From dev.to to Collected Notes

Collected Notes, so hot right now I have been publishing notes an articles on dev.to for around a year and a hal...

Apply me both lists

Originally posted on dev.to/gillchristian. As we saw in the previous one, Applicative allows to appl...

Why Applicative?

Originally posted on dev.to/gillchristian. When learning about the different type classes in Haskell the o...

Enough fp-ts to work with io-ts

Originally posted on dev.to/gillchristian. This is a small tutorial of what ...

Lifting const

Originally posted on dev.to/gillchristian. Yesterday I shared this gist: [twitter https://twitter.com/gillchr...

Encoding and decoding JSON with Aeson

Originally posted on dev.to/gillchristian. In the past days I've...

Lists

Originally posted on dev.to/gillchristian. The explicit teaching of thinking is no trivial task, but who said that the teachin...

More Functional Patterns and Recursion

Originally posted on dev.to/gillchristian. I would like to b...

Type classes

Originally posted on dev.to/gillchristian. Here we go with another chapter of the Haskell book from Delft Haskell ...

Types

Originally posted on dev.to/gillchristian. There are many ways of trying to understand programs. People often rely too much on...

Lambda calculus

Originally posted on dev.to/gillchristian. I figured for some of the days of #100DaysOfFP it makes more sens...

tsearch first public version

Originally posted on dev.to/gillchristian. Last week on the first entry of this de...

A crazy idea and a proof of concept

Originally posted on dev.to/gillchristian. In December last year I c...

Debugging Zsh init times

I recently moved from Ubuntu to MacOS and in the process I made several changes to my dotfiles to make them work. But I...

Control flow

From imperative to declarative. pipes Imperative based on statements (if, for, while). export const...