5 ball juggling - week 4

So, I missed a week on the juggling videos... That was partly due to a lack of practice. Between Phyllis graduating and a wedding this past weekend, there hasn't been so much time for goofing off. In any case, check out how I am doing in the video.

This was actually not the best night for me, as I struggled to get past 10 throws many times. Yesterday I was getting 15+ throws regularly, and I have had a couple runs of more than 20. Eh... there's always next week.

YLS Graduation

It is another Tuesday, and for the past two weeks I have uploaded a video showing my 5 ball juggling progress. That video will be delayed a couple days this week because I missed about a half week's worth of practice. It was for a good cause, though: Phyllis graduated from law school on Monday!

mccartney-thumb.jpg It was a crazy and fun weekend. We had Phyllis' family in town, and my parents came, too. We went to several receptions, we had over 50 people in our house at one point, and among all that I had to squeeze in time for maintaining my experiment.

Yale graduation was a lot like Harvard graduation, except that they have more space so there is no crazy line to get into the yard. Paul McCartney received an honorary doctorate in music. While I was actually at the event, you probably saw more of him on the news than I did. You can see the extent of what I saw in the photo which accompanies this post.

Now A Member of the Habari PMC

Earlier today I was asked to join the Habari project management committee, and I enthusiastically said, "yes!" I've been putting in a lot of hours lately into implementing Habari's new user interface, named Monolith by Michael Heilemann. I am very excited about this platform and where it is headed. The community of people around the project have been very welcoming and supportive of my work. So, thanks!

Debugging PHP on Windows with XDebug and VIM

Habari is a sufficiently complex PHP application that sometimes the only way to figure out what is going on is to fire up a debugger. Following a suggestion on #habari and some google searching, I found an article on the Box.net blog on using XDebug with vim. The instructions were for a linux box, and I initially struggled to get things working on Windows (XAMPP). But, I finally got it through digging through the comments on the Box.net article and Vim documentation. I thought it would be useful to gather the required steps in one place, so here are my instructions:

  • Read the Box.net article.
  • Download XDebug and put it in xampplite\php\ext
  • Edit xampplite\apache\bin\php.ini. Add these lines: zend_extension_ts="c:/xampplite/php/ext/php_xdebug-2.0.3-5.2.5.dll" xdebug.remote_enable = 1 xdebug.remote_port = 9000 xdebug.remote_host = localhost
  • Restart Apache. Check that xdebug appears on your phpinfo() page.
  • Download the xdebug plugin for Vim and put it in: C:\Program Files\Vim\vim71\plugin
  • Download and install Python 2.4 (not 2.5). You can see which version of Python your copy of gVim is looking for by looking for the 'python' string in the gVim binary (dirty, but it works!)
  • Now you need to modify debugger.py to work with windows paths, so open debugger.py in gVim
    • Change the session file to something reasonable. XAMPP has a directory that already serves this purpose, so you might change self.sessfile to self.sessfile = "C:\\xampplite\\tmp\\debugger_vim_saved_session." + str(os.getpid())
    • Now change every occurance of getAttribute['filename'][7:] to getAttribute['filename'][8:]. Do the same with getAttribute['fileuri'][7:]
  • Open up a browser and append ?XDEBUG_SESSION_START=1 to the end of an address on your local webserver.
  • Open gVim. Hit F5, then refresh your browser page. You should now be debugging!

Defensio spam checker

For whatever reason, Chris J Davis's Akismet plugin is not catching any spam. This is odd, since Akismet[1] worked beautifully when I was running Wordpress. Until I figure out what is happening with that, I have switched to using Defensio. Defensio is the new kid on the block, promising high accuracy and a spam catching engine which is trained to your personal definition of what is spam and what isn't. We'll see how it goes!

 1 2 3 … 39 Next →