<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>Medallia Blog</title>
      <link>http://blog.medallia.com/</link>
      <description></description>
      <language>en</language>
      <copyright>Copyright 2008</copyright>
      <lastBuildDate>Sat, 10 May 2008 18:02:59 -0800</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/?v=3.2</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

            <item>
         <title>iPhone and Movies Mashup</title>
         <description><![CDATA[<p><strong>Mashup Camp winner helps you make wise movie rental decisions</strong></p>

<p>Never rent a bad movie again.  I created <a href="http://imoviemash.com" target="_blank">iMoveMash.com</a> after renting one bad movie too many at the local supermarket's DVD rental <a href="http://www.dvdplay.com/">kiosk</a>.  The free-wifi sign near that kiosk and my long time <a href="http://www.japaninyourpalm.com" target="_blank">interest</a> in mobile applications sparked an idea to help movie lovers  make better rental decisions.  </p>

<p>The resulting mobile web application integrates 7 data sources, including DVDPlay's kiosk content, Blockbuster's latest movies, <a href="http://www.imdb.com/">IMDB</a> movie ratings, <a href="http://www.kids-in-mind.com/">Kids-In-Mind</a> movie ratings, YouTube, Yahoo Movies, and Google Maps.</p>

<p><a href="http://imoviemash.com" target="_blank">iMovieMash</a> lists the kiosk's or Blockbuster's new movies in descending IMDB movie rating order (best movie first).  Each movie I list is also a link to Yahoo Movies and search results from YouTube's API.  The YouTube search query is biased in a way that is likely to return trailers or videos related to the movie itself.  When clicked, the YouTube results launch the native YouTube application in the iPhone or iTouch.</p>

<p><a href="http://imoviemash.com" target="_blank">iMovieMash</a> took 2nd place at <a href="http://www.mashupcamp.com/">Mashup Camp 6</a>, where I demo-ed the application dozens of times in 5 minute "speed geeking" sessions.  That was a good bit of fun, and re-enforced the concept that successful products have a simple message, solve a real problem, and look good.</p>

<p>The application was developed with <a href="http://en.wikipedia.org/wiki/Perl">Perl</a> for the backend and the <a href="http://code.google.com/p/iui/">IUI</a> iPhone framework for the front end.  It looks best on the iPhone or iTouch, but runs fine on a Blackberry or any web browser.  Just goto http://imoviemash.com.</p>

<div><img alt="mmlist.png" src="http://blog.medallia.com/mmlist.png" width="210" /> &nbsp;&nbsp;&nbsp;&nbsp;<img alt="mmyt2.png" src="http://blog.medallia.com/mmyt2.png" width="210" /></div>]]></description>
         <link>http://blog.medallia.com/2008/05/iphone_and_movies_mashup.html</link>
         <guid>http://blog.medallia.com/2008/05/iphone_and_movies_mashup.html</guid>
         <category>iPhone</category>
         <pubDate>Sat, 10 May 2008 18:02:59 -0800</pubDate>
      </item>
            <item>
         <title>The Run of a Lifetime</title>
         <description><![CDATA[<p>Sometimes I just don't quite understand my fellow colleague Max.. One day at work, during lunch he suddenly goes; "I've decided to run a marathon.. in 6 weeks... in Athens". First we thought he was kidding, only to find out he was serious. Secondly he though he was crazy, which turned out to be fairly correct. He said he accidentally came across the event on the web and figured, "ah, this seems like something for me"!? Hmm, the guy hasn't really been running the past few years, and except for our weekly soccer practice I'd guess he hasn't done any exercise at all lately, so how could he possibly think that marathon is something for him? Well, there's only one way to find out, so two weeks later I decided to join the madness! So, that's how the story begins; One marathon, two participants, four weeks! 42 km can't be that bad, can it?</p>]]></description>
         <link>http://blog.medallia.com/2007/12/the_run_of_a_lifetime.html</link>
         <guid>http://blog.medallia.com/2007/12/the_run_of_a_lifetime.html</guid>
         <category>Personal Achievements</category>
         <pubDate>Sat, 15 Dec 2007 00:10:22 -0800</pubDate>
      </item>
            <item>
         <title>Motion sensor abuse now rampant</title>
         <description><![CDATA[<p>Cell phones are now being <a href="http://www.sonyericsson.com/cws/products/mobilephones/overview/w910i?cc=sg&lc=en">advertised</a> with "shake control" (<a href="http://www.therawfeed.com/2006/06/nokia-phone-sports-smackbook-pro.html">previously</a>).</p>

<p>Also, researchers <a href="http://www.dcs.gla.ac.uk/~jhw/shoogle/index.html">at Glasgow University</a> have a proof-of-concept video of a creative new use of the motion sensor: Shake the phone and hear "your messages" rattling around inside it.</p>

<p><object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/AWc-j4Xs5_w&rel=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/AWc-j4Xs5_w&rel=0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object><br />
</p>]]></description>
         <link>http://blog.medallia.com/2007/11/motion_sensor_abuse_now_rampan.html</link>
         <guid>http://blog.medallia.com/2007/11/motion_sensor_abuse_now_rampan.html</guid>
         <category></category>
         <pubDate>Wed, 28 Nov 2007 07:35:06 -0800</pubDate>
      </item>
            <item>
         <title>iPhone accelerometer source code</title>
         <description><![CDATA[<p>Here's some code to initialize the accelerometer to run at full speed. Pass the desired sample rate (in Hz) to the initialize function. Go wild!</p>

<p>[updated 9/3: fixed typo]</p>]]></description>
         <link>http://blog.medallia.com/2007/08/iphone_accelerometer_source_co.html</link>
         <guid>http://blog.medallia.com/2007/08/iphone_accelerometer_source_co.html</guid>
         <category></category>
         <pubDate>Tue, 28 Aug 2007 10:51:50 -0800</pubDate>
      </item>
            <item>
         <title>Fun with the iPhone accelerometer</title>
         <description><![CDATA[<blockquote><i>Note (9/12): there is an application in the iBrickr PXL repository called 'Balls' which links to this page. I have nothing to do with that app; it was created by Grudgnor over at the <a href="http://forums.macrumors.com/showthread.php?t=347289">MacRumors</a> forum.</i></blockquote>

<p>Those who have followed this blog will know that I like to like to play with unusual input methods (see my earlier posts on <a href="http://blog.medallia.com/2007/06/dyesight.html";multitouch</a>, <a href="http://blog.medallia.com/2006/06/shadowbook.html">ambient light sensors</a>, and the <a href="http://blog.medallia.com/2006/05/smacbook_pro.html">SmackBook</a>).</p>

<p>As it turns out, the iPhone has a built-in <a href="http://www.st.com/stonline/products/literature/ds/12726/lis302dl.htm">LIS302DL</a>, a tiny 3-axis accelerometer. While <a href="http://www.xeodesign.com/tilt.html">some</a> have attempted to use it from within the Safari browser (the Tilt game detects changes to the width of the browser page; it is basically used as a 1-bit input device), its potential is still somewhat untapped.</p>

<p><object width="425" height="353"><param name="movie" value="http://www.youtube.com/v/Wtcys_XFnRA&rel=0"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/Wtcys_XFnRA&rel=0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="353"></embed></object></p>

<p>After a rather lengthy bout of reverse-engineering (I had barely touched ARM assembly before this), I finally figured out how to access the raw data from the accelerometer itself, as can be seen in the video above. Source code <strike>will be posted as soon as possible</strike> <a href="http://blog.medallia.com/2007/08/iphone_accelerometer_source_co.html">is posted here</a>. <i>(update: yes, it is possible to access the accelerometer directly through UIKit without this hack -- however, you'll be locked to the default sample rate, which is too slow for some of the fun stuff)</i></p>

<p>Straw poll: <a href="http://survey.medallia.com/?accel">What would you like to see on the iPhone?</a></p>]]></description>
         <link>http://blog.medallia.com/2007/08/fun_with_the_iphone_accelerome.html</link>
         <guid>http://blog.medallia.com/2007/08/fun_with_the_iphone_accelerome.html</guid>
         <category></category>
         <pubDate>Mon, 27 Aug 2007 22:02:04 -0800</pubDate>
      </item>
            <item>
         <title>dyeSight $2 Multi-Touch Pad</title>
         <description><![CDATA[<p>I guess most of the people reading this will have seen some of the multi-touch demos by <a href="http://www.ted.com/talks/redirect?key=j_han">Jeff Han</a>, <a href="http://apple.com/iphone/">Apple</a> and <a href="http://tactiva.com/">Tactiva</a>. I wanted to play around with some ideas that required a multi-touch pad, but there aren't any devices available (Tactiva aren't shipping...)</p>

<p>Long story short, I made a simple one from a plastic bag, some dye and a camera:</p>

<p><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/yzNh31q61gc"></param><param name="wmode" value=;transparent"></param><embed src="http://www.youtube.com/v/yzNh31q61gc" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>]]></description>
         <link>http://blog.medallia.com/2007/06/dyesight.html</link>
         <guid>http://blog.medallia.com/2007/06/dyesight.html</guid>
         <category>OS X Hacks</category>
         <pubDate>Tue, 12 Jun 2007 09:00:00 -0800</pubDate>
      </item>
            <item>
         <title>jQuery Reference Widget</title>
         <description><![CDATA[<p><img alt="dash.jpg" src="http://blog.medallia.com/screen.gif" style="border:4px solid #eee; float:left; margin-right:8px; margin-bottom:5px;" />When <a href="http://www.bartelme.at/">Wolfgang Bartelme</a> and the <a href="http://www.prototypejs.org/">Prototype</a> crew first launched their OSX widget, we jQuery folk tried not to covet. Try as we might though (truth be told) we wanted one too!</p>

<p>Fast forward a few weeks later: I'm on a plane heading to our headquarters in Menlo Park. Eclipse (and a bunch of other technologies) are serving me our app via localhost--nice! ...that is, until I needed to reference those pesky $.ajax parameters!</p>

<p>With that in mind, and the remainder of the flight, I threw together a <a href="http://jqueryjs.googlecode.com/svn/trunk/tools/dashboard-widget/jQuery-dashboard-widget.v1.0.zip">jQuery reference widget</a>. It's been of value to us front-end developers at <a href="http://www.medallia.com">Medallia</a>, and now we're returning some love to the jQuery community with this public release.</p>

<p>The widget provides simple, searchable, offline access to the <a href="http://jquery.com/api">API</a>. More, we've provided the ability to search older APIs, as well as a few quick-links to online resources.</p>

<p>Per <a href="http://ejohn.org">Resig's</a> suggestion (and thanks John for all your help), we're releasing this with an <a href="http://www.opensource.org/licenses/mit-license.php">MIT license</a> and have made it available under <a href="http://jqueryjs.googlecode.com/svn/trunk/tools/dashboard-widget">version control</a>.</p>

<p>We hope you find it of value!</p>

<p><a href="http://jqueryjs.googlecode.com/svn/trunk/tools/dashboard-widget/jQuery-dashboard-widget.v1.0.zip" style="text-decoration: line-through">Download the widget, v1.0</a> (<a href="http://blog.medallia.com/jquery-widget.gif">View screenshots</a>)</p>

<p style="font-weight:bold;">I've updated the widget to the latest documentation  1.1.3.1.</p>  <a href="http://jqueryjs.googlecode.com/files/jQuery-dashboard-widget.v1.1.zip">Download version 1.1</a>]]></description>
         <link>http://blog.medallia.com/2007/05/jquery_reference_widget.html</link>
         <guid>http://blog.medallia.com/2007/05/jquery_reference_widget.html</guid>
         <category>widgets</category>
         <pubDate>Sun, 20 May 2007 14:55:17 -0800</pubDate>
      </item>
            <item>
         <title>TopCoder Open Marathon: Robot Routing</title>
         <description><![CDATA[<p>Many developers here at Medallia have participated extensively in algorithmic coding competitions like the ACM World Championship of Programming and TopCoder Open. These are fast-paced and get the blood flowing, as you spend around an hour to solve a problem, and either your solution gives the correct answer for every single test case, or you score zero. This year, however, the <a href="http://www.topcoder.com/tc?module=Static&d1=tournaments&d2=tco07&d3=marathon&d4=description">TopCoder Open</a> added a new competition format, the marathon. Here you have typically one full week to work on a problem which is too hard to find the optimal solutions, but instead your solution is scored based on how well it fares compared to your competitors. With the possibility of all-paid travel to the finals in Las Vegas for the 8 best competitors and $15,000 to the winner, I decided to give this interesting new competition a shot.</p>

<p>There were 1249 registrants, which got narrowed down to 500, 200, 50, and finally 8 through four online rounds. In one problem you had to make an AI for a simplified version of poker, and in another you had to write a strategy for a lumberjack running around in a forest. It is however the fourth problem that is my topic, as here the competition gets really tough for those 8 finalist spots.</p>

<div style="width:220px; float:right;">
<a href="http://blog.medallia.com/routes.html" onclick="window.open('http://blog.medallia.com/routes.html','popup','width=593,height=374,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img alt="" src="http://blog.medallia.com/routes_thumb.png" width="198" height="125" align="right" /></a>
</div>

<p>The problem is about directing an army of up to several thousands robots as they go around in a warehouse delivering products, with the objective of completing all the assigned tasks as quickly as possible. Researchers have studied the general concept of multi-robot collaborative routing before, but it's much more fun to see what 50 good programmers can come up with in two weeks for this particular problem formulation.</p>

<p>Read the full entry to see a full explanation of my algorithms, the source code, and the results.<br />
</p>]]></description>
         <link>http://blog.medallia.com/2007/05/topcoder_open_marathon_robot_r_1.html</link>
         <guid>http://blog.medallia.com/2007/05/topcoder_open_marathon_robot_r_1.html</guid>
         <category>Code</category>
         <pubDate>Wed, 02 May 2007 16:00:00 -0800</pubDate>
      </item>
            <item>
         <title>Medallia is hiring</title>
         <description><![CDATA[<p>Medallia is growing rapidly and we need more people both at our Menlo Park, CA (Silicon Valley) and Oslo, Norway locations. </p>

<p>For our User Experience team, we need a skilled front-end developer looking to push the boundaries of the browser in order to create unparalleled user experiences. To create elegant aesthetics we are looking for a visual designer that can make art scalable and appropriate in the context of web applications. </p>

<p>To join our world class engineering team, we are looking for a senior software developer with architect design skills and an ability to craft elegant code. And to give our engineers a run for their money, we do need someone that enjoys breaking things and finding vulnerabilities as an accomplished QA engineer.</p>

<p>To read more, head over to the <a href="http://blog.medallia.com/jobs/" title="Jobs at Medallia">jobs section</a></p>]]></description>
         <link>http://blog.medallia.com/2007/05/were_need_more_people.html</link>
         <guid>http://blog.medallia.com/2007/05/were_need_more_people.html</guid>
         <category>Jobs</category>
         <pubDate>Wed, 02 May 2007 11:59:37 -0800</pubDate>
      </item>
            <item>
         <title>Google Print &amp; Library Lookup Mashup</title>
         <description><![CDATA[<p><strong>Instantly know if that book you're glancing at on Google Print is available at the local library.</strong></p>

<div style="width:180px; float:right;">
<a href="http://blog.medallia.com/images/gprintmashup.html" onclick="window.open('http://blog.medallia.com/images/gprintmashup.html','popup','width=658,height=478,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img class="sm"src="http://blog.medallia.com/images/gprintmashup-thumb.png" width="150"  alt="" /></a></div>

<p><a href="https://addons.mozilla.org/en-US/firefox/addon/748">Greasemonkey</a> has been a great tool for creating efficiencies at work, and for hacking fun on the weekend.  I like to support the local libraries so I created this mashup of Google Print's book view and the San Francisco Peninsula Library system's book search. It immediately let's you know if the book you're paging through on Google Print is available in the library. Click on the  screenshot for a preview.  <a href="http://userscripts.org/scripts/show/8286">Get the script</a></p>

<p>The Greasemonkey Javascript puts a small yellow box in the corner of your Google Print book search. The box includes a book title and a link to the library system's search results. When clicked, a new browser tab is created containing the library's lookup page with the book's location and status.</p>

<p>The script also linkifies the library names on the latter page, to point to the library's street map, hours and phone page.</p>]]></description>
         <link>http://blog.medallia.com/2007/04/google_print_library_lookup_ma.html</link>
         <guid>http://blog.medallia.com/2007/04/google_print_library_lookup_ma.html</guid>
         <category>Greasemonkey</category>
         <pubDate>Sun, 08 Apr 2007 17:28:04 -0800</pubDate>
      </item>
            <item>
         <title>Building Bridges</title>
         <description><![CDATA[<p>I recently read <a href="http://www.dreamingincode.com/">Dreaming in Code</a>, a book by Scott Rosenberg which follows the development of <a href="http://chandler.osafoundation.org/">Chandler</a>, a software project started to design a revolutionary tool for personal information management. The recurring theme in the book is how hard software development has turned out to be, and why this is so surprising to most people.</p>

<p>Many have written their thoughts on this subject, and the comparison to building bridges is frequently made: if only we could build software the way we build bridges it would always be on time, on budget and of high quality.</p>

<p>I would argue, instead, that software development is <i>incredible easy</i>. It is so easy, in fact, that any 14-year-old with some spare time on his<a href="#14">*</a> hands can do it. No other profession is so readily available: anyone with a computer and some spare time can do it right from home.</p>

<p>Let me take you along on a small thought experiment: <b>what if building bridges was as easy as developing software</b> or in fact any kind of structure? What if, after writing down some specification on dimensions, material used and other necessary parameters you could press a button and said structure would magically appear out of thin air?</p>]]></description>
         <link>http://blog.medallia.com/2007/03/building_bridges.html</link>
         <guid>http://blog.medallia.com/2007/03/building_bridges.html</guid>
         <category>Code</category>
         <pubDate>Wed, 21 Mar 2007 22:15:04 -0800</pubDate>
      </item>
            <item>
         <title>A Guided Tour of Mercurial</title>
         <description><![CDATA[<p>
Here at Medallia we have recently switched from <a href="http://subversion.tigris.org/">Subversion</a> to <a href="http://www.selenic.com/mercurial/">Mercurial</a> for some of our projects. While both are very good tools for managing a source code tree there is a significant difference in the philosophy between the two tools and the problems they are trying to solve. While I will not claim that Mercurial is perfect it has turned out to be a very significant improvement for us, mainly because of its support for tracking branches, which Subversion instead leaves in the (perhaps not so) capable hands of its users.

<p>
The following is a guide I wrote which we are using internally to get people up to speed on using Mercurial. While there are several other guides out there I have not found one which, in my opinion, explains well how to effectively work with named branches (probably because they were only relatively recently added to Mercurial). I also wanted a single document which explains everything necessary to start working in a clear and concise way. My hope is that this guide provides that.]]></description>
         <link>http://blog.medallia.com/2007/02/a_guided_tour_of_mercurial.html</link>
         <guid>http://blog.medallia.com/2007/02/a_guided_tour_of_mercurial.html</guid>
         <category>Code</category>
         <pubDate>Sat, 24 Feb 2007 20:32:00 -0800</pubDate>
      </item>
            <item>
         <title>Gafter&apos;s talk on closures for Java</title>
         <description><![CDATA[<p>I thought it would be worth noting that <a href="http://gafter.blogspot.com/">Neal Gafter</a>'s <a href="http://www.bejug.org/confluenceBeJUG/display/PARLEYS/Closures+for+Java">talk on the closures proposal for Java</a> is now online. Enjoy.</p>]]></description>
         <link>http://blog.medallia.com/2006/12/gafter_on_closures.html</link>
         <guid>http://blog.medallia.com/2006/12/gafter_on_closures.html</guid>
         <category></category>
         <pubDate>Tue, 19 Dec 2006 07:17:22 -0800</pubDate>
      </item>
            <item>
         <title>Aspirin for headache</title>
         <description><![CDATA[<p>A while ago a big pharmaceutical company wanted to expand their business to the Middle East since their marked research showed that there was a large untapped marked there for headache medication. The only problem was that since many people there did not know how to read their normal advertising would not be effective, but then someone came up with the idea of using this visual ad:</p>

<div style="text-align:center" >
<img style="margin:0 auto" alt="Aspirin reversed" src="http://blog.medallia.com/images/kristian_aspirin_reversed.gif" width="626" height="210" />
</div>

<p>They thought this was a brilliant idea and went ahead, putting it up on numerous big billboards. After a few weeks the sales were still very slow, however, and they could not figure out why, until after asking a few people why they were not interested it dawned on them.</p>]]></description>
         <link>http://blog.medallia.com/2006/11/aspirin_for_headache_1.html</link>
         <guid>http://blog.medallia.com/2006/11/aspirin_for_headache_1.html</guid>
         <category>Code</category>
         <pubDate>Wed, 08 Nov 2006 09:06:41 -0800</pubDate>
      </item>
            <item>
         <title>Lies, Damn Lies, and Statistics</title>
         <description><![CDATA[<p>Medallia has, as part of its product portfolio, an advanced data analysis tool which is the main interface we provide our customers for looking at the data we collect for them. This tool is a web-based application and can answer questions such as “show me, for each question asked, the percentage of females who gave me a top 10% score grouped by income level for the past quarter, and show the percent change since the same quarter of last year” in less than a second even when the number of surveys are in the millions. “Yeah, yeah, am I sure it makes coffee as well” you are probably thinking, but this is actually important for what I am about to explain.</p>

<p>Since we provide a web application to our customers that we host ourselves we are naturally interested in how it is being used. A while ago one of our account managers asked me to compile a report for her on how many times people from a specific client had logged in over the last week, and I quickly realized that this would not be the last such request. As much as I enjoy grepping through logfiles (or even writing a small perl script to do it for me) I would much rather spend my time developing new features, so then I got an idea. Since we already have an advanced reporting application that churns through millions of records in less than a second while making coffee, why not try to use it to do our usage statistics as well? How much work would it take? Not much as it turns out!</p>]]></description>
         <link>http://blog.medallia.com/2006/11/lies_damn_lies_and_statistics_1.html</link>
         <guid>http://blog.medallia.com/2006/11/lies_damn_lies_and_statistics_1.html</guid>
         <category>Code</category>
         <pubDate>Thu, 02 Nov 2006 09:55:16 -0800</pubDate>
      </item>
      
   </channel>
</rss>
