The Monotony Train…

…with stops at Routine, Repetitiveness and Cabin Fever, is now out of service!
It’s taken nearly 2 months, but we’re finally back in charge of our lives and making things happen again. Routine, as boring as it can be, is always a useful tool in establishing a baseline. Its from a foundation of effective routine that you can start building new and more exciting things into your life.
Our routine got thrown out, and we realised we’d surrendered control to outside influences. So we started again, defining a new routine: adjusting to it, adapting it, and disciplining ourselves on it. And now we’re ready to step out again.
Thursday we go for the ultrasound that will hopefully tell us what the sex of Baby #2 is. Nicole actually wants to know this time, so I won’t have to keep it a secret for the next 7 months!
Last time, when Nic didn’t want to know, everyone had a guess — and almost everyone guessed right. If you’ve got an idea this time, head on over to the poll on the sidebar, and let us know what you think. If the ultrasound can see the necessary details, we’ll let you know on Friday.
Thursday night, Nic’s sister Pam is also arriving, for a long-weekend visit. Nic and Pam sorta look alike, but they have very different personalities. I love them both dearly, but I suspect that by the end of the weekend, I’ll have had enough girl-talk to last me until Christmas.
Monday I board a plane to head to Green Bay. I’m very much looking forward to this trip — to understanding our product’s history better, planning for its future, and getting to know the people who brought it to life. Plus I get a rental car with a GPS in it, and a hotel with a pool…
I’ll get back on Friday, and then Saturday load Benjamin into the car for a day-long road trip back to Canada. I’ve got the iPhone loaded up with 4 audio books (as well as a 20 CDs, a dozen NES games, and 2 full-length movies) for the road, and I’m hoping Ben sleeps most of the way.
When I get there I’m gonna help my Dad-in-law load up Boot Camp on his new iMac, and get in a quick visit with an old friend Sunday morning before I drive back to NY, leaving Ben behind with his grandparents.
The day after I get back, Nic and I fly out for Florida. We’re staying at a 4-star hotel, on the beach, and we’ve rented a convertible for our stay there. Its about a 2 hour drive to Universal Studios, where we’ll spend the time we’re not laying out on the sand.
Again, a huge thank you to everyone who helped out with our vacation fund. We appreciate you!!
When we get back from that, Nic will head to Ontario to visit her fam for a few days and pick up Ben, and I’ll be helping my employer recruit some fresh new college students who can do our grunt work join our team.
That’ll get us through to November, a month with two long weekends, and hopefully, some new opportunities to serve in ministry — with a little less commitment of time than our previous efforts.
After weeks of having a pretty bleak calendar, I am relishing the thought of having some action in life again. I have no intention of blogging while on vacation, but we’ll be sure to post lots of pictures when we get back.

Changing Meta Types in iTunes Files

So I’m off on a road trip next week, and I’ve downloaded a number of “spoken word” MP3s to listen to while I drive (it’s an 8 hour trip). The only problem is that now they’re mixed into my iTunes library, and when I hit shuffle on my iPod, every 3rd or 4th song will be a chapter of a book. It would be useful if iTunes would let you identify any MP3 as an “Audiobook” but they’d rather you buy your books through them, so they don’t expose that functionality directly. Here’s instructions on how to re-type your MP3s as Audiobooks for iTunes…

Also, if you want to re-type video, or other MP4 files — say to turn a downloaded video into a “TV Show” check out Lostify for Mac. It won’t work with AVIs though.

Learning to get around

Over the past couple months Benjamin has gotten more and more mobile. A little over 3 weeks ago he took his first tentative step. Since then we’ve pretty much had to trick him into walking — distract him with a toy or something so he doesn’t realise he’s not holding on to anything. Last week he could take a step or two, and this weekend he started to get a lot more confident.
I imported a ton of footage from the past few months, and rendered it out on this poor iMac G4 — I’m sure it nearly died doing it. Its been awhile since I worked the FinalCut magic, and I’m stuck on Express now, but here’s a brief history of our son’s locomotion skills. The best part is right at the end…
http://video.google.com/googleplayer.swf?docId=5309420902715519364

Enabling WebDAV on OS X

I won’t re-write the article, but this weekend I wanted to turn on WebDAV on my Mac mini, and this article pretty much covered it for me. The article talks about using iCal, but do the steps and see the FAQ for additional tips on regular file sharing.
The only note I’d add is that Digest authentication didn’t work for me in OS X 10.4.10 — I had to use Basic authentication.

There's no escaping from the bass

Both parts of my project went Alpha 2 today, at two demos for select customers and integrators. The feedback was overwhelmingly positive — and most of the questions/suggestions were things that I already had a good answer for. It still a long haul until release (and I have to break in a new grid guy ;o) but today was a very affirming one.
Some of my ideas are tough to sell internally — not because they’re that radical, simply because they’re a departure from the norm or contrary to established standards. So when the actual users weigh in with their approval, its a huge relief and encouragement… and not so bad for the ol’ self esteem either.
I have to say though, I sure am glad I don’t have any thing else to do all weekend. My brain is fried!
PS: Say happy birthday to jonandnic dot com! We’re 7 years old!!

WordPress Hacking: Multiple Blogs On One Set of Tables

Note: This post was written for WordPress 2.1. Please see the comments for discussion on how to apply to newer versions!
I recently rolled out a new theme for my website. Normally when I do this, I do it against the live site, so there’s about an hour where the site is either broken, or looks really weird while I’m working on it. This time I wanted to be a little smarter.
The goal was to build another blog — a “test” blog where I can try out new themes and other experiments — that pointed to the same data as the main site. This way I could get a realistic picture of what the site would actually look like before I publish an updated theme.
The more I thought about that, the more useful the concept seemed. What if I wanted an iPhone-friendly version of the site? I wouldn’t want to write the same post in two places. Now eXpression could do this very easily — since every “page” was actually a query, you could just specify a different theme file (XSL) in the query. WordPress, not so much.
What WordPress can do is allow you to specify a table prefix for each installation on a given server. That means you can have 3 blogs, each with their own set of tables. When you build your wp-config file, you tell it what prefix to use. Since this is the case, it should be fairly easy to install another instance of WordPress and point it back to the original blog tables, right? Here’s how you do it…
Step 1 – Install a new instance of WordPress

  • Make sure it has a unique folder name so it doesn’t over-write your original blog
  • Run the install pages, and give the new blog a unique table prefix
    • IE: If your original blog got the default prefix: wp_ then give the new blog newwp_
  • Get the blog up and running with an admin account, but don’t bother posting anything

Step 2 – Point the new blog to the original blog’s tables

  • Modify wp-settings.php as per the instructions found here
    • Modify all the table pointers EXCEPT for Options
  • This means that only the Options (including Theme and Plugins) will be specific to your new site. Everything else (including Posts and Comments) will come from the original site
  • So anywhere you see: $wpdb->users = $wpdb->prefix .
    Change it to: $wpdb->users = ‘wp_’ . ‘users’;

    • where ‘wp_’ is the table prefix for your original blog

Step 3 – Grant the admin user from your original blog the same permissions on your new blog, by inserting two records into your wp_usermeta table:

  • Where wp_ is the table prefix of your original blog and newwp_ is the table prefix of your new blog…
    • INSERT INTO wp_usermeta (user_id, meta_key, meta_value) VALUES (1, 'newwp_user_level, 10')
    • INSERT INTO wp_usermeta (user_id, meta_key, meta_value) VALUES (1, 'newwp_capabilities', 'a:1:{s:13:"administrator";b:1;}')

That’s it! You now have two uniquely styled blogs with the same data in them! The only thing that sucks is if you have Sidebar widgets configured, you’ll need to re-configure them in your new blog as well and manually keep them in sync. That’s the case for all options, and that’s why this is useful.
A couple other notes:
If you want, you can delete the superfluous “new blog” tables — just make sure you leave the Options table intact.
I have no idea how this will work during a WordPress upgrade. My current plan is to run the upgrade on the original, or base, blog, then manually change the Options table structure, if necessary, for the secondary, or derived, blogs.

A stranger with the door key, explaining that I'm just visiting…

I complain a lot about the US$. I thought today I’d explain why.
When we first considered moving to the States — easily 4 years ago, the prospects were great. Not only do US employers pay significantly better, but they pay in US dollars, which meant we could make even more on our money!!
This was the assumption upon which we lept southward. Although the first part was true — my pay in the States is a good 50% better than what I was making in Canada — the second part is sounding more and more foolish.
Although we are most liquid here, we still have plenty of liabilities in Canada: two car loans, life insurance, and student debt. These payments must be made monthly. Did you know there’s no easy way to transfer funds between countries? In the movies the bad guys wire each other money with the click of a mouse and an animated ticker counts off their millions as its deposited. In real life, its nothing like that.
The reality is that once a month, Nicole heads down to the bank — during their ridiculously limited business hours — and writes up a wire transfer. This takes anywhere between 3 and a billion days to go through. Meanwhile the US bank charges for the money order and shaves their share for doing the currency exchange. Then the Canadian bank charges for the transaction and shaves their share for doing the currency exchange.
When we first moved here and the exchange rate was hovering near 1.15 CDN$ per 1 US$ we still managed to make (Canadian) money on the deal. We’d meet our Canadian obligations, and tuck a little money into our account for savings and for trips home.
Then the exchange rate dropped to 1.07ish. We stopped making money on the transfer, but at least we were still breaking even. Yes, 1.07 is the same as “at par” when banks are involved.
Then the exchange rate dropped to 0.98 US$ per 1 CDN$.
Dear US Currency: welcome to the short bus. For years you looked at the Canadian dollar as if it was your retarded little brother. Now the rest of the world looks at you the same way.
Even after a slight recovery, putting the US$ back on top by fractions of a cent, we’re still hemorrhaging cash. We’re going into the hole each month we transfer money back to Canada.
I’ve gotta be honest, if we were to take an objective look at our foray into the States right now, the results that come back would not be optimistic… The economy continues to crumble, the war shows no signs of ending, and most of the reasons we had for moving here are gone.
On the plus side, shopping is still better here. Did you hear they want $799 for an iPhone in Canada? Am I the only one that’s noticed that the Canadian dollar should buy as much kit as the US dollar right now?

Website Changes

I spent the morning making a few changes to the website. I can’t sing enough praises to WestHost, my new Linux-based hosting company. They give me full access to my httpd.conf file, and even let me restart my “server.” Its made doing some more advanced configuration SO much easier. I can’t believe I used Windows Server for so long!
Anyway, first up, the jonandnic.com Archives are truly archived. eXpression is now completely dead, as there’s no server anywhere (that I know of) running it. I used a website downloading program that sucked down all the blog posts and associated images into a bunch of static HTML files. I’d throw in a little advert for the program — the only one I found that could handle eXpression’s very dynamic links — but it annoyingly advertises itself when you visit the archives, so I’m not going to say any more about it.
I will, however, add that eXpression was brilliant (if I do say so myself.) The difference between eXpression, PhotoShare, webCal and their PHP equivalents is not in technology. Its in community. WordPress, Gallery2, and php iCalendar are now mature and excellent web apps. But back when I was slinging .Net code for the web, I had a lot of features and ideas that rivaled what was out there. There was just no community to help me, and no way to get my stuff used. I’m happy now using other people’s stuff, but its hard not to get a little nostalgic about all the cool toys I had made.
– The archives are available in the side-bar or now at http://archives.jonandnic.com
Secondly, speaking of Gallery2 and end-of-life of my code. PhotoShare, the web service/eXpression plug-in that provided the photo albums for the old jonandnic.com is dead now too. This was the main reason I hadn’t pulled the old site down yet — there was no other way to keep historical albums. Flickr makes for a great stream of current photos, but I’m not going to buy into their package that lets you keep more than 250 pictures. I just don’t like how it organizes them — like it or not, albums (aka folders) are still the best way to organize photos.
So I’ll continue using Flickr for what its good for, and I’ve added Gallery2 as a way to host historical albums on this site.
– Albums are available in the side-bar or now at http://services.jonandnic.com/gallery2
The deprecation of the old server also ends the relationship it required with ZoneEdit and EveryDNS. If you’re looking into hosting your own server, I highly recommend using these free services — in combination with each other.
Happy Thanksgiving to our Canadian friends and family!