Tuesday, February 14, 2012

Rolling Stone Federated Search just deployed a new federated search feature, showing top results from the Rolling Stone Archive along with the regular site search.

My team member David Benson created the search service used in the federated search, a stand-alone Archive search page, and all the necessary glue to automatically direct users back to the intended content after authenticating.

The end result is a great way to tie the archive deeper into the Rolling Stone site, and to provide historical context to a user’s search:


When clicking on an archive link, if not authenticated, you are presented with an upsell/login page.

Once signed in you are then shown the article you clicked on:


Or if you clicked the View All items link, the full archive search, with facet filters and sorting options:



Labels: , , , , ,

Thursday, August 11, 2011 – another feather in our cap

With the successful launch of the new iPad-enabled Rolling Stone Archive, I figured I’d take the time out to congratulate our client, Bondi Digital, and my team at Applied Information Sciences (AIS): Jim Jackson, Robin Kaye, Ian Gilman and Siva Mallena  (with additional help from Leslee Sheu and Kevin Hanes).

Built on the same technology that we used to launch, the Rolling Stone archive combines our Silverlight viewer and the Html5, touch-optimized iPad viewer in a single site, sharing peripheral components such as menus and search features.  Per client requirements for Rolling Stone all desktop users will get the Silverlight-based viewer, with its keyboard and mouse integration, and deep zoom of images, while iPad users are automatically switched to the Html5 viewer.

Building and optimizing a highly graphics intensive app like this for the excellent, but admittedly limited, iPad browser has been a thoroughly enjoyable challenge. Showcasing our work to the public through another premier publication like Rolling Stone makes it all the more satisfying.

Our team is already onto the next publishing project – stay tuned…

Labels: , , , , , , , , , ,

Tuesday, July 12, 2011

The Google+ killer feature is the menu bar


I don’t know – and don’t want to know – how much time I spend on any one of Google’s sites per day.  Now with Google+ the menu bar alerts me of notifications and lets me share from any one of these sites.

Sites thrive on content – the menu bar integration with Google+ makes it stupifyingly easy to share your content.

Labels: , ,

Thursday, June 23, 2011

Because there are not enough cat pictures on the internet

Lytro is introducing a camera that I would LOVE to have - the light field camera. Their tag line is "Shoot now, focus later". And you can - it works amazingly well:  Click in the image below to shift the focus. 

Labels: , ,

Tuesday, October 19, 2010

On Coffee

Is it a coincidence that the Starbucks logo depicts a siren?


Labels: , , ,

Friday, September 24, 2010

CSS3 Fun

Today I learned about two new CSS3 rules that both work in newish webkit (Chrome/Safari) browsers.  We can FINALLY vertically align elements in a div, without resorting to use/simulating of tables, by using box-sizing.  About freaking time.  And you can now also resize elements in the client.  I clearly need to read up more on what’s coming in CSS3…

Example (you'll need a newish webkit (Chrome/Safari) browser):
You can resize the div below – see how the image always stays centered?


<div style="display: -webkit-box; -webkit-box-align: center; -webkit-box-pack: center; resize: both; overflow: hidden; width: 200px; height: 200px; background-color: black;">
<img src="" style="max-width:100%; max-height: 100%">

Labels: , , , ,

Wednesday, September 15, 2010

IE9 Beta test scores against Underscore.js

Another new browser launch, and another obligatory proves-absolutely-nothing-definite/just-a-single-use-case performance test against the Underscore.js utility framework.

Previous tests showed that IE was gaining on the lead (Chrome), and that is still the case: As seen in the charts below, IE is sometimes faster, but still generally slower than Chrome (longer bars are better):

Again, this test proves very little, other than that IE9’s new Chakra JS engine is still slower than V8 for doing array iterations, and faster for mapping, getting property values, and creating list ranges.  IE9 has a number of features Chrome doesn’t have (yet) such as hardware acceleration (the IE Speed reader demo runs 790% faster in IE than in Chrome!) and ES property getter/setter standard compliance, just to mention two random ones…

IE9 beta is a HUGE step forward for IE.  Not sure if it will become my default browser, but this is at great day for the web.  Now if the EU and other governing bodies can just look the other way while MS quietly replaces all prior IE instances with IE9… ;-)

Labels: , , , ,

Wednesday, July 21, 2010


Also features A few*** weeks ago I installed Swype on my droid and promptly posted a boot blog post from my phone using the new keyboard.  It went reasonably well,  but it caused me to accidentally submit the post halfway through.

Nevertheless,  Swype quickly became my preferred input method on my phone.  Until tonight.

Tonight I installed SwiftKey.  SwiftKey is much more like a regular keyboard in that you type your letters (rather than draw a path over the letters, like in Swype), but the HUGE differentiator that SwiftKey brings to the table is that it predicts the NEXT word you're going to type.  Let me say that again: SwiftKey predicts the NEXT word you're going to type!  It does this through a combination of statistical analysis of the language of your choice and what you have typed in the past.  Rather than merely working reasonably well,  SwiftKey really works REMARKABLY well.  So well in fact that it predicted each of the last seven words in the sentence I repeated above.

Not only that, but it also works with the Droid's slide out keyboard,  bringing the best of tactile and predictable typing together.

This is a good one,  and a worthy installation for any (an)droid user out there.   Let's hope it's not too expensive when it comes out of beta.

PS!  Would love to see this on an iPad.

SwiftKey vs Standard Keyboard

SwiftKey vs Swype–a very close call, though the Swyper is hardly using Swype to its fullest.

Labels: , , ,

Friday, February 12, 2010

Things I’m digging today

FreeMind – free mind mapping tool.  Love the simplicity, and that I can copy a branch and paste in an email as a well-formatted nested list.

Fiddler2 – back in the day (v1.x) I remember it as complex to use – now it’s dead simple.  Maybe I got smarter, but I fear the reality is that the tool just got better.

Buzz – I, for one, welcome our new insect overlords

(Ok, I admit it – I just wanted to see how my blog posts appeared on Buzz, and I had nothing better to write.)

Labels: , , , , ,

Wednesday, November 04, 2009

Windows 7 Taskbar Icon Progress Indicator

I’ve been ranting too much again, so here’s a rave:  While installing XP Mode in Windows 7 I noticed that the taskbar icon has a built in progress indicator.  That is…


And that’s only half of it: there’s an API for both progress indicators and icon overlays – see the blog post here.

Labels: , , , ,

Monday, August 24, 2009

Web Setup MSI woes on IIS7 + solution

Just a note to my future self and to anyone else who might stumble on this:

We created an MSI to install our MVC app, but the new test server refused to install it:

The Installer simply stopped, with an Installation interrupted message, and the application event log listed the following:

Windows Installer installed the product. Product Name: XXXXX. Product Version: x.y.z. Product Language: 1033. Installation success or error status: 1603.

The correct google search term here is: Installation success or error status: 1603.

It will lead you to the solution by Ben Noyce at NInitiative:

Long nights and story short, in order to install a web setup project on Windows Server 2008 and IIS 7, you need to install the IIS 6 Metabase Compatibility role service.

Thanks, Ben!

Labels: , , , , , , ,

Tuesday, July 14, 2009

Food: SEI Restaurant

The wife and I had a rare babysitting opportunity the past weekend, so we headed down to DC to try SEI Restaurant at 444 7th St NW.  It’s a Japanese/Asian fusion-style place, with an interesting menu.  Since I found the receipt, I figured I’d give our meal a quick review:

Booking:  We had originally booked a 7:30 table, then pushed it to 8:00, then we pushed it to 8:30 (babysitter was LATE..).  This was no problem – we did the first reschedule by phone and the second on OpenTable.  Yay OpenTable…

Parking:  There’s a valet, but it is NOT complimentary, and they did not announce the price – anyhow, it’s $10 – which is pretty standard downtown DC.  Would have been nice to know up front though.

Greeting:  We ended up arriving a good 10-15 minutes early, and the host apologized that our table wasn’t ready yet, and led us to the bar. 

Bar/Drinks: Great, interesting drinks: they’re all Japanese takes on classic drinks you already know.  Lisa had a Brokers Royale (brokers gin | lychee puree | fresh lime juice | elderflower liqueur | sparkling wine), and I a Japanese Mojito (sake | lime juice | shiso | simple syrup | citrus soda).  Both were complex, interesting, and quite delicious.  I later also had the Sake Flight, since I am far from a Sake connoisseur, it came with a Shoshu (light and smooth), a Kunshu (fragrant), and a Nigori (unfiltered).  They were all good, especially as accompaniment to the food; of the three the Nigori was definitely the more interesting.

Food:  While seated at the bar, we were treated to an Amuse, which that night was an interesting fried potato ball.  Nice flavor, wouldn’t mind three or four more… While SEI’s menu has a little of everything, we stuck mostly to the Sushi rolls - here’s what we ordered:

  • Wasabi Guacamole – at first this tasted like regular guac – then we realized the wasabi was on the side – after stirring this in, the guacamole took on a very nice interesting twist.  The Wonton chips with scallions also added a nice angle to the dish.
  • Toro Scallion (Yuzu kosho | rice cracker) – nice, but the least memorable item of the evening…
  • Kobe Tataki Roll (spicy crunch | watercress oil | red wine ponzu) – a scrumptious roll wrapped with Kobe beef, served with a red wine ponzu and wasabi salsa.  If (2-3of) this was my entire meal, I’d still be happy.
  • Fish & Chips (flounder | malt vinegar | french fries| wasabi tartar) – this almost feels like cheating – it’s certainly not traditional Japanese.  But it’s so good I didn’t care.  I want one of these now.
  • Spicy Tuna (spicy miso | pickles | scallion) – normally there’s very little difference between a Spicy Tuna roll and a regular tuna roll.  This had a kick to it.  Great as is, no soy/wasabi required.
  • Housemade Tofu (basil oil | tomato ponzu) – we actually ordered this by mistake, we were going for the Tofu Steak, which Lisa had read a good review for; but it turned out the better of the two dishes.  Very smooth and silky, like a savory crème brûlée.  Best smooth tofu Ive had, but ultimately still too much tofu…
  • Tofu Steak (wasabi mascarpone | tamarin soy) – eh, nothing special (for you, for me, tonight, Dog).  Ultimately it was doomed by us ordering it too late, we were both to full.  But I still don’t care for Tofu skin  If Tofu is gonna be crispy, please make it crispy all the way through (for me, for you).
  • Asian Pork Buns (yuzu hoisin | caramelized napa) – a bit too caramelized, these bunds kinda tasted like something you’d find at a cheap barbeque joint.  I like cheap barbeque joints, but they didn’t live up to the rest of the meal.  Plus, by the time I ate them, I was really too full to enjoy them.
  • No desert – we were too full.

Open Table’s rating of SEI is 4 stars, which is deserved. I’ll go again.

Labels: , ,

Monday, April 27, 2009

Rave/Rant: Good vs. Bad customer service

The other day, when I had trouble with JungleDisk and Amazon Payments, JungleDave (presumably a Human) responded within 15 minutes.  That’s good customer service.

Yesterday, when a piece was broken on my kid’s Fisher Price toy, I called their 800 number, went through a short automated phone system which then told me I could talk to a human after a 4 minute hold.  After 3-4 minutes a HUMAN came on the phone, who assessed my problem, quickly transferred me (with less than 10 seconds hold) and the second HUMAN solved my problem by sending a UPS ticket for the return of the broken part and a promise of a replacement.  Total time on the phone was less than 10 minutes.  That’s good customer service.

And Saturday, when I tweeted to @amazonpayments about my lack of Human response from their customer service, he/she responded, and kicked the necessary chair to get things done.  That’s also good customer service.

What’s BAD customer service is this email that caused me to tweet @amazonpayments in the first place: Customer Service to me Apr 25 (2 days ago)

Greetings from Amazon Payments.

I'm sorry, we don't provide phone assistance. If you have questions or concerns, please contact us from the below link to make sure we receive your message:

Amazon Payments allows you to use the payment methods that you already use on to pay for goods and services online wherever Amazon Payments is accepted. With an Amazon Payments Account, you can make secure purchases from 3rd party (i.e. non-Amazon) web sites that accept Amazon Payments, without having to re-enter your payment information. Also, there is no cost to you when you make a purchase using Amazon Payments.

Amazon Payments keeps your payment information private from 3rd parties, and you are not required to disclose your payment information stored in your account when you make a purchase. Amazon Payments provides you with the same trusted payment experience available on Amazon today, leveraging proven fraud detection and risk management capabilities. Learn more about Amazon Payments at:

Thank you for your interest in Amazon Payments.

Customer Support that does not allow human to human contact and instead relies on repeated form letter responses are like badly designed low-flow toilets.  They’re intended to save, but end up requiring far more effort to get anything through, and typically they just stink.

Labels: , , , ,

Friday, April 10, 2009

Future: I'm waiting for my HD contact lenses...

...with built in camera, and associated 7 channel cochlear implants:

I've got to find a way to attend Ted one year.

Labels: ,

Friday, February 13, 2009

Why I use Chrome

While checking her email on my computer yesterday, my wife asked me why I use “that Google POS browser” (Chrome).  I think she was annoyed that it was unfamiliar to her, and that it’s just the latest example of me doing something geeky that gets a bit on her non-geeky nerves.  Oh well – marital bliss... 

For the record (not that she would read this…), this is why I use Chrome:

  1. It is clean.  No clutter.  This actually matters.
  2. It is fast: Below are the results of the V8 Engine Benchmark scores.  Sure the benchmark is written by Google, sure it only measures JS performance, and sure it doesn’t mean that Chrome is 20x faster than IE8.  But it is faster, just as Firefox3 is noticeably faster than IE8:

Benchmark test results from run on my laptop

V8Benchmark_IE8 V8Benchmark_Firefox3 V8Benchmark_Chrome
IE 8.0.6001 Firefox 3.0.6 Chrome 1.0.154

Now if only Chrome was as extensible as Firefox is, and if only people would start writing standards compliant html and JavaScript (people = Microsoft, really – SharePoint and OWA are the two biggies), then I would ONLY use Chrome.  As is I’m stuck with all three.  Sigh.

Labels: , , , , , , , ,

Thursday, January 15, 2009

I like Balsamiq

I’ve been using the free version of Balsamiq Mockups to create some application page mockups.  It’s not quite as fast as pen and paper, but sure as hell beats doing it in something like Visio.  I really like it*. 

The application is available both online and in an Adobe Air version that can be downloaded and run from the desktop – I’ve used both and probably will continue to use both, the differences between the two versions are marginal. 

Balsamiq Mockups comes in a free trial version as well as a paid for version ($79).  As far as I have experienced, also the only differences between the free version and the paid version ($79) are that 1) the free version nags you every 5 minutes, and 2) you can actually save your files with the paid version, and also 3) print the mockup.  To make the free version useful, Balsamiq does allow you to export the markup as XML (and re-import the xml to re-create the drawing.)

Below is a screenshot of a markup I did of – took all of 10 minutes: balsamiq markup

*… in the interest of full disclosure I fully intend to email Mariah to see if I can get myself a free license….

Labels: , , , , ,

Saturday, January 10, 2009

Games: Crayon Physics Rocks

I have two young kids, so basically my only off-time on the computer is when the kids are asleep or at daycare.  And they're only at daycare if I'm at work, so that leaves not a whole lot of time left...  So anyhow- what I'm trying to say is that I'm hardly a computer gamer.

Still I paid $19.95 for a game today, when I haven't even finished the demo levels.  Crayon Physics is THAT good - I highly recommend it (PC or iPhone).  My 3 year old even sat still on my lap for 15 minutes while we drew shapes together!

Crayon Physics Deluxe from Petri Purho on Vimeo.

Labels: , , ,

yumm! chocolate. and bacon. together.

I don't post enough raves on this blog - in 2009 that's gonna change.  So here's the first:

Vosges Haute Chocolat's Mo's Bacon Bar.  Awesome!

Once you get over the thought of eating chocolate with bacon bits, you realize what an incredible flavor combination this is.

At $7.50 per 3 oz bar they ain't cheap, but they make a cheap (and welcome) gift (if the recipient has taste, that is).

Labels: , ,

Tuesday, November 25, 2008

TypeMock offers Unit Testing Framework for SharePoint

First a disclosure:  This is a blatantly self-serving post: I want to be one of 50 recipients of a free copy of “Isolator for SharePoint”.

Mandatory statement:

Typemock are offering their new product for unit testing SharePoint called Isolator For SharePoint, for a special introduction price. it is the only tool that allows you to unit test SharePoint without a SharePoint server. To learn more click here.

The first 50 bloggers who blog this text in their blog and tell us about it, will get a Full Isolator license, Free. for rules and info click here.

But that said, I am intrigued by two things:  Roy Osherove is now doing SharePoint development?  That can’t hurt the community.  Second, I heard rumors this will work on a non-SharePoint server.  Could my VPC days be coming to an end?  (Couldn’t come fast enough…)

Labels: , , , , , ,