Building a Shopify App with PHP

Update 15-08-2018: Added more resources Shopify today is one of the most growing platforms for building an e-commerce website. For a monthly subscription, they offer the essentials features for running an e-commerce business. They also offer an API and an app marketplace where merchants can pay for third-party apps that extend the functionality for their stores. As of the today, … Read More


Email Error reporting for your Symfony projects

After launching a couple of projects, I’ve quickly realized that most users will simply stop using your project when confronted with a bug or an exception. So you have to always be on top of any bug that happens, fix it ASAP, apologize to your user and notify them that you’ve fixed the issue. That’s the only way to get … Read More


Complete Guide to automated tests for PHP applications – PHPUnit

In the first part, I’ve tried to convince you to start with automated tests, in this part we’ll finally start with the fun part of actually writing code, but before that let’s first look at some basic concept (then actually getting started, for real. 😄) Test doubles Sometimes it is just plain hard to test the system under test (SUT) because it depends on … Read More


Complete Guide to automated tests for PHP – Introduction

At some point in your career you’ve been told to start writing automated tests and you didn’t really understand why? After all, var_dump was your best friend to check variables and you’re really good (or so you think) at testing everything manually. Also, these tests are more code you have to write, to maintain and to justify to your Manager. Besides, automated tests seems so complicated. All of … Read More


SymfonyTN 2015

So I went to the second edition of Symfony Tunisia, the first Symfony conference in Africa and the arab world. It was a great opportunity for meeting Fabien Potencier, the creator of Symfony and a lot of other talented developers. Here’s a (very) brief summary for some of the talks. Keynote – Fabien Potencier Fabien Potencier started by talking about … Read More