A Detailed Guide to Abstraction in Software with Examples

We speak about abstraction all the time, as software developers, and yet its meaning can be pretty confusing. Could you explain clearly what means abstraction, if you needed to? This article will explain in depth what abstraction stands for, if we should abstract everything and, if not, what should be abstracted.

Global Variables and States: Why So Much Hate?

Global variables are common pitfalls many developers fall into. Indeed, difficult to scale and maintain an application crippled with globals. Why is that? Isn't it convenient to be able to access variables and their values everywhere? The global state problem is only part of a bigger one, namely leaking states and the lack of encapsulation.

A Detailed Explanation of The KISS Principle in Software

Simplicity is one of the most important concept to understand and apply as a developer. This article will first define what simplicity and complexity mean. Then, I will explain why simplicity is really important, to finally go over the main practices you can apply to make your codebase simpler.

PHP Code Quality Tools to Check and Improve your Code

Oh no! You're working on an application which is as messy as your flat! You don't understand anything, every bug takes weeks to fix. You need to improve the quality of your PHP code... but how? What tool to use? A hoover? Don't worry, dear reader, I have some answers for you.

Vim for PHP: The Complete Guide for a Powerful PHP IDE

I can see you spitting your cereals in front of you computer. 'What? A PHP IDE with Vim? Are you insane?'. If I am, I'm not the only one: many developers use Vim, why not PHP developers? This article will describe everything you need for you to build your own personal IDE, which fits your way of working and answers your specific needs.

How did I Replace PhpStorm by Vim in my Heart

Behold the story of a developer (me) who were mocking his colleague for using Vim! He was young, innocent and presumptuous! But at the end, he understood why Vim is so praised since the 70s: it's the best editor ever. I won't go into a crusade to evangelise you with Vim, but you need to know my story: how I ended up using Vim after years with PhpStorm.

PHP 7 Type Hinting: Inconsistencies and Pitfalls

When PHP 7 came up with strong types, I saw the light. I had the hope not to see anymore bugs and inconsistencies due to weak typing in PHP. I remember reading some code and having no idea what could be the type of the variables I had in front of me. Can I use the return of this method as an int? A boolean? Will it create silent bugs and unexpected behaviors?