Posts tagged ‘Personal’

Where I’ve Been

Things have been rather busy in my life recently, even though this blog doesn’t really reflect that. I thought I’d take a short post to share with any readers who may have wondered where I’ve been the past month or so.

I changed jobs a few weeks ago and the new one has kept me fairly busy learning processes, writing proposals, and beginning to work on projects. I’m getting acclimated to actively using Zend Framework again, which I’m enjoying.

I also recently launched Phergie 2.0, which was very well-received. Moving the project over to GitHub, launching the new project web site, and helping with the first round of bug fixes has kept me busy.

The ball has started rolling on getting my book published again. The ISBN has been obtained, the last round of edits is happening now, and the digital edition should be available for sale before the TEK-X conference in May. I’m hoping to have a few dead tree copies to distribute at the conference.

Speaking of which, I’ll be speaking at TEK-X, so I’ve also been working on preparing my presentation on new SPL features in PHP 5.3. I’m planning on putting my presentation content into (fairly long and embellished) blog post form, so keep an eye out for that.

I’ve been under the weather with a cold over the past week. I’ll try to find more time to blog once I’ve recovered and things have settled down a bit.

Lethargy

I don’t generally use this blog to write about personal matters. However, I feel the need to clear the air a bit about something that’s been weighing on me lately. If you’re reading this, chances are that I’d like you’re advice about how to deal with this situation I’m in.

Those who know me are aware that I’d been working on a book up until recently. The manuscript for that book is now in the hands of my publisher’s editor. At this point, there’s nothing for me to do but sit back and wait for it to be reviewed so any residual editing can be done before the book goes to print.

I worked toward this state of completion for many months. It sapped nights, weekends, and other moments that might otherwise have been free. The feeling of it being completed, at least until editing starts, was understandably a relief of sorts. What followed, though, wasn’t something I’d expected.

I thought that, after a period, I would reconstitute myself and get back into the ring, so to speak. Whatever the next project was, be it working on Phergie or Zend Framework, I would start.

But I can’t seem to find motivation. There’s this ever-present feeling of lethargy where there used to be enthusiasm. I remember feeling similar to this when I graduated from college. As long as I had been waiting for time to work on other projects, my own projects, it felt like I didn’t have it in me when the time finally became available.

I’m not sure that state ever went away or, if it did, how I got rid of it the last time. All I know now is that I’m not sure what to do about it. Maybe it’s burn-out? I don’t know. It’s not a feeling I like, but I’m not sure how to rid myself of it. It’s like an angst to do something, a restlessness, but nothing that comes to mind seems enticing.

Have you ever felt something like this? If so, how did you get past it?

Another Year, Another Summary

In seeing several people doing the year’s end blog post thing, I decided to take a look at my post from last year and follow suit with one for this year.

First, I thought I’d look at the list of goals I set for this year and see how I did.

  • Fail: I ended up leaving my job in Baton Rouge and also withdrawing from BROUG due to other commitments, so I wasn’t able to get very far into my term as their VP.
  • Draw: I did read and write a review for one book, though it wasn’t in my existing backlog. I managed to read or at least skim through most of The Pragmatic Programmer and blog about it several times. No other reading to speak of, though.
  • Win: I submitted one paper for OSCON that was rejected, then submitted four for ZendCon and got one accepted. I gave one of the others as an uncon session.
  • Win: The aforementioned book review was also released as a PHP Abstract podcast episode. While it hasn’t been published yet, I do have another magazine article coming out next month that I wrote this year.
  • Win: Part of the reason I haven’t done more in the way of podcasts and articles is that I did get a publishing deal and find myself a technical editor. I’m in the ever-so-slow process of writing the book now. I’m hoping it will be out in the first half of 2009 and will post updates here as they arise.
  • Fail: While I did get initial code and unit tests developed for Zend_Service_RememberTheMilk, the unit tests I did ended up needing to be refactored to use local static files representing expected web service responses. In short, my interest and energy levels were depleted before that portion of the project was completed.
  • Win: I did migrate my blog to Habari. I can’t say it’s been entirely stable (though it’s admittedly still pre-1.0) and without issues, but the ride has been interesting nonetheless. I may look migrating to something else later depending on how Habari does. WordPress seems to be improving, so maybe I jumped that ship too soon.
  • Fail: No developments on a content management project yet, just ideas floating around. I may get around to it eventually, but for the moment I’ve got enough other projects keeping me busy.
  • Fail: The local music scene web site project never got rebooted either, again due to lack of time and interest.

So 4 wins, 4 fails, and 1 draw. At least I broke even. I also did accomplish a few things that weren’t originally on my list.

  • I had a large hand in rebooting the Acadiana Open Source Group, a local agnostic open source software user group. It’s had monthly meetings almost every month since April and I consider it a fair success.
  • I was present for the first public offering of and among the first to take the new Zend Framework certification exam. Though it was rather last minute that I was able to get a slot, happily I was able to pass.
  • I switched jobs twice. The first change was to surgiSYS, LLC. I enjoyed my work there and later made the difficult decision to leave for other opportunities at Blue Parabola, LLC, where I’m currently working and having a blast.
  • I attended php|works and PHP Appalachia both for the first time. Both were immensely fun and informative events and I hope to continue my presence at both next year.
  • I’m now a technical editor for php|architect magazine. So, if you submit an article for the magazine, chances are you might be working with me to polish it up before it goes to print.

And I’ve got an updated goal list for this year, of course.

  • Finally finish my book and hold a published copy in my hands! (And hopefully get requests to sign a few. Hey, a guy can hope.)
  • Continue this year’s success of the Acadiana Open Source Group and become involved in other technology and social media related events in the area, such as the TechSouth conference.
  • Publish another magazine article. PHP podcasts, it seems, are going the way of the dinosaur. The two most well-known, PHP Abstract and P3, haven’t published episodes in a few months.
  • Get accepted to speak at another conference. It’s looking like php|tek is going to be a bust for me this year. I submitted three papers – web scraping, IRC bots, and a repeat of my Zend Framework web services talk. The conference lineup does look really good, though, so I do hope I get to attend. If I do, I’ll probably do a BYOL Phergie hacking session for the uncon. (And hopefully Phergie will be to 2.0 stable by that point.)
  • Get a new non-PHP certification, likely MySQL CMDEV.
  • Finally get around to reading Sara Golemon’s Extending and Embedding PHP and a Christmas present from this year The C Programming Language from K&R so I can contribute to PHP in some way, be it internals or PECL.

So, I hope your New Year was as productive or more so than mine, and wish you all the best in 2009. Happy New Year!

Seven Things – Tagged by Keith Casey

My Blue Parabola colleague Keith Casey decided to pull me into one of those viral tagging games. Since my blog has been building up a little dust lately between my Blue Parabola blog posts and my book, I decided to kill two birds with one stone by obliging him and freshening up my landing page a bit.

So, onto the seven things you may not know about me bit.

  • I used to play the flute. I did it all through middle school and then my freshman year of high school. When I was about to enter middle school, I was brought along with a group of new students to a table to sample the various instruments that were available to me and selected the flute because I liked the sound. The time commitment and demanding activities involved in the high school marching band lead me to abandon it. I continued to play here and there for church and the like, but haven’t picked it up in years. Currently, I can strum a few guitar chords and aspire to one day pick up drums and piano.
  • Web development was my bread and butter through most of college. In 2001, I landed my first job with a small web development group within Gannett tasked with creating a custom CMS for news publications within the state. After being there just under a year, I moved on to work for a web development company for three and a half years and finished off my degree working for an education-focused non-profit for a year before finally graduating at the end of 2006.
  • My Bachelors Degree was in computer science. OK, maybe most of you already knew that. My concentration was video game design and development. There, is that better? I started out in information technology, moved onto cognitive science, and then finally finished out in video game development only a few semesters after the concentration first became available. My interests have been more prevalent toward web development and I haven’t really touched game development since I left school.
  • I have a black belt in judo. Between ages 12 and 18, I was actively involved in a local club and took my shodan test shortly after graduating from high school (the minimum age to test was 18). At one point, I held certifications to referee at local tournaments and teach several kata forms. I acted as a coach in my club during my last few years of high school. My mother and brother were also in the club with me and some of the fondest memories I have from my teen years are of times we shared there.
  • While in judo, one of my better known talents was jumping over people. One of the skills practiced in judo is break falls, which are generally used to take falls without injury while practicing throwing techniques. One of its more "flashy" applications for the purposes of demonstration is leaping over a group of people arranged in a line and falling safely on the other side. My records were three standing men of roughly equal height and ten preteen kids sitting cross-legged. I was often referred to as being "half gazelle."
  • I originally met my wife when I was 12. Want to guess how we met? The judo club I just mentioned. At the time that I started, she was 16 and an orange belt. She was in a car accident shortly thereafter and was out for six years. When she finally came back, I was 18 and a black belt. The first words I ever said to her (after listening to her babble for three weeks straight in determination to befriend me) were "Do you ever shut up?" (No, I’m not kidding.)
  • During college, I grew my hair out to shoulder length. My parents always had me cut my hair before it got to be very long. While I was in high school, it was also against school policy for boys to wear their hair longer than a certain length. Once I was in college, I decided to try it just to have the experience. I cut it short again shortly after Hurricane Lili left us without working air conditioning for a week. While I’m glad to have done it, I don’t expect to repeat the experience in the future. Related photos are probably buried somewhere and I’m too lazy to go digging for them.

And now onto the fun part where I get to tag seven other people into doing this.

Why I Will Never Fly Continental Again

I don’t normally blog about this sort of thing, but it’s been such a source of frustration for me in the past few weeks that I feel it necessary to communicate to others if only to prevent similar frustrations for them in the future.

When I discovered that I would be speaking at ZendCon 2008, I made my flight reservation with Continental Airlines on June 26, a full 10 weeks before the conference was scheduled to begin. I was to depart from Baton Rouge, connect in Houston, and arrive in San Jose.

On the week before I was due to depart, Hurricane Ike began making its way through the Gulf of Mexico. The airport was preemptively closed from Friday afternoon through Saturday before the storm was scheduled to make landfall. Through this period, I kept a close eye on the Important Notices page on the Continental Airlines web site in order to stay informed on the status of my connection in Houston.

At 5 PM on Saturday 9/13, the page was updated to indicate that the Houston airport would be closed through 2 PM Sunday 9/14. My flight was not scheduled to land until close to 5 PM, so I waited. Later that evening at 7:30, the page was updated again to reflect that the Houston airport would be closed through the entirety of Sunday.

In speaking with customer representatives during this time, I discovered that the only hub for Continental in the southern half of the USA is in Houston. All flights go through the hub, even those from the nearby city of Dallas. Further digging on the Continental web site after the announcement of the closure of the Houston airport revealed that my departing flight from Baton Rouge had indeed canceled by Continental. I obviously couldn’t depart from Houston since the airport was closed, nor could I connect in another city because Continental did not have another hub in the southern half of the country. In short, all my travel arrangements were ruined.

I received no notifications of any type, e-mail or otherwise, from Continental during this time. Had I not been so attentive in monitoring their web site, I could have made it as far as Baton Rouge before knowing that my flight was canceled. I also received no offer of service from Continental to help me fix my situation by rebooking with another airline or flying through another hub in the northern half of the country. They did absolutely nothing for me.

At that point, I scrambled to file a refund request with Continental, then rebook my flight on American Airlines to go through Dallas, which was luckily far enough inland and sustained little enough damage from the storm that it was still operational. I was able to make it to and from ZendCon with no incident after that, aside from substantial additional expense gleaned from having to rebook last-minute.

Upon my return, I received an e-mail from Continental stating that I would not receive a refund because my ticket was non-refundable. As I understood it, the purpose of a non-refundable ticket was to discourage alteration or cancellation of reservations once they were made. According to Continental’s own Important Notices page, because my flight was canceled, I was within my rights to request a refund. Apparently that doesn’t mean I was within my rights to actually receive one despite the fact that I paid Continental to provide a service that, in the end, I didn’t get.

I responded to the e-mail with an explanation of the situation. That was eight days ago and I’ve received no subsequent communication from Continental since then. I will be pursuing the matter further, but the sheer amount of grief that this company has caused me is something I would not wish on my worst enemy. If you want to do me a favor, don’t fly Continental. If this is any indication of how they do business, they don’t deserve yours.

Aloofness

So I’ve been a bit out of pocket the past few weeks. Most people probably know why. For one thing, I was doing a personal experiment to see how going without IM and IRC during work hours affected my productivity. The change seems to have been positive, so I’m most likely going to stick with it for the time being. I’ll continue checking Twitter and e-mail throughout the day, but I just seem to get more done by limiting my focus to just those things and my work.

That’s not the only reason for me having been out of the picture, though. I’ve been making preparations to speak at ZendCon for the first time, which will be comprised of an official session on Creating Web Services with Zend Framework as well as uncon session on Web Scraping with PHP. As time-consuming as it can be to make arrangements to attend a conference, it’s all the more so if you’re speaking at one. Putting an hour-long presentation together from nothing is quite the daunting task, especially when you have to do it twice.

Lastly, I’ve secured an agreement with a publisher to author a book on web scraping using PHP. I’ve had a number of people ask me if there were any good books on the subject and I’ve never been able to suggest any. I’ve also become a frequent “go to” person of sorts for web scraping applications. It’s been on my personal list of goals to author a book, so it seems a good way to kill two birds with one stone. The book should be coming out sometime later this year and I’ll post to my blog again to announce it when the time comes.

Some of you may know that tropical storm Gustav recently came onto the scene in the Gulf of Mexico. At the time of this writing, it is a borderline hurricane and currently projected to sweep right through Vermilion Bay, about 10 miles from where I live. At the moment, I plan to evacuate west with my family to stay with relatives until the storm has passed. Tropical storm Hannah is likely to be only a few days behind Gustav, however, so that may extend my absence. Internet connectivity will likely be limited or unavailable where I am, but I will continue to use my phone to send messages to Twitter where cell coverage is available. For those of you who are spiritual, I ask that you keep my family and other residents of this area in your thoughts and prayers during this time.

The Lafayette CampFiber

Just a quick post to inform local residents about a very exciting local development.The Lafayette CampFiber, a barcamp-style event, will be hosted on October 4th at the Travis Technology Center in Lafayette. I’ve been waiting for an event like this to take place in Lafayette for several years and am very much looking forward to it. More information is available on Lafayette CampFiber BarCamp.org page. Registration is free, but limited due to seating limitations, so sign up early!

From BarCamp.org: “Inspired by the community, ad hoc, unconference model of BarCamp, and driven by the desire to spark the imagination of developers to create the next generation of big bandwidth applications, the Lafayette CampFiber will bring together local developers in the Lafayette area to discuss the opportunities being created by the deployment of LUSFiber, soon to be one of the fastest residential networks in the country.”

Acadiana Open Source Group

While the Acadiana Macromedia Multimedia User Group has been around for a number of years and the recently formed Acadiana .NET User Group (requires Silverlight) has added to the number of user groups in the Acadiana area, there was still a void left by the long since defunct Linux user group of the area that needed to be filled. To that end, I decided to spearhead an effort to start a local user group for the open source software community.

The Acadiana Open Source Group now has a web site, a Facebook group, and a first meeting scheduled for the end of April. So, if you’re in the Acadiana area or know someone who is, tell them about AOS! I’ve sent out press releases to various media sources, sent Facebook invites to friends, and will likely end up posting flyers in various places around nearby UL campus before the meeting date. I want to pack the conference room we have reserved and have a large number of return visitors for the next meeting, so bring it!

Do What I Mean and Not What I Say!

If you posted a comment recently and don’t see it on the blog, I apologize. I managed to accidentally delete some when going through comments to approve them. If you wouldn’t mind, please repost them, as most had very good content relevant to their respective posts. Thanks!

Dual-Booting XP and Kubuntu on a Sony Vaio

So it turns out the Holy Grail, Promised Land, or whatever you want to call it, does exist after all. After a number of different approaches and attempts, I finally got my Sony Vaio VGN-NR298E dual-booting Kubuntu and Windows XP. The solution turned out to be a well-known one: nLite.

With it, I was able to not only roll the drivers for my SATA drive into a custom XP CD, but also SP2 as well. It also offers options to include other drivers as well as post-SP2 Windows hotfixes and custom configuration options. I have to give major kudos to the nLite folks, as I imagine I would have given up at attempting to do this had it not worked as splendidly as it did.

So, without further ado, here’s the final recipe for succes in this endeavor. Obligatory disclaimer: I take no responsibility should you not have the same success or suffer damages by following these instructions. Other obligatory disclaimer: The only reason I went to this much trouble to dual-boot to XP is because I can’t find another solution that allows me to play my games.

  1. Download nLite. Use it to make a local copy your Windows XP CD.
  2. Download the standalone Service Pack 2 installer. Point nLite to it as a service pack to include.
  3. Download the Intel 82801HEM/HBM SATA AHCI Controller driversExtract them for unattended installation and point nLite to them.
  4. At this point, you can choose other drivers to include on the CD. Below is a list of those that are relevant to the Vaio. Be sure to have either Ethernet or Wifi drivers included in the CD or on a storage medium that Windows can recognize natively without external drivers.
  5. I ran into a small issue at this point that may or may not be pertinent to your case: the only machine on which I had a CD burner available was a Linux server machine. nLite was helpful in this regard, though, and offered an option to make the ISO file it created mkisofs-compatible. Using this, I was able to copy the ISO over the network to the Linux server, use mkisofs to test it and cdrecord (man page examples on this utility are helpful) to burn it.
  6. Boot the custom CD. Note that you no longer have to hit F6 at the point where you normally would to install custom drivers; the installer will simply detect that they’re available on the CD and load them from there. Installation should be pretty normal after this point. Partition your drive however you like, being sure to leave enough room for Kubuntu to load. You’ll probably notice the installer forces you to leave 8 MB free, presumably for the NT boot loader. Once you’re in Windows, you can reset your screen resolution and manually install any drivers you didn’t roll into the CD. Once you’re connected, install any further Windows updates that might be necessary.
  7. Once XP is set up to your liking, pop the Kubuntu CD in, boot from it, and access the installer on the desktop once KDE has loaded. In order to not have Kubuntu overwrite your XP installation, you’ll have to opt to partition manually. You’ll notice that the installer sees the 8 MB that XP made you reserve earlier. I’m not sure why, but the installer sees this as free space. At any rate, I just consolidated that space into the Kubuntu partition and let it set aside its 3 MB to load GRUB. I’m not sure how to keep the NT boot loader and not load GRUB, so if you prefer that route, you’ll have to dig around on your own to find out how. Set up your root and swap partitions and continue.
  8. Installation should again proceed fairly normally. Once you’ve loaded your installation for the first time, connect your machine to an ethernet cable and launch Adept, the package manager GUI for Kubuntu. Do a search for Windows and you should find a package called Windows Wireless Drivers. Install this for wireless if you need it. Beyond that, install updates and you should be good to go.

And that’s all there is to it, folks. It was a wild ride to figuring out the process, so I hope my efforts help someone else looking to do the same thing. Cheers!