<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1404532365205608026</id><updated>2012-01-25T11:29:37.363-08:00</updated><category term='computer science'/><category term='SIP'/><category term='on-demand'/><category term='SaaS'/><category term='tagging'/><category term='MMPORG history'/><category term='philosophy'/><category term='consumer software'/><category term='webware'/><category term='telephony'/><category term='VOIP'/><title type='text'>Recursive Digressions</title><subtitle type='html'>Unstructured comments on life and how to live it.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-5597085958607575267</id><published>2012-01-23T14:02:00.001-08:00</published><updated>2012-01-23T19:03:49.480-08:00</updated><title type='text'>Spec Conformance in the Age of Clouds</title><content type='html'>&lt;p&gt;As a veteran of three or four (depending upon how you count them) majorly disruptive changes in computing, I’m always on the lookout for things that distinguish cloud computing from what-has-been-before. I am seeing a rather interesting change in the notion of “conformance” as it applies to the way specifications are written and negotiated.&lt;/p&gt; &lt;h1&gt;&lt;font size="3"&gt;What Does “Conform” Mean?&lt;/font&gt;&lt;/h1&gt; &lt;p&gt;To be brief (and oversimplify somewhat), in the age of packaged software, a statement in a specification that “conformant implementations MUST support FeatureX” is a promise about the possible behavior of any software claiming to conform to that spec. If you buy a chunk of software that claims to conform to this specification, it must be possible for you to configure that software such that FeatureX is supported. Note that this configuration doesn’t have to be the default configuration. The vendor that sold you the software may even recommend &lt;strong&gt;against&lt;/strong&gt; such a configuration. Nevertheless, that vendor can rightfully claim that their product conforms to the spec, even if some of their customers “choose” to configure their deployments in ways that are not spec conformant.&lt;/p&gt; &lt;p&gt;In the cloud, a statement that “conformant implementations MUST support FeatureX” is more closely a statement about the actual runtime configuration of any system claiming to conform to that spec. Because the vendor and provider roles have merged, “the vendor” cannot simply allow “the provider” to enable support for FeatureX – FeatureX has to actually be supported in the systems that are deployed and operated by that provider. There are ways the provider can skirt this, for example, by allowing/enabling FeatureX on a per-tenant basis – but, overall, it seems to me that the move to cloud computing has reduced the amount of wiggle room available to implementers.&lt;/p&gt; &lt;h1&gt;&lt;font size="3"&gt;Sausage Making&lt;/font&gt;&lt;/h1&gt; &lt;p&gt;&lt;em&gt;Warning to anyone laboring under the illusion that specifications are crafted by disinterested scientists whose main goal is technical quality: this next section deals with some of the political/technical maneuvering that goes into creating specifications and may be unsettling.&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Let’s lay out a scenario: You are involved in a standards-development group that is collaborating on the specification of some API. It turns out that some members of this group feel that it is absolutely essential that the API &lt;strong&gt;MUST &lt;/strong&gt;support FeatureX. After researching their proposal you become convinced that these people have been engaging in some activity that seriously impairs the functioning of their pre-frontal cortex. You try arguing them out of it, watering down the requirement, etc. all to no avail.&lt;/p&gt; &lt;p&gt;If you are representing an organization that develops and sells packaged software, this situation is not too dire if (1) FeatureX doesn’t affect too many other areas, (2) a minimal FeatureX isn’t overly complicated and difficult to implement, (3) you are reasonably sure that none of your customers will ever want FeatureX. Simply get your developers to implement a minimal version of FeatureX, enable it as a non-default configuration option, and ship. If you are right about (3), the code for FeatureX will never be exercised outside of conformance testing. You and your organization may not want to do this, but you have some degree of flexibility.&lt;/p&gt; &lt;p&gt;Now suppose you are representing an organization the develops, hosts, and operates a cloud service. Even with per-tenant configuration tricks, the call to require FeatureX means that your organization not only has to develop the code to support FeatureX, it may have to deploy it and support it. This significantly raises the stakes around conformance – particularly for features that are “operationally infeasible” in your particular architecture. You can’t be flexible about a requirement to support a feature you can’t actually support.&lt;/p&gt; &lt;h1&gt;&lt;font size="3"&gt;Upshot&lt;/font&gt;&lt;/h1&gt; &lt;p&gt;I see a couple of obvious effects of this difference in the context around cloud specifications. The first is that cloud specs will take longer to develop. Arguments that formerly could have been resolved with a “fine, have your FeatureX” now have to follow some (in all likelihood torturous) course that morphs FeatureX into something everyone can support and/or some parties have to reconcile themselves to the refactoring work necessary to support it. Secondly, I expect cloud specs to have fewer strange requirements that were included due to the intransigence of some parties and laziness of others. This is a good thing for interoperability and thus for humanity at large.&lt;/p&gt; &lt;h1&gt;&lt;font size="3"&gt;Caveat&lt;/font&gt;&lt;/h1&gt; &lt;p&gt;Note that none of this has anything to do with the creation (or blessed lack thereof) of “optional features” – i.e. features that are described by a spec but not required to claim conformance. As near as I can tell, there is nothing about the context of cloud computing that effects the creation of such features one way or another.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-5597085958607575267?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/5597085958607575267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=5597085958607575267' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5597085958607575267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5597085958607575267'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2012/01/spec-conformance-in-age-of-clouds.html' title='Spec Conformance in the Age of Clouds'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-482216704577961419</id><published>2011-01-05T17:00:00.001-08:00</published><updated>2011-01-05T17:00:40.592-08:00</updated><title type='text'>lyrics daddy moon</title><content type='html'>&lt;p&gt;If you came across this because you are searching for the artist or lyrics to the song that played on the episode of Parenthood that aired Tuesday, January 11th 2011 that has the hook line “oh daddy moon …” this post is to tell you that artist is &lt;a href="http://www.tomfreund.com/" target="_blank"&gt;Tom Freund&lt;/a&gt; and the name of the song is “&lt;a href="http://www.youtube.com/watch?v=2egKnOIWn-k" target="_blank"&gt;Little Room Of Mine&lt;/a&gt;”. You can find the song on his latest album “&lt;a href="http://tomfreund.com/fit-to-screen/" target="_blank"&gt;Fit To Screen&lt;/a&gt;”.&lt;/p&gt;  &lt;p&gt;Obviously I like Tom or I wouldn’t be trying to help other people find him. If you liked “Little Room Of Mine” you’ll like is other stuff.&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c8188ea3-6a2a-4a62-8ab1-809213944400" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/music" rel="tag"&gt;music&lt;/a&gt;,&lt;a href="http://technorati.com/tags/tomfreund" rel="tag"&gt;tomfreund&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-482216704577961419?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/482216704577961419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=482216704577961419' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/482216704577961419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/482216704577961419'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2011/01/lyrics-daddy-moon.html' title='lyrics daddy moon'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-3175380841250966731</id><published>2011-01-05T12:35:00.001-08:00</published><updated>2011-01-05T12:35:25.400-08:00</updated><title type='text'>The Mind that Maps</title><content type='html'>&lt;p&gt;Considering my appetite for cool software tools, it shouldn’t come as a surprise that I’m into mind mapping software. I’ve used &lt;a href="http://www.mindjet.com/" target="_blank"&gt;MindManager&lt;/a&gt; for years now and, though I like the product, I can’t see shelling out $180 for an upgrade when there are so many &lt;a href="http://lifehacker.com/5188833/hive-five-five-best-mind-mapping-applications" target="_blank"&gt;cheaper/free alternatives&lt;/a&gt;. Is it too much to expect Mindjet to factor the existence of these competitive offerings into their pricing? Or is it just the case that MindManager is targeted at the enterprise and no one actually uses their own money to buy it?&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:933b588a-1c74-4948-99d3-3f5a7d53b410" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/mindmap" rel="tag"&gt;mindmap&lt;/a&gt;,&lt;a href="http://technorati.com/tags/tools" rel="tag"&gt;tools&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-3175380841250966731?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/3175380841250966731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=3175380841250966731' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/3175380841250966731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/3175380841250966731'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2011/01/mind-that-maps.html' title='The Mind that Maps'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-4700830029541060774</id><published>2010-12-22T09:59:00.001-08:00</published><updated>2010-12-22T09:59:43.935-08:00</updated><title type='text'>Something Clever to Say</title><content type='html'>&lt;p&gt;I often wonder how many misbegotten trends in IT have their origin in the need to say something clever about a subject that you don’t know very much about. Example (circa 2002):&lt;/p&gt;  &lt;p&gt;Joe’s Manager: &lt;em&gt;Joe, what do you think about this web services stuff?&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Joe: (scrambling) &lt;em&gt;I think it has a lot of potential but, uh . . ., they really need to solve the security problem first.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;The truth of the matter is, at the time, Joe knew almost nothing about web services, SOAP, etc. but he had read/overheard just enough to know that “everybody” was concerned with “the security problem” (whatever that was). The result was the development of a boatload of&amp;#160; new technologies (WS-Security and its attendant profiles, WS-SecurityPolicy, WS-Trust, WS-SecureConversation, etc.) when the vast majority of SOAP deployments do fine with little more than SSL and BasicAuth. I remember a SOAP-oriented conference in 2005 in which a vendor rep asked the audience “How many of you are using or planning to use WS-Security?”. When only one hand (in a room of at least 100) went up, the rep went slightly non-linear saying something to the effect of, “WTF, you asked us to build all this stuff …?!?”&lt;/p&gt;  &lt;p&gt;Fast forward to today and substitute “cloud” for “web services”. I’m willing to admit that there are a few security issues that are unique to the cloud (mostly around multi-tenancy), but I assert that 99% of “cloud security issues” are no different than current IT security issues. I’m worried that, in their need to have something clever to say about the cloud, people are creating the false impression that someone needs to invent a whole boatload of “cloud security” technologies when we simply need to re-apply our current security solutions.&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:7fe23bda-77a2-457b-83d6-8d689b9c198a" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/cloud" rel="tag"&gt;cloud&lt;/a&gt;,&lt;a href="http://technorati.com/tags/security" rel="tag"&gt;security&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-4700830029541060774?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/4700830029541060774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=4700830029541060774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/4700830029541060774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/4700830029541060774'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2010/12/something-clever-to-say.html' title='Something Clever to Say'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-6400365602216333788</id><published>2010-11-11T16:38:00.001-08:00</published><updated>2010-11-11T16:38:15.450-08:00</updated><title type='text'>For the Children</title><content type='html'>&lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:1d7687cf-c827-4370-af7b-b05511a77b1d" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;BuzzNet Tags: &lt;a href="http://www.buzznet.com/tags/prop19" rel="tag"&gt;prop19&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/marijuana" rel="tag"&gt;marijuana&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/legalization" rel="tag"&gt;legalization&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;While I’m on the subject of marijuana legalization, I just have to spend a few moments rebutting one of the stupidest arguments I heard in the recent debate on CA’s Proposition 19 - “If you legalize pot, all your kids will be doing it”.&lt;/p&gt;  &lt;p&gt;To understand why I think this is such a dumb argument I have to relate the following. When I was a kid growing up in the suburbs of Chicago in the late 70’s it was way, way easier for me (and everyone else I knew) to get our hands on pot than alcohol. Why was this? Because alcohol was legal for people 21 and over and pot was illegal for everybody.&lt;/p&gt;  &lt;p&gt;The people I bought pot from, and the only way that anybody I knew got pot, were acquaintances of mine – sometimes slightly older kids. Meanwhile the only place to buy liquor was stores and bars. The kids selling me pot weren’t taking any great risk in doing so – we’re talking very small quantities here and you had to be a true idiot to get caught. The people who &lt;strong&gt;weren’t&lt;/strong&gt; selling me liquor were doing so because they didn’t want to lose their liquor license for the sake of a cheap case of beer and a bottle of peach schnapps.&lt;/p&gt;  &lt;p&gt;This may all be anecdotal, but I’m pretty sure it’s not. If you want to stop people from selling any kind of drug to kids you have to (a) legalize that drug for use by adults, (b) license the sale of that drug, (c) revoke that license if they are caught selling to minors. You need the carrot &lt;strong&gt;and&lt;/strong&gt; the stick. If I were emperor of CA, I’d tie your liquor license, your lottery concession, and your marijuana license into one big bundle – get caught selling any of these to minors and we’ll revoke all three. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-6400365602216333788?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/6400365602216333788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=6400365602216333788' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/6400365602216333788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/6400365602216333788'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2010/11/for-children.html' title='For the Children'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-5416709564015029765</id><published>2010-11-11T15:50:00.001-08:00</published><updated>2010-11-11T15:50:08.805-08:00</updated><title type='text'>Prop 19 and Huck Finn</title><content type='html'>&lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e5a4ab56-57de-4ef9-b288-168b01e7dad5" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;BuzzNet Tags: &lt;a href="http://www.buzznet.com/tags/prop19" rel="tag"&gt;prop19&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/marijuana" rel="tag"&gt;marijuana&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/legalization" rel="tag"&gt;legalization&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/marktwain" rel="tag"&gt;marktwain&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;While reading Huckleberry Finn to Annelise I came across the following:&lt;/p&gt;  &lt;p&gt;&lt;font face="Times New Roman"&gt;Pretty soon I wanted to smoke, and asked the widow to let me. But she wouldn't. She said it was a mean practice and wasn't clean, and I must try to not do it any more. That is just the way with some people. They get down on a thing when they don't know nothing about it. Here she was a bothering about Moses, which was no kin to her, and no use to anybody, being gone, you see, yet finding a power of fault with me for doing a thing that had some good in it. And she took snuff too; of course that was all right, because she done it herself.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;For those that voted “no” on California’s recent &lt;a href="http://yeson19.com/" target="_blank"&gt;Proposition 19&lt;/a&gt;, it seems like Huck has got your number.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-5416709564015029765?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/5416709564015029765/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=5416709564015029765' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5416709564015029765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5416709564015029765'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2010/11/prop-19-and-huck-finn.html' title='Prop 19 and Huck Finn'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-1510526172185191820</id><published>2010-01-15T23:07:00.001-08:00</published><updated>2010-01-15T23:10:59.089-08:00</updated><title type='text'>Nature</title><content type='html'>&lt;p&gt;This is a riff on something I heard some mad philosopher say on &lt;a href="http://www.onpointradio.org/2009/12/philosophy-in-the-streets" target="_blank"&gt;NPR&lt;/a&gt;, so the original idea isn’t mine (I don’t have any original ideas). This guy was ranting that “Nature” had replaced “God” as our cultural conscience. The clichéd assumptions are everywhere: everything that is Natural is good, Nature is harmonious and in balance,&amp;#160; humanity should strive to align itself with Nature - if/when we ever do, all will be well.&lt;/p&gt;  &lt;p&gt;In truth Nature is anything but balanced. It only looks that way to us because our timescales are so ridiculously short. &amp;quot;Nature” is one giant cataclysm after another. Not once, but &lt;strong&gt;&lt;a href="http://www.space.com/scienceastronomy/planetearth/extinction_sidebar_000907.html" target="_blank"&gt;five&lt;/a&gt;&lt;/strong&gt; times has this planet seen mass extinctions where, for example, 70% of the land species were completely wiped out. Massive floods of magma could bubble up from the Earth’s core (tomorrow) and wipe out the human race (along with all other mammals, most birds, reptiles, etc.). To “Nature”, this wouldn’t be that big of a deal. Nature isn’t our mother and Nature doesn’t &lt;strong&gt;care&lt;/strong&gt; if we live or if we die. “Nature” doesn’t care if we do or don’t try to “live in harmony” with the current equilibrium point (however short-lived it may be).&lt;/p&gt;  &lt;p&gt;I think we should stop deifying Nature and get &lt;strong&gt;pragmatic&lt;/strong&gt;. Take the best telescopes we’ve got and look out at the universe. Do you see, &lt;strong&gt;anywhere&lt;/strong&gt;, any place where humans beings can live that we can get to? &lt;font size="5"&gt;&lt;strong&gt;No.&lt;/strong&gt;&lt;/font&gt; Alright then, what we have here is a &lt;strong&gt;liferaft situation.&lt;/strong&gt; We are living in the &lt;strong&gt;only&lt;/strong&gt; place that we &lt;strong&gt;can&lt;/strong&gt; live and we have to take care of it because we have no idea how long we may need it to last.&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:44a43542-3181-4a19-b87f-e69093dc0656" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;BuzzNet Tags: &lt;a href="http://www.buzznet.com/tags/philosophy" rel="tag"&gt;philosophy&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/green" rel="tag"&gt;green&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/god" rel="tag"&gt;god&lt;/a&gt;,&lt;a href="http://www.buzznet.com/tags/practical+approaches+to+the+survival+of+the+human+species" rel="tag"&gt;practical approaches to the survival of the human species&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-1510526172185191820?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/1510526172185191820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=1510526172185191820' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/1510526172185191820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/1510526172185191820'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2010/01/nature.html' title='Nature'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-1950540670998507621</id><published>2009-12-16T16:37:00.001-08:00</published><updated>2009-12-16T16:37:23.135-08:00</updated><title type='text'>Buckets of Rain</title><content type='html'>&lt;p&gt;My college roommates and I were fanatical about music. When we moved in together in the fall of 1983, our combined record collection spanned the length of our living room wall (long ways). In it you would find generous helpings of XTC, The Clash, Elvis Costello, Dire Straits, The Ramones, what little there was (at the time) from REM and U2, along with the classics we’d grown up with (Beatles, Stones, Who, etc.)&lt;/p&gt;  &lt;p&gt;One thing I could never get my roommates to appreciate, however, was Bob Dylan. I’d first been turned on to Dylan late in high school. Who knows why these things happen? My older sister had left behind a copy of “Bob Dylan’s Greatest Hits Volume II” when she’d gone off to college and it had infected me (the very best version, ever, of “You Ain’t Goin’ Nowhere” is on that album). Since then I had bought a bunch of Dylan records, earlier and later, but my favorite was “Blood on the Tracks”. I had tried several times to get my roommates to appreciate Dylan but, like most people, they couldn’t get past his voice (and this is before he took to basically speaking his lyrics).&lt;/p&gt;  &lt;p&gt;So it’s late in that last year of school. Some random, rainy afternoon; between classes there’s just Ken and me in the apartment. Ken is doing dishes and I’m doing I don’t remember what (not stressed at this point – must have already landed first job). I’m playing “Blood on the Tracks” and Ken is putting up with it. “Buckets of Rain” comes on:&lt;/p&gt;  &lt;p&gt;I like your smile and your fingertips   &lt;br /&gt;I like the way that you move your hips    &lt;br /&gt;I like the cool way you look at me    &lt;br /&gt;everything about you is bringing me misery&lt;/p&gt;  &lt;p&gt;Ken laughs. He’s thinking about his girlfriend, Kim. He says something like “That’s good” or “I like that”. Small victory.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-1950540670998507621?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/1950540670998507621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=1950540670998507621' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/1950540670998507621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/1950540670998507621'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2009/12/buckets-of-rain.html' title='Buckets of Rain'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-3845946714959189753</id><published>2009-11-29T21:49:00.001-08:00</published><updated>2009-11-29T21:49:13.359-08:00</updated><title type='text'>Firefox Updates and Magic Formation</title><content type='html'>&lt;p&gt;For awhile now I have used a little gesture-based launcher called &lt;a href="http://tokyodownstairs.blogspot.com/2008/03/magic-formation.html" target="_blank"&gt;Magic Formation&lt;/a&gt;. Like many of the things that are designed to make my life simpler but end up consuming all my time, I found out about this tool on &lt;a href="http://lifehacker.com/5165523/magic-formation-is-a-circular-dock-launcher" target="_blank"&gt;Lifehacker&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;The tool is pretty simple. You draw a quick little circle with your mouse and up pops this circle of launch icons. It is also pretty addictive. When using a computer that doesn’t have Magic Formation installed, I find myself reflexively drawing useless little circles before realizing “Oh yeah, I’ve got to find the launch bar.”&lt;/p&gt;  &lt;p&gt;One thing that keeps biting me, though, is that when Magic Formation is running, Firefox updates won’t work. When Firefox tries to apply an update you get “The update could not be installed. Please make sure there are no other copies of Firefox running on your computer, and then restart Firefox to try again.” Obviously Magic Formation is holding a handle to some kind of resource that Firefox update wants to change (firefox.exe?) and Firefox doesn’t like this.&lt;/p&gt;  &lt;p&gt;The solution is simple. Just “Quit” out of Magic Formation, start or restart Firefox, let it update, then restart Magic Formation.&lt;/p&gt;  &lt;p&gt;My only hope is that I will either remember I wrote this or goog will pick it up and I’ll find it the next time I have problems updating Firefox.&lt;/p&gt;  &lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:fb9b15c2-ec76-4148-973e-7a4eab8007e3" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/firefox+tools" rel="tag"&gt;firefox tools&lt;/a&gt;,&lt;a href="http://technorati.com/tags/tools" rel="tag"&gt;tools&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-3845946714959189753?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/3845946714959189753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=3845946714959189753' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/3845946714959189753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/3845946714959189753'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2009/11/firefox-updates-and-magic-formation.html' title='Firefox Updates and Magic Formation'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-5466045809139024742</id><published>2009-04-16T14:01:00.001-07:00</published><updated>2009-04-16T14:02:41.998-07:00</updated><title type='text'>Intuit, What Were You Thinking?</title><content type='html'>&lt;p&gt;The exercise of preparing taxes always sets me on a organizing binge where I try to get a handle on the chaos that surrounds me. This year one of my big pain points was medical expenses and the management thereof. For reasons I won't go into, we wracked up a lot of medical expenses last year and will probably continue to do so this year. Due to a certain, shall we say, &lt;em&gt;disaffection&lt;/em&gt; for the treatments prescribed by the biomedical industrial complex (all of which seem to involve the use of patented pharmaceuticals with side-effects that can only be remedied by additional, patented pharmaceuticals with side-effects that . . . (recurse until death or complete exhaustion of funds)) none of these expenses are covered by my employers health plan (as another branch of the previously mentioned biomedical industrial complex, why would it?). So that brings in my &amp;quot;Flexible Spending Account&amp;quot;, multiple, related transactions of slightly different amounts, etc. Obviously I need software to manage this mess.&lt;/p&gt;  &lt;p&gt;It turns out that my old friends at Intuit have something called &amp;quot;Quicken Medical Expense Manager&amp;quot;. Now I'm a Quicken user from way back. I used Quicken back in the days when you connected to the net with a 28K modem and SLIP. I was the guy constantly pestering his bank for Quicken integration and explaining over and over how I managed my money with a program that I ran on &lt;strong&gt;my&lt;/strong&gt; computer, at &lt;strong&gt;home,&lt;/strong&gt; which I would like to connect to &lt;strong&gt;their&lt;/strong&gt; computer so I could save both &lt;strong&gt;them&lt;/strong&gt; and &lt;strong&gt;me&lt;/strong&gt; time and money.&lt;strong&gt;&amp;#160;&lt;/strong&gt;I still prefer to use the native version of Quicken despite my general enthusiasm for Software as a Service (or is it &amp;quot;cloud computing&amp;quot; now? . . so hard to keep up).&lt;/p&gt;  &lt;p&gt;So I come across this Quicken Medical Expense Manager (MEM for short) and initially I'm thinking &amp;quot;Great! I'll buy this puppy online, download, install it and use it to keep track of all this stuff.&amp;quot; My initial assumption was, of course, that MEM would integrate with Quicken. By &amp;quot;integrate&amp;quot; I mean something like &amp;quot;If I enter a transaction in Quicken that matches certain criteria (category, payee, tag, etc.) it will automatically show up in MEM.&amp;quot; and &amp;quot;If I enter a transaction in MEM it will automatically be imported into Quicken&amp;quot;. How else, right? But something made me dig in a little further.&lt;/p&gt;  &lt;p&gt;It turns out that MEM is &lt;strong&gt;not&lt;/strong&gt; integrated with Quicken nor does it seem that it ever will be (please, somebody prove me wrong). MEM is a stand-alone tool with no more links to Quicken than any other program you might download and install. If you enter a medical expense transaction in Quicken, you have to manually enter the same transaction into MEM and vice versa. WTF?!? Talk about out of touch with your customer base! Quicken users are, by and large, the type of people that are driven crazy by having to perform duplicate, manual tasks. We will pay money (and suffer through the unnecessary &amp;quot;upgrades&amp;quot; designed to milk us for more) for tools that save us from this time-sucking drudgery. Why would you try and sell us a tool that adds to this problem?&lt;/p&gt;  &lt;p&gt;And what's with the &amp;quot;Quicken&amp;quot; label? How is &amp;quot;Quicken Medical Expense Manager&amp;quot; related to Quicken at all if they aren't integrated? &amp;quot;Intuit Medical Expense Manager&amp;quot; would be a more honest title. Note to Inuit: the secret to selling a software suite is to make sure that every application in the suite integrates with every other application in the suite so that, even though the individual applications may not be the very best application you could get for a particular task, the suite as a whole delivers greater value than a collection of unrelated/unintegrated applications. This is just common sense to the ordinary individual but, in the world of software marketing, it looks like a stunningly brilliant strategy (&amp;quot;in the land of the blind . . .&amp;quot;)&lt;/p&gt;  &lt;p&gt;The decision not to integrate Quicken and MEM is so dumb it must have been made by Inuit's upper management. I'm guessing that the thinking went something like this: &amp;quot;Because we have no way of measuring how much integrating the two products will increase sales, it isn't important enough to devote resources to. As long as MEM is 'good enough', people will buy it.&amp;quot; They could actually have a point, but it's this kind of irksome decision that erodes customer loyalty and, when times get tough (like . . uh, now), you're going to wish you had that loyalty to fall back on. Ask yourself, &amp;quot;what would Apple do in a case like this?&amp;quot; Of course they would integrate the two even if you couldn't prove that it would result in more sales this quarter! That's why Apple has fanboys and Intuit doesn't.&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:afe9dbe3-738f-481b-9c9b-5240b33d90dc" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/software" rel="tag"&gt;software&lt;/a&gt;,&lt;a href="http://technorati.com/tags/personal" rel="tag"&gt;personal&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-5466045809139024742?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/5466045809139024742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=5466045809139024742' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5466045809139024742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5466045809139024742'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2009/04/intuit-what-were-you-thinking.html' title='Intuit, What Were You Thinking?'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-6092525755539812166</id><published>2008-11-13T14:41:00.000-08:00</published><updated>2008-11-13T15:20:10.016-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MMPORG history'/><title type='text'>Cool Ways to Teach History</title><content type='html'>&lt;span style="font-family:arial;"&gt;Just saw this article in &lt;a href="http://www.theregister.co.uk/2008/11/13/google_earth_ancient_rome/"&gt;The Register&lt;/a&gt; and it made me think of an old idea for teaching what life in Rome was like circa whenever. Basically you start with the information in "Ancient Rome 3D" and you use it to create a mediated MPORG in which the students can participate as individual characters. I use the term "mediated" because I think it is important to allow the teacher to control plot lines and external events to illustrate specific points such as food riots, etc. The idea is not to replace reading and discussion, but to help provide a more immediate context for these more traditional types of instruction.&lt;br /&gt;&lt;br /&gt;Obviously this same technique could be applied to just about any time and place for which we have enough data to create the 3D environment. You could hit all the high points, Athens circa 500 BC, Tenochtitlan circa 1400, San Francisco circa 1965. What is really exciting is that, technically, this should be relatively easy to do. That is to say, it could be done with an awful lot of work by artists, programmers, writers, etc. like any game, but we don't need to invent any new technologies to make it happen. All we need is a business plan whereby somebody can make money off of this idea while simultaneously providing it to schools for little to nothing.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-6092525755539812166?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/6092525755539812166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=6092525755539812166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/6092525755539812166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/6092525755539812166'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2008/11/cool-ways-to-teach-history.html' title='Cool Ways to Teach History'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-5937050879338481149</id><published>2008-11-13T10:41:00.000-08:00</published><updated>2008-11-13T11:11:01.124-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='philosophy'/><category scheme='http://www.blogger.com/atom/ns#' term='computer science'/><title type='text'>Computer "Science"</title><content type='html'>Someone brought this up at a recent WS-I meeting and I thought it was funny enough to riff on; "Things with 'science' in their names usually aren't". Examples were provided such as "Political Science", "Social Science", and "Scientology" (the last one is a stretch). The shared joke being that we all felt our profession, despite outwards appearances, to be much more akin to political science than physics.&lt;br /&gt;&lt;br /&gt;Certainly there are sub-fields of computer ccience that are  scientifically rigorous, but I would guess that the majority of "programmers" rarely measure anything more than simple performance metrics, rarely use any math more complicated than basic combanitorics, etc. Obviously you need to be able to think logically and express your ideas in a non-ambiguous language in order to program, but that doesn't make us scientists any more than reheating frozen waffles makes someone a chef. I've always thought that Computer Science (the programming part - not the designing chips part) would be more properly thought of as a "Applied Philosophy" than as a sub-branch of mathematics, science, or engineering.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-5937050879338481149?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/5937050879338481149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=5937050879338481149' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5937050879338481149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/5937050879338481149'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2008/11/computer-science.html' title='Computer &quot;Science&quot;'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-6436140694522707067</id><published>2007-10-05T14:35:00.001-07:00</published><updated>2008-07-20T22:27:19.227-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SIP'/><category scheme='http://www.blogger.com/atom/ns#' term='telephony'/><category scheme='http://www.blogger.com/atom/ns#' term='VOIP'/><category scheme='http://www.blogger.com/atom/ns#' term='tagging'/><category scheme='http://www.blogger.com/atom/ns#' term='consumer software'/><title type='text'>A Better VOIP Client</title><content type='html'>I dislike phones. Not so much the phones themselves, but their interface. The basic interface, a bunch of numbers and some special keys, is bad enough, but when this interface is extended it's always a mess. I don't think I've ever seen two phones with the same mechanism for programming the speed dial buttons and the conferencing features are always hopelessly arcane. Even something as simple as putting someone on/off hold can be ridiculously complicated.&lt;br /&gt;&lt;br /&gt;This is one of the reasons I prefer VOIP service to POTS service. I use a service called &lt;a href="http://myphonecompany.com/"&gt;MyPhoneCompany.com&lt;/a&gt; (bad marketing - reasonable service) because they allow me to pay minimal $ for "softphone only" plan. Not having to have a clunky piece of legacy, single-purpose audio signaling technology taking up space on my already overcrowded desk is a big plus for me. Wherever my laptop goes so does my "phone", which is perfect because I seldom call people unless I'm using my laptop and, if I weren't, I'd be using my cell phone.&lt;br /&gt;&lt;br /&gt;But there's a problem to all this. For reasons that I can't comprehend, most VOIP clients go to great pains to try and look like physical phones. The number buttons are the primary interface element and the mute, conference, etc. elements look like the kind of tiny buttons you see on a cell phone. Meanwhile the crucial features like contacts and call history are buried beneath layers of menus. This is just stupid and misguided (I know that Skype, Yahoo, and other IM clients that provide voice service are an exception, but I'm talking primarily about SIP clients here). I want a VOIP client that exploits the fact that it is a &lt;span style="font-style: italic;"&gt;computer application&lt;/span&gt; with access to all the GUI wizardry provided by a modern OS.&lt;br /&gt;&lt;br /&gt;Here's what a VOIP client should look like (it's also what an IM client should look like, but let's not go there):&lt;br /&gt;&lt;br /&gt;1.) It should integrate with my contacts database (whether that is Outlook, Thunderbird, Palm Desktop, whatever) so completely that it should almost seem like an extension of that system. I don't ever want to enter names and phone numbers into the VOIP application and have them stranded there. It would even be okay if the VOIP app didn't allow me to enter contact information, but instead forced me to use my PIM client (though it would be nice to, on those occasions when I manually dial a number, to easily record that number into my contacts).&lt;br /&gt;&lt;br /&gt;2.) You need to be able to access "the number buttons", but they are &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; the most important element of the interface. A numeric keypad should be off to the side and out of the way. Handy when you need it, but not taking up too much space or attention.&lt;br /&gt;&lt;br /&gt;3.) The most important element of the phone is my contacts. I want to see my contacts as a "tag cloud". The tags are placed on individual phone numbers but the phone numbers should have meaningful names like "Smith, Bob (home)" (the same way &lt;a href="http://del.icio.us/"&gt;del.icio.us&lt;/a&gt; *tags* URLs but what you *see* is the "site name" or whatever label you have slapped on the entry). Clicking on a tag brings up a list of all the entries labeled with that tag. Clicking on an entry dials the number for that entry. Simple, right?&lt;br /&gt;&lt;br /&gt;4.) I want the tags to be partially managed by me and partially managed by the VOIP app. For example, there should be an app-managed tag named "mostCalled". This should contain the 10 or so contacts that I call the most often as tracked by the app. Other automatic tags would be the letters a-z correlated against first letter of the persons last name or the name of the company, etc. For example, clicking on the "a" tag would show me a list of entries like "Adams, Michael (home)", "Adams, Michael (cell)", "American Airlines", etc. There could be other app-managed tags that might be useful like "recentCalls", but you get the idea. The other tags should be managed by me pretty much the same way I manage tags for del.icio.us.&lt;br /&gt;&lt;br /&gt;5.) Obviously I should be able to search my contacts. The contacts/VOIP integration should include launching the VOIP app when I click on a phone number in the PIM app.&lt;br /&gt;&lt;br /&gt;6.) Conferencing in another number to an existing call should be implemented with a context menu selection off an that entry; find an entry, bring up the context menu, select "conference" and they're called and added.&lt;br /&gt;&lt;br /&gt;7.) All other features and functions (hold, mute, record, etc.) should be implemented the way you would any normal, modern GUI (menus, toolbars, ribbons, etc.)&lt;br /&gt;&lt;br /&gt;If anyone implements something like this, please let me know and I'll help test it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-6436140694522707067?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/6436140694522707067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=6436140694522707067' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/6436140694522707067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/6436140694522707067'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2007/10/better-voip-client.html' title='A Better VOIP Client'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1404532365205608026.post-8757371158656117258</id><published>2007-04-24T13:43:00.000-07:00</published><updated>2007-04-24T13:50:58.350-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webware'/><category scheme='http://www.blogger.com/atom/ns#' term='SaaS'/><category scheme='http://www.blogger.com/atom/ns#' term='on-demand'/><title type='text'>Two Forward and One Back</title><content type='html'>&lt;span style="font-family:trebuchet ms;"&gt;Got to see a demonstration of Salesforce.com's Appex platform and the AppExchange marketplace at &lt;a href="http://www.saascon.com/live/48/events/48SJO07A"&gt;SaasCon&lt;/a&gt;. I was very impressed by the demonstration. It's difficult to convey the visceral impact of seeing the cycle of idea-&gt;development-&gt;advertisement -&gt;installation-&gt;evaluation-&gt;purchase taking place without either the developer or the customer having to install or manage &lt;b&gt;anything&lt;/b&gt;. I caught a glimpse into one of software's possible futures. When all was said and done, though, I had to remind myself what I was really looking at; an application coded in a proprietary language running on a proprietary platform.&lt;br /&gt;&lt;br /&gt;Obviously I have no knowledge of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Salesforce's&lt;/span&gt; plans for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Appex&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;AppExchange&lt;/span&gt;, but what I have seen leads me to believe that they have no intention of opening up the system to competition. Sure, sure, anybody can write apps on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Appex&lt;/span&gt; and anybody can buy these apps. You don't even have to &lt;a href="http://blogs.zdnet.com/BTL/?p=4896"&gt;subscribe to the core &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;CRM&lt;/span&gt; product anymore&lt;/a&gt;, but it's still a closed system. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Appex&lt;/span&gt; and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;AppExchange&lt;/span&gt; are a big tent in which all sorts of interesting things can take place but, to get into that tent, you have to pay &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Salesforce&lt;/span&gt; for a ticket.&lt;br /&gt;&lt;br /&gt;If you've been in the software industry as long as I have, you know where this is going. Neither &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;Salesforce&lt;/span&gt; nor any other company is ever going to be big enough or good enough to contain the entire &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;SaaS&lt;/span&gt; market. Already there &lt;a href="http://www.apprenda.com/"&gt;exist &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;SaaS&lt;/span&gt; platforms&lt;/a&gt; that are somewhat similar to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Appex&lt;/span&gt;. These and others not yet built will grow in scope and sophistication to compete with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;Appex&lt;/span&gt; . The bigger more successful on-demand &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;ISVs&lt;/span&gt; are going to find themselves writing and maintaining multiple versions of their applications for these various platforms. They are not going to like this (multi-platform support is a costly activity that provides no business value to the customer). Eventually there will be some sort of open &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;SaaS&lt;/span&gt; platform in which the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;APIs&lt;/span&gt;, management touch-points, deployment model, etc. will be "standardized" (not necessarily by a standards org) and the platform operators will compete on price and service quality (reliability, scalability, etc.). &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;Salesforce&lt;/span&gt; and the other proprietary &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;SaaS&lt;/span&gt; platform players are either going to have to switch to this open platform or fight an increasingly difficult battle to keep their &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;ISVs&lt;/span&gt; and customers locked in.&lt;br /&gt;&lt;br /&gt;I'm an idealist so, of course, I'm bound to ask "couldn't we save ourselves the pain and go straight to an open platform?"  Obviously it's in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;Salesforce's&lt;/span&gt; short-term interest to lock the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;ISVs&lt;/span&gt; into their language and platform; it's basically a license to print money. But in the long term, when the switch to open &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;SaaS&lt;/span&gt; platforms occurs, they will have only hurt themselves. The history of the computer industry is full of companies that got so fat and sloppy on their proprietary systems they were unable to compete when the next wave removed their ability to keep their customers captive.&lt;br /&gt;&lt;br /&gt;It seems counter-intuitive, but I think &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;Salesforce's&lt;/span&gt; best long-term move is to open up the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;Appex&lt;/span&gt; platform to competing service providers. That way the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;de&lt;/span&gt;-facto, open &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;SaaS&lt;/span&gt; platform &lt;span style="font-weight: bold;"&gt;is&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_26"&gt;Appex&lt;/span&gt;, a platform in which they (obviously) have a huge lead. The similarities to Java are obvious but, to be fair, I don't think Sun stood as much to gain from holding onto Java as &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_27"&gt;Salesforce&lt;/span&gt; does from holding onto &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_28"&gt;Appex&lt;/span&gt;.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1404532365205608026-8757371158656117258?l=recursivedigressions.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://recursivedigressions.blogspot.com/feeds/8757371158656117258/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1404532365205608026&amp;postID=8757371158656117258' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/8757371158656117258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1404532365205608026/posts/default/8757371158656117258'/><link rel='alternate' type='text/html' href='http://recursivedigressions.blogspot.com/2007/04/two-forward-and-one-back.html' title='Two Forward and One Back'/><author><name>Gilbert Pilz</name><uri>http://www.blogger.com/profile/07780921856469609693</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://lh6.google.com/image/gilbert.pilz/Rk9XiDw63GI/AAAAAAAAABA/zdMmPq6sjxo/s144/g-head.JPG'/></author><thr:total>0</thr:total></entry></feed>
