Debugging drush scripts with xdebug and PhpStorm on vagrant in 2016

This is a subject that seems to come up again and again. I figured this out once before, but back then I was using Eclipse, while I am now a PhpStorm devotee. Also, I’ve long since started using Vagrant, which means that every debugging scenario is now “remote”. Usually, this is not a huge issue, but with command line debugging, this presents a bit of a challenge.

Randy Fay has done a nice write-up back in 2013, which covers most of the bases. It does leave one missing link, which seems to have come up only recently; a recent change in drush has broken debugging through xdebug, because it is now using pcntl_exec() to execute the actual script (don’t ask me for the technical details, I haven’t delved into that too much). As is so often the case, Stack Exchange provided the missing piece of the puzzle; it’s possible to circumvent the “decoupling”, that seems to occur due to the pcntl_exec(), by using drush.launcher as the entry point.

As much for my own reference as anyone else’s, these are the key points from both Randy’s post and the SE topic:

  • Set up a “PHP Web Application” for debugging the command line. The sole purpose of this is to be able to provide a path mapping when running the command in Vagrant.
  • Enable xdebug debugging for the command line in your Vagrant box. In my case, this simply meant symlinking the same xdebug.ini from my /etc/php5/cli/conf.d directory as I was using in the /etc/php5/apache/conf.d for web debugging.
  • All executed code needs to be available in the project, including drush. You can accomplish this by e.g. installing drush as a composer dependency (also, remember to execute drush from your project).

The following you will need to do every debugging session:

  • Use PhpStorm’s “Listen for PHP Debug connections” button
  • Set the remote debug client on the command line using (or whatever is the IP-address for your host machine when coming from the Vagrant box; the xdebug.remote_connect_back that is likely in your config will not work for the command line):
    export XDEBUG_CONFIG="idekey=phpstorm remote_host="
  • Set the server configuration. Make sure the name you use matches the server name you configured in PhpStorm:
    export PHP_IDE_CONFIG="serverName=cli"
  • Execute drush by substituting “drush.launcher” for the regular drush command. Make sure you use the drush copy from your project. For example:
    ../vendor/drush/drush/drush.launcher migrate-reset-status posts
Posted in Uncategorized | Leave a comment

Cutting The Mustard: Future Friendly Browser Support

Was just linked to this from an issue that is highly likely to make a big impact on Drupal’s future (Select a new client-side framework for Drupal core, worth a read in itself if you’re interested in that sort of thing). Even though it’s from 2013, it’s still a very relevant (and entertaining) set of slides about responsive web design.

Show me your fight face.

Go to the original article »

Posted in Uncategorized | Leave a comment

Apple TV: keeping the score


A little over a year ago, I wrote a blog post about my hopes and dreams for Apple TV. Then, finally, at the last Apple event on september 9 2015, Apple unveiled their plans for the next iteration of their smart TV platform. And, it has been on sale since late last month. I ordered one on the very first day of pre-orders, so I’ve had it since a few weeks now. Which means, it’s time to make up the score. Read More »

Posted in Uncategorized | Leave a comment

Video: Building Lego Technic Service Truck

Last year, my employer gave me (and all of my colleagues) a gift certificate as a christmas present. After a little pondering, I decided what to do with it.

Being the geek that I am, I decided to create a timelapse of the build process. Being the lazy *ss that I am, it took me almost a year to dive into turning the raw timelapse into a complete video. But, I have, and here it is.

It’s worth noting that I made a bit of a false start with this a few weeks ago, when I fired up iMovie for the very first time, but could not quickly figure out how to get the result I wanted (it’s not easy being green, er, a perfectionist). Various podcasts I listen to have had sponsorships from and they have promotions running of ten day free trials, so I figured, they must have a course on iMovie. So they did. Although our relationship was off to a bit of a rough start, it must be said that the quality of the course is top notch. Also, you can cancel the subscription before you start paying and they stressed they’ll send a reminder email before the trial expires. can improve the initial experience by not requiring a credit card up front, but other than that, they lived up to the expectations.

On the subject of Lego, we’ve just had the anual christmas diner again, and we got another gift certificate. I decided to shell out and get one of the last of the enormous Lego Technic Unimog set. It’s discontinued, so I can’t link to an official page, but suffice to say, there’s more where that video came from.

Posted in Uncategorized | Leave a comment

Concept: My hopes and dreams for Apple TV

Samsung TV showing the home screen of the Apple TV UI concept by Andrew Ambrosino The illustrations on this article are from the excellent Apple TV UI Concept by Andrew Ambrosino. They have little to do with the ideas I put forward in this post, but they sure do look pretty. I have been an Apple TV owner on and off since the very first one from 2007. It wasn’t in the same small black puck from factor you may know from today. It was much larger, sort of a hybrid between the design of the Mac Mini of its time, and today’s Mac Mini; the design cues were clearly from then, with an aluminium “band” serving as the front, sides and back, and a white-and-grey plastic top (but where the Mac Mini was a grey Apple logo on a white field, Apple TV had a white “tv” on a grey field). The measurements, however, were much more like today’s Mac Mini; much lower, deeper and wider than the Mac Mini of its day. That Apple TV is still lurking somewhere in my attic, and it was my first entry into the Apple ecosystem. The main reason to get it was to get a source for HD video material, because I had just bought a HD Ready Sony Bravia TV. It turned out to be a gateway drug for Apple stuff. Our household is exclusively Apple nowadays; iPhones, iPads and MacBooks all around. Read More »

Posted in Mac | Tagged , , , | 2 Responses

Comparison of bookmark services

I have been a Delicious user since 2006. Of course, some time ago, we had a long episode of uncertainty, but that has come and gone. Things have quieted down around Delicious. I’d almost say too quiet, and I’m wondering if we are going to suddenly be greeted to a “Sorry, Delicious is no more” message some time in the not too distant future. Also, I’ve had some small frustrations lately, which I won’t go into here. To make a long story short, there were some reasons for me to go and look for alternatives to delicious. There are many articles about that on the Internet, but obviously, none are based on my priorities. So, what am I looking for in a bookmarking solution?

Read More »

Posted in Uncategorized | Tagged , , | 3 Responses

What happens to your data when your computer floods/catches fire/explodes?

Image: Andrew Kuznetsov on Flickr

So, what did you answer to that question? If it was, “Meh, that’s not going to happen to me”, think again. If it is, “I’m making backups”, good for you. But how safe are your backups? Some say, one backup is no backup. This is especially true if you’re just backing up to an external drive connected to your computer. Yes, it will safe your hide when the hard disk in your computer dies, but what if a bigger disaster happens? Of course, I wish no one to have their hard disks crash on them, let alone worse. However, what if your upstairs neighbour has a leak and it is right above your computer? Or what, heaven forbid, you have a fire?

In the past, I gave these questions some thought. I thought I had found the golden goose when I came up with this; buy two external disks, set them up both with Time Machine, and swap them on a regular basis, keeping one connected to the computer, the other at my parents’ house. That way, even if both the computer itself and the primary backup drive (the one currently connected to the computer) dies, I still have the “offsite” backup. Well, in practice I think the offsite backup was maybe switched once, after which it grew old. Very old.

Now, I do have the solution, though. I use an online backup service. I chose Backblaze (full disclosure: this is an affiliate link, see further down in this post), because of recommendations from some podcasts I listen to (The Talkshow, Hypercritical and Build & Analyze when they still existed, and ATP). I haven’t looked back since. It’s only 5 USD per month per computer for unlimited backups, with no strings attached (except maybe that you can’t backup drives containing Time Machine data, but that’s more a technical issue than anything else). There’s even a way around the one computer thing; just setup something like Carbon Copy Cloner on your other machines to make regular backups to the machine that is being backed up to Backblaze. Their Mac client software is really nice. It has that native feel; if you ever used badly ported software from other platforms, or software developed by someone that clearly is not an experienced Mac developer, I’m sure you know what I mean.

Something else I can recommend related to Backblaze is their blog. They share tremendously interesting stuff they have a unique position to acquire, because they have so many (consumer grade, which makes it relevant to you and me too) hard drives that are being pushed to the very limit. Don’t worry, consumer grade doesn’t mean your data is less secure, because they have all kinds of early warning systems to make sure bad hard drives don’t screw with your data. Recommended reading: Seniors are the Kings of Data BackupHard Drive Temperature – Does It Matter?Storage Pod 4.0: Direct Wire Drives – Faster, Simpler and Less Expensive and last but not least, What Hard Drive Should I Buy? (I just bought a Western Digital Red for my Drobo based on this).

So, after all that, I hope you will look into getting your data backed up, securely and off-site. By all means, do your own research and pick the one you like. But, if you like the above, consider using this link to get Backblaze one month for free. If you do, and you decide to get a paying subscription, I will get one month free as well. I hope you don’t hate me for dropping an affiliate link at the end of this post without warning you up front, but I did not because I did not want to put you off from the post; I do genuinely believe this stuff is important.

Posted in Uncategorized | 1 Response

Walking with Dinosaurs movie mini-review

Just watched the Walking with Dinosaurs movie. It is beautifully made, but oh boy was the talking dino’s every bit as bad as I had expected. To get a taste of it, watch the trailer above.

Ever since hearing the concept of Walking with Dinosaurs – the original series, that is – I absolutely loved it. I was one of those boys with a thorough fascination for dinosaurs. Think Tim in Jurassic Parc, except maybe a little less annoying. And no, I had not read scientific publications by famous paleontologists. But I did read every book about dino’s that could be found in the children’s section of the local library.

That was well behind me when the original Walking with Dinosaurs was announced, but being a man, you never really grow out of that sort of thing. WwD was to be like a documentary. No being chased by a T-Rex in a Jeep (no, not that way way, silly), but David Attenbouresque observations, aided by the latest and greatest CGI and animatronics.

The actual series did not fail to deliver. Of course, epsecially the close ups looked fake, even back then, and being spoiled with today’s CGI (I rewatched the whole thing recently on Netflix) also the computer generated sequences look a bit dated, but it’s still interesting to watch.

So, all in all, the 2013 movie had quite something to live up to. And, in terms of video quality, it does look gorgeous. 14 years later, it really does look realistic. No more feeling that, eventhough you’re supposed to be looking at some prehistoric creature, you’re really looking at some colored rubber on a metal frame. Especially striking was the glittery skin on the Gorgosaurs, as if the T-Rex from Jurassic Parc hired the most festive tux it could find (this sounds tacky, but it really isn’t).

That’s where the praise ends, though. Because gone is the original WwD formula of documentary-like story-telling. I probably would have loved this movie if it was made like the beautiful Earth, which shows that a nature documentary can be made feature length. Instead, though, it was turned into something more akin to Babe, the talking pig, although they did resist the temptation to have the creatures lip-sync (although that could not have made it mcuh worse). Its’s a rather corny feel-good story, with an underdog hero that rises to the occasion. To make matters worse, the whole thing is wrapped in a completely unnecesarry present-day thing with a rebelious teenager who, after having been told said corny story by a crow, suddenly does think his paleontologist uncle is pretty cool after all.

How wonderful it could have been, when that executive who did have some sense (they did exist, right? RIGHT?) was able to convince those responsible for this highly commercial choice and was allowed to hire the likes of James Earl Jones (see the link to the Earth trailer above) or Jeremy Irons (see this clip from the wonderful The Last Lions to get an idea) and turn this into the beautiful tribute to the orignal series it should have been.

Posted in Uncategorized | Leave a comment

Gizmodo: Full Scale Lego X-Wing

This is Lego Inception. A enlargement of the small Lego model to full scale, built with… Lego.

Go to the original article »

Posted in Uncategorized | Leave a comment

Iron Baby

Cleverly made Iron Man parody.

Posted in Uncategorized | Leave a comment