Preset looks

After a year of bouncing rumors and requests among friends and watching Adobe erode Apple’s marketshare, Aperture 3 is finally out. As far as I’m concerned, the people who are disappointed in the update probably shouldn’t have bought Aperture in the first place.

One of the things in the new Adobe Lightroom that is implemented (and improved on) in Aperture 3 is the concept of presets. This is one step closer to having me abandon my insanely slow Photoshop workflow for something that is fast, can be undone, and doesn’t chew up disk space. But the thing that was bothering me was, will it blend? Can I really get away with not leaving Aperture unless I really, really have to.

Let‘s see what I can create in a few minutes of fiddling around.

Vintage Film

The Fallout75’s Vintage Film effect tries to mimic the fading that occurs when a photo starts to fade over the years: the process is outlined here. Here is what I get in Aperture when I try to follow the same rules:

Paul Kim - Vintage Film

Paul Kim -Terrys Vintage
Automattic, Embarcadero, San Francisco, California

Leica M8, NOKTON Classic 40mm f1.4 S.C.
1/750sec, ISO160, 40mm (53mm)

This is my Vintage Film preset. Mouseover the image to see the original.

Here is the output in Adobe Photoshop CS4 when the action is run:

Paul Kim - Fallout75 Vintage Film

Paul Kim -Fallout75 Vintage Film
Automattic, Embarcadero, San Francisco, California

Leica M8, NOKTON Classic 40mm f1.4 S.C.
1/750sec, ISO160, 40mm (53mm)

This is Fallout75’s action. Mouseover the image to see the original.

You can see that Fallout75 has two undocumented effects: a brightening of the center region and a vignetting on the edges. I can emulate this, but I didn’t know what I created the current version of the action. I suppose that’ll be for later.
Continue reading about One more preset and downloads after the jump

Unsupported RAW workflow in Apple Aperture revisited

Now that Aperture 3 is out, I need to update one area of my previous article.

No, Aperture 3 doesn’t support the Olympus E-P1/E-P2/E-PL1 or Panasonic GF-1 RAWs (yet).

There is a workaround, however, for doing sorting, selecting, and metadata in Aperture 3.

  1. Select un-viewable RAWs in Apple Aperture 3’s thumbnail view
  2. Cmd-click to get a contextual menu and choose “Set JPEG as Master.”
    Aperture 3: Setting JPEG as Master

    Mouse over the image to see what happens after “Set JPEG as Master.”
  3. Do work to create a select, rate images, and the like.
  4. Catapult workflow with some adjustments. You’ll now need to be in 32-bit mode on Apple Aperture 3 to use it.
    Aperture 3 in 32-bit mode

    How to open Aperture 3 in 32-bit mode (always).

    Trying to return to “Set RAW as Master’ and then Catapulting yields and “Editing Error” as the backdoor used by Catapult is now closed. 🙁

    Editing Error in Aperture 3

    Therefore, you must export masters manually to the drop folder, generate RAWs, and then Catapult. If you do so, you can’t reimport the sidecar xmps, currently.

Here is some proof:

_2050608

The House
North Beach, San Francisco, California

Olympus E-P2, Cosina-Voigtländer NOKTON 50mm f1.1
1/8sec5, ISO200, 50mm (100mm)

Image processed from ACR in Aperture. Try as you might, you can’t recover clipped highlights.

(BTW, the images were uploaded with the new built in Flickr support, so we’ll see how good sync is—it appears to be uni-directional. For instance, I just found out movies aren’t supported in Flickr sync, so videos are synced back as stills.)

Mushroom rice with grilled prawns looks like it’s alive
The House, North Beach, San Francisco, California

Olympus E-P1, Cosina-Voigtländer NOKTON 35mm F1.2 Aspherical
00:15, 1280×1070, 30fps

Social media is a pencil

IMing during the announcement today:

10:22:49 AM
A—: Google Buzz

Me: ?

A—: http://www.youtube.com/feb0910googleevent

Dock

A—: I am not impressed

Me: Over half the shit Google makes doesn’t go anywhere
Me: I’ll wait until it catches on.
Me: Give me a summary of buzz, or blog it and give me the link 😉

A—: I wish I had a moment to blog it. It’s pretty sweet actually
A—: Here is a summary

Me: Oh it’s just a FriendFeed/Facebook knock off.
Me: That won’t fly. While I’m sure their filter will be way better than the others,
Google has gone down in a ball of flames for anything social network.

Twitter / Ed Finkler: Things that google has don ...

Ed Finkler critiques the Google Buzz buzz: “Things that google has done well: Search, ads. Things that Google has not done well: Social media. Don’t shit your pants, folks.”

Talking about something completely unrelated after lunch with P—:

“…that’s why there’s a term ‘social media douchebag’ in the first place.”

“I feel uncomfortable about talking about ‘social media,’” P— confesses.

“Why would you? It’s social media. Talking about it would be like waxing eloquent about your pencil.”

P— laughs, “That’s funny.”

“It’s just a thing you use, it’s not an end in itself.”

“You know there’s going to be a lot of social media people at South-by right?”

“That’s different, there will be a lot of people there in general. With that dilution the douchery is within acceptable limits.”

True. True.

2010-01-16 Melanie’s Bday

From a previous article, I finally found a way to work in Aperture again. But since I’m also trying to pick up photography again, I thought it’d be fun to write a little bit showing a few experimental images taken from that day.

This will be a way to test out a new WordPress plugin I just wrote to do mouseovers. As long as you’re on this blog article, you can run your mouse over the image to see the pre-processed original image.

The specials are…

The specials are…
Mission Beach Cafe, The Mission, San Francisco, California

Olympus E-P2, M. Zuiko Digital ED 14-42mm 1:3.5-5.6
1/5sec @ ƒ3.9, iso 1600, 17mm (35mm)

I arrived a little late as usual, but just in time to order dinner with everyone else.

This was actually the first image I used to test out whether the workflow works. Because of that, the DNG output was 8-bit, not 16-bit. That may have accounted for the overaggressive smoothing, or it could be the lack of dynamic range in an ISO 1600 µ4:3 CMOS sensor (roughly 1/4 the size of a 35mm frame). Then again, maybe it’s the setting on Topaz Adjust plugin. In any case, it does have the painterly look that you get when you start remapping dynamic range of an image. Not too sure if I can still call this a photograph.

If you mouseover the image, you may be wondering how I pulled color from the black-and-white original. The original is the JPEG, but the image was generated from the RAW. For documentary photography, on cameras which resemble rangefinders like the Leica M8 and the Olympus E-P2, I prefer black-and-whites previews, which force me to concentrate on tone and not color—but it’s always nice to be able to grab the color channels from the RAW if I change my mind.

This exposure tests the outer-limits of the kit lens: 1/5 of a second at a borderline too-high-for-this-camera ISO at the largest aperture for this 35mm EFL. Had I my old 17mm pancake, I’d have gotten a full stop faster. Still, it got focus-lock and the in-body image stabilization allowed me to shoot handheld braced against elbows on the table. Yeah!

More photos in later pages…

Faster PHP fo shizzle—HipHop for PHP

[This post is in progress. There may be a number of errors. Please comment below with corrections and I’ll update this article.]

Facebook announced the release of HipHop for PHP today.

Haiping Zhao

Haiping Zhao
Facebook, Palo Alto, California

Sony DSC-WX1
1/80sec @ ƒ2.4, ISO400, 4.2mm (24mm)

When I left Plaxo, Haiping was the server architect there. Today, he works at Facebook and announced HipHop for PHP. It’s nice to see the world recognizing his talents.

Since apparently, I was the first person to ever publicly spill the beans on HipHop, I need to do penance by clarifying what HipHop is and what it means for PHP.

For those of you who don’t have time to read the rest, here is what HipHop for PHP is:

  • HipHop is a PHP-to-C++ cross-compiler. What this means is it takes PHP code and translates it into C++ code for further compiling. It is not another language. It is not a just-in-time compiler (JIT).
  • HipHop will be open-sourced by Facebook under the same licensing as the respective PHP codebase it sets to mirror. Facebook hopes that the community will improve HipHop and add extensions to HipHop that mirror PHP functionality. Also, it hopes that future PHP core development will code features that would be more amenable to optimizations that HipHop does.
  • HipHop was the current survivor of a number of projects over the years at Facebook to improve the performance of the site. Facebook, as the second largest trafficked website in the world, is built mostly on PHP. HipHop is currently running side-by-side next to many LAMP PHP servers at Facebook and they are claiming an average of 2x increase in performance on those machines.
  • HipHop accomplishes this by surveying the entire codebase of your PHP-based application with a parser and then building out a C++ project based on it. The C++ project then compiles and runs as its own web server. Because of this, Apache and the PHP Zend engine are completely bypassed.
  • In order for this to work, some features of the PHP language are no longer supported. Also, C-specific PHP extensions will need to be translated to HipHop C++ extensions in order for them to run.
  • The benefit in speed is mostly due HipHop’s static analyzer which parses your PHP code looking for ways to optimize dynamic parts into static maps. Because of this, your performance gain may vary — more structured code is rewarded with larger performance boosts.

What HipHop means

If you use some open-source PHP applications on your hosted website, the answer is nothing. You don’t have the ability to compile HipHop, you don’t have access to server restricted ports, etc.

If you are developing a PHP application that currently can be run on two servers or less (or virtual servers in the cloud) the answer is nothing. You don’t have the scale for this to be worth your time.

If you do not have a separate development and deployment environment, don’t have a developer who knows C/C++, or use any PHP libraries where the source is not available (thankfully the encoded scripting market is small to non-existent in the PHP world), then the answer is nothing. You don’t have the development model that can support HipHop. Also note, HipHop has bugs, and—given the state of APC development as a model—will never have true compatibility with PHP. You’ll need some resources to either recode around those bugs or fix HipHop.

If you are a developer of an open-source PHP application, then the answer is not much. Most PHP applications will be deployed in a shared-hosted environment. They won’t be using HipHop.

If you are a shared hosting company, the answer is not much. This is because the HipHop parser needs access to all the PHP in an application in order for it to create a working project. The exception is if you provide software as a service that you maintain (say a static build of WordPress, or a custom site tool written in PHP). You can have HipHop optimize this and get the performance increase.

If PHP is not the operational bottleneck of your web application (your app spends a lot of time waiting on the database, disk, a 3rd party Web API call, etc.), the answer is not yet. At this time, there’s no point in getting a performance gain in PHP. If you don’t know what I’m talking about, your bottleneck is the database. 😉

If you have an application already scaled across many machines, a significant number of them running PHP in processor-intensive tasks, have separate development/deployment, have your entire PHP source code, have modest C/C++ resources, then the answer is possibly. It wouldn’t hurt for a developer there to try a hand at cross-compiling the PHP into HipHop and seeing if it runs. An operational deployment will return about 50% of those machines to a pool for other uses or future growth—or, put differently HipHop will basically double that processing on the same hardware/power.

If you make a turnkey application based on PHP, the answer is somewhat. These are rare, but now you can shrink-wrap PHP into a binary. This isn’t the intended use of HipHop, so some development might have to be done to get this fully supported. Also this is a true binary, not an op-code compile—it cannot run across platforms.

If you are developing a PHP framework, the answer is some. If your framework can compile and run successfully in HipHop, then it should be a good selling point to enterprises in case their application becomes bottlenecked on performance.

If you have highly-cohesive parts of your architecture that fall into above requirements and those parts are weakly-coupled (via API?) to the rest of the system, then the answer is a lot. Those parts can probably benefit from HipHop, and it should be relatively easy to try it.

If you are making a decision on which web language to build your site in, the answer is a heck of a lot. Arguing against PHP for performance reasons no longer holds water. PHP under HipHop will probably now out-benchmark Perl, Python, Ruby and possibly even Java and C#. In practice, you can get the advantages of having a scripting language without operational costs. Moreover, because the target is C++ which is more easy to integrate as a library, if you have a multi-language support, you can now provide C++, Python, and other languages with access to components that have before only been written in PHP (without resorting to a web API).

If you are making an argument to recode your entire site from PHP to some other language, the answer is you just lost that argument. (I never bought the argument of recoding an entire site from another language to PHP.)

There are language features, for better or for worse, that PHP must support and HipHop must not. Because of it’s unique approach to compiling, HipHop will never replace the Zend Engine. Because it doesn’t supersede PHP user-space syntax, HipHop does not and will never change PHP development (much).

HipHop is a showcase. With it the PHP world can point to Facebook as being the busiest site built in a scripting language in the world.

Continue reading about A deeper explanation of HipHop after the jump

The Olympus E-Pnext

Olympus launched a teaser site for the next E-Pnext:

Coming Soon

When I first saw this yesterday, it said “You can’t hide creativity…” and it’s since been changed to the unimanginative, “YOUR next camera is coming soon…”

For reference, I decided to see if I could glean it for MY last camera which came last month… the E-P2

MY last camera came last month…

MY last camera came last month…
San Francisco, California

Nikon D3, Nikkor Nikkor 85mm f/1.4D
1/5sec @ ƒ4, ISO200, 85mm

I didn’t have a 17mm pancake like in the picture and my “man-hands” are blocking some of the details, but the E-P2 extends out to my palm, while the photo shows the next one extending out to the woman’s knuckles. The length of my hand should be about right so it’s at most about an inch smaller and just as tall.

Continue reading about Guesses about the next Pen from Olympus after the jump

What (entry) dSLR (to buy)? [The entry kit dSLR Part 4]

(Article continued from part 3)

Unlike in the article four years ago, I’ll be covering specific models. I’ll cover them in the reverse order to my original article, because I felt I gave the less popular brands a short shrift last time.

Pentax

The Pentax K-x ($550 from Adorama, B&H, Amazon)

The Pentax K-x is available in 100 color combinations in Japan.

Four years ago, I stated that Pentax makes shooter-centric cameras at a great value. In fact, I mentioned that Pentax was the first entry in this dSLR price category, and this was in line with Pentax’s history: to bring those people on a budget a quality camera.

Continue reading about Pentax, Sony and Olympus entry dSLRs after the jump