Remembering XRAY
Every once in a while you test a tool and think to yourself, “I need to come back to that one when it matures”. The trouble is you never do… unless someone reminds you of it!
Thanks to “mcfinn” in my [seyDesign Member Group](http://www.seydesign.com/support/membership/ “membership | support | seyDesign Professional RapidWeaver themes”) I was reminded of a cool tool, [XRAY](http://westciv.com/xray/ “XRAY :: for web developers”), for analyzing the box model of any element on a web page with the click of a button. XRAY, a bookmarklet, is a quick and tidy way of grabbing some DOM info without having to wade through the whole DOM tree like FireBug and WebKits developer tools.
While the XRAY bookmarklet isn’t as powerful tool as FireBug, and it doesn’t have editing capabilities, it is very handy for quickly and accurately pointing out the styles effecting a specific element on a page. Just click the bookmarklet, then click on the elements you want inspected.
[tags]web, developer, design, tools, xray[/tags]
Let Them Know You're Open With PHP
I wanted a php script that would inform visitors to a [web page](http://www.seydesign.com/support/contact_us/ “contact us | support | seyDesign Professional RapidWeaver themes”) that the office was either open or closed, depending on the day of the week and what time of day it was. I made a half hearted attempt to find one on the internet, but to be honest I knew I could write one faster. I thought of making it a proper extensible class but thought I’d better move on before I tie up too much time in it.
It’s pretty basic but I thought some of you might find it handy for your own purposes. The directions are in the script itself which you can [download here](http://www.seydoggy.com/downloads/officeHours.php.zip “”).
Life As a Theme Developer
Have you ever wondered what a day in the life of a professional RapidWeaver theme developer is like? Wonder no more because I am about to tell you.
**02-18-09 07:22** – started writing this which will end up being a blog post on seyDoggy.com
**02-18-09 07:23** – opening up [Mailplane.app](http://mailplaneapp.com/ “Mailplane brings Gmail to your Mac desktop”) to have a gander at what support has crawled in overnight.
**02-18-09 07:28** – popping in the the Realmac Software forum to respond to a thread I was notified about… nothing for me to add.
**02-18-09 07:40** – helped potting training daughter go to the potty.
**02-18-09 07:52** – responded to an email from the [seyDesign Member Group](http://www.seydesign.com/support/membership/ “membership | support | seyDesign Professional RapidWeaver themes”).
**02-18-09 07:53** – reacted to a [Twitter](http://twitter.com/ “Twitter: What are you doing?”) follow request… followed.
**02-18-09 07:56** – Twittering.
**02-18-09 08:02** – responding to another Realmac Software forum thread.
**02-18-09 08:04** – sifting through a bunch of press releases that I subscribe to.
**02-18-09 08:18** – responded to a comment on seyDoggy.com blog.
**02-18-09 08:19** – moving over to the support email account now. Checking the spam box since Google seems to deem all of my real support requests as Spam.
**02-18-09 08:21** – yup, 7 messages caught in the spam box.
**02-18-09 08:22** – opening up [Parallels](http://www.parallels.com/ “Mac Virtual Machines and Virtual PC. Automation and Virtualization Software for Desktops, Servers, Hosting, SaaS – Parallels”) to confirm one users report of an IE bug with one of my themes.
**02-18-09 08:24** – realizing that their complaint has more to do with screen size than anything else. It’s not a bug, me thinks. Keep testing.
**02-18-09 08:28** – just got a wrong number on the support line. “seyDoggy who? I’m trying to call my sister.”
**02-18-09 08:38** – yup, IE6 issue was just the end users window size. I like that kind of support.
**02-18-09 08:50** – support taking longer then I hoped. Need some tunes.
**02-18-09 08:59** – support is done.
**02-18-09 09:00** – opening my calendar (a [Fluid.app SSB](http://fluidapp.com/ “Fluid – Free Site Specific Browser for Mac OS X Leopard”) of Google Calendar) to see what’s on the plate. My calendar is my mental mapping tool.
**02-18-09 09:19** – more forum posting.
**02-18-09 09:20** – back to calendar, deciding how long it’s been since I invoiced this one client before deciding to do more work for them. Have to be extra cautious in todays economy, not to get into too deep with any one client.
**02-18-09 09:21** – going to do some site updates (in [TextMate](http://macromates.com/ “TextMate — The Missing Editor for Mac OS X”)) for said client.
**02-18-09 10:27** – just answered someones questions about [M Cubed Softwares](http://www.mcubedsw.com/ “M Cubed Software – Yummy software for the Mac”) [Code Collector Pro](http://www.mcubedsw.com/software/codecollectorpro “M Cubed Software – Code Collector Pro”).
**02-18-09 10:48** – syncing client changes via [Panics Transmit](http://www.panic.com/transmit/ “Panic – Transmit 3 – The next-generation Mac OS X FTP client!”).
**02-18-09 10:57** – hmm… forgot to update the sitemap… and all the french `
**02-18-09 11:06** – sitemap updated, french `
**02-18-09 11:26** – fresh coffee, looking at my calendar… what next…
**02-18-09 11:28** – checking my @bugs tags in [TaskPaper](http://www.hogbaysoftware.com/products/taskpaper “TaskPaper — Simple to-do list software”) to see if there are any pressing bugs I should tackle… one in [seyDoggy bloop!](http://www.seydesign.com/themes/bloop/ “bloop | themes | seyDesign Professional RapidWeaver themes”) but it’s going to have to wait until I have the time for some extensive rewriting. It’s only an issue with one plugin so it’s not really a bug as much as it’s a compatibility issue. Moving on…
**02-18-09 11:33** – continuing with Med Designs Bubblegum.rwtheme update. Adding some really cool new features to it. Checking my todo list within the theme to pick up where I left off on Monday.
**02-18-09 11:54** – force quitting [RapidWeaver](http://www.realmacsoftware.com/rapidweaver/ “RapidWeaver 4 – Powerful Web Design Software for Mac OS X”) after I jammed it up with a tricky Theme.plist move.
**02-18-09 12:22** – commit current set of changes to the rwtheme package go make lunch.
**02-18-09 12:54** – exercise… it’s important to get away from the office chair for a bit so you don’t develop [deep vein thrombosis](http://en.wikipedia.org/wiki/Deep_vein_thrombosis “Deep vein thrombosis – Wikipedia, the free encyclopedia”), but getting and walking about is boring. So I exercise; 50 pushups, 25 crunches, 20 lying-on-my-back-leg-lift-thingies, 20 of the same, but lying on my side, and then again, but on my tummy. Not only is it good for preventing DVT, but it helps my core compensate for slouching at my desk for hours at a time.
**02-18-09 13:17** – back to Bubblegum.rwtheme update.
**02-18-09 16:04** – committed a whole whack of changes to the Bubblegum.rwtheme. Time to wonder about the house for a stretch and maybe splash some cold water on my face.
**02-18-09 16:08** – scheduled in two custom jobs, one for Friday and one for Monday… *sigh*.
**02-18-09 16:23** – feeling refreshed. Time to get back at it. But it’s time for 10 minutes of fun; time to read a chapter of [*jQuery in Action*](http://www.manning.com/bibeault/ “Manning: jQuery in Action”).
**02-18-09 16:45** – Well it’s time to call it a day and go embrace the inner chef in me. I hope you’ve enjoyed peering into a day in the life of a professional RapidWeaver theme developer.
Rebuilding after all of these years!
Rebuilding after all of these years. Seriously, it’s been years since I have done a clean install… since Mac OS X 10.2 to be exact. I have been pulling all the crud I have collected over the years along with me like barnacles on the bottom of of the ship of life. And like the real thing, those barnacles have been slowing me down.
This became painfully obvious recently when I made a new user account to make some tutorial movies. The new account was *fast* and *responsive* in a way I hadn’t experienced in years. If this wasn’t evidence enough, I was having a nagging problem with [TaskPaper from Hogbay Software](http://www.hogbaysoftware.com/products/taskpaper “TaskPaper — Simple to-do list software”) where for no obvious reason, it would quite with every launch. Between Jesse and Apple they were able to nail it down to a webcam component that was not proper GC code but was pretending to be. The point is, I have no idea where I ever picked up that component or when even. It was time to nuke and rebuild.
The reason I haven’t in so many years is because I have come to rely on so many hacks over the years, things that Mac OS X wasn’t either capable of or didn’t do well enough. It was a scary thought to try and get by on a stock system or try and replicate those hacks again. For the last little while I’ve been trying to change my habits, trying to use less 3rd party hackery and find native solutions or terminal commands that accomplish the same thing.
For instance, years ago I used to use [USB Overdrive](http://www.usboverdrive.com/ “”) to ramp up my mouse tracking and and assign special functions to various mouse button combinations. When support for it waned I turned to [SteerMouse](http://plentycom.jp/ “Main Page”) which did almost exactly the same thing. But now-a-days I barely use the mouse and when I do all I really need is a speed boost which is easily [achieved in the terminal](http://www.macworld.com/article/49691/2006/03/turbomice.html “Turbocharge mice and trackpads | Mac OS X Hints | Macworld”):
> If you have a mouse:
>> `defaults write -g com.apple.mouse.scaling some_number`
>If you have a trackpad:
>> `defaults write -g com.apple.trackpad.scaling some_number`
>The some_number at the end of each of the above lines must be replaced by, well, an actual number indicating the speed you’d like to use—the higher the number, the faster the tracking will be. As a starting point, the default value for maximum mouse speed is 3.0, and maximum trackpad speed is 1.5. So you might try a starting value of 5.0 for your turbo-charged mouse, and 2.5 or 3.0 for a turbo-charged trackpad.
> The easiest way to make your changes take effect is to log out and then log in again (Apple menu: Log Out user name ).
I guess my point is this (wearing my nutMac/productivity hat), if you are going to spend any time as a developer of any sort, keep your system customizations to a minimum, install only those apps you honestly think you’ll need or use, find native solutions to mods you can’t live without, document those mods carefully and alway be prepared to do a clean install from time to time. The less cluttered your system is the better chance you have using a migration assistant so you don’t have to do it all manually like I did.
That’s where I am at now. I have spent nearly two whole days manually moving preferences and folders for the apps I need so that I can be sure not to take all the other crap with me again. Now that I have done my clean install I should have no trouble keeping it clean every six months now.
From pixels to paper, we're getting noticed
There is no greater flattery than to be made an example of so when we were asked some time ago if we would consent to being published in DesignMeltdown’s, The Web Designer’s Idea Book, I was truly honored.
Today, I received my copy in the mail and was thrilled to find these kind words on page 102 along side a screen shot on page 103:
"A great example of a unified design is the seyDesign site. It has an office theme, and everything flows together perfectly. The corkboard background creates a terrific foundation to tie the site together. It essentially gives the office supplies a place to exist."
Of course this isn’t how the site looks today, but for this 2007 iteration of seyDesign.com to be forever immortalized in print is a true sense of accomplishment. All in all, RapidWeaver developers as a whole had a good showing in this book with various sites. Adam from Elixir Graphics has already written about his contributions. and I’ve heard there are more, I just haven’t had time to look through each page yet.
To get yourself a copy of this most excellent web design resource, go to Amazon.com.
To be Strict or not to be
I am about to geek out so bad it will make your eyes roll back and have you snoring before you finish the first paragraph. But to be honest, it’s not for you that I write this stuff, it’s for posterity and so that I can always look it up in the future, if such a thing should ever happen to me again.
I have finally nailed down an obscure little bug in cataLog (and in turn Acumen) that was causing the second level navigation to jump up about 14 or so pixels when the user used the “Tidy” setting in RapidWeaver and when the user used code or content that tripped the “Tidy” setting into converting the document into a Transitional DOCTYPE. The reason the bug remained so illusive is that this set of circumstances was not immediately clear and is not necessarily something the end user is mindful of.
My repeated testing, assuming that there had to be a difference in the content area or navigation area, kept leading me down the wrong path. One assumes, when “Tidy” is at work, that the HTML of the document is somehow being altered or “tidied up” as it were. And this is where I continued to search extensively but came up empty handed every time. Having exhausted nearly all HTML avenues and having run countless DIFF comparisons I finally turned my attention on the one thing in each document that I knew was different; the DOCTYPE. By simply switching the DOCTYPE from Strict to Transitional, regardless of whether the embodied code was in fact one or the other, I could trigger this odd navigational occurrence.
As much as this was a major breakthrough in the tracking of this bug, I now knew that the game had gotten that much more complex. I was no longer dealing with a bug in my code or the theme as a whole. I was now dealing with what was potentially a rendering bug, or interpretational difference in the two DOCTYPE’s, meaning that the bug being presented may very well be an issue in the HTML standard itself. Eeek!
Since I knew that the navigation in question uses inline-block as a value on its display property, and since I am well aware of the lack of widespread support that inline-block has among browsers, I knew that this was probably the place to look. I need to look in the CSS of the second level navigation.
Through considerable trial and error I found that an attempt to display the ancestor, or hidden navigation inline was what was causing the trouble. In DOCTYPE Strict, the combination of ul {display: inline;} and ul ul {dispay:inline-block;} caused the initial ul to have height, despite having tried to suppress it with ul {height:0; margin:0; padding:0;} etc… While in DOCTYPE Transitional, the initial ul rendered correctly (which is to say it didn’t render at all and had no height), so the latter ul would shift up to takes it’s position. The fix was simply this: ul {margin:0; padding:0;} with no attempt at any display value other that what it would naturally inherit (which would be “block”).
So is this in actual fact a bug in the Strict DOCTYPE standard? It’s hard to say really. In the making of RapidWeaver themes, we pour a lot of effort and trickery into making things happen the way we want them too. In the case of split navigation we use the same set of code in multiple locations and simply turn on or off the bits we want shown or hidden. This probably is not a typical practice in web design but a necessity in RapidWeaver theme development. Still, why would one DOCTYPE behave differently from another where such a small property in concerned?
seyDoggy is back in the office.
We are back from or little vacay, and back on the horse, if you will, working through a pile of emails and such. On our agenda this week is to address a few bug issues in some of our RapidWeaver themes, namely a footer issue in wideNas, and a couple of mystery bugs that occasionally rear their head in cataLog and Acumen. We should have all of these addressed this week with their respective update installers ready for download.
And as always we are ever moving forward and onward with the theme developments and ideas. We have quite a list of them to get through over the next year or so so you can be sure to see one or two new themes from us every month. Yes that is an ambitious plan, but this is what we do after all, we might very well be the only full time RapidWeaver theme developers now who do nothing else.
And speaking of RapidWeaver, did you notice that RapidWeaver 4.2 has been released? Yes indeed. I have not yet tried it myself, but I have downloaded it and will be getting into it shortly. Learn more about it’s release here.
seyDoggy teams up with DEVi8.design
It’s always a sign of progress when a company forges new relationships and we are not the exception to that rule. A couple of months ago, seyDoggy and DEVi8.design started talks to bring a vision of DEVi8.design to life. A little over a month ago a deal was inked to turn a concept design of DEVi8.design’s Chris Cifonie into a full featured RapidWeaver theme.
Today, the fruits of that collaboration were launched in the form of a seyDesign RapidWeaver theme called DEViANT Pro. Thanks to Chris’ vision and our technical know-how we have managed to make a RapidWeaver theme unlike many out there. It’s clean, simple and open feeling yet under the hood lies a powerful beast capable of changing to your every whim.
The biggest struggle in making the original vision a reality was making the layout “soft” or flexible, while still maintaining a graphically driven feel. This was done with the use of several transparency tricks and background colors combined to give maximum control with graphic polish. The end result is a theme with width variations, full color control and a handful of other great features that should please the most particular RapidWeaver users. Not content to stop there, we found a great opportunity to take this theme one step further and add 3 tier split navigation to this already awesome theme.
All in all we couldn’t have been happier with the outcome of this theme and I must say it was a pleasure to work with Chris Cifonie on this project. His designs are a treat bring to life.
Old Friends on New Horizons
In late 2005 Chris Pavlicek (of Varsis Studio) and I started talking about collaborating on RapidWeaver themes. We both had something to offer the other; Chris with his unmistakable design style and willingness crack any code and me with my promotional skills and desire to make clean organized and effective code. By mid 2006 we were putting out some pretty revolutionary stuff.
After 3 years and many themes later, Chris and I are talking again. This time it’s about me taking over his theme library, the one he has (or used to have) at Varsis Studio. Chris is really focusing hard on his RapidWeaver plugins which as any software developer will tell is very demanding on his time. Before the new seyDesign.com was done we were talking about this and working out the small details.
Today we’re starting to see the results of all that talking. I was able to release Varsis Studio Fade on seyDesign.com. Fade is a RapidWeaver theme that Chris did up for a pro developer bundle back in January of 2007. I’ve spent a few weeks on it, gutting from the inside out and filling it full of new features.
The rest will follow over time, interspersed with a few seyDesign originals, and who knows, maybe even another Varsis/seyDoggy collaboration.
cataLog, RapidWeaver and good timing
Wow! I am blown away by the response to our latest theme cataLog Pro. In what I think is both a case of timing and luck, cataLog Pro for RapidWeaver 4.0 has surpassed any other theme in our library for initial launch numbers. Timing being a factor for a few reasons:
- RapidWeaver 4.0 is fresh in peoples minds
- There is a lot of new activity and 3rd party development surrounding RapidWeaver
- There are a great deal of new users
- RapidWeaver is fast approaching critical mass
And as always, luck can always play a big part in these things. Some themes I’ve made in the past have been the right idea at the wrong time and have picked up more and more as time went on. cataLog Pro seems to be a case of the right idea at the right time. This, apparently, was a theme that fit the bill for so many people with a need for it at that moment. I’ve received countess emails to that effect, “This is exactly what I needed for a project I was starting.”
With RapidWeaver really taking off as it has off late, I really ought to do another talk at WatRMUG (Waterloo Regional Mac Users Group) and reintroduce the Kitchener-Waterloo users to website building, the RapidWeaver way.

