Autopergamene

I like to occasionally write articles about things that pique my interest at work, or opinions that I form over the years.
Spiraling Out: the art of AI optical illusions

Spiraling Out: the art of AI optical illusions

a year ago - web
9 mn to read
🇺🇸

It all started with one picture: an almost normal painting of a village. Encoded within was a spiral shape, only visible through the specific arrangement of subjects and colors on the painting. Source: Reddit The effect itself was nothing quite so new. In fact it was a trend for a long while and you can find a lot of classical paintings that have the same concept, like this famous one from 189…

The Fediverse & the new era of social networks

The Fediverse & the new era of social networks

2 years ago - web
11 mn to read
🇺🇸

I consider myself a child of the internet, in that I discovered it towards the end of my childhood and spent most of my time there, during my formative years, instead of, you know, outside. I moved from AIM to forums and IRC – where I met my wife! And then later on, as the era of social networks arrived, Facebook, Twitter, and Reddit captured my attention (yes I skipped a few). Since it began, the…

Typescript, Vue 3, and strongly typed props

Typescript, Vue 3, and strongly typed props

3 years ago - web
8 mn to read
🇺🇸

I’ve recently worked on a Vue application after working for a long time with React, and more particularly with React and Typescript. While I felt right at home in Vue 3’s Composition API given how similar it feels to React Hooks, I did miss the ability to easily use Typescript purely for props validation… or so I thought. Options API versus Composition API Now I’ve known for quite some time that…

Cypress or how I learned to stop worrying and love E2E tests

Cypress or how I learned to stop worrying and love E2E tests

4 years ago - web
10 mn to read
🇺🇸

Over my career I’ve dabbled in various forms of testing, both on the back-end and front-end. I’ve tried various frameworks, experimented with different approaches, types of tests and philosophies, from unit tests to Gherkin behaviour tests to E2E tests with Selenium in the good ol days. And yet despite all this I don’t consider myself good at testing, because I can be very lazy and that I tend to…

Learning Machine Learning: Neural Networks

4 years ago - web
9 mn to read
🇺🇸

In the last article, I left things off at this image and said that the next thing I wanted to learn was to make a neural network recognize the digits in this picture. It’s a very well-known problem, and there’s countless content written about it (and this particular set of digits), but that’s what makes it a good first problem to tackle, and a good way to learn neural networks. So how do we get…

Learning Machine Learning

4 years ago - web
6 mn to read
🇺🇸

I’ve always been fascinated by science fiction and the advances of technology. And AI/ML has often represented a huge chunk of that because to me it’s the closest way that I, as a single person, can create life and feel like a god. And that’s really what most of science fiction is about 🤖! I’ve tried a couple of times to get into it, I read things here and there, watched talks, but none of my…

Snapshot Through the Heart

Snapshot Through the Heart

5 years ago - web
7 mn to read
🇺🇸

While snapshot testing has been around for a while in the form of visual snapshots (used in visual regression testing), it’s clear that the introduction of textual snapshots in Jest a few years ago had a big impact on testing, not only in Javascript but in other languages as well. But looking back on what it brought me a few years later I feel rather failed by snapshots. And while most of the…

Gatsby and the new era of site generators

Gatsby and the new era of site generators

5 years ago - web
11 mn to read
🇺🇸

Why Gatsby? One of the greatest aspects of modern web development is how modular and composable everything has become. Building an application these days has become a lot like tinkering with building blocks: piecing together packages, APIs, services and so on. Each doing what they do best. We’ve learned that reinventing the wheel is (often) not the solution and by embracing interoperability we’ve…

A nice app on Elm street

A nice app on Elm street

5 years ago - web
48 mn to read
🇺🇸

If you’ve ever worked with Redux – in the context of a React application or not – you may have heard numerous times that it was inspired not only by Flux (which it followed) but also by the Elm architecture. This is something that is thrown around a lot by people in the React ecosystem, and looking at the Elm homepage it may seem difficult to see the link between a strictly-typed language and a JS…

Gotta Go Fast

Gotta Go Fast

5 years ago - web
11 mn to read
🇺🇸

When trying to work faster or just more efficiently, we tend to focus on the code, but that's only half the story. Let's review how to become faster as a developer by simply taking up small positive habits around your everyday tasks.

Querying your Redux store with GraphQL

Querying your Redux store with GraphQL

5 years ago - web
11 mn to read
🇺🇸

Rationale When working in a React application, one pain point that often comes up is Redux. People say that as soon as an application uses it, things quickly get overrun with boilerplate and “wiring” code that ultimately clogs your codebase more than it helps it. This isn’t something inherent to Redux but more something to do with the best practices associated with it, and with people misusing the…

Why do we use bad color schemes?

Why do we use bad color schemes?

6 years ago - web
5 mn to read
🇺🇸

As developers we've grown accustomed to color schemes in our terminals, our editors, our websites. But why do we love them and sometimes prefer some to others? Why do we sometimes use bad color schemes and what makes one?

Chrome alternatives for devs

Chrome alternatives for devs

6 years ago - web
9 mn to read
🇺🇸

If you're in web development, you might have had people around you telling you that Chrome has a dangerously monopolistic marketshare and that you should use something else to diversify. But the browser ecosystem can be very confusing to explore nowadays with Chromium browsers and whatnot, and you don't want to have to *learn* another browser. So here are a couple of other great browsers you could use instead and when/why you would use them depending on your needs.

Immutability with Immer

Immutability with Immer

6 years ago - web
5 mn to read
🇺🇸

Immutability in Javascript can be very complicated to deal with. There's been some good solutions in the past, but we'll take a look at at a new library called immer and how it can help you easily create and update data in an immutable way without being all over your codebase.

Using Prettier in PHP

Using Prettier in PHP

6 years ago - web
5 mn to read
🇺🇸

What is Prettier? Originally from the Javascript ecosystem, if you’re not familiar with it Prettier is a code formatter, which means it takes your code, and makes it as its namme indicates prettier. There are a lot of code formatters, and for a lot of languages – even Javascript has quite a few of them. But Prettier is currently one of the most popular code formatters out there and it has spread…

Don't Notion shine when she's gone?

Don't Notion shine when she's gone?

7 years ago - web
8 mn to read
🇺🇸

I like to think I’m a rather organised person. Not in every aspect of my life and not to the same extent in each, but I try my best to keep my thoughts in line. The problem with this, unfortunately, is that there is such a thing as counterproductive organisation. That is, the moment you’re organised in such a fractured and unreliable way, that it becomes harmful to your end goal. It doesn’t start…

Thread carefully

Thread carefully

9 years ago - web
16 mn to read
🇺🇸

As far as I can remember, PHP has always had a terrible reputation at handling very heavy (or asynchronous) tasks. For a long while if you wanted to parallelize long tasks you had to resort to forking through which had its own issues, and you couldn’t really handle the results of those tasks properly, etc. As such, a habit has kind of developed where we go straight for more intricate solutions…

Set Blackfire to the rain

Set Blackfire to the rain

9 years ago - web
6 mn to read
🇺🇸

If you’ve ever worked on any PHP application, or package, or anything you know that debugging performance issues is hard. There are several ways to ease the pain a little: debug bars, putting timers a bit everywhere. Or if you’re courageous like I was for a long time, you use snapshots which requires you to configure it, and then parsing the snapshots which takes a long time, etc. Recently…

Webpack your bags

Webpack your bags

9 years ago - web
27 mn to read
🇺🇸

By now you’ve probably heard about this new cool tool on the block called Webpack. If you haven’t looked that much into it you’re probably a bit confused by some people calling it a build tool à la Gulp and other people calling it a bundler like Browserify. If on the other hand you have looked into it you’re probably still confused because the homepage presents Webpack as both. To be honest, at…

Of links, feeds and fever

Of links, feeds and fever

12 years ago - web
5 mn to read
🇺🇸

In my branch there are a lot of things that make it possible to distinguish someone who does his job well from someone who doesn’t. Compliance with norms and standards, the reusability of the code, the consideration of accessibility, and so on. But above all, it is the willingness and ability to update oneself. It is this quality that makes people who are considered very good in their field right…

Portfolio redesign

Portfolio redesign

12 years ago - web
8 mn to read
🇺🇸

Redesign of my portfolio I have to admit to a rather superficial habit - and perhaps shared by others in my profession - when I start talking to someone who does my job, the first thing I do is click on the link to their site. I look at the sources, and from there criticism comes quickly. It’s not logical I admit it because even if I try to follow very well all the good codes and practices in…

Laravel: The lost elegance of PHP

Laravel: The lost elegance of PHP

12 years ago - web
11 mn to read
🇫🇷

Dans la vaste école des frameworks web, de langage en langage le paysage est bien différent. Là où les développeurs Ruby et Python ont su se mobiliser pour une même cause autour des piliers que sont désormais Rails et Django, il faut bien avouer que du côté du PHP ressort un certain côté cours de récré. Des frameworks à la pelle, chacun dérivés de X ou Y, pas un pour s’entendre sur des conventions…

Version Control

Version Control

13 years ago - web
8 mn to read
🇫🇷

“If you’re not on Github, you’re essentially unable to participate in the rich open-source community that has arisen around front-end development technologies.” Quand je dis que ma manière de travailler a changé je ne parle pas seulement du résultat final de mon travail mais du processus en lui-même, le workflow. En quelques mots c’est tout ce qui, de l’idée originelle, conduit au résultat final…

Preprocessors

Preprocessors

13 years ago - web
5 mn to read
🇫🇷

Depuis quelques temps j’ai envie d’écrire une mince série de billets sur ce que je fais plus concrètement au travail. Histoire de partager, recueillir quelques avis et puis pouvoir discuter un peu de sujets qui me passionnent avec des gens qui traversent la même chose. Comme je l’avais mentionné dans un précédent article, j’ai commencé à travailler il y a deux ans et demi de cela. Quand je suis…

Iconic & Entypo

Iconic & Entypo

13 years ago - web
4 mn to read
🇫🇷

En terme de web les modes vont et viennent, tant au niveau du fond que de la forme. C’est à la fois dû à l’évolution des langages eux-mêmes et l’évolution des navigateurs qui lisent et déchiffrent ces langages. Sans doute est-ce le fait que je suis plus informé qu’avant mais j’ai l’impression que les choses s’accélèrent de plus en plus - et dans le bon sens. Quand je vois les efforts monstrueux de…

LessCSS

LessCSS

13 years ago - web
3 mn to read
🇫🇷

Je ne parle pas beaucoup de webdesign et de programmation sur mon blog. Pendant longtemps la raison a été que je ne me sentais pas forcément à l’aise avec ce que je faisais - pas assez au point par rapport aux nombreux standarts du web et à la qualité de ce qui se faisait ailleurs. Depuis le travail en agence m’a fait énormément progresser : moi qui n’avait à l’origine que quelques lointaines…

Quatre ans en images

Quatre ans en images

13 years ago - photography
15 mn to read
🇫🇷

Le champ des thèmes que j’aurais pu aborder pour ce premier article était vaste : il y a nombre de domaines que je côtoie ou pratique et qui auraient pu figurer sur notre blog. Puis après réflexion je me suis dit que quitte à parler image et à faire le pont avec la communication, le choix le plus judicieux serait de parler photographie. Pourquoi ? Parce que la photo - de mon point de vue tout du…

© 2025 - Emma Fabre - About
I like to occasionally write articles about things that pique my interest at work, or opinions that I form over the years.
Spiraling Out: the art of AI optical illusions

Spiraling Out: the art of AI optical illusions

a year ago - web
9 mn to read
🇺🇸

It all started with one picture: an almost normal painting of a village. Encoded within was a spiral shape, only visible through the specific arrangement of subjects and colors on the painting. Source: Reddit The effect itself was nothing quite so new. In fact it was a trend for a long while and you can find a lot of classical paintings that have the same concept, like this famous one from 189…

The Fediverse & the new era of social networks

The Fediverse & the new era of social networks

2 years ago - web
11 mn to read
🇺🇸

I consider myself a child of the internet, in that I discovered it towards the end of my childhood and spent most of my time there, during my formative years, instead of, you know, outside. I moved from AIM to forums and IRC – where I met my wife! And then later on, as the era of social networks arrived, Facebook, Twitter, and Reddit captured my attention (yes I skipped a few). Since it began, the…

Typescript, Vue 3, and strongly typed props

Typescript, Vue 3, and strongly typed props

3 years ago - web
8 mn to read
🇺🇸

I’ve recently worked on a Vue application after working for a long time with React, and more particularly with React and Typescript. While I felt right at home in Vue 3’s Composition API given how similar it feels to React Hooks, I did miss the ability to easily use Typescript purely for props validation… or so I thought. Options API versus Composition API Now I’ve known for quite some time that…

Cypress or how I learned to stop worrying and love E2E tests

Cypress or how I learned to stop worrying and love E2E tests

4 years ago - web
10 mn to read
🇺🇸

Over my career I’ve dabbled in various forms of testing, both on the back-end and front-end. I’ve tried various frameworks, experimented with different approaches, types of tests and philosophies, from unit tests to Gherkin behaviour tests to E2E tests with Selenium in the good ol days. And yet despite all this I don’t consider myself good at testing, because I can be very lazy and that I tend to…

Learning Machine Learning: Neural Networks

4 years ago - web
9 mn to read
🇺🇸

In the last article, I left things off at this image and said that the next thing I wanted to learn was to make a neural network recognize the digits in this picture. It’s a very well-known problem, and there’s countless content written about it (and this particular set of digits), but that’s what makes it a good first problem to tackle, and a good way to learn neural networks. So how do we get…

Learning Machine Learning

4 years ago - web
6 mn to read
🇺🇸

I’ve always been fascinated by science fiction and the advances of technology. And AI/ML has often represented a huge chunk of that because to me it’s the closest way that I, as a single person, can create life and feel like a god. And that’s really what most of science fiction is about 🤖! I’ve tried a couple of times to get into it, I read things here and there, watched talks, but none of my…

Snapshot Through the Heart

Snapshot Through the Heart

5 years ago - web
7 mn to read
🇺🇸

While snapshot testing has been around for a while in the form of visual snapshots (used in visual regression testing), it’s clear that the introduction of textual snapshots in Jest a few years ago had a big impact on testing, not only in Javascript but in other languages as well. But looking back on what it brought me a few years later I feel rather failed by snapshots. And while most of the…

Gatsby and the new era of site generators

Gatsby and the new era of site generators

5 years ago - web
11 mn to read
🇺🇸

Why Gatsby? One of the greatest aspects of modern web development is how modular and composable everything has become. Building an application these days has become a lot like tinkering with building blocks: piecing together packages, APIs, services and so on. Each doing what they do best. We’ve learned that reinventing the wheel is (often) not the solution and by embracing interoperability we’ve…

A nice app on Elm street

A nice app on Elm street

5 years ago - web
48 mn to read
🇺🇸

If you’ve ever worked with Redux – in the context of a React application or not – you may have heard numerous times that it was inspired not only by Flux (which it followed) but also by the Elm architecture. This is something that is thrown around a lot by people in the React ecosystem, and looking at the Elm homepage it may seem difficult to see the link between a strictly-typed language and a JS…

Gotta Go Fast

Gotta Go Fast

5 years ago - web
11 mn to read
🇺🇸

When trying to work faster or just more efficiently, we tend to focus on the code, but that's only half the story. Let's review how to become faster as a developer by simply taking up small positive habits around your everyday tasks.

Querying your Redux store with GraphQL

Querying your Redux store with GraphQL

5 years ago - web
11 mn to read
🇺🇸

Rationale When working in a React application, one pain point that often comes up is Redux. People say that as soon as an application uses it, things quickly get overrun with boilerplate and “wiring” code that ultimately clogs your codebase more than it helps it. This isn’t something inherent to Redux but more something to do with the best practices associated with it, and with people misusing the…

Why do we use bad color schemes?

Why do we use bad color schemes?

6 years ago - web
5 mn to read
🇺🇸

As developers we've grown accustomed to color schemes in our terminals, our editors, our websites. But why do we love them and sometimes prefer some to others? Why do we sometimes use bad color schemes and what makes one?

Chrome alternatives for devs

Chrome alternatives for devs

6 years ago - web
9 mn to read
🇺🇸

If you're in web development, you might have had people around you telling you that Chrome has a dangerously monopolistic marketshare and that you should use something else to diversify. But the browser ecosystem can be very confusing to explore nowadays with Chromium browsers and whatnot, and you don't want to have to *learn* another browser. So here are a couple of other great browsers you could use instead and when/why you would use them depending on your needs.

Immutability with Immer

Immutability with Immer

6 years ago - web
5 mn to read
🇺🇸

Immutability in Javascript can be very complicated to deal with. There's been some good solutions in the past, but we'll take a look at at a new library called immer and how it can help you easily create and update data in an immutable way without being all over your codebase.

Using Prettier in PHP

Using Prettier in PHP

6 years ago - web
5 mn to read
🇺🇸

What is Prettier? Originally from the Javascript ecosystem, if you’re not familiar with it Prettier is a code formatter, which means it takes your code, and makes it as its namme indicates prettier. There are a lot of code formatters, and for a lot of languages – even Javascript has quite a few of them. But Prettier is currently one of the most popular code formatters out there and it has spread…

Don't Notion shine when she's gone?

Don't Notion shine when she's gone?

7 years ago - web
8 mn to read
🇺🇸

I like to think I’m a rather organised person. Not in every aspect of my life and not to the same extent in each, but I try my best to keep my thoughts in line. The problem with this, unfortunately, is that there is such a thing as counterproductive organisation. That is, the moment you’re organised in such a fractured and unreliable way, that it becomes harmful to your end goal. It doesn’t start…

Thread carefully

Thread carefully

9 years ago - web
16 mn to read
🇺🇸

As far as I can remember, PHP has always had a terrible reputation at handling very heavy (or asynchronous) tasks. For a long while if you wanted to parallelize long tasks you had to resort to forking through which had its own issues, and you couldn’t really handle the results of those tasks properly, etc. As such, a habit has kind of developed where we go straight for more intricate solutions…

Set Blackfire to the rain

Set Blackfire to the rain

9 years ago - web
6 mn to read
🇺🇸

If you’ve ever worked on any PHP application, or package, or anything you know that debugging performance issues is hard. There are several ways to ease the pain a little: debug bars, putting timers a bit everywhere. Or if you’re courageous like I was for a long time, you use snapshots which requires you to configure it, and then parsing the snapshots which takes a long time, etc. Recently…

Webpack your bags

Webpack your bags

9 years ago - web
27 mn to read
🇺🇸

By now you’ve probably heard about this new cool tool on the block called Webpack. If you haven’t looked that much into it you’re probably a bit confused by some people calling it a build tool à la Gulp and other people calling it a bundler like Browserify. If on the other hand you have looked into it you’re probably still confused because the homepage presents Webpack as both. To be honest, at…

Of links, feeds and fever

Of links, feeds and fever

12 years ago - web
5 mn to read
🇺🇸

In my branch there are a lot of things that make it possible to distinguish someone who does his job well from someone who doesn’t. Compliance with norms and standards, the reusability of the code, the consideration of accessibility, and so on. But above all, it is the willingness and ability to update oneself. It is this quality that makes people who are considered very good in their field right…

Portfolio redesign

Portfolio redesign

12 years ago - web
8 mn to read
🇺🇸

Redesign of my portfolio I have to admit to a rather superficial habit - and perhaps shared by others in my profession - when I start talking to someone who does my job, the first thing I do is click on the link to their site. I look at the sources, and from there criticism comes quickly. It’s not logical I admit it because even if I try to follow very well all the good codes and practices in…

Laravel: The lost elegance of PHP

Laravel: The lost elegance of PHP

12 years ago - web
11 mn to read
🇫🇷

Dans la vaste école des frameworks web, de langage en langage le paysage est bien différent. Là où les développeurs Ruby et Python ont su se mobiliser pour une même cause autour des piliers que sont désormais Rails et Django, il faut bien avouer que du côté du PHP ressort un certain côté cours de récré. Des frameworks à la pelle, chacun dérivés de X ou Y, pas un pour s’entendre sur des conventions…

Version Control

Version Control

13 years ago - web
8 mn to read
🇫🇷

“If you’re not on Github, you’re essentially unable to participate in the rich open-source community that has arisen around front-end development technologies.” Quand je dis que ma manière de travailler a changé je ne parle pas seulement du résultat final de mon travail mais du processus en lui-même, le workflow. En quelques mots c’est tout ce qui, de l’idée originelle, conduit au résultat final…

Preprocessors

Preprocessors

13 years ago - web
5 mn to read
🇫🇷

Depuis quelques temps j’ai envie d’écrire une mince série de billets sur ce que je fais plus concrètement au travail. Histoire de partager, recueillir quelques avis et puis pouvoir discuter un peu de sujets qui me passionnent avec des gens qui traversent la même chose. Comme je l’avais mentionné dans un précédent article, j’ai commencé à travailler il y a deux ans et demi de cela. Quand je suis…

Iconic & Entypo

Iconic & Entypo

13 years ago - web
4 mn to read
🇫🇷

En terme de web les modes vont et viennent, tant au niveau du fond que de la forme. C’est à la fois dû à l’évolution des langages eux-mêmes et l’évolution des navigateurs qui lisent et déchiffrent ces langages. Sans doute est-ce le fait que je suis plus informé qu’avant mais j’ai l’impression que les choses s’accélèrent de plus en plus - et dans le bon sens. Quand je vois les efforts monstrueux de…

LessCSS

LessCSS

13 years ago - web
3 mn to read
🇫🇷

Je ne parle pas beaucoup de webdesign et de programmation sur mon blog. Pendant longtemps la raison a été que je ne me sentais pas forcément à l’aise avec ce que je faisais - pas assez au point par rapport aux nombreux standarts du web et à la qualité de ce qui se faisait ailleurs. Depuis le travail en agence m’a fait énormément progresser : moi qui n’avait à l’origine que quelques lointaines…

Quatre ans en images

Quatre ans en images

13 years ago - photography
15 mn to read
🇫🇷

Le champ des thèmes que j’aurais pu aborder pour ce premier article était vaste : il y a nombre de domaines que je côtoie ou pratique et qui auraient pu figurer sur notre blog. Puis après réflexion je me suis dit que quitte à parler image et à faire le pont avec la communication, le choix le plus judicieux serait de parler photographie. Pourquoi ? Parce que la photo - de mon point de vue tout du…

© 2025 - Emma Fabre - About