RSSAmplifier

Blog

Lucas DiCioccio's Blog

RSS feed ↗42 posts

Latest posts

My AI workflow with agents-exe

Reporting on my recently-upgraded AI-supported development workflow.

Running PostgREST in Google Cloud-Run

Running PostgREST over CloudRun: it works well and it's affordable.

On self-hosting

An article discussing the tradeoffs of self-hosting.

Introducing agents-exe

An introduction to agents-exe: A tool, library, and/or framework for running and researching AI-agents. "on peut prompter une fois mille personnes mais on ne peut pas prompter mille fois mille personnes"

Using PostgREST for development, troubleshooting, and data endpoint

PostgREST is a relatively widely adopted solution for exposing a PostgreSQL database via an HTTP interface. We'll explore the benefits of considering PostgREST for your development and production environments.

Marginal Tax Rate: an explainator

There is so much confusion in people's mind about tax brackets and marginal tax rates. In France, people confuse the marginal tax rate with the effective tax rates. We commonly see people who believe they will be have less money home if they change tax bracket. This _explainator_ helps pin what occurs at various tax brackets and income ranges.

Introducing Minitools

Just an announce about Minitools, a collection of PureScript/Halogen utilities to help making web-applications.

Minitools architecture demo: a TODO app

A TODO-application demonstrating my recent article series on PureScript/Halogen applications architecture.

They teach you SQL wrong!

This article is an inflammatory rant about the typical SQL explanation of what joins are in SQL. That said, I try to do a better explanation too, so it's not _just a rant_. Feel free to roast me.

How I write PureScript web-apps: Part-III

This article is the third part of a series about web-application patterns emerging from writing non-trivial web applications.

Mini-tips: using scripts (and LLMs) to help you directly in vim

Some tips about using scripts to help you blog, directly in vim.

How I write PureScript web-apps: Part-II

This article is the second part of a series about web-application patterns emerging from writing non-trivial web applications.

How I write PureScript web-apps

As a pastime project last year, I rewrote two non-trivial web applications in Halogen; some patterns eventually emerged. I believe these patterns haven't been documented thoroughly, particularly in the realm of pure-functional programming and web-application. I now architect my PureScript application in Halogen with a form of Entity-Component-System with one-main-handler loop. I organize page…

PostgREST Table: simplifying Postgres exploration

Postgrest-Table is a powerful, browser-based exploration and dashboard tool that simplifies data analysis and visualization. By eliminating server-side dependencies and minimizing setup requirements, it's ideal for development, troubleshooting, and creating custom dashboards. With its auto-refresh feature, AJAX capabilities, customizable knobs, and graphing capabilities, Postgrest-Table augments…

Photo Competitions from the inside

Recently I was co-organizing [Salon Daguerre](https://www.salondaguerre.paris/en/), an international photo competition, as a tech helper. In this article I give you a sneak peek of how the judgment works.

Daughter's words

A word game where you need to find what my daughter says. Each day a new word.

mid-year update

Happy summer! reflecting on my yearly goals.

Understanding decision under constraints with triangular decisions

Real-world decisions are tradeoffs under constraints. We like to simplify some tradeoffs with triangular decisions like "cheap, good, fast -- pick two". Let's see what we can learn from these triangles.

2023

Happy new year!

Decisions are not outcomes

Deciding is difficult, we always want to improve our decision making. What's more or at least as difficult? gauging whether a decision is good or not.

Halogen ECharts Simple

A demo of a [ECharts-for-Halogen](https://github.com/lucasdicioccio/purescript-halogen-echarts-simple) library.

Introducing Kitchen Sink

After having written a [number of articles](/topics/web.html) about my blog-engine. And motivated by curious people wanting to see how it's built, I've open-sourced my blog-engine and named it _Kitchen Sink_.

My devs are always refactoring! why? [part-2]

I have ran into a number of product-owner puzzled by how often #developers in their team express a need to "refactor". Cannot they do it once for the quarter? This prompted me to write some notes and eventually an article to demistify a bit the "always-refactoring team".

Prometheus Monitor

A live Prometheus-endpoints monitor visualizer. If you are a developer running software locally or if you are an SRE investigating production hiccups, you sometime want to look at how one metric evolves in a specific job.

Scope explorer

An application to illustrate how the changing scope of projects affects the delivery, coverage.

My devs are always refactoring! why? [part-1]

In past experiences I ran into a number of product-owner and staekholders puzzled by how often developers in their team express a need to "refactor". Cannot they do it once for the quarter? This prompted me to write some notes and eventually an article. This article will be followed by a second part focused on the topic of refactoring. However before jumping directly into hard topics, we must…

Scripting subsets of page contents in Dhall.

A demo of using Dhall as an intermediary step for my blog-engine sections.

Succeeding in tactical projects

Different projects require different organization structure. So-called tactical projects tend to fall on you rather than being planned upfront. My recipe to tackle them is a few communication tools and empowered individuals free to roam within constraints.

On Dualities

Duality is technical jargon for "complementary". Programmers often overlook the role dualities in programming and hence fail to recognize them, even if they are hiding in plain sight. In this article we focus on two important pairs of dual concepts: producers and consumers, sum types and product types. I also spend some time ranting about default values being as bad as null values.

Optimal Lab Samples Spreading

An illustration of how to model a constraint-problem to optimally distribute testing samples to laboratories.

The technology behind this blog

The overengineering behind this blog. Or is it not over-engineered?

Solving the Snake Cube puzzle

We solve a simple wooden puzzle with MiniZinc. The Snake-Cube puzzle is a good introductory problem and thus a number of formal modeling techniques are explained. We also touch advanced topic like symmetries and discuss a bit our modeling choices.

Advent of Haskell 2020: Santa Wrap

We help Santa Elves optimize cutting wrapping paper to accomodate various shapes. The difficult optimization requires a dedicated solver in MiniZinc. Haskell allows to integrate with MiniZinc, reads JSON and outputs a PNG image with the footprint of the positionned shapes to cut. This article shows that a one-day-of-work project can reach pretty far.

About me

I am Lucas DiCioccio, a scientist and engineer. I apply modern techniques to engineering and lead #teams to deliver successful results.

Cabourg August 2022

A photo gallery from a summer trip to Cabourg, France.

todo list

A personal public-achievements and todo list, for this blog or other things of life.

Reading List

A collection of links and readings.

Some notes

Notes that could become part of articles.

Talks and Docs

A list of slides (with recording links when available) for presentations I gave. Also some template documents for architecture/devops.

Rolling gallery

A rolling photo gallery with mostly portraits.

Alphabets

The NATO phonetic alphabet if it were written by...

Some tips

A collection of tips that also serves as a personal cheat-sheet.