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.(more…)
Set up your React environment with npm, babel and webpack
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 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
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
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?(more…)
Refactoring: Fix your bugs before they even occur
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?(more…)
Avoid these pitfalls during your next game jam
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.(more…)
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.(more…)
Start versioning everything with git
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:(more…)