February
28
, 2017
Introduction
At the end of July last year, I got contacted by Packt Publishing to write
a book about a topic that is of particular interest to me: Functional Programming.
More specifically, how to use functional techniques in PHP. It didn’t took me long
to accept. From there, the process moved quickly, by mid August we agreed on an Outline
for the book and I started working on the chapters.
After nearly 5 months of writing and two more of reviews, the result was published on
February the 14th 2017. It is available both in print and in most digital formats. You
can find all relevant information on the dedicated webpage: Functional PHP.
October
5
, 2015
Disclaimer
The original version of this blog post was first posted on the Liip blog :
Search: Get past English with Solr
Introduction
Implementing a great search feature for an English website is already quite
a task. When you add accented characters like you have in French, things tend
to get messy. What about more exotic languages like Japanese and Chinese?
When we tried to implement a search engine for a multi lingual website where we
had articles in Chinese, Japanese and Korean, despite not knowing those languages
at all, we quickly remarked that our search engine was performing really poorly.
On some occasion it wasn’t even returning an article we specifically copied a word
from.
We had to do a lot of research to understand what was happening, here is a compilation
of what we found along the way in the hope you won’t have to go the same path as us!
November
5
, 2014
Disclaimer
The original version of this blog post was first posted on the Liip blog :
Functional Programming in PHP
Introduction
Functional programming has gained a lot of traction those 3 to 5 last years.
First, there are some success stories around it : Twitter move to Scala,
Whatsapp being written in Erlang. Then we have some new kick-ass languages
like Rust. Finally, it seems the new hype is to create a functional language
compiling to javascript : Elm, Purescript. On a more academic front, there
is also research on new concepts like dependant typing, see Idris for example.
Those are all cool and shiny new toys, but we can benefit from some techniques
without having to learn a new tool, just by applying some principles to our
everyday PHP! But first of all, what exactly is functional programing?
October
30
, 2011
Il y a quelques mois en arrière, rien n’était certain concernant le fait que je puisse rester au Canada. Pour cela, il me fallait trouver un employeur acceptant de m’accompagner dans les démarches nécessaires à l’obtention d’un visa. Les démarches prenant un temps considérable, le délai commençait à se faire court. Apres une discussion avec le propriétaire de notre immeuble, directeur d’une entreprise de dévelopement située l’étage en dessous de notre appartement, il s’avère qu’il recherche du monde. A partir de la, tout s’enchaîne rapidement et je commence à remplir des formulaires pour obtenir la permission de travailler ici.
October
25
, 2011
A long time ago, when I was still playing World of Warcraft, I started using a Battle.Net Mobile Authenticator to secure my account. After some time, the burden of always having my phone with me when I wanted to play was too much and I decided to find another solution. Since the specification were known, some desktop implementation were written. I adapted one of them to publish my Authenticator code somewhere on the internet, accessible from anywhere as long as you had my password ;)
October
12
, 2011
par Charlotte
Après avoir vanté, auprès d’un ami, les mérites de [MoistaCHe](http://moistaCHe.ch – ce “«Movember suisse») qui me tient tant à cœur – je me suis vue répondre, et je cite : « Vous avez quoi contre les poils toi et Gilles? Une fois il faut couper, une autre fois il faut laisser pousser… ». C’est ce genre de remarques qui te fait réfléchir (ou plus justement, qui fait réfléchir la psychologue que je suis).
August
17
, 2011
Not long ago, my fiancee and I started working on a project which needed to creation of a new website. I decided to use the [Fuel PHP framework](http://fuelphp.com and “OpenID) for user authentication among other technologies.
While searching for an authentication driver for OpenID, I found [this project](https://github.com/kbanman/fuel-GasCap, but I was not convinced so I decided to create my own : “fuel-openid) This is currently work in progress, but it is at least working with Google Accounts. Any feedback from people having others OpenID Identity will be really appreciated.
July
30
, 2011
Le camp de “thérapie par l’aventure” nous ayant donné un véritable goût pour le camping, Charlotte et moi avons décidé de partir quelques semaines en vacances en emportant une tente avec nous. Ou alors, c’est parce que nous sommes des expatriés sans le sou, je vous laisse seul juge… Quoi qu’il en soit, nous avons acheté le matériel manquant, loué une voiture et sommes partis à la découverte du Québec.
July
10
, 2011
Après presque 300 km de vélo et 3300 km de minibus, le camp de “thérapie par l’aventure” s’est achevé.
Nous sommes partis le vendredi 24 juin sous une pluie battante avec 10 jeunes et 6 intervenants. Les participants étaient agés de 12 à 17 ans. L’ambiance dans le minibus était assez particulière. Personne ne se connaissait vraiment et l’appréhension des défis à venir était grande.
June
9
, 2011
Ca y est ! On l’a fait !
Un petit aperçu de notre nouvelle coupe ?
June
3
, 2011
Voila, j’y suis. Après avoir été retenu presque deux heures au service de l’immigration de l’aéroport pour une raison qui m’échappe encore, nous voila arrivés, Charlotte et moi, dans notre magnifique appartement. Le début d’une nouvelle vie !
Tout a commencé il y a quelques mois. Charlotte, qui était au Canada pour un perfectionnement professionnel depuis six mois déjà, m’annonce qu’elle aimerait bien y rester le temps de finir sa formation en thérapie conjugale et familiale, soit environ deux ans de plus que prévu initialement. Nous prenons assez rapidement la décision que je la rejoigne là-bas. Neuf mois sans elle ça va, trois ans c’est beaucoup trop …