Matteo Di Pirro I am an enthusiastic young software engineer who specialized in the theory of programming languages and type safety. I enjoy learning and experimenting with new technologies and languages, looking for effective ways to employ them.

Stories by Matteo Di Pirro

Leveraging TypeScript Domain-Driven Design

Leveraging TypeScript for domain-driven design

Dev

We explore the main principles and guidelines of domain-driven design and see how TypeScript can assist with DDD.

Matteo Di Pirro
Jan 4, 2024 ⋅ 5 min read
Iterate Over Enums TypeScript

How to iterate over enums in TypeScript

Dev

We explore different approaches for iterating over enums in TypeScript, such as inbuilt object methods, for loops, and the Lodash library.

Matteo Di Pirro
Jul 26, 2023 ⋅ 5 min read
Level Up TypeScript Record Types

Level up your TypeScript with Record types

Dev

We explore the basic usage of the TypeScript Record type alongside two use cases, including how to use it with generics.

Matteo Di Pirro
Jun 19, 2023 ⋅ 5 min read
Kotlin Intarray Kotlin IntArray Array emptyList()

Kotlin IntArray, Array, and emptyList()

Dev

Learn the difference between IntArray and Array in Kotlin, explore use cases, create instances of each array, and compare them to lists.

Matteo Di Pirro
Feb 28, 2023 ⋅ 5 min read
Define Higher-Order Functions Rust

How to define higher-order functions in Rust

Dev

We demonstrate how to use higher-order functions to write Rust code that is more concise and easier to maintain in the long run.

Matteo Di Pirro
Feb 14, 2023 ⋅ 3 min read
Using Pulumi TypeScript

Using Pulumi with TypeScript

Dev

We discuss the pros and cons of IaaS- and IaC-based solutions and leverage Pulumi to create a simple S3 bucket in AWS using TypeScript.

Matteo Di Pirro
Jan 27, 2023 ⋅ 10 min read
Practical use cases for Rust tuples

Practical use cases for Rust tuples

Dev

Learn how and when to use tuples, structs, and tuple structs in Rust to return multiple results from your functions.

Matteo Di Pirro
Dec 26, 2022 ⋅ 5 min read
Conditional types TypeScript

The guide to conditional types in TypeScript

Dev

TypeScript has support for conditional types, which might seem like a niche feature, but they’re a useful addition for writing reusable code.

Matteo Di Pirro
Nov 29, 2022 ⋅ 6 min read
TypeScript Logo Purple Blue Background

Assertion functions in TypeScript

Dev

Let’s explore assertion functions in TypeScript and see how they can be used to express invariants on our variables.

Matteo Di Pirro
Oct 3, 2022 ⋅ 5 min read
Kotlin Logo Over Colorful Swirl

How to create static methods and classes in Kotlin

Dev

Here’s a look at how declaring static classes can be achieved in Kotlin and the benefits of it with respect to code reusability.

Matteo Di Pirro
Jul 15, 2022 ⋅ 7 min read
Manjaro vs. Arch: Choosing your post-Ubuntu OS

Manjaro vs. Arch: Choosing your post-Ubuntu OS

Dev

Arch and Manjaro can provide more flexibility and power compared to Ubuntu. But which should you choose? Let’s compare the two to find out.

Matteo Di Pirro
Jun 13, 2022 ⋅ 5 min read
Optional chaining and nullish coalescing in TypeScript

Optional chaining and nullish coalescing in TypeScript

Dev

Use two features of TypeScript 3.7: optional chaining and nullish coalescing, to write simple code without never-ending conditionals.

Matteo Di Pirro
Apr 27, 2022 ⋅ 4 min read