International PHP Conference 2014, Berlin, Germany

As many of you already know, I’ve spent most of the last week in Berlin, Germany, attending the International PHP Conference 2014.  Here’s the short story:  it was another great event (yes, I’ve attended this conference before).  The conference seems to grow and mature.  There were plenty of engaging speakers and insightful topics.  If you haven’t been to one of these yet, and you are involved with web technologies in general or PHP in particular, you definitely should attend.   It’s worth every dime.

Now, for the long story.

Continue reading International PHP Conference 2014, Berlin, Germany

Party hard!

Those of us who are of legal drinking age know how to tell a good party from the bad one – if you passed out and can’t remember most of the evening, then you must have had a really good time.  If you were home in time for evening news – you don’t know how to party.  All that is no news.  But, how do you figure out if a kid’s party was any good?  After all the youngsters won’t drink or pass out.  Well, here is one way to measure the fun.  Just count how many bones were broken?  Bonus points for having more than one per limb.

Maxim hand cast

Here’s Maxim with two broken bones in his left hand after a birthday party he attended on Sunday.  From what I hear, it was tonnes of fun.

Nobody knows how exactly that happened – it was in the midst of the usual kids’ fun at the playground, with lots of running, rolling, jumping, and so forth.  One person told me that this was during a reenactment of the TV show featured on the Discover channel a couple of days earlier, where horse were refusing to jump over obstacles, making the people riding them fall in spectacular manner.  For all those “don’t try it at home” warnings, I think, they’ve missed one on this show…

Code.org – Learn an hour of code

Maxim mentioned code.org to me a couple of times last week, but I didn’t have the time to check it out.  Today, however, he said that “Learn an hour of code” was his homework for the computer class.  That got me quite interested.  After all, I was exploring looking for an easy way to get him (and some other kids) into computer programming.  We’ve tried bits and pieces of online tutorials here and there, YouTube videos, and I’ve even took a swing at it myself – all for nothing.  It was all too boring and broad and it always required plenty of effort to get into.

code.org

And I’m happy to report – that’s where Code.org succeded.  These guys have found a way to explain things in a very simplistic manner, with immediate practical exercises, which utilize drag-n-drop instead of typing (even a seasoned programmer is rarely a touch typist in my experience), familiar surroundings of Angry Birds and Plants vs. Zombies games, and short, yet motivational explanations of core concepts by computer industry celebrities, like Mark Zuckerberg and Bill Gates.  There also a familiar gaming incentive to the experience, with badges and achievements, but those aren’t the core motivator.

We’ve spent about an hour with Maxim, going through tutorials and doing exercises.   So far, it was a perfect balance of fun and education.  But for me, it there was also another important aspect to this.  I could finally show to my son what I do at work (well, not exactly what I do, but close enough).  Explaining programming with words and showing bits of code and chunks of website never looked too appealing.  Now however he has a better idea.

And for the first time he is actually excited about programming.  So much in fact that I could barely get him to go to bed.  We had to make plans for tomorrow to continue to calm him down a bit.

Thanks code.org!  You guys have done an amazing job.  Keep it up!

Huge Thank You!

I wanted to take this opportunity and say a huge Thank You to everyone who made yesterday a very special day for me.  It was truly one of the greatest birthday celebrations I’ve ever had.  You are all truly the best!

Since the early morning till late night I’ve received countless phone calls (from several countries), text messages, emails, Skype, Google Talk and Facebook messages.  I’ve got a few awesome presents and cards.   I had a surprise party at work, which included a chocolate cake with my name, and a case of German beer (unbelievable!).  I’ve also had plenty of drink – enough to kill a small army, I think – at Ship Inn in the company of friends.

It was an absolutely amazing day!  Thank you everyone!

 

The world of PHP nightmare

I had a dream today. In fact, it was a nightmare that woke me up at 3am and kept me up for the next three hours or so. And I tell you honestly – this kind of things don’t happen to me all that often. In fact, I don’t even remember when was the last time I had anything similar.

I dreamed that the whole world is somehow written in PHP. A few bits were alright, but it mostly sucked. There were constant ground tremors.  Buildings were shaking in the slow soft waving motions. Things that were supposed to be soft were plastic hard. Things that were supposed to be hard were bumpy soft. Road tarmac felt like a gentle green grass field.

At some point of those tremors opened a long,  deep crack in the ground. The resulting vibration tore a nearby skyscraper in half, like it was a wet baguette, and the top part of the building slowly fell and disappeared in that crack (hi,  dr. Fraud). That was rather unpleasant to watch.

After a few scenes of apocalypse, the nightmare movie was cut to action, where I was a part of the task force that was supposed to fix the world. And, I tell you, we tried hard. We’ve refactored parts of the code,  migrated a few most critical systems to CakePHP, upgraded PHP to 5.6 and even tried all those high performance tricks from Facebook (hi, Hack). Things were getting better but not nearly enough. The world was still awkward, unstable and slow.

PHP wasn’t the only thing we were looking at. There was a lot work around databases and tuning servers. We’ve tried every profiling, monitoring and analytics tool we could get our hands on. But, to no avail.

The really horrifying part of the nightmare was when we finally realized that PHP won’t cut it and we’ll have to rewrite parts of the world in C.  We also somehow were missing a C compiler. I bet you can guess the epicenter of the nightmare now. Yes, indeed. We started writing a C compiler in PHP. That’s when I woke up in cold sweat, screaming “Noooooo!” through my lungs. That was more than I could bear.

For three hours after I tried not to Google or think if that was at all possible. Apparently, I love the world the way it is now – screwed up in a billion ways, but NOT written in PHP. With that peaceful thought and a beautiful sunrise I fell asleep.