My last post, written more than ten months ago, began with the words “Itβs certainly been awhile, hasnβt it?” Never could I’ve imagined that those words would mark the start of my longest blogging silence by far since creating this site nearly half a decade earlier.
I’ll bet you all thought I fell off a glacier in Antarctica or something, but in fact I’ve been right here in Los Angeles for (almost) the entire time.
So what’s the deal?
Well, you might recall that the decision to return from China last February (instead of continuing South through Cambodia, Vietnam, Laos, and Thailand) was made to give myself a chance to catch up on a growing list of projects, both personal and professional. It’s that list that’s kept me here all these months, as one thing just seems to keep leading to another.
And although I still have no concrete plans for the next big adventure, I wanted to write to assure you that it’s never been my intention – and still isn’t – to leave this blog out to die. Nor is it my intention to get a regular desk job and abandon my adventuring ways. At least not yet, anyway. I’ve just been on hiatus.
For those who may be interested, I’ll write about some of the things I’ve been up to this past year in a separate post – but first I just wanted to point out the most obvious of the recent projects: a complete and total overhaul to this website! It’s finally Web 2.0 time for Justin-Klein.com π
Although I’ve put loads of time into this site over the years, it was originally started with absolutely zero knowledge of web programming. I managed to teach myself bit by bit as I went along, and although it eventually reached a point where I was satisfied with its functionality, I’ve never been particularly happy with the design. Let’s face it, I’m a programmer, not a designer.
But for someone who funds his life almost entirely through programming it is a bit embarrassing to have my name so strongly attached to a website that looks like it was designed in the early 80’s. I’ve just never had the time to really dig in and redesign everything from scratch. Until now.
Some of the finer details of what’s been changed are listed below, more for my personal reference than anything else – so feel free to skip them if you like. However, any insights, impressions, or bugs reports would be much appreciated – even if it’s something as simple as “I don’t think this banner’s color scheme works” or “such-and-such border is a few pixels off.”
I will briefly mention that this new version is slightly heavier on the javascript than before, and although it’s been tested to work fine on FF2, FF3, IE7, IE8, Opera and Safari, it is quite slow on IE6. Hopefully this doesn’t inconvenience too many readers…I figure 9 years is long enough to support an outdated browser that never really worked properly in the first place π
So, hello again everyone – after ten long months of silence. I’d be interested to hear who of my original readers still even bothers checking in…and hopefully even those who don’t will drop by sooner or later, in time for my next big adventure which I’ve promised myself will commence well before this year’s out π
See Changes:
- All static pages (Projects, About, Resume, etc) previously existed as standalone php outside of WordPress; they’ve all been moved into true “WordPress Pages,” their templates loaded via a template_redirect hook so they’ll drop easily into any theme I choose.
- Guestbook was previously using a separate CMS, “ViperGB” – I implemented a custom WordPress page to exhibit the same behavior, and imported all existing entries. Also added support for uploading images (as was available in ViperGB).
- Scrapped a workaround hack I’d been using for the site-wide header/footer to compensate for the fact that some pages resided outside of WordPress; now the look & feel of the entire site is encapsulated in a single “Justin-Klein.com” theme.
- Changed both the filestructure and URL structure to allow everything to function more seamlessly from within WordPress; old URLs should be automatically redirected to their new locations.
- All of my custom sidebar items (Current Location, Photo of the Day, etc) are now implemented as Widgets so they can be used as-is with any theme. Also created a new Recent Comments widget to replace the old Recent Comments page.
- Moved all of my custom functionality code out of the theme and into a plugin, so it can be used as-is with any theme. Everything is now implemented properly via Hooks and Filters, so again, swapping themes is painless.
- Integrated some simple third-party plugins’ functionality into my custom plugin, to reduce code bloat.
- Separated Current Location widget’s code from main Travellog’s, and use the Google Maps Static API instead of a regular javascript map.
- Significantly cleaned up the main Travellog javascript, which now loads ~80% faster on most browsers. Also added the ability to collapse menus independently of toggling markers. Items in the menu are italicized when they contain links to blog entries.
- Moved Rikai widget into an iFrame (and restyled it) so it no longer locks up the pageload when Rikai.com is down.
- My original localization code was rewritten to use the standard gettext() method…then scrapped entirely in favor of Google’s handy javascript translator (which automatically translates the entire page without the need to reload).
- Added an extensive custom Admin Panel (which nobody but me will see :P)
- Removed a some hacks I was using for enforcement of private posts, which were necessary while the privacy plugin I’m using was still in beta.
- Significant code cleanup for both style and efficiency – to remove leftover garbage from my progressive experimentation and to better encapsulate functionality that’s specific only to certain pages. Lots of HTML & CSS has also been restructured to allow my custom pages to be dropped into any theme.
- Restructured the Private Gallery: it’s now a page which lists pages of attachments, instead of a page which lists posts of a specific category with attachments.
- Changed the layout of the Videos & Private Gallery pages (2-column).
- Created custom shortcode that uses the Facebook API so I can automatically create private galleries from Peder’s Facebook albums (since he posts & documents most of the photos we take on our mutual trips).
- Images in Private Gallery now display in a lightbox, and the order within each album is correct (sorted by name).
- Videos & Private Gallery no longer require hardcoded paths to their thumbnails via excerpts (WordPress now officially supports post thumbnails).
- Added keyboard controls to a few places (i.e. cycling between Photo of the Day with left & right).
- Created custom Shortcode to handle my mouseover zoomable images; previously, the html was all hardcoded into the posts. The z-indices of each image is now handled automatically, as well as captions being used for the ALT of the img tag itself (for SEO). This required a massive regexp find-replace to the database.
- Original qtip library changed to a more versatile jQuery solution.
- Extensive use of jQuery selectors & $(document).ready() to replace onLoad() events.
- Added ability to sort the Blog Listing page by comments or views (in addition to date).
- Several small items I’d been updating by hand are now automated – i.e. my age on the About page & daylight savings for the clock widget.
- Use Wavatars for commentors who don’t have Gravatars.
- WordPress and all third-party plugins updated to the latest versions.
- Add Google Analytics.
- Content/formatting additions & revisions to the Projects, About, and Resume pages (my resume still isn’t updated though…)
- Created custom RSS feed that includes Photo of the Day and Videos (as well as regular blog posts).
- Numerous layout fixes for stupid non-standards-compliant IE.
- Created 11 color-themed site banners selected at random on pageload
- …And once everything was rewritten to properly utilize WordPress’s Theme/Plugin/Widget system, created the new layout based on Suffusion, customizing it and overriding its default CSS where appropriate. This also required restructuring a bunch of the HTML in my existing pages so they’d work both with suffusion and my old theme (with differences limited only to CSS).
Also, some manual changes to the content itself:
- Went through and set “Read More” breakoff points for all existing posts, so the mainpage can show excerpts instead of a simple list.
- Some excessively long posts were split up, out-of-order posts were moved, and a few completely irrelevant posts hidden.
- Added post thumbnails to the “Favorite Posts” so they can be shown in the new Featured Content rotating banner.
- Added support for post tags to my archives page, & tagged some of the old posts as I went back to add the “More” tags (I’ll eventually add a tag cloud).
- For Photo of the Day’s taken directly from an existing post, added links to those posts.
There were probably even more changes than listed above, but I think you get the idea π Basically, all this started with the idea that I really needed to properly encapsulate my “presentation code” and “functional code” into WordPress’ system of user customization, so I wouldn’t have to maintain so many of my own custom hacks and it’d be easier to take advantage of improvements to the WordPress core and to migrate to other themes in the future. The farther I went the more I discovered I’d either done completely wrong, or were no longer necessary because a similar feature had been integrated into WordPress.
At long last, properly-implemented libraries wrapped in a shiny new box that I’m actually not embarrassed by! π
The new site looks great! Glad to see a break in the silence. Makes me think I should do the same on my blog.
Thanks! π
I never even knew about jamesvandyne.com actually – just lomohut (your old site?)
Welcome back! I’m a new reader, but I’m looking forward to hearing your stories:)
Well, your hiatus certainly has been difficult for those of us who do our vicarious living through you! The new layout looks fantastic – thank you for making it Safari-friendly. I’ll keep the occasional eye out for updates.
Lis – Welcome! I Always love to hear from new readers, and at a first glance your blog looks pretty on-point with my lifestyle; interesting that you stumbled on my site, can I ask how you found me? π
Dave: Haha well, as I said I unfortunately don’t have any new one-way tickets to brag about just *yet*…still, better late than never, right? π
GOOD JOB!
And thanks for all your help! You and Peder are by far the best bug-pointer-outers around π
Yup! I found you through Google Alerts for lifestyle design and digital nomad. Good stuff.
That’s crazy – I literally JUST added the terms “digital nomad” to the site a couple hours ago. This whole new design hasn’t even been up for half a day yet! Way to go, Google.
Justin – Yea, it’s my old site. Closed it down about a year ago as I wanted to move to someplace with less history and more new car smell.
I hear ya on the “website with a new car smell!” π
Been waiting for the εΎ©ζ΄» of this blog for a while! The new design looks great!
Thanks! I’m so glad everyone likes it π
The new design is so easy and pleasing to the eyes. Great work!
Hi, Justin. Glad to see you are back. I just got my plane ticket for annual journey to Kobe Samba.
Herb: Thanx – haha especially since I ripped the Suffusion theme off from you π
David: Glad to see you’re back too! You were actually one of the readers I was specifically wondering about (whether you’d return or not), since you’d been here since nearly the beginning π
You can’t get rid of me that easily.
Good! π The adventures begin again in 3 days…I takeoff for Munich at 7am…