Solving the PHP Internals Workflow

Posted 2013-09-12
Category PHP
PHP internals has been a cold, harsh, unwelcome land for a long time, and it's coming to a head recently with mutliple vocal developers highlighting issues. While some are trying to resolve the actual medium through which conversations happens, I'm looking into ways we can try to fix the workflow so the actual conversation being had can be the most constructive it can possibly be. 

Read More »

T_PAAMAYIM_NEKUDOTAYIM v Sanity

Posted 2013-09-09
Category PHP
As somebody who has followed internals (and been hearing tales of woe from others) for a while, I've seen so many conversations with truly bizarre, irrelevant and trolly responses coming back from everyone all the way up to Rasmus himself. It was this sort of trolling and bullshit that lead to Anthony Ferrera's recent (and completely understandable) departure from the core. This walks through one example of trollolololing, as an exercise in eduction for anyone unaware of the madness that internals can host.

Read More »

Named Parameters in PHP

Posted 2013-09-01
Category PHP
Converting a Python Twitter API package to PHP turned out to be more trouble than I initially expected due to the usage of Python's named parameters. This artice uses the Twitter library as an example for why named parameters are important and useful.

Read More »

Potential Variadic Function Syntax for PHP 5.6

Posted 2013-08-30
Category PHP
An awesome RFC popped up the other day: Syntax for variadic functions, developed by Nikita Popov. I read through it and I loved it, but I did have to Google to see what the hell a variadic function was.

Read More »

CurlFile and the Facebook SDK in PHP 5.5

Posted 2013-08-29
Category PHP
The Facebook PHP SDK is currently broken if you're running PHP 5.5 and are trying to upload files. I've made a little pull request and explained what is happening, primairily as a Google-catcher for anyone else having the same problem.

Read More »

FUD Cracker: PHP 5.5 never lost JSON support

Posted 2013-08-21
Category PHP
I'm posting this because I have accidentally been perpetuating some FUD, that PHP 5.5 has had its JSON support removed. It hasn't. This article is an appology for my involvement in any confusion and an explanation of what actually happened.

Read More »

PHP Static Analysis in Sublime Text

While learning Python I really enjoyed how Sublime Text 2 would shout at me for using too many empty lines, using tabs instead of spaces and even things like declaring unused local variables, importing modules that were never used, etc. This was pretty cool, and I was soon writing beautiful Python code without any concern over which way things should be done, so lets get it working for PHP.

Read More »

Progress in the PHP-FIG

Posted 2013-08-14
Category PHP
The PHP Framework Interoperability Group (PHP-FIG) has been around for 4 years, and it's produced 4 PSR's, which to some is a sign of inevitable doom or something. To those "in the know" the future is looking bright, and I'd like to let you all know what is going on. Using a new workflow, we are starting down a clearly defined path, with obvious steps along the way which not only increase the signal to noise ratio, but help get us more awesome PSRs faster.

Read More »

Great Battle, Wrong Field

Posted 2013-07-25
Life is hard, opinions are hard, and fighting for your opinions and beliefs is the hardest. This is why it upsets me that so many people just get it totally wrong and cause more harm than good. These are the incidents when the wrong person gets fired, conferences get canceled, people get accused of all sorts of things and careers are hurt. 

Read More »

Beware the Route to Evil

Posted 2013-07-23
Category PHP
As a programmer we should all be used to the fact that our personal preferences and habits are all subject to change. I used to be a big fan of Alman and tabs > spaces, now I follow PSR-2 happily which contradicts those two rules and couldn't care less. Another contradiction to my personal preferences has been "automagical routing" verses "verbose routing", and this article explains why I changed my opinon on that.

Read More »