My Beard Doesn’t Sweat

But my eyebrows do. It’s the weirdest thing. By mile two of my five-mile elliptical routine, I’ve got sweat pouring down my back, down my chest, and down my forehead. And even more sweat seems to sprout from my eyebrows. They’re like two sponges sitting over my eyes, getting heavier and heavier, until they release rolling, salty torrents down the bridge of my nose and into the corners of my eyes, where they sting and blind and madden, until I brush the sweat off my brow with an already soaked hand, leaving my entire face wet and dripping, and no better because it’s still stinging my eyes. And so goes the next three miles. But through it all, my beard stays dry.

And so goes another five miles today, which added to Sunday’s five miles, brings the total to eighty-two miles.

20120522-220041.jpg

Giving It 7.2 Percent

Seven-point-two percent. Of 1000. It doesn’t sound like much. But I promise you, walking seventy-two miles in a month and a half is not an easy task for a guy who weighs 400 lbs (although I think I may be dipping below that now), and who probably didn’t walk seventy-two total miles per year prior to 2010.

I was hoping to hit 100 miles this week, but my body told me earlier this week I needed to take some time to recover. Since my post on Tuesday, I did manage five miles on Wednesday and another five Thursday. I’m feeling moderately stiff today, but I’m not as bad off as I was last weekend. Five miles in a daily session on the elliptical  is apparently something I need to work up to over a month or so, not try to do it in the first one hundred miles.

I’m going to continue to shoot for five miles a day, but I’m going to try and stagger (no pun intended) between no more than three back to back all-at-once five mile sessions days followed at least two days where the miles are spread out over other activities, like walking at the park, zoo or one of the many museums across the river in DC.

I’m also going to try taking the longer route to work. My current route is about half a mile on the way in and another half mile on the way back home (interrupted by a Metro ride and a shuttle bus), for a total of one commuting mile a day. I haven’t been counting these miles towards my totals, but I think I may need to to reach my 1000 mile goal next April. Besides, mornings and evenings in DC are wonderful in the summer, and are a perfect time to walk.

I may also take up walking at lunch again, provided it’s not too hot that day. I really don’t want to come back to the office with my clothes soaked through with sweat. And I suspect my co-workers would appreciate it if I avoided it as well.

Tonight I plan on doing the five miles again on the elliptical (this will be the third night in a row), but tomorrow I’ll try a different activity to reach the five miles. It’s a Saturday, so I won’t have the walk to work, but I’m sure my four-year-old can help me find and activity to get my feet moving.

The count: Seventy-two miles down, nine hundred twenty-eight to go.

 

Five Tips to Jump-start Vanilla Forums Theme Development

Quite a bit of my work over the past year has been integrating ListServ (the grand-daddy of email discussion lists) with a modern web forum. I built the initial prototype from the ground up, but performance issues and lack of bells and whistles most users expect these days led me to evaluate several open source platform. After some research, a couple of false starts, and one near-disaster, I settled on Vanilla Forums.

Vanilla Forums is a mature open source forum platform with an active community in which the developers actively participate and listen to the ideas, wishes and rants of its community members. The Vanilla team has been working hard to develop formal Documentation for the platform, and while I would consider the forum administrator and user documentation complete, the developer documentation is only half way there.

I think part of the challenge in documenting Vanilla Forums stems from the developers us of Model-View-Controller (MVC) design pattern. MVC helps developers produce high-performance, reusable code, but it’s easy for an a developer unfamiliar with working with Object Oriented MVC code to get lost in layers of abstraction.

I found myself in this situation as I neared completion of my ListServ integration project. Much of my work over the past decade has been refactoring spaghetti code into some semblance of structure, and I’ve had a good bit of experience working with object oriented PHP, but I’ve never seen anyone drink the MVC Kool-Aid like the developers at Vanilla. Their code is tight, clean and performs extremely well, but it isn’t always clear what classes, methods and functions to use.

In future posts, I’ll try to dig down deeper in how to make Vanilla Forums behave, but for now, I’ll share my quick and dirty tips on where developers can get started building their own Vanilla Forums Themes.

Take advantage of Open Source themes.
If you’re building your own theme, don’t. Steal, borrow, or exercise some Open Source license on a theme you like that’s structurally close to what you want to do. Use Find/Replace (at least in Dreamweaver) to change all instances of the theme name. And don’t forget to rename any files that contain the them name. Oh, don’t forget to give yourself credit for your new awesome theme in the “about.php”.
Don’t be a Smarty-pants.
Smarty is a templating engine built to run on top of a PHP application. Unfortunately, Vanilla has only implemented a few “Smarty tags”, so using the Smarty theme templates (you can recognize them by their .tpl extension) is a bit painful for PHP developers familiar with using PHP at the presentation layer. To prove you’re smarter than Smarty, and to make building your own custom theme significantly less frustrating, delete “deafault.master.tpl” from your theme’s “views” directory and replace it with a copy of default.master.php (found in the “/[your-vanilla-root]/applications/dashboard/views” directory)
Do it with Style(s).
Vanilla’s stylesheet “strategy” can get messy fast. Create a “custom.css” in the “[your-theme]/design/” directory. As you modify classes, copy the whole class you want to use from “/[your-vanilla-root]/applications/dashboard/design/style.css”. You can often achieve everything you want out of a custom template just by modifying the stylesheet.
Get plugged in.
Plugins are relatively easy to use in Vanilla. If you want some special functionality out of your theme, look for a plugin that does something similar, and then make it your own. If you can, try to take advantage of Vanilla’s built-in modules and classes, but if you’re trying to build a simple plugin on a tight deadline, sometimes it’s easier just use ten lines of PHP to query the database and echo the results where your want them, rather than using a few hundred lines across several files to build to MVC design patterns.
Do whatever it takes.
If you can’t figure out where Vanilla is adding a particular element (usually it’s embedded deep within a module, inside of an enigma, wrapped in a mystery), don’t be afraid to commit CSS assassination (visibility: hidden !important). Just remember to come back to it once you’ve done your product demo.

Hardcore Vanilla developers will probably flame me over these five tips, but sometimes it’s better to be a pragmatist rather than a perfectionist.

After all, if the client is happy with the job, then it’s a job well done.

One Hour, Sixty-Two Miles

20120508-214458.jpg
Me, after an hour of sweating.

Last Wednesday, I passed mile fifty-seven. Up to that point, I was on a great run of five mile days, but my body was paying for it. I decided to take a couple of days off to recuperate, and with weekend activities “conflicting” with my walking time, I ended up taking four days off.

I jumped right back in with five miles today, but I need to work out an alternating routine during the week until I’m really comfortable with five miles a day and not having so much difficulty the next day.

In a car, I can easily travel sixty-two miles in an hour. I barely notice the distance, and while hope I’m getting good gas mileage, I really don’t think about the amount of energy being expended. It’s taken me more than twelve hours spread over slightly more than a month to travel sixty-miles. It was hard work. The next road trip I take, I think I’ll appreciate my wheels a little more.

The count so far: 62 miles down, 938 miles to go.

20120514-230106.jpg
My photo finish turned out a bit shaky...

Hitting My Stride

Last night I completed another five miles, bringing the total to fifty-seven. I’ve hit a good stride with the five mile walks. I’m able to do them in just under an hour (as in 59 minutes and fourteen seconds). I’m tired but not beat when I finish, and I’m recovering much faster after a workout. Over the next week or two, I’m going try to keep the five mile distance, but increase my speed to six miles-per-hour. Once I finish consistently under fifty minutes, I’m going to try to add a sixth mile to the daily walk.

Sometime between now and the five miles in fifty-minutes goal, I should pass 100 miles. I’ve had several people privately say they would make a pledge for the 100 Mile Goal, but I’m the only one one who’s publicly posted a pledge.

Initially, I thought no one was making pledges because nobody knew about this site, but checking out my site performance in Google Analytics, I’m getting between seventy-five and one hundred people visiting this site a day.

What’s stopping you from making a pledge?

I know that my decision not to post photos of Sasha on the public site probably has an a negative impact on fundraising, but Sasha’s parents and I have serious reservations about posting photographs of our children in public places. I may be slightly paranoid, but I believe posting pictures of your children in a public is a bad idea, as it makes them targets. If you are a close friend or family member, I am posting some photos later this week of Sasha having a “play date” with my daughter Alisa. I suspect most of my visitors also happen to be Facebook friends as well.

If you’re reluctant to make a pledge directly to Sasha, please consider pledging a donation to St. Jude Children’s Research Hospital.

You can also help Sasha or other children battling cancer by starting you own 1000 Miles fundraiser. Email me at coden@bravozulu.bz, and I’ll help you get set up on this site or with your own.

Finally, please tell your friends about this effort and use the “Like”, “Tweet” and “Share” buttons below.

The count: 57 miles down, 943 to go.

One thousand miles doesn’t seem that far…

First 50 Miles: a Walk in a Park – a BIG Park

I knocked out another five miles last night, bringing my total mileage up to fifty-two. That’s fifty-two miles in a month! I need to be doing just under a hundred to make mile goal, but fifty miles to me was an important symbolic number: I knew if I could finish the first fifty miles, the next fifty wouldn’t be as tough. And after the first hundred, the next hundred should be easier as well. From here, one thousand miles looks like a walk in the park.

OK, it looks like a very long walk in a park that goes mostly uphill. But completing the first fifty mile proved to myself that I’m serious about doing this.

We also had dinner with Sasha and his family Saturday night, and seeing how much strength he gained back so quickly after his latest round of chemotherapy, I’m reminded that this isn’t just a walk in the park.

Those pledges are important. They help keep me motivated through the next fifty miles, but they also help Sasha get well. He’s a strong boy, and I hope he’ll be well enough to walk his own 1000 miles soon.

If you can’t make a pledge of money, make a pledge to walk, or run, or ride. While I would appreciate a pledge for Sasha, making a pledge to help another child or charity would be welcome as well. I’ll be happy to give you a voice on this site to share your journey, or help you get set up on your own.

It’s amazing that we live in a world were all it takes to make a difference is to put one foot in front of the other, wiggle and click a mouse, or touch a screen.

The count: 52 miles down, 948 to go.

A walk in the park.