Reminiscing childhood vacations…


Image11

In-between my job switching, I convinced Cindy to come with me and some of my family to hang out in Nags Head, NC. It had been over five years since I had been to the Outer Banks and I was long overdue to try and relive my wonderful childhood memories from there.

When I was younger, my family was down in Nags Head several times a year. We’d always be there for a few weeks in the summer, many of the holidays (Christmas, Thanksgiving, and maybe Easter), and a stray weekend here and there.


Relaxing at the beach

There were plenty of fun things to do down there, but OBX’s biggest asset wasn’t the tourist attractions — it was the atmosphere. Some beaches lure you with glitzy hotels, fancy restaurants, and miles of boardwalk, but Nags Head lures you with cocktails at sunset, walks along wind-swept dunes, and genuine relaxation.

But how would a kid ever adore these things? The truth is that they didn’t. When I was a kid, vacations to Nags Head were fun since the whole family was there. Sure all of the standard things — playing at the beach, movies, mini-golf, etc — were fun, but they were all 10 times better with five other cousins around.


Sound sunset #2

So when I visited a few weeks ago, I got the chance to see why my parents loved going to Nags Head. Maybe I’m being overly dramatic, but it was an awing experience to relive those great childhood memories through new eyes, as an adult.

Saying good bye to Lotus…

Its been two years in at IBM, so that is about time for the “I‘ve Been Moved” pseudonym to take affect. Starting this past week (since I was on vacation the week prior) I left the yellow box plastered walls of Lotus and head to a group inside of the CIO office.

The short of it is, I’m moving away from product development toward prototype/research development. Not research in the academic sense (though I did consider that), but research in the sense of experimenting, learning, and innovating.

… intermission

Please remember that I’m not IBM, so these thoughts are 100% owned by Timothy J. Finley and not HAL^h^h^hIBM.

…And for the longer version (which has turned into quite a history lesson (more for my own archival purposes))

At Lotus I’ve been working on the Activities project from the first day I started, but Activities has meant many different things over the past few years. I was originally inspired to join IBM to help work on the productization of the Activity Explorer research project (wahoo a new way to collaborate!). When I started the team was just releasing the preview of Activity Explorer in IBM Workplace.

But it wasn’t very long before momentum started moving away from Activities as a traditional rich client application toward focusing on a web experience. This was great for me since I was one of the few people on the team that already had some web development skills. The period that followed was the best programming experience I’ve had so far in my life. We (me and my tech lead) were pumping out code left and right, righting decent tests, quickly getting a prototype usable, continually responding to feedback from use, and adding features all the time.

You are not a true web developer until…

You have used firebug. I’ve been an avid firebug user the minute I first heard about it — starting with the initial appeal of CSS inspection, then integrated error reporting, and then getting hooked on the interactive javascript console. Firebug .3 was a big step up from the built in DOM inspector, but still it had its problems with generated content, a quirky debugger, and the inability to see inherited styles.

Then firebug 1.0 came along obliterating these problems and brought a ton (no a metric *#$! ton) of great new functionality. Its sad enough that I’m extolling a piece of software publicly… its even sadder that I was jumping up and down (literally) in my apartment when I first tried out firebug 1.0 beta. Yeesh…

But I do have a good excuse. I do a lot of web development, I practically live and breathe it (though I have not been doing it much on the side lately). If a tool came along that made you twice as productive for your job/hobby, you’d be happy too — right?! And it is not just about productivity, its also about joy of use. I used to dread debugging nasty CSS issues. It sometimes took hours to figure out that that 3px gap was caused by a measly missing space between two selectors. Now I feel like I’m in control and am confident that bug will be easy to find (and fix)! So please, before you label me as too big of a dork remember that you’d be pretty happy too to find something that made your life so much easier :).

So for the doubtful, what can firebug do?

  • Click to inspect any part of the page to see its styles (and all the styles that have been inherited and/or overwritten), box model, dom properties, or html source
  • Dynamic editing of the page. HTML, CSS, and javascript. Just click to edit a field. The page will update to your changes in real time. As a bonus the edit fields have auto-complete (just like every other place you can type)
  • Solid javascript debugging with really quick and easy watch expressions. I knew that I should have been debugging instead of logging messages for a long time, but now I can finally use a debugger that isn’t painful (sorry Venkman… and firebug .3).
  • Profiling!!
  • Graphic visualization of all the http requests made on a page, including everything you need to know for page optimization!!!
  • Easily navigate between contexts since nearly everything in firebug is a link. Want to look into the properties of a javascript object? Click it. Want to see the http headers of a request? Click it. Want to inspect an element in the source view? Click it. This UI paradigm easily leads to feature discovery since you’ll always try to click on something to find out more about it — and you will quickly realize that it just feels right.
  • And many things are easily discoverable without a click. Just hover over any image string and a popup will appear. Same with variables while debugging and with hex colors (no more memorizing hex codes)!

And after watching a video of Joe Hewitt demoing his creation, I still learned more features:

  • When editing a numeric field such as padding just press up or down with the arrow keys to change the padding amount, slick!
  • Extremely simple conditional breakpoints. I used to think that you couldn’t do that in firebug, but all you have to do is right click a breakpoint and type in an arbitrary javascript expression.
  • Automatic bookmarklet “scrunching” when copying from the multi-line console
  • Keyboard shortcuts.. I can’t live without ctrl-shift-t and ctrl-shift-r in eclipse, and now I know I can do ctrl-shift-space in firebug. Oh and I finally found out that I can get rid of the Wed Developer Extension’s shift-ctrl-c shortcut so I can use it for firebug :)

If you still are not satiated, watch this screen cast.

Firebug - Web Development Evolved

Go and try it, and if you love it please donate to the guy. He deserves it.
I’m very surprised Joe hasn’t been picked up by one of the big web companies yet… He single-handedly has saved them potentially millions of dollars in man-hours. Maybe he has just turned them all down :)

He’s back…

It’s good to feel (mostly) normal again. That was one heck of an ordeal… but 2 ER visits, 3 doctor’s visits, 3 prescriptions, and 2 weeks later I’m back on my feet. Unfortunately, I still don’t have all my energy back and can’t play any contact sports for another month and a half (for me any sport involving other people… or the ground, is a contact sport).

I’ve actually been working at home the past week, but I went into the office for the first time in nearly 3 weeks today. It’s funny how quickly things change… last week when I just started working again I found out that my technical lead (Sami Shalabi) was leaving IBM. Bummer. Major bummer. Sami is a great guy, amazing programmer, and was a blast to work with and learn from. I certainly wish the best for Sami and I can’t thank him enough for all the experience I gained working side by side with him for the past nine months.

Thanks to everyone that talked, called, IMed, sent me a card, or visited. I definitely appreciate it.

Here’s a picture of what I missed at the baseball game I was supposed to go to on my birthday. Thanks Cindy, sorry I had to miss it.

![151671905][small][]