Happy 10th birthday, Fedora!

Dear Fedora,

I know we have our disagreements.  At times I don’t know where you are going.  Or whether even you know where you are going.  But that’s OK.  Because you are still awesome.  You still pay my bills.  You are still fun to use.  And you are still on every single computer I can get my hands on, both at home and at work.

It’s your 10th birthday.  And you’ve grown up a lot.  It seems like only yesterday I was upgrading my Red Hat 9 machines to an awkwardly named Fedora Core 1 Yarrow Linux, and yet here we are – expecting the 20th release.  You’ve kept your word on releasing every 6 month (albeit with a few weeks delay every single time).  You’ve grown.  You’ve changed.  You’ve matured.

While I had a few hiccups with you over the years – those Gnome and KDE fights, those boot loader changes, and still painful inclusion of SELinux, you’ve always been there for me.  I’ve helped me to build numerous projects.  To make new friends.  To understand the world better.

Please continue to be what you are.  Please continue to change.  Please continue to improve.  Just, if you can, think of me, your biggest fan and seasoned user, once in a while.

Happy 10th birthday and a huge thank you.

Yours truly, Leonid.

PHP: self:: vs. static::

I am seeing more and more PHP code with static:: key used for method calls instead of self::.  Today I’ve finally found some time to examine the novelty.  The page that is useful for more details is PHP’s late static binding.  This functionality is available since PHP 5.3.0 so you might as well start using it.

I am a bit protective of my code, so self:: feels like a safer, more natural option.  But after thinking about it for a bit, and discussing with my colleagues, I came to the conclusion that I should be using static:: instead of self::.  It provides cleaner inheritance and minimizes code copy-pasting.