<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.9.2 (http://www.squarespace.com/) on Wed, 10 Mar 2010 05:13:36 GMT--><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rss="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:cc="http://web.resource.org/cc/"><rss:channel rdf:about="http://commented.org/blog/"><rss:title>Commented.org</rss:title><rss:link>http://commented.org/blog/</rss:link><rss:description></rss:description><dc:language>en-US</dc:language><dc:date>2010-03-10T05:13:36Z</dc:date><admin:generatorAgent rdf:resource="http://www.squarespace.com/">Squarespace Site Server v5.9.2 (http://www.squarespace.com/)</admin:generatorAgent><rss:items><rdf:Seq><rdf:li rdf:resource="http://commented.org/blog/2010/1/19/hashtags-qlf-charlie-foxtrot.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/12/31/simpler-than-oauth-wrap.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/2/6/garageband-09-not-bad-at-all.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/31/new-song-page.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/30/week-12-you-didnt-want-to-stay.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/27/welcome-sofia.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/23/week-11-without-my-demons.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/20/always-trust-a-john.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/19/week-10-all-alone.html"/><rdf:li rdf:resource="http://commented.org/blog/2009/1/12/week-9-it-will-be-alright.html"/></rdf:Seq></rss:items></rss:channel><rss:item rdf:about="http://commented.org/blog/2010/1/19/hashtags-qlf-charlie-foxtrot.html"><rss:title>#hashtags #QLF? Charlie Foxtrot</rss:title><rss:link>http://commented.org/blog/2010/1/19/hashtags-qlf-charlie-foxtrot.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2010-01-19T08:15:43Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p><a href="http://twitter.pbworks.com/Hashtags">Hashtags</a> are cool&#8230; until they become<a href="http://epic.cs.colorado.edu/helping_haiti_tweak_the_twe.html"> so difficult that they ruin</a> the text itself beyond immediate understanding.</p>

<p>It&#8217;s beginning to look a bit like the old <a href="http://en.wikipedia.org/wiki/Q_code">Q codes</a>, a system almost impossible to understand unless you knew all the emerging and de facto rules. </p>

<p>Which unfortunately isn&#8217;t possible in any open-ended system like Twitter. </p>

<p>No, please leave the 140 characters for human-readable text. Don&#8217;t ruin the legibility with weird syntax. Humans are not gadgets or machines. </p>

<p>Otherwise, we might as well just start base 64 encoding binary data.</p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/12/31/simpler-than-oauth-wrap.html"><rss:title>Simpler than OAuth WRAP</rss:title><rss:link>http://commented.org/blog/2009/12/31/simpler-than-oauth-wrap.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2010-01-01T05:21:47Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p><a href="http://wiki.oauth.net/OAuth-WRAP">OAuth WRAP</a>&nbsp;sprouted up because some of the original <a href="http://oauth.net/">OAuth</a>&nbsp;authors and initial implementors thought there were usability issues with OAuth. For example, <a href="http://davidrecordon.com/">David Recordon</a>, one of the original OAuth authors <a href="http://hueniverse.com/2009/11/wrap-and-the-demise-of-the-oauth-community/">commented</a> that Facebook is &#8220;hearing strongly from other major implementors that OAuth has not been widely adopted by their developer communities because it is too difficult to correctly implement&#8221;.</p>
<p>Even though WRAP seems a step in the right direction. It&#8217;s good to&nbsp;<a href="http://bret.appspot.com/entry/oauth-wrap">make things simpler</a>. But&nbsp;it still doesn&#8217;t address the common basic problems with protocols like OAuth:</p>
<p><em><strong>It still seems too difficult</strong></em>. A cursory glance at the <a href="http://oauth-wrap-wg.googlegroups.com/web/WRAP-v0.9.7.2.pdf?gda=IfV29kQAAABFB7PFAFiVedPtjcqT8uuIoqEJvKiLqBW0PydIGXBabxidFvlYqd_ZjmG9h9kh5-pV6u9SiETdg0Q2ffAyHU-dzc4BZkLnSFWX59nr5BxGqA">WRAP protocol</a> shows it roughly the same length as the <a href="http://tools.ietf.org/html/draft-hammer-oauth-08">OAuth 1.0a spec</a>. Granted, both protocols are in draft status, and this may be a silly comparison. I had expected a simpler version to be shorter than what it replaces.</p>
<p><strong><em>The browser redirect anti pattern is still in full swing</em></strong>.&nbsp;WRAP fails to address this huge usability and security problem.&nbsp;We often talk about the <em><a href="http://adactio.com/journal/1357">password anti pattern</a>,</em> which&nbsp;boils down to: stop conditioning people to give out their passwords.&nbsp;Yes, this is pure evil. We need to stop this, and OAuth helps tremendously here.</p>
<p>The browser redirect anti pattern is scary. Like any anti pattern, this one conditions us to accept that the browser bounces us back and forth between sites. It conditions us to accept that the browser goes where it wants to, and that we are no longer the driver, but the passenger, of our web browsing.</p>
<p>This is dangerous and opens up phishing opportunities. The <a href="http://oauth.net/advisories/2009-1/">session fixation attack</a> of the original Oauth 1.0 protocol could hardly been successful without this anti pattern.</p>
<p><strong><em>So there has to be something simpler</em></strong>. At a meeting at Facebook December 8, 2009, <a href="http://groups.google.com/group/oauth-wrap-wg/msg/20e821568e879362">people discussed the Netflix authorization flow</a>, used to connect devices such as TV:s to a Netflix customer&#8217;s account. When connected, the TV can play the movies the customer adds to their queue. I think the people gathered missed that this flow can be used for all authorization, not just devices, but any web app.</p>
<p>The Netflix flow can be explained in a few sentences. Because the user is not connecting the TV to Netflix via the browser, a redirect less scheme was invented: The TV displays a short memorable text code to the customer, who enters this code at the Netflix website to give the device access. That&#8217;s it. Nothing more, nothing less.</p>
<p><em><strong>The underlying protocol? Dead simple</strong></em>. In essence, the TV makes one call to Netflix to get a code, which it then displays to the user. Then it polls Netflix, say every 10 seconds, to see whether the code has been authorized, and if so, gets back some key to use for all future operations for that customers. If the key stops working, the customer has revoked authorization.&nbsp;</p>
<p>This key can be used as secret tokens are used in WRAP: signature-less in the HTTP protocol header on top of&nbsp;SSL.&nbsp;Yes, the devil is in the details, but it seems this fits nicely into existing OAuth-enabled services with very little change.&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/2/6/garageband-09-not-bad-at-all.html"><rss:title>GarageBand '09: not bad at all</rss:title><rss:link>http://commented.org/blog/2009/2/6/garageband-09-not-bad-at-all.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-02-06T07:04:14Z</dc:date><dc:subject>music</dc:subject><content:encoded><![CDATA[<p>I&#8217;ve been trying out the 2009 version of GarageBand for a few days and it feels tighter than last year&#8217;s. There is less lag when you switch between info and loop mode, the same hardware seems to be snappier in most operations, actually.</p>

<p>It seems that the lesson feature is pretty usable, too. The software comes with 16 free lessons for the piano and the guitar. If you have trouble getting into reading dry books, these lessons are well worth checking out. </p>

<p>The way you add effects on both software and real instrument tracks seems more intuitive. I haven&#8217;t tried out the &#8220;magic band&#8221; stuff, but if brings the joy of music to people, why not? (I could almost say the same about Microsoft&#8217;s <em>Songsmith</em>, but <a href="http://www.youtube.com/watch?v=dTXG2uKNLIw">this</a> is just <a href="http://www.youtube.com/watch?v=e1e_h1OJfS4&amp;feature=related">too</a> <a href="http://www.youtube.com/watch?v=ypycpKQxXR0&amp;feature=related">weird</a>.)</p>

<script type="text/javascript" src="http://mediaplayer.yahoo.com/js"></script>

<p>A few snippets of GarageBand 09 music from my <a href="http://commented.org/songs/">songs</a> page:
<a href="http://sloakmusic.s3.amazonaws.com/You make me.mp3">You make me</a>. <a href="http://sloakmusic.s3.amazonaws.com/Pink Butterfly.mp3">Pink butterfly</a>.</p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/31/new-song-page.html"><rss:title>New song page</rss:title><rss:link>http://commented.org/blog/2009/1/31/new-song-page.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-31T22:13:37Z</dc:date><dc:subject>music</dc:subject><content:encoded><![CDATA[<p>I added a <a href="http://commented.org/songs">new page with my songs</a>, where the <a href="http://developer.yahoo.com/mediaplayer/">Yahoo! Media Player</a> picks up my mp3s from <a href="http://aws.amazon.com/s3/">Amazon S3</a>. </p>

<p>Nice!</p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/30/week-12-you-didnt-want-to-stay.html"><rss:title>Week 12: You Didn't Want To Stay</rss:title><rss:link>http://commented.org/blog/2009/1/30/week-12-you-didnt-want-to-stay.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-30T17:10:55Z</dc:date><dc:subject>music</dc:subject><content:encoded><![CDATA[<p>Last week. Twelve grueling weeks were over just before Christmas. I learned a lot during this course and hope to build on it. </p>

<p>Week 12 saw us combine the verse/refrain form with a chorus. This form takes advantage of the strong points of both: the lyric focus and interesting music of verse/refrain, with the singalong, wider audience appeal of the verse chorus. </p>

<p>There are two types of combination song forms — the pop version and the country version. Mine is more of the former.</p>

<p>Title: &#8220;You didn&#8217;t want to stay&#8221;</p>

<p>Verse 1</p>

<pre><code>D.................A......
I remember when I met you
Bmin....................G...
In your backyard by the tree
D.......................A......
You were smiling at the sunshine
Bmin.........................E...
But never once you smiled at me

G.............................D......
Could you tell me what you're thinking
A..................F#..
On such a summer's day
G......................Bmin.......
Was it that you had to leave girl
E..........................A....
And that you didn't want to stay
</code></pre>

<p>Verse 2</p>

<pre><code>Stars shine through the cold wind
Backyard winds blow strong and fast
And I am standing in the moonshine
Trying hard to see our past

Clinging on to your memory
Cold night follows colder day
Was it that you had to hide girl
Or that you didn't want to stay
</code></pre>

<p>Bridge/Chorus</p>

<pre><code>F#......................Bmin
After all I can't forget though
F#......................Bmin
that I never heard you say
E.........................D
that there was a cloud in your sky
E............................D....
and that you didn't want to (stay)
F..........
didn't want to, didn't want to
G.............................A
didn't want to, didn't want to stay
</code></pre>

<p>Verse 3</p>

<pre><code>All the guests are all but gone now
Saying how they miss you so
And I am staring into nothing
I understand you had to go

I hope you find your peace now
Wishing I could hear you say
What I never understood girl
Why you didn't want to stay
</code></pre>

<p>Bridge/Chorus repeat</p>

<p><embed src= "http://www.odeo.com/flash/audio_player_standard_gray.swf" quality="high" width="300" height="52" allowScriptAccess="always" wmode="transparent"  type="application/x-shockwave-flash" flashvars= "valid_sample_rate=true&amp;external_url=http://sloakmusic.s3.amazonaws.com/You Didn't Want To Stay.mp3" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed></p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/27/welcome-sofia.html"><rss:title>Welcome Sofia!</rss:title><rss:link>http://commented.org/blog/2009/1/27/welcome-sofia.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-27T20:17:32Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Our second daughter Sofia Lily arrived late Saturday night. We&#8217;re so honored and humbled to receive another wonderful gift, and big sister Isabella already shows she will be a great friend and mentor to her younger sister.</p>

<p>Sofia weighed in at 8lbs 15oz (4060 g) and 21.5 in (54.6 cm). </p>

<p>Thanks everyone for all your help during the past weekend. Fellow parents at St. Martin of Tours, friends, nurses and doctors at Good Samaritan in Los Gatos, we are forever in your debt. </p>

<p>See more <a href="http://flickr.com/photos/hgranqvist/sets/72157613014065747/">pics here</a>. </p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/23/week-11-without-my-demons.html"><rss:title>Week 11: Without My Demons</rss:title><rss:link>http://commented.org/blog/2009/1/23/week-11-without-my-demons.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-23T06:17:33Z</dc:date><dc:subject>music</dc:subject><content:encoded><![CDATA[<p>Here&#8217;s a verse/refrain song using mixed harmonic phrase, 3-bar surprise in the refrain line, and a moving bridge type using harmonic sequence in form A1 A2 B A3.</p>

<p>It&#8217;s probably my weakest assignment in the entire course. It really is difficult it is to write these kind of songs!</p>

<p>I tried to build the song around James Hillman&#8217;s quote &#8220;I don&#8217;t want the demons taken away because they&#8217;re going to take my angels too.&#8221;</p>

<p>Title: &#8220;Without my demons&#8221;</p>

<pre><code>C........................F
It isn't really what you see
C.......................G
No need to reach out to me
C...........Bb.........Eb
There isn't much I can say
C......................F
So darling just let me be, .... on my own
Bb.....................Eb..............D7
Without my demons, the angels would go away


C.........................F
I have got no one else to blame
C.............................G
I played life as it's one big game
C........Bb..................Eb
And when night time turns to day
C.....................F
It's just more of the same, .... but I'm not alone
Bb....................Eb..............G
Without my demons, my angels would go away


Ab........................................Eb
I promised I will change, forever were my words
Gm......................................D  
And now I listen to them, they sound so absurd
...........G
The best I heard


C...........................F
Between the meaning and the need
C.........................G
The squander of my life I lead
C...............Bb.......Eb
There's nothing left but pray
C.....................F
I promise soon I will proceed, .... but I won't
Bb.........Eb..........D7..............G
Without my demons, my angels would fly away
</code></pre>

<p><embed src= "http://www.odeo.com/flash/audio_player_standard_gray.swf" quality="high" width="300" height="52" allowScriptAccess="always" wmode="transparent"  type="application/x-shockwave-flash" flashvars= "valid_sample_rate=true&amp;external_url=http://sloakmusic.s3.amazonaws.com/Without My Demons.mp3" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed></p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/20/always-trust-a-john.html"><rss:title>Always trust a John</rss:title><rss:link>http://commented.org/blog/2009/1/20/always-trust-a-john.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-20T03:20:44Z</dc:date><dc:subject>security</dc:subject><content:encoded><![CDATA[<p><span class="thumbnail-image-float-left ssNonEditable"><span><a href="javascript:showFullImage('/display/ShowImage?imageUrl=%2Fstorage%2FAlways%2520trust%2520a%2520John.png%3F__SQUARESPACE_CACHEVERSION%3D1232422191985',698,616);"><img style="width: 150px;" src="http://commented.org/storage/thumbnails/713059-2391153-thumbnail.jpg?__SQUARESPACE_CACHEVERSION=1232422205944" alt=""/></a></span><span class="thumbnail-caption">X.509 security window</span></span>Longs is a good store to do basic photo printing. Cheap and reasonably good quality. They seem to understand the business.</p>

<p>They do, however, have a bit to learn about security. Or, perhaps they&#8217;ve understood than no-one really cares anyway, so why not present your uploading page with a certificate expired three years ago and issued to &#8220;john&#8221;? </p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/19/week-10-all-alone.html"><rss:title>Week 10: All Alone</rss:title><rss:link>http://commented.org/blog/2009/1/19/week-10-all-alone.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-19T05:33:51Z</dc:date><dc:subject>music</dc:subject><content:encoded><![CDATA[<p>Week 10. Only two more two go. </p>

<p>We focused this week on verse/refrain songs, which are quite different from verse/chorus songs. The dynamic of refrain songs makes the audience listen more intently than in a chorus form, and is often considered a more sophisticated form of a song since there is no chorus to sing along with.</p>

<p>I tried to do something different this week, something slower, that would fit a great soaring voice. Slow is a work in progress for me: I always tend to rush my music.</p>

<p>While I&#8217;m OK with most of the melody/harmony (albeit with a weak bridge perhaps) I think the lyrics have a few rough spots. I feel the story doesn&#8217;t come out right &#8212; that she left him and now realizes it&#8217;s worse than before.</p>

<p>The song clocks in at 2 minutes, so there is room for some improvement.</p>

<p>Wow, listening to this shaky high singing is kinda cute in an odd way. Yikes.</p>

<p>Title: &#8220;All alone&#8221;</p>

<p>Verse #1</p>

<pre><code>FM7......CM7...
He never told her
FM7...................CM7..
She never felt he was there
Em7................Dm7..
He would always be somewhere
Em7..............CM7..
She would be all alone
</code></pre>

<p>Verse #2</p>

<pre><code>She is happy without him
Free she can do what she wants
She can start her new life
He can be all alone
</code></pre>

<p>Bridge</p>

<pre><code>Eb6...................Ab6........
Life should have been so much better
....Gm7............
And richer than before
....Eb6...........Ab6..........
But all you do is writing letters
...G7................C#m
Of love and hope for more
</code></pre>

<p>Verse #3</p>

<pre><code>You didn't want to be lonely
Live life on your own
Now you know what happens
Now you'll be all alone
</code></pre>

<p><embed src= "http://www.odeo.com/flash/audio_player_standard_gray.swf" quality="high" width="300" height="52" allowScriptAccess="always" wmode="transparent"  type="application/x-shockwave-flash" flashvars= "valid_sample_rate=true&amp;external_url=http://sloakmusic.s3.amazonaws.com/All Alone.mp3" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed></p>
]]></content:encoded></rss:item><rss:item rdf:about="http://commented.org/blog/2009/1/12/week-9-it-will-be-alright.html"><rss:title>Week 9: It will be alright</rss:title><rss:link>http://commented.org/blog/2009/1/12/week-9-it-will-be-alright.html</rss:link><dc:creator>Hans</dc:creator><dc:date>2009-01-12T07:14:13Z</dc:date><dc:subject>music</dc:subject><content:encoded><![CDATA[<p>A few of you have asked me to finish the Berklee series, so here goes.</p>

<p>Week 9 centered around the Type 2 prechorus song, which differs from Type 1 in two significant ways:</p>

<ul>
<li>the verse, prechorus, and chorus are on three different grooves/progressions</li>
<li>the Type 2 prechorus builds intensity right away</li>
</ul>

<p>Title: It Will Be Alright</p>

<p>Verse</p>

<pre><code>(N.C.)................Em......
Are you sure that you need it?
......................G.......
Are you sure that you want it?
..........................Bm.....
All the heart ache you're feeling
.....C..............D....
When love turns you down?

(N.C.)................Em......
Are you sure that you found it?
.........................G.......
Are you sure that you'll keep it?
....................Bm.....
All the failures of being
.....C..............D....
When life wears you down?
</code></pre>

<p>Prechorus</p>

<pre><code>G.............C................Bm..............D.....
We were never saying that we'd always stay the same
G..............Bm..............C................D.....
Now that we're older should we bow our heads in shame?
</code></pre>

<p>Chorus</p>

<pre><code>C.......D.....G......G7
It will be al-right
C..........D.....Bm...........Em...
There will be an-other ray of light
C.......D.....Gm.............Bb......
It will be al-right, just be-lieve it
..Am...............Eb.....
I know that you'll feel it
D.......D7....G....
It will be al-right
</code></pre>

<p><embed src= "http://www.odeo.com/flash/audio_player_standard_gray.swf" quality="high" width="300" height="52" allowScriptAccess="always" wmode="transparent"  type="application/x-shockwave-flash" flashvars= "valid_sample_rate=true&amp;external_url=http://sloakmusic.s3.amazonaws.com/It will be alright.mp3" pluginspage="http://www.macromedia.com/go/getflashplayer"> </embed></p>
]]></content:encoded></rss:item></rdf:RDF>