Camille Hodoul

I'm a JavaScript and PHP developer living in Marseille, France.
Twitter, Github, Flickr, resume

Tactical PHP : Collecting Parameter

July 05, 2020

Avoid using a property as a temporary variable

Tactical PHP : Pluggable Behavior

June 01, 2020

Variable behavior without inheritance

Tactical PHP : Execute around method

May 24, 2020

Ensure actions are performed together

Tactical PHP

May 24, 2020

Bits of old-school Object-Oriented Programming, applied to PHP

Reading "Data & Reality" by William Kent

April 19, 2020

Notes and highlights

Regular Expressions - Theory and Tools

April 18, 2020

A practical introduction, some advice, ressources and tools, and a bit of history for the curious.

Ship modern JavaScript with Rollup

April 07, 2020

preset-modules, module/nomodule pattern and other techniques to ship modern syntax to evergreen browsers while supporting IE11 with a legacy build.

Learning Resources

March 09, 2020

Curated list of multimedia resources on Computer Science and tech in general

Flow types for Immutable.js Records

March 08, 2020

Type safety for Immutable.js data structures

Symfony Maintenance Mode

January 03, 2020

Safely toggle maintenance mode independently from dependency injection or autoload

Using PHP arrow functions

December 07, 2019

PHP 7.4 was released with support for arrow functions, as defined in this RFC. To paraphrase it, the goal is to provide a concise syntax for…

Compose Elastica queries in PHP

December 07, 2019

Embrace the multi-paradigm

Inline svg to prevent reflow when lazy-loading images

August 09, 2019

Prevent unwanted reflows when lazy-loading images by inlining svgs of the same ratio.

Bitbucket pipeline for PHP, MySQL & Elasticsearch

July 21, 2019

Use docker-compose in Bitbucket Pipelines for a PHP + Elasticsearch + MySQL project

UTF-8 csv fix for Excel

July 16, 2019

Using utf-8 for your CSV files sounds obvious and works well in most software processing them. Most software except Micrososft’s Excel…


June 14, 2019

Tool for batch editing xml-ead files in browser.

Initiative Rocks!

April 30, 2019

Combat tracker for D&D. Also "front-end kata".

Rollup-based development environment

March 22, 2019

How to setup Rollup, code-splitting, dynamic imports, and Service Workers.

Using ES modules w/ dynamic imports, with a fallback

July 19, 2018

Dynamically import ES modules where possible, use SystemJS elsewhere.

Convert KML Placemarks to SVG Polygons

April 11, 2017

Being easily confused by basic geometry, I tend to stick to 2D whevener possible. Unfortunately, (in France at least) publicly available…


March 23, 2015

An animation library for paper.js