Learn Functional Programming by refactoring a React app

Making order by decomposing the program into functions

Functional programming has been around since the 60s, and is rapidly rising back into popularity nowadays. Whether you are a total beginner to it, or you already know its fundamental concepts, I’d like to demonstrate how it could be applied to bring order in a React application’s code.


Set up your React environment with npm, babel and webpack

A castle built of cardboard boxes, with the react logo like a rising sun in the background.

In my last tutorials, we used the handy create-react-app package to set up our React app for us. I propose that we go a little more into the details and make our own setup from scratch.


Learn React State Hook by building a memory game

React Hook reveals a snake from a memory game card.

React offers a simple and efficient way to structure our application through function components. In this tutorial we will see how to make these components ‘react’ to the user actions by using the State Hook.


Learn React function components by building a Checkers board

React components are like puzzle pieces.

If you have been somewhat active in a development community, you probably have already heard about React. I stepped aside of it for quite a long time, but now I don’t have any alternative: I need to mingle with React code at work.

In this tutorial, I will be showing you how to use its recommended basic building blocks: the function components. I will do so by building a simple Checkers board.


Stop struggling with conditional logic: meet the State Pattern

State Pattern is like a transforming robot

Finite state machines are a common way to structure a program. But do you know how to build an efficient one while benefiting plainly from Object Oriented Programming best practices?


Refactoring: Fix your bugs before they even occur

The death star

It always feels good when we nail down a nasty bug, doesn’t it? But it is always a painful experience when our user discover new ones. So what about solving them ‘by design’, before they even get in production?


Avoid these pitfalls during your next game jam

Not-megaman versus some not-metroids

Game jams are events I do really enjoy. I’m not a professional game developer, but they tend to push my programming knowledge, development workflow and problem solving skills through an intense test. Last week, I registered for 8 Bit to Infinity’s Text Only Jam, but failed to submit a game before the deadline. In this post I’m gonna share with you the lessons I’ve drawn from this experience.

Test Driven Development, a practical start

Automated testing, sometimes clumsily referred as unit testing (because unit tests are a part of the broader concept of automated tests), is a practice in development in which I’m really interested. Its point is to have code that inspect your code, to see if the former behave like you expect. While it obviously makes you write more code, its goal is to pay back the time you’ve invested into writing your test code by helping you discovering the bugs you may introduce during your development iterations.

More specifically, what I will demonstrate in this post is how to start using a quite rigorous approach of this practice which is called Test Driven Development. This specific way of thought advocates to write your tests before you start writing your production code. This might seems a little weird when you hear about it the first time, because you will basically be testing something that doesn’t exist yet. So I will use a practical case where I implemented it to let you understand how it works and how it benefited me.


WordPress Security : An open talk with Julio Potier

During the Paris WordCamp 2019, there was lots of great talks. Although you will be able to watch those again on wordpress.tv, there was also some more informal talks, in which participants seated in sofas and on chairs around low table and discussed predefined topics, supported by a coordinator.

I want to report to you one of these open talks, as I found the information exposed could be pretty useful. It was about WordPress security, and our coordinator was Julio Potier, founder of the security plugin SecuPress, director of the WPFR organization, and WordPress consultant for years (between other roles…). Needless to say, that we all had lots of question to ask him.


Start versioning everything with git

Grow your git trees from ground zero.

In the software industry, every software goes through several versions during it’s lifecycle. But how to efficiently keep track of changes and provide older versions for compatibility purpose? Sure, we can keep a large collection of .zip files, but there is a better way of doing it, it could apply to a lot more domains than the software industry: