Daniel Moreno's profile

This is the Procedure - Book

This is the Procedure
a celebration of the algorithms that define my life

I exist in a world of algorithms. An algorithm is any well-defined procedure that takes values as inputs and produces an output through a transformation. While this definition is broad, I want to focus on the algorithms embedded in the technology that I interact with on a daily basis. Their invisibility makes them easy to ignore, so I want to find a way to explore them and make them more tangible. I’ve compiled a book of 10 algorithms that are presented in code. Each algorithm has a short description in my own words and some visualization of the input it can take and the output that it generates.
In its purest form, an algorithm is simply the process of transforming a given input into an output that conforms to a certain structure. While the word algorithm evokes the image of a gargantuan computer in a dark room crunching a million numbers and pumping out pages full of gibberish symbols, the idea of formalizing sets of instructions in a step-by-step format has been around since around 1,800 BCE. It was then that the Babylonians started impressing their farming routines on clay tablets that could be shared with neighbors, friends, and family. At the top of each clay tablet, they would always inscribe the same words to begin their algorithms: “This is the procedure”.

This book is a brief exploration of the algorithms that I interact with on a daily basis. As an engineer and designer, I strive to find function and beauty in all the systems that surround me. The goal of this exploration is not to glorify or romanticize these algorithms, but instead to expose some of the magic that is hidden behind computer code. The algorithms in this book usually work invisibly in the background of my life and I rarely contemplate them head-on. I see these algorithms as living, breathing beasts with far more influence on me than I’d like to admit.

I have decided to include the ten algorithms that I find most important. They are presented in no particular order and written in a variety of programming languages, including pseudocode (which is not a formal language but an abstract way of representing algorithms). Deciding which algorithms to include, how to organize them on these pages and how to design this book have all been algorithms in their own right, which has been a very introspective experience. The final product is only a reflection of my current opinions towards these algorithms and is bound to change with the ebb and flow of technology.
This is the Procedure - Book
Published:

This is the Procedure - Book

Published: