Behind the scenes

LiveWhale site updated with FAQ

We’ve added some frequently asked questions to the LiveWhale public site (www.livewhale.com), as well as a feed of articles about LiveWhale from this blog.

Sticking to the “use your own tools” mantra, we use LiveWhale to edit that site.  I can tell you that it is a heck of a lot faster to add items from an externally generated RSS feed to a LiveWhale-powered page— two minutes, give or take a few seconds— than it is to add an external feed to this WordPress-powered blog.

By Jason

Behind the scenes

Comments (0)

Permalink

Coding Ahead of Yourself

When you’re maintaining a software product which evolves and expands in order to remain competitive and make itself more useful to a user base, it’s easy to forget to keep all the moving parts in line with changes and new features as you roll them out. However, if this issue isn’t dealt with, bugs and performance issues will inevitably arise.

LiveWhale, our CMS, is essentially a module-based system. Individual modules can be provided to our customers on a per-client basis. Each module is a self-contained element, that “registers” itself in the CMS framework, thereby establishing its functionality throughout. A module is responsible for creating and managing its own data, but if it is flagged as group owned, access to that data is handled by LiveWhale’s users and groups system. Continue Reading »

By Alex

Behind the scenes
Best Practices
Tips

Comments (0)

Permalink

Screencast Demo of the Week

In the process of developing documentation for LiveWhale, our new CMS, we have begun to record screencasts to demo LW’s features.  Often it’s easier to show than tell, when it comes to CMS features; a narrated demonstration lets us inject a little personality.  And it’s also a lot faster than writing out a how-to page (although we’ll have to have written documentation as well, it does seem to be the case that nobody will actually read it).

Our first effort, a screencast of LiveWhale’s news system, leaves much to be desired; it’s clear that we’re new at this.  It’s hard to figure out the right tone of voice (how much humor?  how fast?  etc.), and it took several takes to get through it without messing anything up.  (And we still had to edit the final product a bit.)  I’m sure it’s something we’ll continue to refine and improve as we continue developing LiveWhale’s documentation.

All of this is to say that I  just watched the most effective screencast demo I’ve seen in a long time, if not ever.

Continue Reading »

By Jason

Behind the scenes

Comments (1)

Permalink

Converting to Title Case

In the process of developing and refining our CMS, the question occasionally arises whether or not we should convert text inputs from format X to format Y.  These questions range from the innocuous and straightforward (should we convert curly quotes to straight quotes?  or vice versa?) to the more insidious (should we correct a misspelling?  should we move close quotes to outside a period?).  

On the one hand, it’s probably best to let users make mistakes, or format as they wish, and depend on human communication to clear things up— instead of trying to build in a bunch of extra structure designed to cover for mistakes.  It’s our view that the latter approach leads to bloated, overbuilt CMS systems that discourage accountability.  But at the same time, consistency and coherence of communication across a Web site is a really, really important thing— it is what distinguishes sites that serve as good vehicles for an institution’s messaging from sites that are just decorated Web pages.

We’re thinking about this right now because we are considering automatically converting the titles of news items in LiveWhale to Title Case.  The following three news headlines, though identical in content, send very different messages:

1.  White Whale Web Services to Release New Content Management System, Revolutionize CMS Industry
 

2.  White Whale Web Services to release new content management system, revolutionize CMS industry
 

3.  WHITE WHALE WEB SERVICES TO RELEASE NEW CONTENT MANAGEMENT SYSTEM, REVOLUTIONIZE CMS INDUSTRY
 

Although there might be a justification for #3 in a particular Web design, it’s clear that you wouldn’t want a user to enter news headlines that way.  For one thing, caps are just hard to read in many contexts; but on top of that, it’s always easy to {text-transform:uppercase} if you need caps.  My general preference as a design snob would be for #2, but that’s clearly not common practice— as much as I enjoy headlines like this (or this), that style is much more common in European news than American.

It’s also the case that styles #1 and #2 look terrible next to each other:

  • White Whale Web Services to Release New Content Management System, Revolutionize CMS Industry
  • Other CMS providers cower in fear

So.  Should we let users do what they will, and enter headlines according to any system they prefer?  Or should we legislate something?  It seems pretty clear from the above examples that— at least in the particular case of news headlines— legislating is the way to go.  And if you’re going to require a particular format for headlines, it seems pretty clear that Title Case Is Your Only Option.

So what’s the best way to do it?

Continue Reading »

By Jason

Behind the scenes
Best Practices

Comments (0)

Permalink

Writing better thank-yous

Call it a pet peeve, but I find it very annoying to get e-mails like this:




In other words, a response to an email I’ve sent with only the reply “Thanks!”

Now, I know why these emails exist— to acknowledge receipt of my message.  But I trust the Web, and so I’m assuming it was received anyway— and whenever the email bell rings, and I see there’s a message from a client or business contact, I stop what I’m doing to open Mail and check it out, and whenever it’s a Thanks! I can’t help but feel a bit prickly, for having interrupted a creative stream for several seconds to find out something I already assumed.  I know it’s a little petty, but when you’re  juggling lots of tasks, a relatively content-free email like that seems superfluous and unnecessary.

Contrast this with an email I got a couple of days ago:




The effect an email like this has is completely different.  By adding just a few extra words to this quick thank-you message, the author let me know that the sentiment was truly sincere: that the letter I’d sent had a positive impact.  The difference is so minor— between spending three seconds on a response and spending ten seconds— but the resulting email really made my day.

So now I’m resolved to do a better job of writing thank-you messages myself; I’ll commit to spending 10-15 seconds elaborating why an email was particularly helpful, timely or informative. If I can’t make the time for an even marginally thoughtful or heartfelt response, I won’t clutter the mail servers of the world with a content-free return receipt.

By Jason

Behind the scenes

Comments (0)

Permalink

Paul Newman, 1925-2008

I’m back from my perfect wedding weekend; thanks to any and all of our clients who waited patiently with their questions and needs while the last week or two of my life got hectic with preparation.  (And thanks too to the rest of WW, who did a great job running things in my absence.)  Although it was hard to leave Oz Farm, the site of our wedding, it’s nice to be back on the job.

One sad note during the weekend was the passing of Paul Newman; he died on September 26th, the day before our ceremony.  Although Oz Farm is off the grid and there’s no cell phone reception, the news spread slowly across the farm on Saturday.

Paul Newman was a great, admirable man in all sorts of ways, from his commitment to social justice to his lifelong and devoted marriage.  But he’s on White Whale’s radar because he was an alumni, frequent donor, and great friend to Kenyon College, whose site we redesigned earlier this year.  I was fortunate enough to be asked to design a homepage graphic to serve as a tribute, and it’s now live on the Kenyon homepage, along with a moving tribute page and a photo-by-photo description of the homepage graphic.   To create it, I paged through countless photos, which really gave me a sense of how long and how deeply Paul Newman has been a part of the American consciousness.  (The folks at Kenyon did the important work of securing all photo permissions, which I know was no picnic, given that since Paul’s passing copyrighted images have spread across the web without proper attribution.)

By Jason

Behind the scenes

Comments (0)

Permalink

Optimization in PHP

Optimization is one of the most enjoyable parts of software design, but unfortunately it does not claim a high percentage of development time. Generally speaking, it is not a task to consider until the time spent is justified, which is often toward the end of the development cycle (but not always!) Still, it is an important step, especially with products like LiveWhale, which has to perform well under high traffic spikes. I’ve already talked about general page caching before, but fine-tuning a PHP application for speed when something is not cached is also important. Here are some thoughts on how to do just that.

At the code level, LiveWhale is a framework, which means the same codebase is hit for many different types of requests. The question is then: how to achieve high performance with a codebase that has to perform so many tasks and is therefore code heavy. It makes sense to divide code across a handful of files. The objective here is to only load libraries when you need them. A typical request will only use a tiny percentage of the entire codebase, so there’s no need to read a great deal of code from the filesystem and eat up RAM per PHP request. Also, with a modular system like LiveWhale, it is not explicitly known what modules exist that will need to be loaded. An important optimization is one where only the first request to the server has to perform logic to determine what to load. The results of this expensive operation are cached, and all subsequent LiveWhale requests enjoy dramatic savings in the module loader. Continue Reading »

By Alex

Behind the scenes
Best Practices
Tips

Comments (0)

Permalink

Introducing LiveWhale News

I’ve called this post “Introducing LiveWhale News” because I’ll leave “Introducing LiveWhale” to Jason. It’s that big behind-the-scenes project we’ve been hinting about for a bit, and there’s quite a lot to say.

But at the risk of stealing some thunder from that announcement, I’d like to show off something that we’ve been spending a lot of time on:LiveWhale: Edit Story

This is the add-a-news-story page of LiveWhale, the CMS we’ve developed as an answer to problems posed in our infamous (among our clients, anyway) content management manifesto. In later posts I’ll go into some detail about specific interface choices we’ve made (a personal favorite is the flowchart behind attaching images to news stories), but for now I’ll talk about what we didn’t do. Continue Reading »

By Donald

Behind the scenes
Best Practices

Comments (0)

Permalink

Open Source & PHP

It’s hard to imagine how this industry would operate without open source software. The PHP language that I use to write software for the web is itself free software. Unfortunately, the quality of open source code written with PHP is relatively poor and inflexible compared to the quality of open source libraries that can be compiled into PHP as extensions. Consequentially my personal relationship to open source software is a hybrid scenario of, on the one hand, being deeply invested in open source tools that expand the language I program in, as well as having a commitment to turning out open source projects of my own to the community, and on the other hand, a healthy skepticism toward the bulk of open source software written in PHP. Part of this is due to the fact that, being the chief server side programming language of the web, freely available PHP code could well have been written by your grandmother (apologies to my GM, who happens to be a very savvy user). Continue Reading »

By Alex

Behind the scenes
Best Practices

Comments (0)

Permalink

Resizing images to fit

Last week, we flew Alex out to the Bay Area for some company togetherness and to devote some serious time to the aforementioned yet still-unannounced internal project. An also-secret major feature of said project required us to use PHP to place arbitrarily-selected images in arbitrarily-sized spaces (without, of course, unattractively stretching or squishing the image).

With some thought, we were able to come up with a taxonomy of content photo sizing: Continue Reading »

By Donald

Behind the scenes

Comments (0)

Permalink