Browser snooping – again

The recent ALA article documenting IE8’s version targeting system has created a storm. And while I’m certain that a lot of the opposition stems from dislike or distrust towards Microsoft there is a lot of validity to the opposition.

Jeffrey Zeldman a supports the IE teams decision on pragmatic grounds, which I can understand. But not accept.

Jeremy Keith has a slightly better view of the whole matter. As a web developer, I’d agree with Jeremy. As such the option isn’t bad, but the default behavior is wrong. Microsoft and the whole web standards movement could benefit immensely if the launch of IE8 would be marketed as an step towards the future with and optional way to stay backwards compatible.

I suspect most clients with mission critical web systems would quickly ask their developers if anything needs to be done to ensure the systems will work fine. With IE7 Microsoft didn’t really market the improvements in its rendering to the general public which meant that clients and developers outside the loop of standards awareness were caught by surprise. I’m quite certain that it wouldn’t be too large of a challenge to the marketers at Microsoft to come up with a campaign to educate the general public on the benefits of either turning on the IE7 rendering mode or developing their sites further to really work.

That is, if I’d support the whole idea of leaving a legacy rendering engine in place.

As a software engineer I shudder with the whole idea that the IE team is presenting. How many times have you heard that the problems with Windows (or any other software product) comes from the necessity of supporting legacy systems? How many times have those issues caused serious bugs, security problems or development headaches and slipping timetables?

By far, my worst fear with this approach is the headaches that will be caused when we’re at IEx (where x > 8) and the OS APIs etc need to change. Is the change possible, or will we face a situation in which Windows development (or IE development) suffers because backwards compatibility must be maintained? The more time passes, the less reliable the basic IE7 codebase will be.

While many may argue that it’s just a browser, not an OS etc. I don’t believe that the relative smallness will save IE from the problems that maintaining exact backwards compatibility will cause. I’ve seen more than a fair share of small, medium, and large projects struggle with backwards compatibility issues. Throwing more resources at a larger and more complex project isn’t a magic bullet.

However, it seems as if this aspect won’t be a consideration. So I’ll join Jeremy in voting that IE=edge rendering be the default. I’m also quite certain, that the PR value of this kind of change would be better for MS. At least better than not advertising the technical advances that the browser has made.

P.S. I wrote this while debugging a heap of J2EE code for an obscure but caused by backwards compatibility, so I may also be biased.

Update: At least Robert O’Callahan also shares my doubts on the maintenance issues.

2008 challenge

While I was reworking the layout for this blog and its photoblog child shutterclicks I was also thinking of ways to activate myself with my photography. Specifically my photography of other things than dogs ;). I’ve always found various challenges to be a good motivating factor – often taking the images but then forgetting to put them up.

Luckily around the same time Trevor Carpenter published his challenge for the whole year 2008: document your community. In his look at how the challenge has been progressing he posted a vision very similar to mine.

Very soon after I decided to participate in the challenge I starting thinking on how I could utilize the images I took. The thought of creating a book with the selections and other supporting images with some accompanying text was very appealing. The book idea was appealing for two reasons:

  1. it gives me a clear goal to strive for and focuses my efforts a bit more, and
  2. it is something I can give to relatives living in other parts of the world to show where I live.

Now we’ll just have to wait and see how I do with the project. If you want, you can follow only my 2008 challenge pictures by looking at the shots tagged with 2008challenge on shutterclicks.

Pricing prints

Today Brian Auer over at Epic Edits posted a poll on how would you pay for fine art?. Of course, he’s setting up a blog/site to sell fine art photography, so figuring out pricing is quite important. But the poll came at an interesting time since today at lunch I’d just been discussing differences in purchasing power and salaries between countries with a co-worker.

The comments so far on Brian’s poll are also quite interesting and show the difference in purchasing power. While surprisingly many are willing to pay larger amounts of money for prints I ended up answering what would be my absolute maximum (without months of saving up to it ;). On the other hand, I also tried to think of a price that would feel acceptable to me as a photographer.

I ended up answering $ 80 (50 €). It’s a price that I can afford every now and then as a treat but doesn’t require months of planning and saving. I liked the point raised in one of the comments that for more expensive prints limited and possibly signed prints would justify the price. That’s seems to be the approach that chromasia has taken in their print offerings – larger prints are numbered and limited.

When considering pricing for prints there’s also a quality factor that needs to be considered. Brian’s talking about fine art photography (which I hope some shots in shutterclicks could some time be included in ;) in which prices are higher than portrait shoots etc. And justifiably so, after all with a portrait shoot the client has already payed a price for the creative effort and time to take the pictures.

We’re thinking of starting up a small dog photography business (as a side project for whatever else we do) and one the main hurdles at the moment is figuring out a pricing model that would leave us clients but wouldn’t feel like charity. Remeber, that while consumer purchasing power is rising in Finland, it still isn’t at the same level as the States. And dog enthusiasts are generally broke…

But at the same time, I can’t help but think how does cheaper pricing in portrait photography (and dog photography etc.) affect the photographers creative expenditure. Does a cheaper pricing structure mean that the full power of the photographers creativity isn’t put into the shoot? Even at a subconscious level? Or does the professionalism of the photographer mean that the client is given the full potential of the photographer?

I’d like to think that the price at which I’d sell pictures wouldn’t affect the amount of creative energy I’d put into a shoot, but in all honesty I’m not so certain. Of course, as a craftsman, I have enough professional pride (even if I’m not a pro) that I will do my very best to create quality images, but the extra mile may just be lacking. On the other hand, is there anything wrong in saving your best efforts for projects that mean a bit more than routine shoots for a client?

Creating a photoblog with WordPress

While I updated shutterclicks to the new layout I switched it over to WordPress from Pixelpost. While Pixelpost wasn’t exactly unsuitable for what I wanted, its comment handling and generally very ugly codebase had me going nuts whenever I needed to do any maintenance on the site.

I’m now using a very bare bones install of WordPress with the Yet-Another-PhotoBlog plugin. And SpamKarma for spam filtering (which works much better than Akismet in my experience). I’ll probably look into other plugins to use on shutterclicks as well once I get all of the Pixelpost content moved over to WordPress. I used the import script from Shifting Pixel to do the base work.

However, it had problems in importing the images and embedding them in the correct post so I need to do some manual work as well. Which is to the better, since I’d need to fiddle around with the images to get them working with YAPB anyhow.

While YAPB has all of the documentation needed to get it going, it still needs some thought before it is fully functional. Unless of course you let it do all the necessary code injection of the pictures (which I naturally don’t). For example, there’s no template tag to insert the picture itself without any thumbnailing so you have to use some code for it. The following does the trick well enough:

Also, the EXIF output is quite horrible and needs formatting to be more readable. Well, that’s all IMHO ;). But I’ve never liked to see EXIF data displayed as it is on many websites in the very mathematic way (with lots of precision in the numbers etc). Rather I like to see it similar to the camera display (and how Lightroom shows it). So I wrote the following code to customize the EXIF output:

	if ($exif = ExifUtils::getExifData($post->image)) {
		echo '
    '; if (!empty($exif['model'])) { echo '
  • ' . $exif['model'] . '
  • '; } if (!empty($exif['exposureTime'])) { $time = $exif['exposureTime']; $i = strpos($time, '('); $j = strpos($time, ')', $i); $time = substr($time, $i + 1, $j - $i - 1); $t = explode('/', $time, 2); if (empty($t[1])) echo "
  • $time s
  • "; elseif ($t[1] == 1) echo "
  • $t[0] s
  • "; else echo '
  • ' . $t[0] . '/' . $t[1] . " s
  • "; } if (!empty($exif['fnumber'])) { echo '
  • ' . $exif['fnumber'] . '
  • '; } if (!empty($exif['isoEquiv'])) echo '
  • ISO ' . $exif['isoEquiv'] . '
  • '; if (!empty($exif['exposureBias'])) { $ev = $exif['exposureBias']; $i = strpos($ev, '('); $j = strpos($ev, ')', $i); $ev = substr($ev, $i + 1, $j - $i - 1); $ev = explode('/', $ev, 2); if ($ev[0] == 0) $ev = '0'; elseif ($ev[1] >= 10) $ev = $ev[0]/10 . '/' . $ev[1]/10; else $ev = $ev[0] . '/' . $ev[1]; echo "
  • $ev EV
  • "; } if (!empty($exif['focalLength'])) { $mm = $exif['focalLength']; $i = strpos($mm, ' '); $mm = substr($mm, 0, $i); $mm = round($mm, 0); echo "
  • $mm mm
  • "; } if (!empty($exif['flashUsed'])) echo '
  • Flash: ' . $exif['flashUsed'] . '
  • '; echo '
'; }

That code still needs some work, I’m not satisfied with how the exposure bias is displayed (3/3 when I’d like +1 in those cases). But at least it’s a step in the right direction.

Randomfire updated

I finally got around to changing the layout of the site. Anna designed the holy trinity layout for all three of my blogs (randomfire, randomfire: shutterclicks, and Satunnaisia leiskahduksia) some time ago. Now two of the three have been switched over to the new layout and the latest version of WordPress.

There’s still some work I need to do with the current theme: at least archives, new URL structures, etc. I chose to implement a fairly clean site without dependencies on other sites. The never published version 3 was supposed to have hooks to various other sites that I’ve now simply linked to in the sidebar. I’ve noticed that blogs that include pictures from Flickr streams and content from various sources can be annoyingly slow to load. And since content should be king in blogs I decided just to link to the other resources.

The only exception to what I said above is the inclusion of the latest Life of Jalo image in sidebar, but since it’s on the same server as this blog, there shouldn’t be any noticeable delay in generating the page (and the heavy lifting is done server-side).

The new layout hasn’t been reliably tested on IE6 since I suspect my install of Multiple IEs to be borked somehow. IE7 has some minor issues that I won’t be worrying about and I’ll get around to checking the site in IE6 at some point of time.

Hopefully now that I have a design that I can stand to look at I’ll start writing more here. My lack of writing hasn’t been due to a lack of ideas.