<?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-5901969713488428158</id><updated>2011-11-27T15:41:54.225-08:00</updated><category term='tech'/><category term='work'/><category term='family'/><category term='misc'/><title type='text'>livz.org</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default?start-index=101&amp;max-results=100'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>256</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6830809669719876186</id><published>2009-09-11T22:48:00.001-07:00</published><updated>2009-09-11T22:48:09.577-07:00</updated><title type='text'>Just testing</title><content type='html'>&lt;a href="http://www.flickr.com/photos/tesarac/3910991781/" title="photo sharing"&gt;&lt;img src="http://farm3.static.flickr.com/2643/3910991781_ebc4146fd4_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/tesarac/3910991781/"&gt;Just testing&lt;/a&gt; &lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/tesarac/"&gt;weblivz&lt;/a&gt;&lt;/span&gt;&lt;br clear="all" /&gt;&lt;p&gt;steven&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6830809669719876186?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6830809669719876186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6830809669719876186' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6830809669719876186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6830809669719876186'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2009/09/just-testing.html' title='Just testing'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2643/3910991781_ebc4146fd4_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-675719139355597989</id><published>2009-05-04T02:41:00.000-07:00</published><updated>2009-05-04T03:15:57.017-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>OpenID's hidden value in Application Integration</title><content type='html'>I haven't seen any articles discussing this subject - but let me know if you know of any and i'll link.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;OpenID is a hugely valuable standard protocol for federated authentication and by the looks of things adoption is and will coninue to grow at a phenomenal rate.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The advantage of OpenID over traditional authentication systems is well known - it saves you having to remember multiple usernames and passwords. An additional advantage of OpenID over other Internet authentication systems is that it is completely decentralized and anyone can create their own authentication provider.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Consider an enterprise that has some internal applications that can't be seen by the web itself. That enterprise can set up an OpenID provider to let all their staff log into these internal applications. Additionally however they can allow that provider to be seen from the outside world and so allow staff to log onto applications on the web using that same OpenID.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cool! However there is an additional benefit when integrating applications which isn't quite as explicit and you really only notice at development stage. In particular this is very important for creators of 3rd party software. That is:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;If a 3rd party application supports OpenID then no matter the language or platform it can be easily integrated into an existing software site or portal.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;What do i mean by this? Well recently I created a web site that used a 3rd party open source system that had traditional basic authentication as well as OpenID. Great. However later on i wanted to add a nice blogging feature using another 3rd party ... but the problem was they didn't support OpenID.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, let's ignore all the technical detail here such as Single Sign On between applications - sure this is cool but i'd be willing to bet that even if the user had to log in using their OpenID twice into these two applications it is miles ahead of the common current issue where you suddenly need to remember a username and password again (and all the management that goes with that). Consider the case where most of us may integrate 4 or 5 separate systems to create a solution and suddenly the fact that ONE of then uses OpenID but the other 4 require old style username/password authentication really isn't much of a benefit.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In my case i chose not to go for them. I simply didn't have time to write OpenID support for their products. I was quite happy for the applications to run independently on the server with a simple link bewteen each ... even if they had to log in to each - so long as i didn't have to manage duplicate accounts. The great thing though is that the managament of their login details etc could all be done centrally. I &lt;span class="Apple-style-span" style="font-style: italic; "&gt;know&lt;/span&gt; from my experience supporting &lt;a href="http://openid.org/register"&gt;OpenID.ORG&lt;/a&gt; that the time taken to support users dwarfs almost everything else you do.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So although it may sound obvoius that an OpenID account can really help you log into multiple applications with the same details, it's not until you start pulling together 3rd party applications you realize how valuable this is &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;even &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;on a single website or portal&lt;/span&gt;&lt;/span&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Going back to our enterprise - they can now create a cool portal that integrates custom software, 3rd party products &amp;amp; remote services,  without worrying about user managament. And i know from current personal experience how big a win that will be.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-675719139355597989?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/675719139355597989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=675719139355597989' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/675719139355597989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/675719139355597989'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2009/05/openids-hidden-value-in-application.html' title='OpenID&apos;s hidden value in Application Integration'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7349365651589150543</id><published>2009-04-14T04:25:00.000-07:00</published><updated>2009-04-14T04:30:00.892-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>xUnit &amp; TeamCity</title><content type='html'>Having used nUnit for some time and Visual Team System's test architecture i was recently interested in putting this to work on my own project as part of an automated build &amp;amp; test architecture. The test architecture of Visual Team system isn't particualy suited to Continuous Integration as you need to reference assemblies that only seem to be part of Visual Studio and you're not allowed to distribute these. I considered nUnit as this is what i am used to but as it's my own projected decided to give xUnit a shot as it seems to be the next logical step in good testing practices.&lt;br /&gt;&lt;br /&gt;I had started using ThoughtWords CI server but after banging my head on the table a few times in my failed attempts to integrate xUnit, and on the advice of Brad Wilson, decided to look at TeamCity.&lt;br /&gt;&lt;br /&gt;With some help from Brad I managed to get this working but as it was still a little tricky (i only rarely change this infrastruture of this kind of thing once it it set up) i decided to document how to do it. Note that you can't just point TeamCity at the .sln file in this case because you need to TELL it that it must run your xUnit tests and clearly the .sln file doesn't know about them. So what you need to do is create an MSBuild file where you can tell TeamCity to (a) build your solution file AND (b) run your tests via xUnit.&lt;br /&gt;&lt;br /&gt;1. Download and Insteall team city. Configure this to get it building your base code ( i won't document this as there are loads of places to find out more).&lt;br /&gt;&lt;br /&gt;2. Go to the folder where your .sln file sites and create a file called "mysolution.msbuild" (or something similar).&lt;br /&gt;&lt;br /&gt;3. Enter the following Xml:&lt;br /&gt;&lt;br /&gt;&amp;lt;project defaulttargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"&amp;gt;&lt;br /&gt;&amp;lt;usingtask assemblyfile="[RelativePathToXUnit]xunit.runner.msbuild.dll" taskname="Xunit.Runner.MSBuild.xunit"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;target name="Build"&amp;gt;&lt;br /&gt; &amp;lt;msbuild projects="mysolution.sln" targets="Build" properties="Configuration=Debug"&amp;gt;&lt;br /&gt; &amp;lt;xunit assembly="[RelativePathToProject]bin\Debug\MyProjectTests.dll"&amp;gt;&lt;br /&gt;&amp;lt;/xunit&amp;gt;&amp;lt;/msbuild&amp;gt;&amp;lt;/target&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/usingtask&amp;gt;&amp;lt;/project&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;* Remember to replace [RelativePathToXUnit] with the relative path from your solution file to where the xunit runner assembly can be found. Also make sure [RelativePathToProject] is changed to point to the project where your tests can be found.&lt;br /&gt;&lt;br /&gt;4. Now via the TeamCity GUI in the "Build Runner" tab of your project, select MSBuild and add the relative path to your "mysolution.msbuild" file relative to your checkout directory (in my case it is often "/mysolution.msbuild").&lt;br /&gt;&lt;br /&gt;5. Now you can run your build and you'll find all your unit tests are run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7349365651589150543?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7349365651589150543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7349365651589150543' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7349365651589150543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7349365651589150543'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2009/04/xunit-teamcity.html' title='xUnit &amp;amp; TeamCity'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1119416652595273938</id><published>2009-01-13T03:16:00.000-08:00</published><updated>2009-01-13T04:48:41.889-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Microsoft Tags, QR Codes and OpenID</title><content type='html'>&lt;div&gt;I have used Barcodes and QR Codes in the past on some projects and played around a bit. Well, this morning i saw Microsoft released "Microsoft Tags" as a beta at CES 2009.&lt;br /&gt;&lt;br /&gt;Clearly from my own selfish perspective, what i'd like to see if OpenID (disclaimer, i run &lt;a href="http://OpenID.ORG"&gt;http://OpenID.ORG&lt;/a&gt;) go OPEN in the real world. So, at a conference you could put a QR Code or Microsoft tag on your badge, t-shirt, hat or what ever. Maybe on the back of a card, on your company documentation, promotional material and so on.&lt;br /&gt;&lt;br /&gt;If your OpenID is encoded in there then people could save you as a contact direct from your t-shirt :)&lt;br /&gt;&lt;br /&gt;Thoughts? Other ideas?&lt;br /&gt;&lt;br /&gt;Here is my OpenID (&lt;a href="http://weblivz.openid.org"&gt;http://weblivz.openid.org&lt;/a&gt;) as a Microsoft tag (which would be printed out of course):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SWx5_ZGQFBI/AAAAAAAAAMs/qyOnz1qYSQ4/s1600-h/myopenid.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5290737792229315602" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 215px; CURSOR: hand; HEIGHT: 211px" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SWx5_ZGQFBI/AAAAAAAAAMs/qyOnz1qYSQ4/s400/myopenid.PNG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;... and here is my OpenID as a QR Code :&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SWx6XKthBKI/AAAAAAAAAM0/VAKnspyyvgE/s1600-h/myopenid2.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5290738200684332194" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 244px; CURSOR: hand; HEIGHT: 245px" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SWx6XKthBKI/AAAAAAAAAM0/VAKnspyyvgE/s400/myopenid2.PNG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update : Sure enough, i installed the Tag reader on my PDA and simply pointed the phone at the image and it took me to my OpenID page in the web browser. Very nice!&lt;/b&gt;&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;&lt;br /&gt;They say more formats may be supported in the future - hope they add QR Codes to that list!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1119416652595273938?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1119416652595273938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1119416652595273938' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1119416652595273938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1119416652595273938'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2009/01/microsoft-tag-and-openid.html' title='Microsoft Tags, QR Codes and OpenID'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_22N_0ypJG6E/SWx5_ZGQFBI/AAAAAAAAAMs/qyOnz1qYSQ4/s72-c/myopenid.PNG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8240656845111504550</id><published>2009-01-06T15:44:00.000-08:00</published><updated>2009-01-06T15:59:50.452-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Twitter phishing issues</title><content type='html'>I agree with &lt;a href="http://startupsecurity.info/blog/2009/01/06/twitter-security-fiesta-post-mortem/"&gt;this article&lt;/a&gt; in the main, but there are some things worth pointing out… baring mind the majority and most concerning of these phishing issues came from people giving their credentials out and the 3rd parties assuming their identities and the associated trust with that.&lt;br /&gt;&lt;br /&gt;1. oAuth could have allowed me to provide access for 3rd party systems in a case by case basis - not providing the credentials that could be stored and re-used.&lt;br /&gt;&lt;br /&gt;2. oAuth would allow me to disable access immediately for a 3rd party site.&lt;br /&gt;&lt;br /&gt;3. oAuth, as used in GMail, could be used to restrict the levels of access you permit of 3rd party applications. Therefore i may allow a site to read my contacts (which most do) but not sent replies or DM’s on my behalf (in fact this is what GMail can allow).&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;... I totally get that anyone can @ you on twitter - but i would be unlikely to click a random link. It it came from a friend - especially DM I am MUCH more likely to click it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Only question i have is why did the phishing sites not use tinyURL or something to mask the link?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8240656845111504550?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8240656845111504550/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8240656845111504550' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8240656845111504550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8240656845111504550'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2009/01/twitter-phishing-issues.html' title='Twitter phishing issues'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3928777762297703310</id><published>2009-01-03T02:49:00.000-08:00</published><updated>2009-01-03T03:12:35.295-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>In the zone</title><content type='html'>Every New Year we promise to change something about ourselves. Well, this year i'm THINKING of trying something new (for me). Starting Monday 5th Jan, I am going to change timezone.... well, for an experimental period anyway! I was inspired to try this by reading &lt;a href="http://4entrepreneur.net/?p=1225"&gt;this article&lt;/a&gt; by &lt;a href="http://twitter.com/4entrepreneur"&gt;@4entrepreneur&lt;/a&gt; ... and the fact that it's harder to work at home during the day when my daughter is around (not yet at nursery).&lt;br /&gt;&lt;br /&gt;What does that mean? Well, for 2 weeks (gotta trial this and start somewhere!) i am going to work to PST time. So that means i will be working through the night, at the same time as most of the tech activity on Twitter. It also means i can see whether coding in the evenings &lt;em&gt;really is&lt;/em&gt; more beneficial. I used to write all my code books into the early hours but when i had the kids things reversed and i starting getting up very early.&lt;br /&gt;&lt;br /&gt;I will blog and tweet as i go.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;But i need to get a few typical daily timetables from tech folk working in PST (when do you rise, work, go to sleep and so on?).&lt;/strong&gt; If anyone can comment, email or DM on twitter it would be much appreciated!! I could easily subtract 8 from my normal day, but want something real.&lt;br /&gt;&lt;br /&gt;Anyone NOT in PST already work to that timezone, perhaps out of necessity via remote working?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3928777762297703310?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3928777762297703310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3928777762297703310' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3928777762297703310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3928777762297703310'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2009/01/in-zone.html' title='In the zone'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4178347880223442545</id><published>2008-12-29T02:21:00.000-08:00</published><updated>2008-12-29T02:41:40.385-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>The Social Netbook</title><content type='html'>It is perhaps reasonably well known that &lt;a href="http://tinyurl.com/6rwgh9"&gt;i won a Netbook&lt;/a&gt; courtesy of Vodafone last month. As soon as i got it I started to think about how it could make its way into the everyday lives of the people i know. So, here are a couple of suggestions:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Social Software&lt;/span&gt;&lt;br /&gt;The first thing is that these Netboos need to come pre-bundled with social software. Most people won't buy a Netbook to write code or even compile documents. Most will buy them to "get on the web" as Netbooks are a great opportunity to point them at things to do.&lt;br /&gt;&lt;br /&gt;I imagine a wizard in startup that suggests the services you may like to use, takes you through a signing up process and installs and configures the appropriate software for you.&lt;br /&gt;&lt;br /&gt;An example is ...&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Configure an OpenID account&lt;/li&gt;&lt;li&gt;Create Twitter account (they should be doing (1) by now!) and install software&lt;/li&gt;&lt;li&gt;Create a flickr and twitpic account and configure appropriately.&lt;/li&gt;&lt;li&gt;Set up friendfeed.&lt;/li&gt;&lt;li&gt;Create a MySpace/Facebook account and store shortcuts.&lt;/li&gt;&lt;li&gt;Install UStream/Qik and configure an account.&lt;/li&gt;&lt;li&gt;Email account.&lt;/li&gt;&lt;li&gt;blah dee blah ...&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;(Other suggestions ??)&lt;/p&gt;&lt;span style="font-size:180%;"&gt;Cloud Services&lt;/span&gt;&lt;br /&gt;We're talking about a lightweight laptop that has limited disk space and less than the typical laptop in terms of memory and processor speeds. It is pretty much reliant on you being online. So why not use the cloud??&lt;br /&gt;&lt;br /&gt;An example ...&lt;br /&gt;&lt;ol&gt;&lt;li&gt;An Amazon/Mesh storage account direct from your desktop ... via your OpenID account ;)&lt;/li&gt;&lt;li&gt;Allow direct storage and management of pictures, video and so on on the clound (maybe on top of (1)).&lt;/li&gt;&lt;li&gt;Perhaps even EC2 could be somehow synchd with Netbooks to allow complex calculations to be carried out on the cloud. Idea here?&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;In short there is potentially a huge opportunity for services to get on board this new wave of laptop and whilst rolling out an empty laptop works fine for me, there are many others who could climb on board the social wagon if they were given some help along the way!&lt;/p&gt;&lt;p&gt;Who else uses a Netbook? What do you think?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4178347880223442545?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4178347880223442545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4178347880223442545' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4178347880223442545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4178347880223442545'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/12/social-netbook.html' title='The Social Netbook'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4928243894246965623</id><published>2008-12-07T02:41:00.000-08:00</published><updated>2008-12-07T02:47:15.056-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Xtranormal - create your own 3D animation</title><content type='html'>Keeping the kids amuzed on a Sunday morning can be somewhat slow, but when @joecar mentioned Xtranormal to us this morning we tried it out... and how addictive it has become. To me, sure - but my 5 yr old loves it.&lt;br /&gt;&lt;br /&gt;So we created a story (i helped him out but all the ideas, script, names and so on were his and you can perhaps guess someof his influences!).&lt;br /&gt;&lt;br /&gt;Here is it below - you can also &lt;a href="http://www.xtranormal.com/watch?e=2008120705395393"&gt;see it here &lt;/a&gt;and in &lt;a href="http://uk.youtube.com/my_videos"&gt;youtube &lt;/a&gt;. I suggest you try it out - some things still to be worked on, but in general very, very well done.&lt;br /&gt;&lt;br /&gt;&lt;embed src="http://www.xtranormal.com/players/jwplayer.swf" width="500" height="350" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" flashvars="height=350&amp;amp;width=500&amp;amp;file=&amp;amp;image=&amp;amp;searchbar=false&amp;amp;autostart=false"&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4928243894246965623?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4928243894246965623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4928243894246965623' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4928243894246965623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4928243894246965623'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/12/xtranormal-create-your-own-3d-animation.html' title='Xtranormal - create your own 3D animation'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8253142370464380157</id><published>2008-12-03T02:35:00.000-08:00</published><updated>2008-12-04T02:14:26.905-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>Secret Santa on Twitter</title><content type='html'>This Christmas i'm running a secret santa on Twitter.&lt;br /&gt;&lt;br /&gt;The idea is that - you contact me with your twitter name and you will be added to the list - this will stop on Friday December 12 (I'll extend to December 19 if need be).&lt;br /&gt;&lt;br /&gt;You will then be contacted with the twitter username of the person you are to get a "gift" for. The gift can be a &lt;strong&gt;cool URL&lt;/strong&gt;, &lt;strong&gt;a connection&lt;/strong&gt; with someone, a &lt;strong&gt;beta&lt;/strong&gt; invite - anything useful (probably best avoid sending anything involving advertising).&lt;br /&gt;&lt;br /&gt;When done (i.e. after i have contacted a secret link), you simply send the following:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;@username #secretsanta [message]&lt;message&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The #secretsanta is just so we can follow this happening (and the person knows why you are contacting them).&lt;br /&gt;&lt;br /&gt;If wished, i could publish the list after Christmas.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;Update - Who's involved?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;@weblivz&lt;br /&gt;@katiebarrowman&lt;br /&gt;@jenjeng&lt;br /&gt;@KyleMacRae&lt;br /&gt;@holeinhiseye&lt;br /&gt;@salidatious&lt;br /&gt;@garymurning&lt;br /&gt;@peewii&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;@frontofficebox&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;@jimwolffman&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8253142370464380157?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8253142370464380157/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8253142370464380157' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8253142370464380157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8253142370464380157'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/12/secret-santa-on-twitter.html' title='Secret Santa on Twitter'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5191193359143386535</id><published>2008-11-18T08:46:00.001-08:00</published><updated>2008-11-19T00:29:46.210-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>A winner with Vodafone Live Guy</title><content type='html'>Today i spent more than a few hours hunting for &lt;a href="http://twitter.com/vodafoneliveguy"&gt;@vodafoneliveguy&lt;/a&gt; - you can see my twitter feed on the day at &lt;a href="http://twitter.com/weblivz"&gt;http://twitter.com/weblivz&lt;/a&gt;. This is a treasure hunt style contest where you need to &lt;a href="http://findliveguy.com/"&gt;find the vodafone live guy&lt;/a&gt; who is constantly moving throughout the city. It is a really nice idea, something i read about a while back in &lt;a href="http://www.smartmobs.com/"&gt;SmartMobs&lt;/a&gt;. You need to follow his updates via GPS, blog, twitter and more and try and guess where he is.&lt;br /&gt;&lt;br /&gt;It was more than just winning the &lt;a href="http://liveguy.vodafone.co.uk/kit"&gt;laptop&lt;/a&gt; i was interested in. I wanted to participate in something like this - as well as livestream it as much as possible, armed with a PDA, a laptop with some web access and my feet (i wasn't in a car, nor considered paying for taxi's to travel around).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;The Morning&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;At 9.10 AM after dropping my son off at school, i got the train into Glasgow and the game started. I was pretty determined to find him - but i wanted to see how i would use technology to do so.&lt;br /&gt;&lt;br /&gt;I went to Queens Street and immediately headed to &lt;a href="http://maps.google.co.uk/maps?f=q&amp;amp;hl=en&amp;amp;q=Bothwell+St,+Glasgow,+Glasgow+City+G2,+United+Kingdom&amp;amp;sll=53.800651,-4.064941&amp;amp;sspn=20.193763,39.550781&amp;amp;ie=UTF8&amp;amp;cd=2&amp;amp;geocode=FQdgVAMdY_q-_w&amp;amp;z=16&amp;amp;g=Bothwell+St,+Glasgow,+Glasgow+City+G2,+United+Kingdom&amp;amp;iwloc=addr"&gt;Bothwell Street &lt;/a&gt;tracing the path from the old Herald offices opposite &lt;a href="http://www.snaphappyross.co.uk/europe/scotland/glasgow/mccancelivingstone2.jpg"&gt;Livingstone Tower &lt;/a&gt;at &lt;a href="http://www.strath.ac.uk/"&gt;Strathclyde Univeristy&lt;/a&gt;. I went to &lt;a href="http://maps.google.co.uk/maps?f=q&amp;amp;hl=en&amp;amp;q=Bothwell+St,+Glasgow,+Glasgow+City+G2,+United+Kingdom&amp;amp;sll=53.800651,-4.064941&amp;amp;sspn=20.193763,39.550781&amp;amp;ie=UTF8&amp;amp;cd=2&amp;amp;geocode=FQdgVAMdY_q-_w&amp;amp;z=16&amp;amp;g=Bothwell+St,+Glasgow,+Glasgow+City+G2,+United+Kingdom&amp;amp;iwloc=addr"&gt;Bothwell Street &lt;/a&gt;and after looking around, figured he had went into the centre of town. So then i checked into &lt;a href="http://www.flickr.com/photos/tesarac/3040842266/"&gt;Borders &lt;/a&gt;to fire up the laptop and check his map.... it said he was in Bothwell Street, but much further up. So back i headed and outside central approached a &lt;a href="http://www.flickr.com/photos/tesarac/3040012939/"&gt;rather worried looking chap &lt;/a&gt;dressed in red and put my hand out to shake it. Perhaps he was a tourist thinking were were always thing friendly, but nevertheless he just kind of looked at me as I realized this was not my man. I felt pretty stupid, but onwards i went.&lt;br /&gt;&lt;br /&gt;I was then at Bothwell Street and despite me being roughly where he was for about 15 minutes before anyone else turned up (i could tell the instant a challenger arrived, just outside &lt;a href="http://www.jdwetherspoon.co.uk/resource/binary/cache/269d2139f78b9c257371c942befcb5dc/600x425_2301_1.jpg"&gt;Weatherspoons on Bothwell Street&lt;/a&gt;) and despite the &lt;a href="http://lh4.ggpht.com/_KluhNN8_2RY/SSKW3ZUU0OI/AAAAAAAAAIw/w2FrniHt69Q/I%20don%27t%20know%20whether%20this%20is%20famous...%3A%3A%3ABut%20it%27s%20the%20prettiest%20multi-storey%20car%20park%20I%27ve%20seen%20in%20a%20while.jpg?imgmax=640"&gt;picture of the car park&lt;/a&gt;, i just couldn't locate him.&lt;br /&gt;&lt;br /&gt;I tried to think of where he could head... the &lt;a href="http://www.freefoto.com/images/11/43/11_43_16---Footbridge--River-Clyde--Glasgow_web.jpg"&gt;Clyde &lt;/a&gt;was my thought - a fairly major part of Glasgow. So i walked down that way, only to discover he had been found. Fek... and i think it was the guy who ran past me who found him (i'd love to hear that story too!).&lt;br /&gt;&lt;br /&gt;I was beaten but not out and the day was young. I &lt;a href="http://uk.youtube.com/watch?v=u3Y_dTf4I98"&gt;recorded a video&lt;/a&gt; on my mobile where i talk about the fact he started at &lt;a href="http://farm3.static.flickr.com/2057/2068282421_ec3dbdd314.jpg?v=0"&gt;Colville Building &lt;/a&gt;of Strathclyde University (which is where the Headquarters are in detective series &lt;a href="http://www.itv.com/Drama/copsandcrime/taggart/default.html"&gt;Taggart&lt;/a&gt;) and how he was at the Livingstone Tower, named after David Livingstone.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://uk.youtube.com/watch?v=u3Y_dTf4I98"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 128px; CURSOR: hand; HEIGHT: 96px" alt="" src="http://i2.ytimg.com/vi/u3Y_dTf4I98/default.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;The Afternoon&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;As i sat in &lt;a href="http://www.savills.com/intinvest/images/plaza_shopping.jpg"&gt;St Enoch &lt;/a&gt;(suggested by my wife), i read that he was at the&lt;a href="http://www.glasgowarchitecture.co.uk/jpgs/sasRadissonOswaldDusk.jpg"&gt; Sas Raddison &lt;/a&gt;and spent 15 mins there before realizing i was never going to find him. I then read he had to moved into MY backyard - the &lt;a href="http://www.qualityglasgowhomes.co.uk/ashton-lane-framed.jpg"&gt;West End&lt;/a&gt;! On the &lt;a href="http://lh3.ggpht.com/_b1zcYV63LDk/SB-S5up5NwI/AAAAAAAAAjY/Qg5-TYWfzts/IMG_3653.jpg"&gt;underground to Hillhead &lt;/a&gt;- guessing he would go to &lt;a href="http://www.top-ten-glasgow-guide.com/images/glasgow-university-outside-kelvingrove.jpg"&gt;Glasgow University&lt;/a&gt; and the &lt;a href="http://www.rampantscotland.com/graphics/hunterian05a.jpg"&gt;Hunterian Museum&lt;/a&gt;, only to find he was going to &lt;a href="http://media-cdn.tripadvisor.com/media/photo-s/01/0b/fc/12/glasgow-kelvingrove-museum.jpg"&gt;Kelvingrove&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So i walked pretty quickly to the museum and figured i'd go in the back way and surprise him. But as i went round the corner, what do i see? A big red jacket and a bunch of people around him. I approached to congratulate the winner(s) only to find none of them knew the phrase. I immediately said "You're the LiveGuy and I'm a Vodafone Winner" and sure enough, the prize was mine.&lt;br /&gt;&lt;br /&gt;It turns out &lt;a href="http://www.jonsykes.com/"&gt;Jon Sykes&lt;/a&gt;, a lecturer at &lt;a href="http://www.euroeducation.net/image/glasgow_caledonian_mba.jpg"&gt;Glasgow Caladonian University &lt;/a&gt;had taxied &lt;a href="http://lh6.ggpht.com/_KluhNN8_2RY/SSLwfsI5VII/AAAAAAAAAJM/etG5k0oEXxY/Students%20revolting%3A%3A%3APlaintive%20cries%20from%20Glasgow%20students%20but%20LiveGuy%20remains%20unmoved%20.jpg?imgmax=640"&gt;two lots of students &lt;/a&gt;to Kelvingrove, but none of them knew the crucial phrase. So i was either lucky, or had studied harder! Put it this way, it wasn't exactly &lt;a href="http://www.bbc.co.uk/radio1/chrismoyles/worldcup/scandals/2.jpg"&gt;Maradona handball &lt;/a&gt;in the box - more like that &lt;a href="http://www.4thegame.com/media/00/02/98/maradona1986goal.jpg"&gt;second goal&lt;/a&gt; ;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_KluhNN8_2RY/SSLhugatr9I/AAAAAAAAAJI/jlJetJpopGg/Glasgow%27s%20afternoon%20winner%3A%3A%3ASteve%20Livingstone.jpg?imgmax=640"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 640px; CURSOR: hand; HEIGHT: 359px" alt="" src="http://lh6.ggpht.com/_KluhNN8_2RY/SSLhugatr9I/AAAAAAAAAJI/jlJetJpopGg/Glasgow%27s%20afternoon%20winner%3A%3A%3ASteve%20Livingstone.jpg?imgmax=640" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I had a nice chat with &lt;a href="http://www.flickr.com/photos/tesarac/3040348997/"&gt;liveguy &lt;/a&gt;and friend for a while telling them of my day and the close misses and they went their way and i went mine. I &lt;a href="http://uk.youtube.com/watch?v=fs0jEo6_VWU"&gt;recorded a video &lt;/a&gt;just after i had spoken with them.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://uk.youtube.com/watch?v=fs0jEo6_VWU"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 128px; CURSOR: hand; HEIGHT: 96px" alt="" src="http://i3.ytimg.com/vi/fs0jEo6_VWU/default.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I then went into the &lt;a href="http://www.beanscene.com/locations/glasgow_west,_kelvingrove.asp"&gt;BeanScene cafe&lt;/a&gt; opposite the Galleries and relaxed for an hour or so, checked from mail, read some papers.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;strong&gt;There's More&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;I do some work for &lt;a href="http://conscia.co.uk/"&gt;Conscia &lt;/a&gt;and sometimes use their desks. Now, yesterday i had told them of the game and figured they had just ignored me - especially as i had heard nothing from any of them all day. Well, turns out they had been keeping tabs on the live guy.&lt;br /&gt;&lt;br /&gt;I walked into the office and said "Yes, I won" only to be told, "Yes, so did Chris". Now, i assumed this to be a wind up, but it turns out that @vodafoneliveguy had left his GPS on and he made his way into town and stopped around the corner from the offices. About 10 of them apparently ran out in various directions and the first guy (Mark) didn't know the phrase either - "Can I have the laptop please" is apparently what he said. In fact the one that did (Chris) had made a call back to someone else (Dominic) in the office who told him what it was.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lh6.ggpht.com/_KluhNN8_2RY/SSL7aCBLdOI/AAAAAAAAAJQ/G8XhenG8jNQ/Our%20third%20winner%20of%20the%20day%3A%3A%3AWill%20Chris%20Koiak%20please%20stand%20up%3F.jpg?imgmax=640"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 640px; CURSOR: hand; HEIGHT: 359px" alt="" src="http://lh6.ggpht.com/_KluhNN8_2RY/SSL7aCBLdOI/AAAAAAAAAJQ/G8XhenG8jNQ/Our%20third%20winner%20of%20the%20day%3A%3A%3AWill%20Chris%20Koiak%20please%20stand%20up%3F.jpg?imgmax=640" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To end it, one of the guys (Jim) had went to the bank which is nearby where this all happened and came out only to see much of this going on. He had been there the whole time and despite HIM being the one i initially told AND HIM being the one that reminded everyone else this morning after i had told them yesterday, he had temporarily let his guard down. Otherwise he would be a happy owner of a new laptop.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;Update: Apparently Mark had an iPhone with GPS tracking on it and could literally watch them drive into town, stop and emerge from the offices they had been in - with lots of people following him as they knew this! The only problem was he didn't know the winning phrase and Chris jumped in (ouch!).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What a mad day. Feet are sore, but happy that i won a laptop and even happier that i was part of all this, especially as by the time it hits London he's need to wear a disguise.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;So i guess the moral to all of this is that social networking works - but only when you know a bit about the detail. Deeplinking is cool even in a social sense so long as you read what's at the end of that link.&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5191193359143386535?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5191193359143386535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5191193359143386535' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5191193359143386535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5191193359143386535'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/11/winner-with-vodafone-live-guy.html' title='A winner with Vodafone Live Guy'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_KluhNN8_2RY/SSLhugatr9I/AAAAAAAAAJI/jlJetJpopGg/s72-c/Glasgow%27s%20afternoon%20winner%3A%3A%3ASteve%20Livingstone.jpg?imgmax=640' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8394667453851427111</id><published>2008-11-05T07:30:00.000-08:00</published><updated>2008-11-05T07:43:40.531-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>OpenID "Friend" based Attributes</title><content type='html'>Something i have been thinking about in line with some recent discussion on the OpenID mailing lists has been techniques to verify someone's identity and the attributes that are associated with it.&lt;br /&gt;&lt;br /&gt;My initial thoughts comes up with the following:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Reputation&lt;/strong&gt;&lt;br /&gt;In this case, the longer you use your OpenID, the more people will come to know it is associated with you. I’d be interested in how we could explicitly extend this concept to support a distributed reputation system where you can attach OpenID Reputation points which are assigned from other sites. These could even be broken down into types of reputation. The longer and more you use it the more reputation points. Even sending an email that isn’t spam etc via Gmail or Windows Live could “increment” your reputation score (like pagerank, but for OpenID).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Friend Verification&lt;/strong&gt;&lt;br /&gt;Slightly more explicit and extension of the above whereby friends can verify things you write down about yourself so that others can trust them more. John says he works at Google Inc and Brian has verified this etc.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Central Validation&lt;/strong&gt;&lt;br /&gt;Shibboleth model and probably needed for institutions who perhaps verify things such as “Yes, this is definitely Dr. Livingstone” etc.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;More thinking&lt;/strong&gt;&lt;br /&gt;However, i can't think of a reason why OpenID AX couldn't support attributes from third parties that are signed and stored with the OpenID. This way an institution could be given a users OpenID, make statements about them and return the signed statements/attributes which can then be stored anywhere with that users OpenID profile.&lt;br /&gt;&lt;br /&gt;Someone who wants to get those attributes can easily check via the insituions publically available key that thse attributes have not been altered in any way.&lt;br /&gt;&lt;br /&gt;Extending this you could have a plethora of OpenID attribute information that is both unverified and strongly verified.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8394667453851427111?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8394667453851427111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8394667453851427111' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8394667453851427111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8394667453851427111'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/11/openid-friend-based-attributes.html' title='OpenID &quot;Friend&quot; based Attributes'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1644317542309899097</id><published>2008-11-01T07:15:00.000-07:00</published><updated>2008-11-01T10:51:31.317-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>OpenSearch and JSON</title><content type='html'>In the limited spare time that i seem to have these days, one of the things i've been looking at is &lt;a href="http://www.opensearch.org/Home"&gt;OpenSearch&lt;/a&gt;, "... a collection of simple formats for the sharing of search results".&lt;br /&gt;&lt;br /&gt;OpenSearch is slowing gaining lots of traction and each of the major browsers now allow you to add an OpenSearch to your toolbar automatically (although the User Experience certainly needs work!).&lt;br /&gt;&lt;br /&gt;In my current consultancy work for the NHS I was asked to extend the search API I wrote some months back which works against FAST, and enable any third party site to ended some script in their site and make Ajax style queries. Last week I wrote this functionality (which returns custom Xml and Json) and sure enough it works great.&lt;br /&gt;&lt;br /&gt;However, I like open stuff because it makes it easy for others to pick up and run and so after I added OpenSearch support via the usual description file and tested this with Internet Explorer et al and it &lt;em&gt;worked&lt;/em&gt;, i decided to look at whether i could use OpenSearch as the actual syndication format.&lt;br /&gt;&lt;br /&gt;Now, if this all ran on the same domain there would be no problem in pulling back Atom or RSS and formatting it for display. But in a cross domain architecture you can't do this due to &lt;a href="http://en.wikipedia.org/wiki/Same_origin_policy"&gt;Same Origin Policy&lt;/a&gt;. So, using &lt;a href="http://en.wikipedia.org/wiki/JSONP#JSONP"&gt;JSON-P&lt;/a&gt; we can enable OpenSearch queries over the wire.&lt;br /&gt;&lt;br /&gt;To do that however, we need to have an OpenSearch format for JSON - in my case i simply took the Atom format as a starting point and mapped much of that and added in the OpenSearch elements and attributes.&lt;br /&gt;&lt;br /&gt;So now you can take a few lines of code, add it to any page in the world and make an OpenSearch query using the template Uri and get an OpenSearch response which can be parsed and dislayed.&lt;br /&gt;&lt;br /&gt;Early days but if it's useful to no-one else on the planet, it is useful to me :)&lt;br /&gt;&lt;br /&gt;If interested, please &lt;a href="http://livz.org/nhsopen.aspx"&gt;try it out here&lt;/a&gt;. It queries over 100 million records so you will get results no matter what you type in, but the formats and data mappings are still being worked out.&lt;br /&gt;&lt;br /&gt;PS&lt;em&gt;. Would be *very* nice if we could query the OpenSearch discovery endpoint and ask for JSON to be returned. That way we could dynamically build all of the front end stuff that i can't do with the existing reponse (it returns an OpenSearch specific content type which is not trusted by browsers).&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1644317542309899097?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1644317542309899097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1644317542309899097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1644317542309899097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1644317542309899097'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/11/opensearch-and-json.html' title='OpenSearch and JSON'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-63613492048711441</id><published>2008-10-11T02:11:00.000-07:00</published><updated>2008-10-11T02:16:52.316-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Grassroots rail support</title><content type='html'>&lt;div&gt;I've travelled on trains, planes and automobiles for so many years now and one thing that has yet to be resolved is telling you what is happening &lt;em&gt;as it is happening&lt;/em&gt;. You are often left to try and guess what the problem is, or when the train will arrive - and this is worse at night when there's often no-one around to ask. Well, for years I always intended to build a grassroots support network for transport as the profilferation of mobile devices enabled more people to become involved using SMS and mobile browsing.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Well, below is a rough sketch (it's not too detailed as my son is pushing me to watch an Indiana Jones puppet show he has created, but you'll get the idea).&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SPBu8pmrR6I/AAAAAAAAAJU/zz4cj_CVrpY/s1600-h/rail.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5255822753380648866" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SPBu8pmrR6I/AAAAAAAAAJU/zz4cj_CVrpY/s400/rail.png" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-63613492048711441?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/63613492048711441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=63613492048711441' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/63613492048711441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/63613492048711441'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/grassroots-rail-support.html' title='Grassroots rail support'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_22N_0ypJG6E/SPBu8pmrR6I/AAAAAAAAAJU/zz4cj_CVrpY/s72-c/rail.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5911394376786530092</id><published>2008-10-10T04:30:00.000-07:00</published><updated>2008-10-10T04:47:32.782-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Thoughts on the Cloud API</title><content type='html'>I have seen quite a few diagrams on cloud computing but not something like the one below - (please tell me if you know of more and i'll update!).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_22N_0ypJG6E/SO89ODAzenI/AAAAAAAAAJM/FhVyGra81qY/s1600-h/cloud.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5255486601700801138" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_22N_0ypJG6E/SO89ODAzenI/AAAAAAAAAJM/FhVyGra81qY/s400/cloud.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You see what many leave out is that if you build your service on a third party service in the cloud and it closes down, you're screwed. Well, currently you are. You need to find a new provider, swap your data, change the api, modify your internal code. Which in simple terms, means your're screwed.&lt;br /&gt;&lt;br /&gt;Now, it's not such a big deal if Amazon is your service (although this should still be a consideration) but if the POINT of all this open web stuff and open source and api's etc etc is to allow the little guy to provide services, then it IT a big deal. The little guy will just NOT get the trust for many businesses and it is a shame. Once their ideas are bought by a bigger company then they get exposure. But surely this is a shitty way to do things. Why not let the little guy in?&lt;br /&gt;&lt;br /&gt;A good way for this to happen would be for the "cloud" (and in Scotland we have cloud computing every day of the year, with torrential rain computing thrown in) to support common (i hate saying standard!) API's. oAuth is arguably the most successful example of that to date (with PoCo to come), but OpenID is also another good example (oAuth is not used seamlessly by many a big company).&lt;br /&gt;&lt;br /&gt;But surely we need to look at common API's for all services - or at least the service providers do. I want to use provider A today and provider B tomorrow. It should be a configuration change for the client (and a "swap provider" checkbox ;) ).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Internally&lt;/strong&gt; however there should be a service provider data exchange API that allows swapping of data (and arguably hot swapping for back up - imagine service A and service B backing each other's data up whilst providing the same service!?). So when i ask to move, i can have all my data moved to the new provider (for a fee of course). Here's that API :&lt;br /&gt;&lt;blockquote&gt;data.Transfer(newProviderURI);&lt;/blockquote&gt;&lt;br /&gt;OK, so it's a &lt;em&gt;little&lt;/em&gt; more complex than that, high level is a good place to start. I also like the idea of a higher level cloud API that provides common services for all kinds of cloud services. I know there has been lots of work on various SOAP style services at W3 and so on (transations, instrumentation etc) - not sure how this thinking all fits in with the cloud stuff but would love to hear/read about it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5911394376786530092?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5911394376786530092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5911394376786530092' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5911394376786530092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5911394376786530092'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/thoughts-on-cloud-api.html' title='Thoughts on the Cloud API'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_22N_0ypJG6E/SO89ODAzenI/AAAAAAAAAJM/FhVyGra81qY/s72-c/cloud.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3833138630797952483</id><published>2008-10-10T02:40:00.001-07:00</published><updated>2008-10-10T03:41:12.636-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>One Web, Many Cultures - Reaching Out</title><content type='html'>I'm not entirely sure where this post is going, nor do i have any conclusions in mind. I have simpy been thinking about this for some years and feel like writing it down. I'm not sure what tone it will have for the person reading, but it is &lt;em&gt;intended&lt;/em&gt; to ask some questions rather than make any kind of statement!  Let me first say that i am from Scotland and have live in England, Italy, Canada and Chile in the last 15 years - i wrote books and used the web constantly in each.&lt;br /&gt;&lt;br /&gt;I listened to &lt;a href="http://www.guardian.co.uk/media/pda/2008/oct/09/googlethemedia-google"&gt;Kevin Marks interview&lt;/a&gt; with &lt;a href="http://www.guardian.co.uk/profile/jemimakiss"&gt;Jemima Kiss&lt;/a&gt; at the Guardian and other than Kevin sounding incredibly similar to a friend of mind, the part that jumped out of me was his comments that many of the big social networks have done well out of users they just didn't expect. US technology companies growing "execpectedly" from string user bases in Russia, Brazil, China and so on - in other words from users NOT in North America.&lt;br /&gt;&lt;br /&gt;So, I wrote on Twitter :&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;"that was an interesting interview Kevin. Given the cultural luck many networks&lt;br /&gt;have do you think we need to put more work in involving other cultures right&lt;br /&gt;from the start rather than once the technology is ready?"&lt;/blockquote&gt;&lt;br /&gt;&lt;a href="http://epeus.blogspot.com/"&gt;Kevin Marks&lt;/a&gt; of Google &lt;a href="http://twitter.com/kevinmarks/statuses/953929721"&gt;made the point &lt;/a&gt;to me on Twitter that :&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;"the technology is ready, and has been for a while. Finding people to&lt;br /&gt;bridge app ideas to other cultures and language is still hard."&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;My wording wasn't great (140 characters isn't much!) so this is what i meant....&lt;br /&gt;&lt;br /&gt;Much of the technology driving the web is coming from specific locations in the US - mostly California - there is some input from the rest of us through discussion groups and so on, but primarily it is driven offline. This is understandable on many points due to the huge concentration of top people over there who are much like myself - driven and excited by the potential of the web as a platform that can fit into the daily life of everyone on the planet - in the many different ways people will use it. Also, at the moment virtual working groups are still a work in progress.&lt;br /&gt;&lt;br /&gt;Now, oftentimes i get frustrated that i'm not amongst it - i had hoped to some years back startig with OpenID - (every week on twitter there is another cool event somewhere in the US where all the guys and gals get together to push these things forward). However, something that must be more frustrating is little involvement other cultures in the rest of the world must feel - at least i speak (bad) English and can follow in the forums and blog posts (and every so often post in the forums). What if you speak Chinese and want to use oAuth? Or Spanish? Say you want to add to it or suggest a change? There are a few involved, but this is very much the exception and if you check the board membership for &lt;a href="http://openid.net/foundation/"&gt;most of &lt;/a&gt;these &lt;a href="http://oauth.net/core/1.0/#anchor1"&gt;initiatives &lt;/a&gt;you &lt;a href="http://openwebfoundation.org/community/community.html"&gt;can see&lt;/a&gt; they are based in the US and often (but not always) part U.S. web companies.&lt;br /&gt;&lt;br /&gt;I think it is a problem waiting for a solution - the problem is how to integrate other languages and cultures so that the open web can be something that fits for everyone. If Orkut surprisingly managed to get a dominant user base in Brazil, was there something different to what other social networks were offering which made this happen? Does anyone know? In Africa it is suggested the uptake of mobile phones will continue to be huge - how do these efforts fit into their plans for a social web?&lt;br /&gt;&lt;br /&gt;There are many of these folks who do a lot of evangelizing for these efforts so perhaps they can get to know active people who could get involved in the core specifications from Europe, Asia, Africa, South America and so on. It's worth remembering this IS one web, but has many cultures and what fits one may not fit all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3833138630797952483?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3833138630797952483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3833138630797952483' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3833138630797952483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3833138630797952483'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/one-web-many-cultures.html' title='One Web, Many Cultures - Reaching Out'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1294359986497436779</id><published>2008-10-09T10:07:00.000-07:00</published><updated>2008-10-09T10:09:35.165-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Thoughts on Using Netflix’s New API</title><content type='html'>OK - I have read through &lt;a href="http://josephsmarr.com/2008/10/01/using-netflixs-new-api-a-step-by-step-guide/?disqus_reply=2965290#comment-2965290"&gt;Using Netflix’s New API: A step-by-step guide&lt;/a&gt; by &lt;a style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: rgb(80,80,80); PADDING-TOP: 0px; TEXT-DECORATION: none" href="http://josephsmarr.com/about/"&gt;Joseph Smarr&lt;/a&gt; and tried out a few of the things mentioned.&lt;br /&gt;&lt;br /&gt;My only irritation in the excellent efforts Netflix have done are around the anomalies you can see in the API workflow.&lt;br /&gt;&lt;br /&gt;i'm sure they have some good reasons for diverting from the "standard" process and perhaps some view to these may be useful.&lt;br /&gt;&lt;br /&gt;In addition it may suggest some extension points are needed that could be added to oAuth so that rather than hacking these things we could simply add some optional extensions (which are generic such as "dynamic parameter" rather than "userid") and can be plugged into any oAuth library.&lt;br /&gt;&lt;br /&gt;The fact this can even be done is excellent but in using it it would be nice to just have a graphical pipeline for every site that shows where they may have used some of the optional filters during the oAuth process.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1294359986497436779?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1294359986497436779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1294359986497436779' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1294359986497436779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1294359986497436779'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/thoughts-on-using-netflixs-new-api.html' title='Thoughts on Using Netflix’s New API'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7960978486181718180</id><published>2008-10-08T15:54:00.001-07:00</published><updated>2008-10-08T15:55:12.478-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Copy and Paste between OpenID's</title><content type='html'>In case you missed it i've added a new feature that allows you to Copy and Paste data between OpenID's.&lt;br /&gt;&lt;br /&gt;More information &lt;a href="http://tinyurl.com/4e8cuy"&gt;can be found here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7960978486181718180?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7960978486181718180/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7960978486181718180' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7960978486181718180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7960978486181718180'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/copy-and-paste-between-openids.html' title='Copy and Paste between OpenID&apos;s'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-126790979451664697</id><published>2008-10-04T12:08:00.000-07:00</published><updated>2008-10-04T12:18:34.138-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>TESCO miss the point on the web and PR</title><content type='html'>&lt;em&gt;Tonight we were expecting a home delivery from Tesco in Glasgow at 5pm. At 7.55 PM with the kids wandering where their milk was, we got a call saying they won't be coming due to "staffing issues". I am furious for obvious reasons - none worse than the fact i now need to go shopping to get breakfast for the kids for tomorrow and it is really late and pouring outside.&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;I am writing to them in response to an email i received so i will keep you updated and see how things progress (or don't).&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mr. Livingstone here. I included Terry Leahy in this and additionally will blog what happens at :&lt;br /&gt;&lt;a href="http://weblivz.blogspot.com/2008/10/tesco-miss-point-on-web-and-pr.html"&gt;http://weblivz.blogspot.com/2008/10/tesco-miss-point-on-web-and-pr.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Are you taking the piss? We have a 2 year old and a 5 year old who were waiting on milk before bed time because you were due to deliver before 7. You phone 1 HOUR late on a Saturday night to tell us this, asking if we can "come get it" !? You had from 5pm at the very,very latest to know of any apparent staffing issues.&lt;br /&gt;&lt;br /&gt;What is WORSE is this pathetic general letter you have sent us - you never even took the time to send something personal. We never even had an opportunity to file any complaint and "you have been dissatisfied" is an understatement.&lt;br /&gt;&lt;br /&gt;I would have been irritated at a cancellation earlier, but calling 1 hour later than the latest it was supposed to be here combined with a pathetic general letter (I assume the typists also had the evening off due to the rain) means we will no longer bother doing business with you and move to Asda or equivalent.&lt;br /&gt;&lt;br /&gt;Additionally, I am a high profile online UK blogger and Internet consultant so you can bet a few people will hear about it and i will be looking out for someone at Tesco who can look into this.&lt;br /&gt;Now I have got to go out into the pissing rain at 8 PM on a Saturday night to get milk for tonight and the kids breakfast for tomorrow morning.&lt;br /&gt;&lt;br /&gt;For what it's worth - you don't need to concentrate on staff issues - you need to look at your PR... a phone call earlier in the day would have saved hassle for all of us.&lt;br /&gt;&lt;br /&gt;steven&lt;br /&gt;http://livz.org&lt;br /&gt;&lt;br /&gt;________________________________&lt;br /&gt;&gt; From: &lt;a href="mailto:online@tesco.co.uk"&gt;online@tesco.co.uk&lt;/a&gt;&lt;br /&gt;&gt; Subject: Tesco Online Vouchers&lt;br /&gt;&gt; Date: Sat, 4 Oct 2008 19:51:19 +0100&lt;br /&gt;&gt;&lt;br /&gt;&gt;&lt;br /&gt;&gt; Dear Mr Livingstone&lt;br /&gt;&gt;&lt;br /&gt;&gt; Thank you for notifying us of your complaint. We value our customers' feedback, which helps us to monitor and improve our services.&lt;br /&gt;&gt;&lt;br /&gt;&gt; We are sorry to hear that you have been dissatisfied with the service you recently received from Tesco. As an apology we would like to offer you a ? 10.00 eCoupon, with our compliments, to spend on your next grocery order on Tesco.com. To use this eCoupon simply type in the code XXXXXXXXX when you reach Checkout. This eCoupon can be used from 4 Oct 2008 to 4 Jan 2009&lt;br /&gt;&gt;&lt;br /&gt;&gt;&lt;br /&gt;&gt; If you have any questions, you can also e-mail us at online@tesco.co.uk. Or you can contact our Customer Helpline on 0845 722 55 33 between 9am and 11pm Monday to Friday, 9am and 8pm Saturday and from 10am to 6pm on Sundays.&lt;br /&gt;&gt;&lt;br /&gt;&gt;&lt;br /&gt;&gt; Best wishes,&lt;br /&gt;&gt;&lt;br /&gt;&gt; -&lt;br /&gt;&gt;&lt;br /&gt;&gt; Tesco.com&lt;br /&gt;&gt;&lt;br /&gt;&gt;&lt;br /&gt;&gt;&lt;br /&gt;&gt; Tesco.Com Limited&lt;br /&gt;&gt; Company Number: 3942522&lt;br /&gt;&gt; Registered in England&lt;br /&gt;&gt; Registered Office: Tesco House, Delamare road, Cheshunt, Hertfordshire EN8 9SL&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-126790979451664697?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/126790979451664697/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=126790979451664697' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/126790979451664697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/126790979451664697'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/tesco-miss-point-on-web-and-pr.html' title='TESCO miss the point on the web and PR'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4597428079065479546</id><published>2008-10-02T08:52:00.001-07:00</published><updated>2008-10-02T09:15:07.802-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Syndication in 2009</title><content type='html'>Had some thoughts on what could be done with Feed Aggregation sites such as &lt;a href="http://weblivz.com/"&gt;http://weblivz.com/&lt;/a&gt; and where it may all go. I decided to consider where we are, the problems we currently have and the inevitable move towards syndication for all.&lt;br /&gt;&lt;br /&gt;This is a picture of where we stand today - a very much limited set of pre-defined feeds we can subscribe to (some such as twitter are doing some good work on improving this for their search).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SOTuV7CAc7I/AAAAAAAAAIw/Kzc2_wGRU44/s1600-h/Slide1.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5252585125811614642" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_22N_0ypJG6E/SOTuV7CAc7I/AAAAAAAAAIw/Kzc2_wGRU44/s400/Slide1.PNG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So where are we going? Well, everyone needs to open up - and there are a whole load of good advantages to doing so. Personally, i think the fact we will be able to write &lt;strong&gt;complex queries&lt;/strong&gt; is a major advantage - users are just never going to learn anything more than AND/OR - but we can improve their results by employing the advanced capabilities of search engine logic and API's.&lt;br /&gt;&lt;br /&gt;Additionally we want to start using the Semantic Web, but how a user would work with Google Base or FreeBase etc isn't entirely straightforward. It really comes down to either providing an interface they can build upon or writing the queries for them - perhaps in a templated more to substitute their specific query (ala OpenSearch).&lt;br /&gt;&lt;br /&gt;Whatever method is used people want RSS/Atom. Feeds just now are starting to get out of control because even a reliable source have a small percentage of data you really want. We now need to be able to write custom queries to request exactly what we want. To join, filter, deduplicate and so on.&lt;br /&gt;&lt;br /&gt;I fully expect in the next year or so that the advances that have already started in these areas will only gain momentum and make it a hell of a lot easier for us to get results.&lt;br /&gt;&lt;br /&gt;Will be see a "RSS" button on each page of the Google Search results by the end of 2009?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SOTua_Q-19I/AAAAAAAAAI4/87Li95RbyDY/s1600-h/Slide2.PNG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5252585212847511506" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SOTua_Q-19I/AAAAAAAAAI4/87Li95RbyDY/s400/Slide2.PNG" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4597428079065479546?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4597428079065479546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4597428079065479546' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4597428079065479546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4597428079065479546'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/10/syndication-in-2009.html' title='Syndication in 2009'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_22N_0ypJG6E/SOTuV7CAc7I/AAAAAAAAAIw/Kzc2_wGRU44/s72-c/Slide1.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2403520930743795764</id><published>2008-09-29T00:49:00.000-07:00</published><updated>2008-09-29T01:39:40.609-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Happy Belated Anniversary Google</title><content type='html'>&lt;div&gt;&lt;img src="http://web.archive.org/web/19990224043535/http://www.google.com/logos/google2.gif" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;I kinda wish i had spent more time on this the other day but i was busy doing other stuff. Thanks to a link from DeWitt Clinton (who now works at Google) on Google jobs back in 1999, i played around with archive.org for the first time in ages.&lt;br /&gt;&lt;br /&gt;People may already have found this, but i had to blog anyway about some gems i found that blew me away.&lt;br /&gt;&lt;br /&gt;1. The Google Beta Search Engine in 1998 - &lt;a href="http://web.archive.org/web/19981202230410/www.google.com/"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_22N_0ypJG6E/SOCPAAFWkYI/AAAAAAAAAIA/KeS1EYDcQV0/s400/1.JPG" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5251354395699220866" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_22N_0ypJG6E/SOCPAAFWkYI/AAAAAAAAAIA/KeS1EYDcQV0/s400/1.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. The "Google Friends" &lt;a href="http://web.archive.org/web/19991009030623/www.egroups.com/group/google-friends/"&gt;mailing list &lt;/a&gt;which i suspect was the first public message about Google. It was written by Larry Page himself on 28 April 1998 at 10.28 PM (so must have been a late one!). I love message 5 "Google gets funding" !!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SOCPEYR2sII/AAAAAAAAAII/7qiKGT6n3zE/s400/2.jpg" target="_blank"&gt;&lt;img id="BLOGGER_PHOTO_ID_5251354470913585282" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_22N_0ypJG6E/SOCPEYR2sII/AAAAAAAAAII/7qiKGT6n3zE/s400/2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_22N_0ypJG6E/SOCPAAFWkYI/AAAAAAAAAIA/KeS1EYDcQV0/s1600-h/1.JPG"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://web.archive.org/web/19991104212628/www.egroups.com/group/google-friends/info.html"&gt;"Group Info"&lt;/a&gt; suggests 1 post a month. I like that either Larry or Sergey categorized the group as "Culture &amp;amp; Lifestyle : Gender : Women, Girls, Mothers, Daughters".&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SOCPLqUlDiI/AAAAAAAAAIY/ZAbUFiNVXII/s1600-h/4.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5251354531247344530" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SOCPH5Ciy5I/AAAAAAAAAIQ/QaO3PD2WwzQ/s400/3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SOCPEYR2sII/AAAAAAAAAII/7qiKGT6n3zE/s1600-h/2.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I did actually send a "Happy Birthday" message to "&lt;a href="mailto:google-friends-subscribe@makelist.com"&gt;google-friends-subscribe@makelist.com&lt;/a&gt;" - it's nice to be nice. We made a big deal of my son's 5th birthday and i reckon i see Google as much as him these days! It hasn't bounced so maybe i'll get a reply ;)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SOCPH5Ciy5I/AAAAAAAAAIQ/QaO3PD2WwzQ/s1600-h/3.jpg"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5251354596015935010" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_22N_0ypJG6E/SOCPLqUlDiI/AAAAAAAAAIY/ZAbUFiNVXII/s400/4.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. This is the &lt;a href="http://web.archive.org/web/19990508184520/www.egroups.com/group/google-friends/1.html"&gt;first public email &lt;/a&gt;(mentioned above) i am aware of by Larry Page himself about Google.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SOCPPliXekI/AAAAAAAAAIg/SswqrCWE2DI/s1600-h/5.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5251354663451064898" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SOCPPliXekI/AAAAAAAAAIg/SswqrCWE2DI/s400/5.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. There is also the first email from Larry Page and another in July 1998 where &lt;a href="http://web.archive.org/web/19991009052012/www.egroups.com/group/google-friends/3.html"&gt;he talks about the new features&lt;/a&gt;. For anyone stressing out over their servers, here is surely one of the &lt;em&gt;historic paragraphs of the Internet&lt;/em&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SOCPTfQkCWI/AAAAAAAAAIo/oyTco4n5FoA/s1600-h/6.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5251354730485254498" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SOCPTfQkCWI/AAAAAAAAAIo/oyTco4n5FoA/s400/6.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Combined "our server" (some suggest there is now &gt; 64,000 servers) and "try back in a minute or two". Come on guys - how did you get funding with that line ;) If this kind of thing doesn't inspire you as an entrepreneur you're maybe in the wrong job!&lt;br /&gt;&lt;br /&gt;Look around and let me know if you find other similar gems.&lt;br /&gt;&lt;br /&gt;This reminds us these were two guys who were like every other entrepreneur at the start - they had no idea where they would be in 10 years.&lt;br /&gt;&lt;br /&gt;Hey, they'll likely never ready this, but Well Done - i consider myself inspired !!&lt;br /&gt;&lt;br /&gt;Think i'm starting to really think about writing a book on this kind of thing. Amazing!&lt;br /&gt;&lt;br /&gt;PS. I forgot to mention the Google Stickers... &lt;a href="http://web.archive.org/web/19990224043535/www.google.com/stickers.html"&gt;check this&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2403520930743795764?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2403520930743795764/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2403520930743795764' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2403520930743795764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2403520930743795764'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/happy-belated-anniversary-google.html' title='Happy Belated Anniversary Google'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_22N_0ypJG6E/SOCPAAFWkYI/AAAAAAAAAIA/KeS1EYDcQV0/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5747622106046306961</id><published>2008-09-25T03:51:00.000-07:00</published><updated>2008-09-25T04:13:12.928-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>The art of a search query</title><content type='html'>One thing that i don't see much coverage over is how non-technical users get the power afforded by advanced querying. Something that drive me to create something LIKE &lt;a href="http://weblivz.com/"&gt;http://weblivz.com/&lt;/a&gt; was through my experiences with querying in a project which involved many hundreds of millions of distributed records.&lt;br /&gt;&lt;br /&gt;In that project we had a team over over 20 experts writing specific queries that were semantically relevant to the area they were in and the output of one search was actually a fairly complex backend query most of the time consisting of the union of multiple backend queries all reformatted for a specific output.&lt;br /&gt;&lt;br /&gt;Today many sites - and emerging distributed query sites - are focused on simple queries, but this requires that you KNOW semantically what to look for and that you want to type it in all the time. In addition it assumes you know how to construct fairly complex (it's all relevant) queries.&lt;br /&gt;&lt;br /&gt;So, YES, we need all these cool sites that do the keyword searching. But we ALSO need something a bit higher level. We need to hide the user from the complexity of searching and also make it easier for them to remember the kinds of searches they either constructed or used before.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5747622106046306961?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5747622106046306961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5747622106046306961' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5747622106046306961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5747622106046306961'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/art-of-search-queries.html' title='The art of a search query'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7912936735638397424</id><published>2008-09-24T08:56:00.000-07:00</published><updated>2008-09-24T09:03:57.298-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>A syndication formatting cache</title><content type='html'>I'm really thinking about this stuff just now, so this note is as much use for me as anyone else.&lt;br /&gt;&lt;br /&gt;We have a ton of sources all working with Atom/RSS formats but being semantically different and in cases extending the same concepts in different ways (e.g. Digg has it's own namespace in its Atom feeds for authors).&lt;br /&gt;&lt;br /&gt;Imagine a service that indexed and transformed these sources to normalized formats. So you could basically do XPATH style queries (the interface wouldn't be so complex of course) on the RSS/Atom sources and not only get the data in a given element, but be semantically accurate on what you are getting.&lt;br /&gt;&lt;br /&gt;In addition, extension namespaces could also be queried, so you could ask for media items from youtube, flickr, meefedia and so on and get an accurate result.&lt;br /&gt;&lt;br /&gt;This service may even be useful if we were all using the same format, but at a time where joining feeds is near impossible when you are thinking about the user, it may be useful to have a service helping out.&lt;br /&gt;&lt;br /&gt;I've already written a bunch of tranforms to do this and to be honest had to write an Xslt for every single feed i got (i think delicious was ok), so i know the headache as others look for more advanced syndication feeds!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7912936735638397424?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7912936735638397424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7912936735638397424' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7912936735638397424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7912936735638397424'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/syndication-formatting-cache.html' title='A syndication formatting cache'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8657138283941539323</id><published>2008-09-24T05:07:00.000-07:00</published><updated>2008-09-24T05:14:47.143-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Long tail of atom extended formats</title><content type='html'>I picked up on a post by Andrew Turner on &lt;a href="http://highearthorbit.com/ogc-geospatial-search-summit/"&gt;OGC Geospatial Search Summit&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;“Of course, a format can expand upon this and offer more complex formats that&lt;br /&gt;conform to more complex specs. But by at least providing a common baseline means&lt;br /&gt;that almost any service can easily interconnect with another service.”&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;I can see why we need to stop at some point! The issue is that in the long tail, these extended formats are quite prevalent and I’d like to see extended communities supporting people who want to extend. The reason I say that is that even in the rich media space I have numerous Xslt’s, function calls and so on to normalize what is essentially the same data. GeoRSS is an example of a specific community that does it well!&lt;br /&gt;&lt;br /&gt;My thinking is that if (at the extreme) two companies in the world extended for a very specific topic, we could at least get some normalized view of the data for everyone as a response from an OpenSearch query.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8657138283941539323?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8657138283941539323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8657138283941539323' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8657138283941539323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8657138283941539323'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/long-tail-of-atom-extended-formats.html' title='Long tail of atom extended formats'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7298578449734072910</id><published>2008-09-24T03:21:00.000-07:00</published><updated>2008-09-24T04:03:36.777-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Opening up advanced search syndication</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;[update: 24 Sept @ 12:07 PM : &lt;a href="http://www.google.com/chrome/intl/en/webmasters-faq.html"&gt;Google Chrome&lt;/a&gt; also supports OpenSearch&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;]&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;[update: 24 Sept @ 11:45 AM : Through the &lt;a href="http://groups.google.com/group/opensearch/browse_thread/thread/a9a8e20ed670619"&gt;OpenSearch group&lt;/a&gt;, I see &lt;a href="http://msdn.microsoft.com/en-us/library/cc848862.aspx#dev_dimensions"&gt;MS IE 8 Beta&lt;/a&gt;&lt;/span&gt;&lt;a style="color: rgb(255, 0, 0);" href="http://msdn.microsoft.com/en-us/library/cc848862.aspx#dev_dimensions"&gt; supports OpenSearch&lt;/a&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; so perhaps even more sites will realize more complex searches are needed]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As you may well now be aware, I just launched an Alpha release of weblivz.com and what I tried to do there is (in many cases) write intelligent query sets against sites that provide the results as RSS or Atom feeds. So rather than just pulling in every feed we can find, we actually create a query such as "Europe and technology" and so on. It really isn’t easy and requires a lot more work that isn't visible up front. Here are the five issues:&lt;br /&gt;&lt;br /&gt;1. Search, no feed&lt;br /&gt;2. Query syntax&lt;br /&gt;3. RESTful&lt;br /&gt;4. The commercial clause&lt;br /&gt;5. Semantics of response formats&lt;br /&gt;&lt;br /&gt;I will provide one example in each section, but there are many others I have come across.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Search, no feed&lt;br /&gt;&lt;/strong&gt;In many cases you can get RSS or Atom feeds from static pages, but as soon as it comes to searching and gathering the results as a feed, you’re in trouble. One example if MeetUp.com.&lt;br /&gt;&lt;br /&gt;I can do a bunch of querying to get certain feeds but as soon as I want to something such as "languages and Glasgow" I’m out of luck. In short, you get exactly what you want with most search queries on some of these excellent sites, but they only work when you are ON the site.&lt;br /&gt;&lt;br /&gt;This misses the opportunity of syndicating the results to third parties to allow them to point at YOUR site. You end up with having to use the limited feeds available and most of the time this isn’t much use to anyone – especially in the era of content overload and the increasing importance of providing the user with what they want.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Requirement&lt;br /&gt;&lt;/em&gt;Ensure all the results from your search query can be syndicated as RSS or Atom. The extra queries against your server will be balanced against higher profile or extra hits on your site.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Query Syntax&lt;br /&gt;&lt;/strong&gt;In short, query syntax is all over the place. In some cases you can only search for one term and in other cases you can’t use AND or OR. There is a real lack of support for doing interesting things – if you really want to customize the feeds, in most cases you are seriously limited by what you can achieve. One example is &lt;a href="http://eventbrite.com/"&gt;http://eventbrite.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If I want to search for Tech events in Glasgow or Edinburgh I really need to do 4 separate queries – "tech glasgow", "technology Glasgow", "technology Edinburgh" and "tech Edinburgh". This is a waste of resources all round for something that is relatively simple to achieve.&lt;br /&gt;&lt;br /&gt;In some cases typing "or" doesn’t mean the same as "OR" and in others typing "and" gets interpreted as part of the querying rather than ANDing the terms.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Requirement&lt;br /&gt;&lt;/strong&gt;If we are not going to use &lt;a href="http://www.opensearch.org/"&gt;http://www.OpenSearch.org &lt;/a&gt;then the site needs to at least provide a powerful search interface – perhaps more powerful than any individual is going to use, but in cases such as &lt;a href="http://weblivz.com/"&gt;http://weblivz.com &lt;/a&gt;we are actively creating powerful queries against your backend database – saving everyone resources!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Give us a REST&lt;/strong&gt;&lt;br /&gt;For the majority of queries, a RESTful URL should be enough to get the results. Granted many sites already support this but there are others that provide access only through a POST API XML based syntax. This is good for more advanced queries but sometimes you want to write something simple that returns results in a given format, without passing an extended collection of parameters.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Requirement&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;If I can’t type (something like):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.yoursite.com/search.atom?query=tech+Glasgow"&gt;http://www.yoursite.com/search.atom?query=tech+Glasgow&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;… then you really need to think about adding this functionality.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The commercial clause&lt;br /&gt;&lt;/strong&gt;Now this is one I simply DO NOT GET. Many sites say the data can’t be used in a commercial context, without really defining what that means. I have some sympathy for this when it is data you have collated and published – such as a postcode search facility or something... syndicating that would render visiting your site close to pointless.&lt;br /&gt;&lt;br /&gt;However, when it comes to user generated content I just cannot understand it. Many sites allow searching, feeds and then insert a clause saying you cannot syndicate the data without a license. The point of these feeds however is to provide a "teaser" to bring the people TO your site… so even in a commercial context, surely allowing your feeds to be displayed can ONLY work for you.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mystrands.com/"&gt;http://www.mystrands.com&lt;/a&gt; but it’s got "commercial" all over it (it also doesn’t have RESTful URL access to feeds). So do we write YET ANOTHER MyStrands or do they just provide intelligent syndicated search feeds we can all use and drive business to our and their site.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;em&gt;Requirement&lt;br /&gt;&lt;/em&gt;Remove this kind of clause.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Semantics of response formats&lt;br /&gt;&lt;/strong&gt;This particular part almost drove me to distraction. We now have RSS and Atom as the key formats of feeds – sure there are some variations in versions but we are pretty close to two general formats.&lt;br /&gt;&lt;br /&gt;So where is the problem with this? Well, the problem is twofold. The first is different interpretation of what goes into each field and the other is the extensions used within the feeds and the variation on how these are semantically interpreted.&lt;br /&gt;&lt;br /&gt;The first of these is particularly an issue with "content" and "summary". Some people put in a short description, others put in formatted html. Some don’t’ put a summary and only add content so you need to parse this somehow if you want to display some kind of a summary.&lt;br /&gt;&lt;br /&gt;In addition to this you may find some sites (such as FriendFeed) provide much of the information that should be in atom fields (such as the author) embedded within the content so you would need to parse that to give any kind of standard view.&lt;br /&gt;&lt;br /&gt;Now, the extensions is altogether more of an issue. Just try combining some of the feeds using the xmlns:media (http://search.yahoo.com/mrss/ ) namespace. Sometimes the link is in the atom elements, others it’s with the media player element, sometimes the author is in the media credit and others it’s in the atom author field.&lt;br /&gt;&lt;br /&gt;You need to parse some of these to death just to get a standard output – in fields where the output should really be a specific extension of the core RSS or Atom specifications. This is a nightmare when applied to video, photo’s, music and so on and makes intelligent search and syndication very difficult.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Call to action&lt;/strong&gt;&lt;br /&gt;We really need to change some of this. It’s not like we need any scientific breakthrough to make this work – we just need to come to some kind of agreement on the points I outlines above – all the difficult technical stuff has already been done. It doesn’t require ripping software – just extending it.&lt;br /&gt;&lt;br /&gt;If you provide an Atom feed you may not want to change that but adding a version parameter in an API is easy. That way you can provide the "new" improved feed. Really the best option is to look at &lt;a href="http://opensearch.org/"&gt;http://opensearch.org&lt;/a&gt; but there are any number of options I would happily accept.&lt;br /&gt;&lt;br /&gt;We also need to generally improve search and syndication and realize it is not something that takes people away from your site, but rather drives them to your site. The better your search APi the easier it will be for sites like &lt;a href="http://weblivz.com/"&gt;http://weblivz.com&lt;/a&gt; to integrate your feed with specialist and content sensitive queries. Users will like that and they will come to you through all sorts of gateways!&lt;br /&gt;&lt;br /&gt;Please take away the commercial stuff, or at least tone it down. In most cases people will come to your site if they see a teaser of what they want no matter what site they are on.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Feedback&lt;/strong&gt;&lt;br /&gt;Thanks for reading. This was based on my experiences creating the weblivz website. I’d love to hear feedback – good or bad. If you have pointers or want to point out anything right/wrong or additions, please suggest and I will update the article.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7298578449734072910?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7298578449734072910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7298578449734072910' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7298578449734072910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7298578449734072910'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/opening-up-advanced-search-syndication.html' title='Opening up advanced search syndication'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-618369934308627409</id><published>2008-09-10T16:04:00.000-07:00</published><updated>2008-09-10T16:26:26.946-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Gazopa - it's fun too</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SMhOj-1onBI/AAAAAAAAAHw/IRG9-xuiLMw/s1600-h/gazopa.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5244528146143288338" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_22N_0ypJG6E/SMhOj-1onBI/AAAAAAAAAHw/IRG9-xuiLMw/s400/gazopa.JPG" border="0" /&gt;&lt;/a&gt;While Gazopa looked useful and i tried a few searches which i had mixed results with, what REALLY caught my imagination was its ability to allow YOU to draw and look for similar results.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now, you need to remember I have the artistic ability of a drunk one handed (pawd?) fox wearing a blindfold so it &lt;em&gt;really&lt;/em&gt; was a challenge.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Well what do you know, it actually brough something back for my, erm "spider" - and it wasn't too bad - mainly coz it DID actually show a spider (yes, i was as shocked as you are reading).&lt;br /&gt;&lt;br /&gt;Look at that last result in the right - a frickin spider. And the others were not too bad - but a 20 points for anyone who can tell me why a LAMP is in there?!&lt;br /&gt;&lt;br /&gt;So, being excited i decided to try searching for a more creative drawing. I thought, who will i search for that might come back in their database? Well, @scobleizer came to mind and i've watched enough of his videos to think i could have a good attempt at portrait. As my guide i used a fairly unusual picture of him (at least i'd imagine it's unusual)...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://pm.typepad.com/photos/uncategorized/scoble.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 400px; CURSOR: hand" alt="" src="http://pm.typepad.com/photos/uncategorized/scoble.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So below you can see my, erm, portrait (1000 apologies) and the results (using a facial search coz the results without it were just ridiculous).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SMhSIEfxoDI/AAAAAAAAAH4/0sAaCs7V6wk/s1600-h/gazopa2.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5244532064672391218" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SMhSIEfxoDI/AAAAAAAAAH4/0sAaCs7V6wk/s400/gazopa2.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It's perhaps fair to say there is still some work when it gets a little more advanced - but that's ok, coz it was the first thing ever to recognize something i drew!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-618369934308627409?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/618369934308627409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=618369934308627409' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/618369934308627409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/618369934308627409'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/gazopa-its-fun-too.html' title='Gazopa - it&apos;s fun too'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_22N_0ypJG6E/SMhOj-1onBI/AAAAAAAAAHw/IRG9-xuiLMw/s72-c/gazopa.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1349637012589125621</id><published>2008-09-05T06:46:00.000-07:00</published><updated>2008-09-05T07:45:21.905-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Javascript object instance methods</title><content type='html'>Some other styles i've seen in the creation of instance methods on Javascript objects are as follows:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;span style="color:#3366ff;"&gt;NS.test = function() {&lt;br /&gt;  NS.test.prototype.doSomething = function()&lt;br /&gt;   {&lt;br /&gt;      ...&lt;br /&gt;   };&lt;br /&gt;};&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="color:#3366ff;"&gt;NS.test2 = new function() {&lt;br /&gt;   this.doSomething = function() {&lt;br /&gt;     ...&lt;br /&gt;   };&lt;br /&gt;};&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="color:#3366ff;"&gt;(function() {&lt;br /&gt;   var test3 = function() {};&lt;br /&gt;&lt;br /&gt;   test3.prototype = {&lt;br /&gt;       doSomething : function()&lt;br /&gt;      {&lt;br /&gt;         ...&lt;br /&gt;      }&lt;br /&gt;   };&lt;br /&gt;  &lt;br /&gt;   NS.test3.doSomethingStatic = function() {&lt;br /&gt;       ...  &lt;br /&gt;   }&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#3366ff;"&gt;&lt;br /&gt;   NS.test3 = test3;&lt;br /&gt;&lt;br /&gt;})();&lt;/span&gt;&lt;span style="color:#3366ff;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="color:#3366ff;"&gt;var test1 = new NS.test();&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#3366ff;"&gt;test1.doSomething();&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#3366ff;"&gt;NS.test2.doSomething();&lt;br /&gt;&lt;br /&gt;var test3 = new NS.test3();&lt;br /&gt;test3.doSomething();&lt;br /&gt;&lt;br /&gt;NS.test3.doSomethingStatic();&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1349637012589125621?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1349637012589125621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1349637012589125621' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1349637012589125621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1349637012589125621'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/javascript-object-instance-methods.html' title='Javascript object instance methods'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2566732301928278490</id><published>2008-09-05T05:12:00.000-07:00</published><updated>2008-09-05T05:21:54.940-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Variable scope in Javascript</title><content type='html'>I'm from an old skool of JavaScript where it was a nice add-on and everything was done on the server. Sure, i've used all the JQuery, Ajaxy, Prototypey frameworks out there but i never went back to look at the core of the language - well at the moment i'm working on something and writing a lot of script.&lt;br /&gt;&lt;br /&gt;So i learned something new. A lot of frameworks were using the following syntax in their libraries..&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;color:#3366ff;"&gt;(function() {&lt;br /&gt; ...&lt;br /&gt;&lt;br /&gt;})();&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;It's fair to say i was going mad trying to figure out why. I mean you put an alert in there and it pops up when the script loads. So why bother with the function? Why not just write your code as we used to - directly in the page?&lt;br /&gt;&lt;br /&gt;Well, thanks to &lt;a href="http://developer.mozilla.org/en/A_re-introduction_to_JavaScript"&gt;this paper&lt;/a&gt;, I have discovered why and this note is as much for my future reading as yours :)&lt;br /&gt;&lt;br /&gt;Turns out that you can locally scope variables within these anonymous javascript functions which more importantly means you don't screw up global vars that are being used elsewhere. So you can confidently write the following ...&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;color:#3366ff;"&gt;var person = 'steven';&lt;br /&gt;(function() {&lt;br /&gt;&lt;br /&gt;    var person = 'xavier';&lt;br /&gt;   &lt;br /&gt;alert("Person 1 " + person);&lt;br /&gt;&lt;br /&gt;})();&lt;br /&gt;&lt;br /&gt;alert("Person 2 " + person);&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;... and you will get "Person 1 xavier" and "Person 2 steven" - notably the global variable "person" was &lt;em&gt;redeclared&lt;/em&gt; within the scope of the anonymous function and the name changed, but as it was declared with "var" it does not overwrite the global value. If you did NOT use "var" in the function, you would change the value globally. So it works like every other programming language - just a wee bit different in term of syntax :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2566732301928278490?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2566732301928278490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2566732301928278490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2566732301928278490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2566732301928278490'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/variable-scope-in-javascript.html' title='Variable scope in Javascript'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5936880501079546562</id><published>2008-09-03T02:36:00.001-07:00</published><updated>2008-09-03T02:45:15.174-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>V8, Chrome and the DOM</title><content type='html'>V8 is the Javascript engine for Chrome, the new Google web browser. It is very fast.&lt;br /&gt;&lt;br /&gt;V8 does not provide DOM or XML DOM support. This was &lt;a href="http://groups.google.com/group/v8-users/browse_thread/thread/12a7d110a558e789"&gt;confirmed to me&lt;/a&gt; by a member of the team at the V8 google group.&lt;br /&gt;&lt;br /&gt;This leaves me with a question i hope someone can answer.&lt;br /&gt;&lt;br /&gt;Most of the scripts i write either use the DOM (getElementById) or the Xml Dom (childNodes[0].nodeValue) and so on. That is a LARGE part of my scripts.&lt;br /&gt;&lt;br /&gt;So if the engine does not provide support for this, what happens to my scripts? Do they go really fast until they need to query the DOM and then slow down? The net effect in my case could be a lot of slowing down. I my experience, querying the DOM is the slowest part of your scripts (unless you write non-typical).&lt;br /&gt;&lt;br /&gt;Haven't had time (and won't today) to run tests so if you know the answer please let me know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5936880501079546562?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5936880501079546562/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5936880501079546562' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5936880501079546562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5936880501079546562'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/v8-chrome-and-dom.html' title='V8, Chrome and the DOM'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3095255926368626688</id><published>2008-09-02T13:11:00.000-07:00</published><updated>2008-09-02T13:15:08.874-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>"Google Suggests ..." - don't use Chrome :)</title><content type='html'>I had to put this one up. I was in Chrome and tried to change my pic in the Groups and here's what i got (changeing pic works fine in friendfeed, for example).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SL2ecDKCyrI/AAAAAAAAAHk/1KIby8wiC8k/s1600-h/error2.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5241519746050083506" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_22N_0ypJG6E/SL2ecDKCyrI/AAAAAAAAAHk/1KIby8wiC8k/s400/error2.JPG" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3095255926368626688?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3095255926368626688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3095255926368626688' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3095255926368626688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3095255926368626688'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/try-another-browser-chrome-in-google.html' title='&quot;Google Suggests ...&quot; - don&apos;t use Chrome :)'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_22N_0ypJG6E/SL2ecDKCyrI/AAAAAAAAAHk/1KIby8wiC8k/s72-c/error2.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4145071137664572070</id><published>2008-09-02T12:47:00.000-07:00</published><updated>2008-09-02T12:51:23.183-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>my first chrome weird thing</title><content type='html'>This may just chance, but the only site i can't get to is webkit.org - which Chrome runs on top of :)&lt;br /&gt;&lt;br /&gt;Not only that, it thinks it is "null" (other sites that can't actually be found give a DNS error).&lt;br /&gt;&lt;br /&gt;Anyone else get to &lt;a href="http://webkit.org/"&gt;http://webkit.org&lt;/a&gt; ?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_22N_0ypJG6E/SL2YtZmlQ6I/AAAAAAAAAHc/pewIGSUIh7M/s1600-h/error.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5241513447063372706" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_22N_0ypJG6E/SL2YtZmlQ6I/AAAAAAAAAHc/pewIGSUIh7M/s400/error.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_22N_0ypJG6E/SL2Yi90wlfI/AAAAAAAAAHU/jx7dz-RpG-s/s1600-h/error.JPG"&gt;&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/5901969713488428158-4145071137664572070?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4145071137664572070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4145071137664572070' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4145071137664572070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4145071137664572070'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/my-first-chrome-weird-thing.html' title='my first chrome weird thing'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_22N_0ypJG6E/SL2YtZmlQ6I/AAAAAAAAAHc/pewIGSUIh7M/s72-c/error.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2541395233565258911</id><published>2008-09-02T04:27:00.000-07:00</published><updated>2008-09-02T04:40:07.958-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Chrome Auto-complete Ideas</title><content type='html'>Whilst some of what i have seen from Chrome is what i would expect of a browser of this generation (much of it is in IE 8 too), there are some things such as the V8 Javascript compiler which looks to be very cool. I am only halfway through the book, but wanted to write a post on auto-complete.&lt;br /&gt;&lt;br /&gt;Google say Chrome will mean you don't need to bookmark pages any more and will provide an improved auto-complete. Well, here's my thoughts...&lt;br /&gt;&lt;br /&gt;"Auto-complete" should be much more expansive. I rarely remembers URL's and even things i have found and bookmarked can be a pain to find again. In fact i tend to bookmark things and never look at them again. So i may be searching for something i have already found. Auto-complete needs to add techniques to discover information you want to keep track of. Tags in a delicious style are an obvious way. Add to that some kind of personal strength and it may be very useful. So i type in "Javascript Cross Domain problem" and get a view of a set of links i previously found useful - coz let's face it, you'll end up going to google, and in the process of a single search modify the query, view certain pages, like some discard others and repeat. In that *session* I should be able to get back to all the pages i found useful. I don't mean caching the pages, i mean the semantic link to those pages.&lt;br /&gt;&lt;br /&gt;Can you imaging a little package of links you found useful related to a search concept that you can reuse in the future. I would LOVE this. So where Chrome shows a new tab with the top links it it, the auto-complete concept would extend to the search package i discussed above.&lt;br /&gt;&lt;br /&gt;ps. stuff such as gears, prototype and so on should be part of the environment itself... maybe that is later in the comic :)&lt;br /&gt;&lt;br /&gt;pps. Is it true that the Joker appears in chapter 5??&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2541395233565258911?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2541395233565258911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2541395233565258911' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2541395233565258911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2541395233565258911'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/09/chrome-auto-complete-ideas.html' title='Chrome Auto-complete Ideas'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5805406847833567139</id><published>2008-08-29T02:58:00.000-07:00</published><updated>2008-08-29T03:07:17.066-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Friendfeed custom display</title><content type='html'>A while back i changed my homepage to be a custom view of my friendfeed activity so you could see what i was doing all day long. The only thing i don't like is that it puts my most recent items up which is great, but it means i have lots of twitter posts as i'm very active in there. You don't see my most recent images, videos and so on. I should have posted this ages ago, but i didn't, so apologies.&lt;br /&gt;&lt;br /&gt;Here you go if you find it useful...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1. Put in the head element ...&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;    &amp;lt;script&amp;gt;&lt;br /&gt;&lt;br /&gt;    function ParseFriend(feedid)&lt;br /&gt;    {&lt;br /&gt;        var prefeed = document.getElementById(&lt;span class="str"&gt;"prefriendfeed"&lt;/span&gt;+feedid);&lt;br /&gt;        prefeed.style.display = &lt;span class="str"&gt;'none'&lt;/span&gt;;&lt;br /&gt;        &lt;br /&gt;        var feeditem = document.getElementById(&lt;span class="str"&gt;"feed"&lt;/span&gt;+feedid);&lt;br /&gt;        var divs = feeditem.getElementsByTagName(&lt;span class="str"&gt;"div"&lt;/span&gt;);&lt;br /&gt;        &lt;span class="kwrd"&gt;for&lt;/span&gt;(var i=0;i&amp;lt;divs.length;i++)&lt;br /&gt;        {&lt;br /&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (divs[i].className == &lt;span class="str"&gt;"header"&lt;/span&gt;) divs[i].style.display=&lt;span class="str"&gt;'none'&lt;/span&gt;;&lt;br /&gt;            &lt;br /&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (divs[i].className == &lt;span class="str"&gt;"friendfeed"&lt;/span&gt;)&lt;br /&gt;            {  &lt;br /&gt;                var subdivs = divs[i].getElementsByTagName(&lt;span class="str"&gt;"div"&lt;/span&gt;);&lt;br /&gt;                &lt;span class="kwrd"&gt;for&lt;/span&gt;(var j=0;j&amp;lt;subdivs.length;j++)&lt;br /&gt;                {       &lt;br /&gt;                    &lt;span class="kwrd"&gt;if&lt;/span&gt; (subdivs[j].className == &lt;span class="str"&gt;"feed"&lt;/span&gt;)&lt;br /&gt;                    {&lt;br /&gt;                        subdivs[j].style.border=&lt;span class="str"&gt;'10px'&lt;/span&gt;;&lt;br /&gt;                        subdivs[j].parentNode.parentNode.style.display = &lt;span class="str"&gt;''&lt;/span&gt;;&lt;br /&gt;                    }&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }        &lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2. Place on your page and customize ...&lt;/b&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="friendfeed"&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="float:left;width:600px;"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="http://friendfeed.com/weblivz"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;img&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="images/friendfeed.gif"&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="vertical-align:top;"&lt;/span&gt; &lt;span class="attr"&gt;border&lt;/span&gt;&lt;span class="kwrd"&gt;="0"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                      &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed101"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;location&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed1"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;blog&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed2"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;twitter&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed6"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;favourites&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed5"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;videos&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed3"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;photos&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed4"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;music&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                    | &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="#feed7"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;books&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;br&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="feed101"&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="feed101"&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="float:left;margin-left:20px;"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;img&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="images/plazes.jpg"&lt;/span&gt; &lt;span class="attr"&gt;border&lt;/span&gt;&lt;span class="kwrd"&gt;="0"&lt;/span&gt; &lt;span class="attr"&gt;alt&lt;/span&gt;&lt;span class="kwrd"&gt;=""&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="margin-left:40px;"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;object&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="application/x-shockwave-flash"&lt;/span&gt; &lt;span class="attr"&gt;data&lt;/span&gt;&lt;span class="kwrd"&gt;="http://plazes.com/flashes/badge.swf"&lt;/span&gt; &lt;span class="attr"&gt;width&lt;/span&gt;&lt;span class="kwrd"&gt;="316"&lt;/span&gt; &lt;span class="attr"&gt;height&lt;/span&gt;&lt;span class="kwrd"&gt;="146"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;param&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="movie"&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;="http://plazes.com/flashes/badge.swf"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;param&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="allowScriptAccess"&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;="sameDomain"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;param&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="swLiveConnect"&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;="true"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;param&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="wmode"&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;="transparent"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;param&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="FlashVars"&lt;/span&gt; &lt;span class="attr"&gt;value&lt;/span&gt;&lt;span class="kwrd"&gt;="key=fcffc504b834fcd539f4310515a31d5e&amp;amp;amp;dark=7cd9f7&amp;amp;amp;light=ff9900&amp;amp;amp;text=000000&amp;amp;amp;link=ffffff"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;strong&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;class&lt;/span&gt;&lt;span class="kwrd"&gt;="external"&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="http://www.adobe.com/"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Download Flash plugin&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;strong&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;p&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;object&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="prefriendfeed2"&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="float:left;width:600px;"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;img&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="images/loading.gif"&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="vertical-align:middle;"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; loading livzstream tweets ...&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="feed2"&lt;/span&gt; &lt;span class="attr"&gt;id&lt;/span&gt;&lt;span class="kwrd"&gt;="feed2"&lt;/span&gt; &lt;span class="attr"&gt;style&lt;/span&gt;&lt;span class="kwrd"&gt;="display:none;"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="text/javascript"&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;="http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=twitter"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;div&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(2);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;div id=&lt;span class="str"&gt;"prefriendfeed1"&lt;/span&gt; style=&lt;span class="str"&gt;"float:left;width:600px;"&lt;/span&gt;&amp;gt;&amp;lt;img src=&lt;span class="str"&gt;"images/loading.gif"&lt;/span&gt; style=&lt;span class="str"&gt;"vertical-align:middle;"&lt;/span&gt; /&amp;gt; loading livzstream blogs ...&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;div name=&lt;span class="str"&gt;"feed1"&lt;/span&gt; id=&lt;span class="str"&gt;"feed1"&lt;/span&gt; style=&lt;span class="str"&gt;"display:none;"&lt;/span&gt;&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=blog"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(1);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;div id=&lt;span class="str"&gt;"prefriendfeed6"&lt;/span&gt; style=&lt;span class="str"&gt;"float:left;width:600px;"&lt;/span&gt;&amp;gt;&amp;lt;img src=&lt;span class="str"&gt;"images/loading.gif"&lt;/span&gt; style=&lt;span class="str"&gt;"vertical-align:middle;"&lt;/span&gt; /&amp;gt; loading livzstream favourites ...&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;div name=&lt;span class="str"&gt;"feed6"&lt;/span&gt; id=&lt;span class="str"&gt;"feed6"&lt;/span&gt; style=&lt;span class="str"&gt;"display:none;"&lt;/span&gt;&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=delicious"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/div&amp;gt;                &lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(6);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;div id=&lt;span class="str"&gt;"prefriendfeed3"&lt;/span&gt; style=&lt;span class="str"&gt;"float:left;width:600px;"&lt;/span&gt;&amp;gt;&amp;lt;img src=&lt;span class="str"&gt;"images/loading.gif"&lt;/span&gt; style=&lt;span class="str"&gt;"vertical-align:middle;"&lt;/span&gt; /&amp;gt; loading livzstream photos ...&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;div name=&lt;span class="str"&gt;"feed3"&lt;/span&gt; id=&lt;span class="str"&gt;"feed3"&lt;/span&gt; style=&lt;span class="str"&gt;"display:none;"&lt;/span&gt;&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=flickr"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(3);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;div id=&lt;span class="str"&gt;"prefriendfeed5"&lt;/span&gt; style=&lt;span class="str"&gt;"float:left;width:600px;"&lt;/span&gt;&amp;gt;&amp;lt;img src=&lt;span class="str"&gt;"images/loading.gif"&lt;/span&gt; style=&lt;span class="str"&gt;"vertical-align:middle;"&lt;/span&gt; /&amp;gt; loading livzstream videos ...&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;div name=&lt;span class="str"&gt;"feed5"&lt;/span&gt; id=&lt;span class="str"&gt;"feed5"&lt;/span&gt; style=&lt;span class="str"&gt;"display:none;"&lt;/span&gt;&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=youtube"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=seesmic"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(5);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;div id=&lt;span class="str"&gt;"prefriendfeed4"&lt;/span&gt; style=&lt;span class="str"&gt;"float:left;width:600px;"&lt;/span&gt;&amp;gt;&amp;lt;img src=&lt;span class="str"&gt;"images/loading.gif"&lt;/span&gt; style=&lt;span class="str"&gt;"vertical-align:middle;"&lt;/span&gt; /&amp;gt; loading livzstream music ...&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;div name=&lt;span class="str"&gt;"feed4"&lt;/span&gt; id=&lt;span class="str"&gt;"feed4"&lt;/span&gt; style=&lt;span class="str"&gt;"display:none;"&lt;/span&gt;&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=lastfm"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(4);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &amp;lt;div id=&lt;span class="str"&gt;"prefriendfeed7"&lt;/span&gt; style=&lt;span class="str"&gt;"float:left;width:600px;"&lt;/span&gt;&amp;gt;&amp;lt;img src=&lt;span class="str"&gt;"images/loading.gif"&lt;/span&gt; style=&lt;span class="str"&gt;"vertical-align:middle;"&lt;/span&gt; /&amp;gt; loading livzstream books ...&amp;lt;/div&amp;gt;&lt;br /&gt;                &amp;lt;div name=&lt;span class="str"&gt;"feed7"&lt;/span&gt; id=&lt;span class="str"&gt;"feed7"&lt;/span&gt; style=&lt;span class="str"&gt;"display:none;"&lt;/span&gt;&amp;gt;&amp;lt;script type=&lt;span class="str"&gt;"text/javascript"&lt;/span&gt; src=&lt;span class="str"&gt;"http://friendfeed.com/embed/widget/weblivz?num=2&amp;amp;service=amazon"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;/div&amp;gt;                &lt;br /&gt;                &amp;lt;script&amp;gt;ParseFriend(7);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;3. Put at the end of your web page the following ...&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;ParseFriend(1);ParseFriend(2);ParseFriend(3);ParseFriend(4);ParseFriend(5);ParseFriend(6);ParseFriend(7);&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5805406847833567139?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5805406847833567139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5805406847833567139' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5805406847833567139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5805406847833567139'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/08/friendfeed-custom-display.html' title='Friendfeed custom display'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7473641415429434670</id><published>2008-08-23T03:37:00.000-07:00</published><updated>2008-08-23T03:57:02.042-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Make your API's easy to play with</title><content type='html'>I'm looking at advertising API's and i've got a headache. Got a nice list from &lt;a href="http://www.seo-expert-blog.com/blog/seo-and-advertising-apis-developers"&gt;here&lt;/a&gt;, but ALL i want to do right now is test them out. I'm sitting here with my code calling some Amazon Web Services (excellent) and other simpler services but the Ad one is driving me nuts. Google's was way complex and involved signing up all over the place.  &lt;a href="http://searchmarketing.yahoo.com/api/index.php"&gt;Yahoo&lt;/a&gt; required me to be processed. Again &lt;a href="http://msdn.microsoft.com/en-us/library/aa983013.aspx"&gt;Microsoft's&lt;/a&gt; looks fairly involved. &lt;em&gt;(Update) &lt;/em&gt;Didn't realize that i need to use AdSense and not AdWords to actually get suggestions ! Never saw any pointers at the top of the AdWords. Anyway AdSense is a little better but it seems to return only HTML which kinds defeats the purpose of an API. I want to embed it my own way!&lt;br /&gt;&lt;br /&gt;I want to pass some data and get some ads - maybe do something more in the future. More importantly i just want to &lt;strong&gt;&lt;em&gt;test&lt;/em&gt;&lt;/strong&gt; this just now. I don't want to commit to anything but things need to be simpler. I don't wanna spend hours registering, being verified and &lt;em&gt;then&lt;/em&gt; coding against something far more complex than i need. I don't mind the complexity, but when i can't immediately see (and play with) what i need to do then, to me, it's complex.&lt;br /&gt;&lt;br /&gt;Please - all - provide a sandbox for hacking. Make it open with an API key easy to get which allows X number of requests. Make the API simple - most could be RESTful gets for that. Make the reponse simple, but customizable.&lt;br /&gt;&lt;br /&gt;I know from personal experience these things get complex quickly, but we need API's we can quickly run with.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7473641415429434670?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7473641415429434670/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7473641415429434670' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7473641415429434670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7473641415429434670'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/08/make-your-apis-easy-to-play-with.html' title='Make your API&apos;s easy to play with'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3857419304555165962</id><published>2008-08-21T13:21:00.000-07:00</published><updated>2008-08-21T15:42:42.975-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Needz twitter</title><content type='html'>As an experiment i've created an account on Twitter when you can add and request things ou need, such as positions to be filled, a job, directions and so on.&lt;br /&gt;&lt;br /&gt;If you need something, send a message to @needz at &lt;a href="http://twitter.com/needz"&gt;http://twitter.com/needz&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3857419304555165962?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3857419304555165962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3857419304555165962' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3857419304555165962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3857419304555165962'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/08/needz-twitter.html' title='Needz twitter'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2932980032898131376</id><published>2008-08-19T10:22:00.000-07:00</published><updated>2008-08-19T10:35:58.404-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Reading from Freebase using C#</title><content type='html'>&lt;span style="font-size:85%;color:#ff0000;"&gt;&lt;strong&gt;Update : Seems Freebase no longer requires the cookie authentication - comment out that line and it works fine. Cool.&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Freebase is one of my favourite things EVER on the web.&lt;br /&gt;&lt;br /&gt;I'm working on a project just now and need to read from FreeBase. Alas I couldn't find any C# examples (if you know of any please let me know). As FreeBase is in early stages it required Cookie authentication - they say they will open up in the future.&lt;br /&gt;&lt;br /&gt;Anyway, here is the code that does the same thing as the Perl, PHP and JavaScript code on &lt;a href="http://www.freebase.com/view/guid/9202a8c04000641f800000000544e139"&gt;this Freebase page&lt;/a&gt;. Enjoy :)&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.IO;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Net;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Security.Authentication;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; FreebaseSample&lt;br /&gt;{&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; FreeFind&lt;br /&gt;    {&lt;br /&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; server = &lt;span class="str"&gt;"http://www.freebase.com"&lt;/span&gt;;&lt;br /&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; queryurl = &lt;span class="str"&gt;"/api/service/mqlread"&lt;/span&gt;;&lt;br /&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; path = &lt;span class="str"&gt;"/api/account/login"&lt;/span&gt;;&lt;br /&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; username = &lt;span class="str"&gt;""&lt;/span&gt;;&lt;br /&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; password = &lt;span class="str"&gt;""&lt;/span&gt;;&lt;br /&gt;        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; CookieContainer authCookies = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Ask(&lt;span class="kwrd"&gt;string&lt;/span&gt; band)&lt;br /&gt;        {&lt;br /&gt;            &lt;span class="rem"&gt;// This is our MQL query &lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Find a band&lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// With the specified name&lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// We want to know about albums&lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Return album names&lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// And release dates&lt;/span&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Order by release date&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; query = &lt;span class="str"&gt;"{\"type\": \"/music/artist\",\"name\": \""&lt;/span&gt; + band + &lt;span class="str"&gt;"\",\"album\": [{\"name\":null,\"sort\": \"release_date\", \"release_date\":null}]}"&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; envelope = &lt;span class="str"&gt;"{\"a0\":{\"query\":"&lt;/span&gt;+query+&lt;span class="str"&gt;"}}"&lt;/span&gt;;&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; url = server + queryurl + &lt;span class="str"&gt;"?queries="&lt;/span&gt; + System.Web.HttpUtility.UrlDecode(envelope);&lt;br /&gt;&lt;br /&gt;            HttpWebRequest request = (HttpWebRequest)System.Net.WebRequest.Create(url);&lt;br /&gt;            request.Method = &lt;span class="str"&gt;"GET"&lt;/span&gt;;&lt;br /&gt;            request.ContentType = &lt;span class="str"&gt;"application/x-www-form-urlencoded"&lt;/span&gt;;&lt;br /&gt;            request.CookieContainer = authCookies;&lt;br /&gt;&lt;br /&gt;            HttpWebResponse response = (HttpWebResponse)request.GetResponse();&lt;br /&gt;            StreamReader reader = &lt;span class="kwrd"&gt;new&lt;/span&gt; StreamReader(response.GetResponseStream());&lt;br /&gt;&lt;br /&gt;            Console.WriteLine(reader.ReadToEnd());&lt;br /&gt;            reader.Close();&lt;br /&gt;            response.Close();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        &lt;span class="rem"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;&lt;br /&gt;        &lt;span class="rem"&gt;/// Authentication.&lt;/span&gt;&lt;br /&gt;        &lt;span class="rem"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Authenticate()&lt;br /&gt;        {&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; authURI = server + path;&lt;br /&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Create the web request body:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; body = &lt;span class="kwrd"&gt;string&lt;/span&gt;.Format(&lt;span class="str"&gt;"username={0}&amp;amp;password={1}"&lt;/span&gt;, username, password);&lt;br /&gt;            &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] bytes = Encoding.UTF8.GetBytes( body );&lt;br /&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Create the web request:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            HttpWebRequest request = (HttpWebRequest)System.Net.WebRequest.Create( authURI );&lt;br /&gt;            request.Method = &lt;span class="str"&gt;"POST"&lt;/span&gt;;&lt;br /&gt;            request.ContentType = &lt;span class="str"&gt;"application/x-www-form-urlencoded"&lt;/span&gt;;&lt;br /&gt;            request.CookieContainer = &lt;span class="kwrd"&gt;new&lt;/span&gt; CookieContainer();&lt;br /&gt;            request.ContentLength = bytes.Length;&lt;br /&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Create the web request content stream:&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;using&lt;/span&gt; ( Stream stream = request.GetRequestStream() )&lt;br /&gt;            {&lt;br /&gt;                stream.Write( bytes, 0, bytes.Length );&lt;br /&gt;                stream.Close();&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            &lt;span class="rem"&gt;// Get the response &amp;amp; store the authentication cookies:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;            HttpWebResponse response = (HttpWebResponse)request.GetResponse();&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; ( response.Cookies.Count &amp;lt; 2 )&lt;br /&gt;                &lt;span class="kwrd"&gt;throw&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; AuthenticationException( &lt;span class="str"&gt;"Login failed. Is the login / password correct?"&lt;/span&gt; );&lt;br /&gt;&lt;br /&gt;            authCookies = &lt;span class="kwrd"&gt;new&lt;/span&gt; CookieContainer();&lt;br /&gt;            &lt;span class="kwrd"&gt;foreach&lt;/span&gt; ( Cookie myCookie &lt;span class="kwrd"&gt;in&lt;/span&gt; response.Cookies )&lt;br /&gt;            {&lt;br /&gt;                authCookies.Add(myCookie);&lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;            response.Close();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;You can call it as so ... &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; FreebaseSample&lt;br /&gt;{&lt;br /&gt;    &lt;span class="kwrd"&gt;class&lt;/span&gt; Program&lt;br /&gt;    {&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Main(&lt;span class="kwrd"&gt;string&lt;/span&gt;[] args)&lt;br /&gt;        {&lt;br /&gt;            FreeFind f = &lt;span class="kwrd"&gt;new&lt;/span&gt; FreeFind();&lt;br /&gt;            f.Authenticate();&lt;br /&gt;            f.Ask(&lt;span class="str"&gt;"U2"&lt;/span&gt;);&lt;br /&gt;            Console.ReadKey();&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;strong&gt;You get something like the following JSON response ...&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: Consolas, "Courier New", Courier, Monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .alt&lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;pre class="csharpcode"&gt;{&lt;br /&gt;  &lt;span class="str"&gt;"status"&lt;/span&gt;: &lt;span class="str"&gt;"200 OK"&lt;/span&gt;,&lt;br /&gt;  &lt;span class="str"&gt;"a0"&lt;/span&gt;: {&lt;br /&gt;    &lt;span class="str"&gt;"code"&lt;/span&gt;: &lt;span class="str"&gt;"/api/status/ok"&lt;/span&gt;,&lt;br /&gt;    &lt;span class="str"&gt;"result"&lt;/span&gt;: {&lt;br /&gt;      &lt;span class="str"&gt;"album"&lt;/span&gt;: [&lt;br /&gt;        &lt;span class="str"&gt;"Three"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"Another Day"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"11 O'Clock Tick Tock"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"A Day Without Me"&lt;/span&gt;,&lt;br /&gt;    .&lt;br /&gt;    .&lt;br /&gt;    .&lt;br /&gt;        &lt;span class="str"&gt;"U2 Popmart - Miss Sarajevo (disc 2)"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"Unplugged"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"Zoo TV Tour (disc 2: Live Transmission)"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"Shaped"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"The Complete U2"&lt;/span&gt;,&lt;br /&gt;        &lt;span class="str"&gt;"Wide Awake in America"&lt;/span&gt;&lt;br /&gt;      ],&lt;br /&gt;      &lt;span class="str"&gt;"type"&lt;/span&gt;: &lt;span class="str"&gt;"/music/artist"&lt;/span&gt;,&lt;br /&gt;      &lt;span class="str"&gt;"name"&lt;/span&gt;: &lt;span class="str"&gt;"U2"&lt;/span&gt;&lt;br /&gt;    }&lt;br /&gt;  },&lt;br /&gt;  &lt;span class="str"&gt;"code"&lt;/span&gt;: &lt;span class="str"&gt;"/api/status/ok"&lt;/span&gt;&lt;br /&gt;}&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2932980032898131376?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2932980032898131376/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2932980032898131376' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2932980032898131376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2932980032898131376'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/08/reading-from-freebase-using-c.html' title='Reading from Freebase using C#'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7017767334206755204</id><published>2008-08-02T10:32:00.000-07:00</published><updated>2008-08-02T10:39:41.098-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>Large Hadron Collider Nightmare scenario</title><content type='html'>The &lt;a href="http://www.boston.com/bigpicture/2008/08/the_large_hadron_collider.html"&gt;pictures &lt;/a&gt;of the large hadron collider look amazing. Other than pulling us all into a black hole, surely scientists who wrote the software dread the following ....&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-family:courier new;"&gt;c:\&gt;run large hadron collider.exe&lt;br /&gt;&lt;br /&gt;Error at line 4. The 'Higgs Boson' is not a recognized particle. Please try again.&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7017767334206755204?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7017767334206755204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7017767334206755204' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7017767334206755204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7017767334206755204'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/08/large-hadron-collider-nightmare.html' title='Large Hadron Collider Nightmare scenario'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4451855754932552237</id><published>2008-07-18T06:45:00.000-07:00</published><updated>2008-07-18T06:48:10.219-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Wall-E</title><content type='html'>Son went to see Wall-E today. Complete waste of time ...&lt;br /&gt;&lt;br /&gt;All starts off very nice in a research lab, but soon Microsoft come in and buy him, henceforth known as Wall-XE to support their “A robot in every home” initiative (IBM missed out pronouncing that there will be “only need for one robot in the world”). Then a bunch of other folks create an Open Source version (Wall-FREE) but no-one is around to support it and there ends up 800 versions of it. Google released their own “Wall-G beta” funding it through its new advertising platform Robo-Words (which no-one ever reads of course and so goes down the pan… but despite being perpetually in beta it DOES read your Gmail and integrate with every appliance in your kitchen). It finishes by being released on Bit Torrent and now you just download and install the software to have your own.&lt;br /&gt;&lt;br /&gt;Sorry for spoiling it for everyone.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;* Please note i haven't seen it - my son is watching it right now... and it looks , really good!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4451855754932552237?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4451855754932552237/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4451855754932552237' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4451855754932552237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4451855754932552237'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/07/wall-e.html' title='Wall-E'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2183869402022000702</id><published>2008-06-27T13:10:00.000-07:00</published><updated>2008-06-27T13:26:08.823-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Powerset does, FAST is</title><content type='html'>I haven't used &lt;a href="http://www.powerset.com/"&gt;Powerset &lt;/a&gt;much. I &lt;em&gt;have&lt;/em&gt; used &lt;a href="http://www.fastsearch.com/"&gt;FAST &lt;/a&gt;a lot. I used their API fairly extensively. I could write a book about that (something i have considered - see my "&lt;a href="http://www.amazon.co.uk/s?ie=UTF8&amp;amp;search-type=ss&amp;amp;index=books-uk&amp;amp;field-author=Steven%20Livingstone&amp;amp;page=1"&gt;previous life&lt;/a&gt;"), but i won't go into all that just now.&lt;br /&gt;&lt;br /&gt;What i DID like when i used Powerset was the "factz" (in itself a slightly ironic spelling). You see FAST is all centred around Nouns - people, places, things, authors, books and so on. This works pretty good. (So for example) You search for Steven Livingtone and you get my books, my friends, my bookmarks, my relations and so on - nouns related to me - in facets.&lt;br /&gt;&lt;br /&gt;However, what i liked about Powerset what the fact the use verbs in the facts. So again i search for Steven Livingstone (someone has to) and i maybe get "writes", "likes", "bookmarks" and so on - well something to that effect.&lt;br /&gt;&lt;br /&gt;Unfortunately i'm not entirely sure how to get these factz appearing (you seem to need to do the search and then select something and even then it isn't always verbs), but i DO like the idea of making a search and combining the doing with the object.&lt;br /&gt;&lt;br /&gt;"Steven Livingstone writes MSXML" and so on. One part powerset, one part fast.&lt;br /&gt;&lt;br /&gt;I'm still looking into Powerset so things may become more obvious to me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2183869402022000702?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2183869402022000702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2183869402022000702' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2183869402022000702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2183869402022000702'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/powerset-does-fast-is.html' title='Powerset does, FAST is'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5772453674812554739</id><published>2008-06-27T06:21:00.000-07:00</published><updated>2008-06-27T06:25:45.846-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>haircut</title><content type='html'>Got my haircut - what's best?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-size:180%;"&gt;Livz in the past&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://farm4.static.flickr.com/3095/2615985798_27227c05ba_m.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand" alt="" src="http://farm4.static.flickr.com/3095/2615985798_27227c05ba_m.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;Livz in the present&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://farm4.static.flickr.com/3271/2615986498_315621d328_m.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand" alt="" src="http://farm4.static.flickr.com/3271/2615986498_315621d328_m.jpg" border="0" /&gt;&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/5901969713488428158-5772453674812554739?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5772453674812554739/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5772453674812554739' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5772453674812554739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5772453674812554739'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/haircut.html' title='haircut'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm4.static.flickr.com/3095/2615985798_27227c05ba_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-452928259193450879</id><published>2008-06-27T00:31:00.000-07:00</published><updated>2008-06-27T00:49:03.195-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>10 startups to watch</title><content type='html'>I read &lt;a href="http://www.technologyreview.com/Biztech/20923/page1/"&gt;the list &lt;/a&gt;over at Technology Review and here's my take:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;pinger.com&lt;/strong&gt;&lt;br /&gt;Nice idea - great idea in fact. Got an account but the software isn't available outside the US and Canada, but the number is (i would have thought it would have been the reverse!). As I am hopless at numbers and baring in mind when you are ON the mobile phone it's impossible to look up someone's number (you tried it?) - i am going to wait until i can use the software.&lt;br /&gt;&lt;br /&gt;I tried their Outlook add-in, but it never seemed to do anything. Needs work.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;qik.com&lt;/strong&gt;&lt;br /&gt;I just keep wandering why it took so long for Comvu to really push their offering.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ushahidi.com&lt;/strong&gt;&lt;br /&gt;Another good idea which could be a platform for hyperlocal citizens jourlalism anywhere. Probably needs branded a bit but should be interesting to follow.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;reQuall&lt;/strong&gt;&lt;br /&gt;Anything that helps me remember stuff is good - i like the idea but the interface was a little confusing and when i dialled the number it asked for for a pin- i gave it my mobile and added something but it then said "thanks for the comment for our support team". The UI was also a little confusing but will improve.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;33Across &lt;/strong&gt;&lt;br /&gt;Tells you who is influential in the world. No idea how good it is. No signup i could see or way of registering interest which was slighlty ironic given its remit.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Peer39&lt;/strong&gt;&lt;br /&gt;I love anything semantic (but i bet it becomes the most overused word after Web 2.0 soon!). Advertising sure needs to get smarter and take in context. I'm not an advertiser so not sure how useful it is, but their list of publications looks a good read!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.peer39.com/publications.html"&gt;http://www.peer39.com/publications.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Could be huge.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Mashery&lt;/strong&gt;&lt;br /&gt;Now this is interesting. It's not a million miles from something i am looking at just now (maybe a few thousand tho') and managed API's are important for enterprises. I'll be keeping my eye on these guys. Very interesting to see how mashups take a step inside the firewall!!&lt;br /&gt;&lt;br /&gt;Great list. The other companies looked great too, but these are the ones that i could play around with and are closer to what i do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-452928259193450879?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/452928259193450879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=452928259193450879' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/452928259193450879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/452928259193450879'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/10-startups-to-watch.html' title='10 startups to watch'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1192348549612664385</id><published>2008-06-25T11:57:00.001-07:00</published><updated>2008-06-25T11:57:14.618-07:00</updated><title type='text'>Live Poll - Will Germany or Turkey win?</title><content type='html'>Take a look at this: &lt;br /&gt;&lt;a href="http://sodahead.com/question/106797/"&gt;http://sodahead.com/question/106797/&lt;/a&gt;&lt;img style="visibility:hidden;width:0px;height:0px;" border=0 width=0 height=0 src="http://counters.gigya.com/wildfire/CIMP/bHQ9MTIxNDQyMDM1MTM1OSZwdD*xMjE*NDIwNDY5Njg3JnA9JmQ9Jm49YmxvZ2dlciZnPTE=.jpg" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1192348549612664385?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1192348549612664385/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1192348549612664385' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1192348549612664385'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1192348549612664385'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/live-poll-will-germany-or-turkey-win.html' title='Live Poll - Will Germany or Turkey win?'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5177079182599158118</id><published>2008-06-25T02:36:00.000-07:00</published><updated>2008-06-25T02:57:57.765-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>RESTful WCF Web Services</title><content type='html'>I spent some time looking at how you could remove the ".svc" from WCF web services and &lt;a href="http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=2004387&amp;amp;SiteID=1"&gt;looking at it last year&lt;/a&gt; i got quite close but just not close enough. Well, i'm back writing WCF services again to expose JSON for my REST API, and this time i was determined to spend time looking for a solution. I found some people who did a &lt;a href="http://www.topxml.com/rbnews/WSCF/WCF/re-61563_Using-WCF-WebHttpBinding-and-WebGet-with-nicer-Urls.aspx"&gt;lot&lt;/a&gt; of &lt;a href="http://blogs.microsoft.co.il/blogs/egady/archive/2008/06/09/rest-friendly-urls.aspx"&gt;great&lt;/a&gt; &lt;a href="http://www.pluralsight.com/blogs/fritz/archive/2008/02/01/50126.aspx"&gt;work&lt;/a&gt; but the solutions were all missing the extra i really needed. I needed an extensible method of re-writing any kind of URL.&lt;br /&gt;&lt;br /&gt;The solution was to combine the ideas &lt;a href="http://blogs.microsoft.co.il/blogs/egady/archive/2008/06/09/rest-friendly-urls.aspx"&gt;here&lt;/a&gt; and &lt;a href="http://www.codeproject.com/KB/aspnet/urlrewriter.aspx"&gt;here&lt;/a&gt; using a mixture of IHttpModule and regular expressions to provide a solution allowing any URL to be mapped in the configuration file. The code is below and is made up of RestModule.cs and some rules in the web.config.&lt;br /&gt;&lt;br /&gt;This code will actually work for any URL you wish to make RESTful but my target was WCF.&lt;br /&gt;&lt;br /&gt;RestModule.cs&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: Consolas, "Courier New", Courier, Monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Configuration;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Web;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Xml;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text.RegularExpressions;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Xml.Xsl;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; RestModule : IHttpModule&lt;br /&gt;{&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Dispose()&lt;br /&gt;    { }&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Init(HttpApplication app)&lt;br /&gt;    {&lt;br /&gt;        app.BeginRequest += &lt;span class="kwrd"&gt;delegate&lt;/span&gt;&lt;br /&gt;        {&lt;br /&gt;            HttpContext ctx = HttpContext.Current;&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; path = ctx.Request.AppRelativeCurrentExecutionFilePath;&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (ctx.Request.Url.Query.Length &amp;gt; 0) path = path + ctx.Request.Url.Query;&lt;br /&gt;            &lt;span class="kwrd"&gt;string&lt;/span&gt; zSubst = ReWriter.Process(path);&lt;br /&gt;&lt;br /&gt;            &lt;span class="rem"&gt;//did we have a new path match?&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (!zSubst.Equals(path))&lt;br /&gt;            {&lt;br /&gt;                &lt;span class="kwrd"&gt;int&lt;/span&gt; i = zSubst.IndexOf(&lt;span class="str"&gt;'/'&lt;/span&gt;, 2);&lt;br /&gt;                &lt;span class="kwrd"&gt;if&lt;/span&gt; (i &amp;gt; 0)&lt;br /&gt;                {&lt;br /&gt;                    &lt;span class="kwrd"&gt;string&lt;/span&gt; svc = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;                    &lt;span class="kwrd"&gt;string&lt;/span&gt; rest = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;                    &lt;span class="kwrd"&gt;string&lt;/span&gt; qs = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;                    svc = zSubst.Substring(0, i);&lt;br /&gt;                    rest = zSubst.IndexOf(&lt;span class="str"&gt;'?'&lt;/span&gt;) &amp;gt; -1 ? zSubst.Substring(i, zSubst.Length - i).Split(&lt;span class="str"&gt;'?'&lt;/span&gt;)[0] : zSubst.Substring(i, zSubst.Length - i);&lt;br /&gt;                    qs = zSubst.IndexOf(&lt;span class="str"&gt;'?'&lt;/span&gt;) &amp;gt; -1 ? zSubst.Split(&lt;span class="str"&gt;'?'&lt;/span&gt;)[1] : &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;                    ctx.RewritePath(svc, rest, qs, &lt;span class="kwrd"&gt;false&lt;/span&gt;);&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        };&lt;br /&gt;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ReWriter : IConfigurationSectionHandler&lt;br /&gt;{&lt;br /&gt;    &lt;span class="kwrd"&gt;protected&lt;/span&gt; XmlNode _oRules = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; GetSubstitution(&lt;span class="kwrd"&gt;string&lt;/span&gt; zPath)&lt;br /&gt;    {&lt;br /&gt;        Regex oReg;&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;foreach&lt;/span&gt; (XmlNode oNode &lt;span class="kwrd"&gt;in&lt;/span&gt; _oRules.SelectNodes(&lt;span class="str"&gt;"rule"&lt;/span&gt;))&lt;br /&gt;        {&lt;br /&gt;            oReg = &lt;span class="kwrd"&gt;new&lt;/span&gt; Regex(oNode.SelectSingleNode(&lt;span class="str"&gt;"url/text()"&lt;/span&gt;).Value, RegexOptions.IgnoreCase);&lt;br /&gt;            Match oMatch = oReg.Match(zPath);&lt;br /&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;if&lt;/span&gt; (oMatch.Success)&lt;br /&gt;            {&lt;br /&gt;                &lt;span class="kwrd"&gt;return&lt;/span&gt; oReg.Replace(zPath, oNode.SelectSingleNode(&lt;span class="str"&gt;"rewrite/text()"&lt;/span&gt;).Value);&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; zPath;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; Process(&lt;span class="kwrd"&gt;string&lt;/span&gt; requestpath)&lt;br /&gt;    {&lt;br /&gt;        ReWriter oRewriter = (ReWriter)System.Configuration.ConfigurationManager.GetSection(&lt;span class="str"&gt;"system.web/urlrewrites"&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; oRewriter.GetSubstitution(requestpath);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span class="preproc"&gt;#region&lt;/span&gt; Implementation of IConfigurationSectionHandler&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;object&lt;/span&gt; Create(&lt;span class="kwrd"&gt;object&lt;/span&gt; parent, &lt;span class="kwrd"&gt;object&lt;/span&gt; configContext, XmlNode section)&lt;br /&gt;    {&lt;br /&gt;        _oRules = section;&lt;br /&gt;&lt;br /&gt;        &lt;span class="rem"&gt;// TODO: Compile all Regular Expressions&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; &lt;span class="kwrd"&gt;this&lt;/span&gt;;&lt;br /&gt;    }&lt;br /&gt;    &lt;span class="preproc"&gt;#endregion&lt;/span&gt;&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Add a new section group to your web.config ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: Consolas, "Courier New", Courier, Monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;sectionGroup&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="system.web"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;   &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;section&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="urlrewrites"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="ReWriter"&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;sectionGroup&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Finally add some rules in the web.config in the system.web section ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: Consolas, "Courier New", Courier, Monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;urlrewrites&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;rule&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;url&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;/MapService/GetLocation\?(.*)&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;url&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;rewrite&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;/MapService.svc/GetLocation?$1&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;rewrite&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;rule&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;rule&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;url&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;/MapService/GetLocation/(.*)&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;url&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;rewrite&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;/MapService.svc/GetLocation?target={"Name":"$1"}&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;rewrite&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;            &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;rule&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;urlrewrites&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now you can have ...&lt;br /&gt;&lt;br /&gt;http://site.com/WebSite/MapService/GetLocation?target={"Name":"Starbucks%20Manhattan"}&lt;br /&gt;&lt;br /&gt;or ....&lt;br /&gt;&lt;br /&gt;http://site.com/WebSite/MapService/GetLocation/Starbucks%20Manhattan&lt;br /&gt;&lt;br /&gt;Neat heh?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5177079182599158118?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5177079182599158118/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5177079182599158118' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5177079182599158118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5177079182599158118'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/restful-wcf-web-services.html' title='RESTful WCF Web Services'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2980087598458441184</id><published>2008-06-18T01:41:00.001-07:00</published><updated>2008-06-18T01:41:04.594-07:00</updated><title type='text'>Vint Cerf @ Sharkfest 2008</title><content type='html'>&lt;object width='520' height='276'&gt;&lt;param name='movie' value='http://omnisio.com/bin/Embed.swf?embedID=aF7TQoprir3ynvadbiFy2w&amp;autoPlay=0' /&gt;&lt;param name='bgcolor' value='#FFFFFF' /&gt;&lt;param name='quality' value='high' /&gt;&lt;param name='allowscriptaccess' value='always' /&gt;&lt;param name='allowfullscreen' value='true' /&gt;&lt;embed type='application/x-shockwave-flash' name='omnisio_video_aF7TQoprir3ynvadbiFy2w' src='http://omnisio.com/bin/Embed.swf?embedID=aF7TQoprir3ynvadbiFy2w&amp;autoPlay=0' bgcolor='#FFFFFF' quality='high' allowfullscreen='true' allowscriptaccess='always' width='520' height='276' &gt;&lt;noembed&gt;&lt;div&gt;&lt;a href='http://www.omnisio.com'&gt;Share and annotate your videos&lt;/a&gt; with Omnisio!&lt;/div&gt;&lt;/noembed&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br&gt;&lt;a border=0 href="http://www.gigyamailbutton.com/wildfire/gigyamailbutton.ashx?url=aHR*cDovL3d3dy5naWd5YS5jb2*vd2lsZGZpcmUvd2Zwb3AuYXNweD9tb2R1bGU9ZW1haWwmdXJsPWh*dHAlM*ElMkYlMkZvbW5pc2lvJTJFY29tJTJGdiUyRkFtYzhyVlhkamhHJTJGdmludCUyRGNlcmYlMkQlMkRzaGFya2Zlc3QlMkQyMDA4" target="_blank"&gt;&lt;img src="http://cdn.gigya.com/wildfire/i/includeShareButton.gif" border="0" width="60" height="20" /&gt;&lt;/a&gt;&lt;img style="visibility:hidden;width:0px;height:0px;" border=0 width=0 height=0 src="http://counters.gigya.com/wildfire/CIMP/bHQ9MTIxMzc3ODUzMTE*MCZwdD*xMjEzNzc4Njk1MjM*JnA9MTkzNTAxJmQ9Jm49YmxvZ2dlciZnPTE=.jpg" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2980087598458441184?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2980087598458441184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2980087598458441184' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2980087598458441184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2980087598458441184'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/vint-cerf-sharkfest-2008.html' title='Vint Cerf @ Sharkfest 2008'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4620950974135607256</id><published>2008-06-17T04:21:00.000-07:00</published><updated>2008-06-17T04:24:34.168-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>social web, without the kids</title><content type='html'>I listened to an interesting question at &lt;a href="http://www.supernova2008.com/"&gt;SuperNova&lt;/a&gt; that was put to &lt;a href="http://www.shirky.com/"&gt;Clay Shirky &lt;/a&gt;around the SPAM issues around Web 2.0.&lt;br /&gt;&lt;br /&gt;He answer was based around reactive solutions managed by the crowd. That is YOU don't manage the comments etc but rather the members of that community do this for you. Which works great in the adult world (most of the time).&lt;br /&gt;&lt;br /&gt;I DO have issues around this - more and more i am beginning NOT to trust the crowd. No necessarily the people i know, but rather the way that companies tend to promote media created by the crowd.&lt;br /&gt;&lt;br /&gt;YouTube for example will show many videos that just should NOT be seen by kids (and some of them by adults!) by default until someone flags this. A recent experience taught me this. So, someone - or likely a number of people - need to flag a video before it is removed ... which is just too late when all you wanted to do was show your kid a "Puff the Magic Dragon" video.&lt;br /&gt;&lt;br /&gt;How could this work better? Well, for a start ONLY show videos recommened by specific friends - all others are not seen by default. Links from videos work in a similar manner. Same with comments.&lt;br /&gt;&lt;br /&gt;This stuff isn't hard and with OpenSocial i'd expect youtube to be making this higher priority than allowing MORE comments on videos.&lt;br /&gt;&lt;br /&gt;It concerns me that the younger generation are being ignored in the social web and i'd like to see a hell of a lot more effort put into it than PICS which the social web seems to completely ignore.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4620950974135607256?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4620950974135607256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4620950974135607256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4620950974135607256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4620950974135607256'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/06/social-web-without-kids.html' title='social web, without the kids'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6610274056047709484</id><published>2008-05-31T10:20:00.001-07:00</published><updated>2008-05-31T10:20:49.774-07:00</updated><title type='text'>Balancing act</title><content type='html'>&lt;a href="http://www.flickr.com/photos/tesarac/2538469331/" title="photo sharing"&gt;&lt;img src="http://farm3.static.flickr.com/2027/2538469331_b59e3ebf16_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/tesarac/2538469331/"&gt;Balancing act&lt;/a&gt; &lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/tesarac/"&gt;weblivz&lt;/a&gt;&lt;/span&gt;&lt;br clear="all" /&gt;&lt;p&gt;Xavier and Francisca practicing for a future life in the circus !&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6610274056047709484?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6610274056047709484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6610274056047709484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6610274056047709484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6610274056047709484'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/balancing-act.html' title='Balancing act'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2027/2538469331_b59e3ebf16_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6884443209097347580</id><published>2008-05-28T08:49:00.000-07:00</published><updated>2008-05-28T09:05:21.967-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Fingers in many API's</title><content type='html'>Firstly, I love API's. When you don't have an API on the web you lock much of the data users may wish to move around and share.&lt;br /&gt;&lt;br /&gt;I have previously documented my concerns with the API/Data issues when all this data is stored (ala Google maps, facebook etc) in write-only API's and getting it back has a whole bunch of legal  (often non-commercial) issues associated with it.... even tho it's YOUR data.&lt;br /&gt;&lt;br /&gt;However, let's move away from the legal stuff for a few minutes. There is some concern at the Yahoo Maps API may have changed somewhat &lt;a href="http://snipurl.com/2b2q4"&gt;http://snipurl.com/2b2q4&lt;/a&gt; and more than a few users are suddenly experiencing issues with it and don't really know where to go next.&lt;br /&gt;&lt;br /&gt;THIS is where i really DO see issues with API's on the web. You write a nice map annotation system, store all the data but suddenly the mapping API you are basing this content on breaks... and with it your business is screwed. This is of course not only an issue in mapping - it extends to any business using a 3rd party API as a core part of its application.&lt;br /&gt;&lt;br /&gt;I had &lt;a href="http://www.scripting.com/stories/2008/05/26/howToDoDataPortability.html?disqus_reply=530694#comment-530694"&gt;commented&lt;/a&gt; on a &lt;a href="http://www.scripting.com/stories/2008/05/26/howToDoDataPortability.html"&gt;post &lt;/a&gt;by Dave Winer on data portability that ...&lt;br /&gt;&lt;blockquote&gt;&lt;em&gt;You DO need API's but they need to be balanced in a distributed sense so&lt;br /&gt;you can get to your data through a common API no matter where it is. Sure,&lt;br /&gt;Amazon is a solution, but in a pure web sense it would be nice if your data were&lt;br /&gt;encrypted and stored in a quasi distributed fashion with storage servers YOU&lt;br /&gt;decide to trust. Complex, but i don't want one person owning all my data.&lt;br /&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br /&gt;In other words, i don't mind the API's as they let me get to the data... my issue is that i believe the data itself should be separate from the API's and the data should be distributed. Sure, it's a nirvana, but i'd like services to be the cool stuff that makes you use a product and not the data it holds. So if two mapping services agree on a baseline common annotation API, then i can easily switch between them if required - both of them sharing data but perhaps doing slightly different things with it.&lt;br /&gt;&lt;br /&gt;Amazon has great web service storage services, but the first thing i did was wrote my own API that translates my requests to Amazon requests. It means in a second i can change the storage server i am using. Data replication is trickier but achievable.&lt;br /&gt;&lt;br /&gt;We are trying out some ideas at &lt;a href="http://openid.org/"&gt;http://openid.org&lt;/a&gt; - in the lab at the moment but we'll see how things progress, but i will be exploring how to provide an API that allows users to move the data they have anywhere they wish, even FOAF files are a nice start!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6884443209097347580?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6884443209097347580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6884443209097347580' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6884443209097347580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6884443209097347580'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/fingers-in-many-apis.html' title='Fingers in many API&apos;s'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7304230895458781140</id><published>2008-05-26T08:22:00.000-07:00</published><updated>2008-05-26T08:35:48.269-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Customer Support - they have it wrong</title><content type='html'>I've recently signed up for &lt;a href="http://pipex.co.uk/"&gt;Pipex &lt;/a&gt;Broadband, a service i have been using for some years (but had to changed because i moved house). It requires BT to do some work on their end and the waiting is now at 7 days (it was typically two before).&lt;br /&gt;&lt;br /&gt;So i email customer support from the email account i used in the first place and get the reply:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;In accordance with data protection laws, so that we can access your Pipex&lt;br /&gt;account and advise you on your query, please forward the following information:&lt;br /&gt;&lt;br /&gt;- Your Full name&lt;br /&gt;- Your Pipex account number&lt;br /&gt;- Your date of birth&lt;br /&gt;- Two digits from your customer care password (If applicable)&lt;br /&gt;- Your Pipex phone number&lt;br /&gt;- Your address and postcode&lt;br /&gt;- Your bank name&lt;br /&gt;&lt;/blockquote&gt;So i replied saying that with this information i a plain text email it could easily be intercepted and if so, all of the above information would be enough for someone to perform fraudlent activities as me! In short, this is insane - and BT had asked me for the same information - and others too. All this despite the fact i'm not asking THEM to send me any sensitive information (other than the status of my order).&lt;br /&gt;&lt;br /&gt;They replied, again asking me for this data to "access" the account (which we all know is bullshit).&lt;br /&gt;&lt;br /&gt;This is seriously wrong. There are two ways to fix this.&lt;br /&gt;&lt;br /&gt;1. If you send from the email you originally signed up with, providing the correct reference number then you should get a response (assuming you aren't asking for anything too sensitive).&lt;br /&gt;&lt;br /&gt;2. A private, encrypted area where you can review and send messages to the support team. Surely this is an obvoius solution to the place text email issues we have.&lt;br /&gt;&lt;br /&gt;In short, you can't say that for data protection issues please send (in plain text) all the data you are trying to protect!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7304230895458781140?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7304230895458781140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7304230895458781140' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7304230895458781140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7304230895458781140'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/customer-support-they-have-it-wrong.html' title='Customer Support - they have it wrong'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1559694041663117021</id><published>2008-05-20T14:56:00.000-07:00</published><updated>2008-11-18T13:38:12.223-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Tommy Burns - Rest in Peace</title><content type='html'>Today myself and the family went early to Celtic Park to pay our respects and say goodbye to Tommy Burns - one of the most commited Celtic players of my lifetime.&lt;br /&gt;&lt;br /&gt;I used to watch him with my Grandad on the terracing of Parkhead - Paddie Bonner, Tommy Burns, Roy Aitken, Danny McGrain (who we met at Celtic Park on Sunday) and more - Tommy Burns being particularly memorable for me as he presented me with my first football medals as a 10 year old boy. Even then the thing that stood out (other than his head of hair!) was how pleasant and unrushed he was, despite the demand of his time.&lt;br /&gt;&lt;br /&gt;I was particularly proud of my son Xavier who, as when we did the same with Jimmy Johnstone, asked loads of questions and even held his scarf aloft for You'll Never Walk Alone. I was the same when i watched Tommy as a player.&lt;br /&gt;&lt;br /&gt;It was also poignant for me as from where i stood i could see Tommy on the big screens in the stadium. I don't mind saying I shed a tear for the great man. It's sad but i know he is up there watching and still nervous about Thursday.&lt;br /&gt;&lt;br /&gt;When all is said and done, i can be very proud that i have the chance to meet and chat with a true Celtic legend. It's amazing how big you realize the club is when something like this happens - people are part of the club not only when alive, but for a hell of a long time after they have gone ... you realize this when on the tour.&lt;br /&gt;&lt;br /&gt;Tommy will now be another of those. If you know your history.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Twists and Turns, Tommy Burns - gone but never forgotten.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_22N_0ypJG6E/SDNPWvN3nrI/AAAAAAAAAGs/Wy6wh08xUpU/s1600-h/3.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202589246593408690" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_22N_0ypJG6E/SDNPWvN3nrI/AAAAAAAAAGs/Wy6wh08xUpU/s400/3.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SDNPW_N3nsI/AAAAAAAAAG0/cjzmtnmzQ1M/s1600-h/4.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202589250888376002" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SDNPW_N3nsI/AAAAAAAAAG0/cjzmtnmzQ1M/s400/4.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_22N_0ypJG6E/SDNPW_N3ntI/AAAAAAAAAG8/TTSdyIFMc1E/s1600-h/5.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202589250888376018" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_22N_0ypJG6E/SDNPW_N3ntI/AAAAAAAAAG8/TTSdyIFMc1E/s400/5.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_22N_0ypJG6E/SDNPXPN3nuI/AAAAAAAAAHE/WDLG4AIJBYM/s1600-h/6.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202589255183343330" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_22N_0ypJG6E/SDNPXPN3nuI/AAAAAAAAAHE/WDLG4AIJBYM/s400/6.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_22N_0ypJG6E/SDNPXPN3nvI/AAAAAAAAAHM/zKc14db6Nok/s1600-h/8.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202589255183343346" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_22N_0ypJG6E/SDNPXPN3nvI/AAAAAAAAAHM/zKc14db6Nok/s400/8.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_22N_0ypJG6E/SDNPCvN3nqI/AAAAAAAAAGk/0pAAW56Kq3I/s1600-h/2.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202588902996024994" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_22N_0ypJG6E/SDNPCvN3nqI/AAAAAAAAAGk/0pAAW56Kq3I/s400/2.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_22N_0ypJG6E/SDNOzPN3npI/AAAAAAAAAGc/BXDZ0zMW0nk/s1600-h/1.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5202588636708052626" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_22N_0ypJG6E/SDNOzPN3npI/AAAAAAAAAGc/BXDZ0zMW0nk/s400/1.JPG" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1559694041663117021?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1559694041663117021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1559694041663117021' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1559694041663117021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1559694041663117021'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/tommy-burns-rest-in-peace.html' title='Tommy Burns - Rest in Peace'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_22N_0ypJG6E/SDNPWvN3nrI/AAAAAAAAAGs/Wy6wh08xUpU/s72-c/3.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6754700498764047771</id><published>2008-05-16T13:10:00.000-07:00</published><updated>2008-05-16T13:18:44.327-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>OpenID</title><content type='html'>So i now have 15000+ people registered at &lt;a href="http://openid.org/"&gt;http://openid.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;We are having some issues with a few sites but most are working great.&lt;br /&gt;&lt;br /&gt;I put the source to the portal over at &lt;a href="http://code.google.com/p/dotnetopenidprovider/"&gt;http://code.google.com/p/dotnetopenidprovider/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is based on the excellent OpenID library at &lt;a href="http://code.google.com/p/dotnetopenid/"&gt;http://code.google.com/p/dotnetopenid/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I'll be updating the provider in the coming weeks, so please download, contribute and if you speak another lanugage, you can help out there too!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6754700498764047771?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6754700498764047771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6754700498764047771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6754700498764047771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6754700498764047771'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/openid.html' title='OpenID'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-782780433815461965</id><published>2008-05-11T04:33:00.001-07:00</published><updated>2008-05-11T04:38:24.291-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Oh, What a night</title><content type='html'>Last night myself and my wife Loreto went to see &lt;a href="http://www.ohwhatanight.com/"&gt;Oh What a Night&lt;/a&gt;, a musical production starring &lt;a href="http://www.kidcreole.com/"&gt;Kid Creole&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Fantastic night, some excellent music and afterwards we went for a drink and the crew happened to be at the other table across from us too.&lt;br /&gt;&lt;br /&gt;It's a different way of life (my cousin in Ireland works for an Irish band and tours constantly so i know what it is like), but it must be amazing to see 400 people going crazy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-782780433815461965?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/782780433815461965/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=782780433815461965' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/782780433815461965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/782780433815461965'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/oh-what-night.html' title='Oh, What a night'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-685247554168450873</id><published>2008-05-11T04:26:00.000-07:00</published><updated>2008-05-11T04:32:10.718-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Comback Trail</title><content type='html'>Not posted for quite  a while for fairly good reasons. Took a bizarre reaction to some antibiotics - long story i won't go in to. It's being looked into anyway - i may post more... very frustrating period.&lt;br /&gt;&lt;br /&gt;Still, been working for NHS developing and architecting their FAST search environment. Very powerful technology. More on that soon too.&lt;br /&gt;&lt;br /&gt;Good to be back!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-685247554168450873?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/685247554168450873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=685247554168450873' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/685247554168450873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/685247554168450873'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2008/05/comback-trail.html' title='Comback Trail'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-183252712033030388</id><published>2007-12-12T00:03:00.000-08:00</published><updated>2007-12-12T00:11:14.231-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Interop with Membership Provider</title><content type='html'>I have a situation where I have been using the Membership provider and wish to migrate to a custom format for the re-work i am doing on OpenID. There is no great reason for not using their structure other than it has a bunch of stuff I really don't need nor will be implementing.&lt;br /&gt;&lt;br /&gt;My issue was that the user passwords are SHA-1 hashed and i wanted to simply migrate that data and provide the same implementation so that I don't have hassles checking password or creating new password.&lt;br /&gt;&lt;br /&gt;The code below will do that (except for encrypted passwords).&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Text;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Security.Cryptography;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;enum&lt;/span&gt; PasswordFormats&lt;br /&gt;{&lt;br /&gt;    Clear,&lt;br /&gt;    Hashed&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; MembershipManager&lt;br /&gt;{&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; IsMatch(&lt;span class="kwrd"&gt;string&lt;/span&gt; pass, &lt;span class="kwrd"&gt;string&lt;/span&gt; salt, &lt;span class="kwrd"&gt;string&lt;/span&gt; encodedPassword)&lt;br /&gt;    {&lt;br /&gt;        &lt;span class="kwrd"&gt;string&lt;/span&gt; newencoded = EncodePassword(pass, salt);&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; newencoded.Equals(encodedPassword);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; EncodePassword(&lt;span class="kwrd"&gt;string&lt;/span&gt; pass, &lt;span class="kwrd"&gt;string&lt;/span&gt; salt)&lt;br /&gt;    {&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; EncodePassword(pass, PasswordFormats.Hashed ,salt);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; EncodePassword(&lt;span class="kwrd"&gt;string&lt;/span&gt; pass, PasswordFormats format, &lt;span class="kwrd"&gt;string&lt;/span&gt; salt)&lt;br /&gt;    {&lt;br /&gt;        &lt;span class="kwrd"&gt;if&lt;/span&gt; (format == PasswordFormats.Clear)&lt;br /&gt;            &lt;span class="kwrd"&gt;return&lt;/span&gt; pass;&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] bIn = Encoding.Unicode.GetBytes(pass);&lt;br /&gt;        &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] bSalt = Convert.FromBase64String(salt);&lt;br /&gt;        &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] bAll = &lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;byte&lt;/span&gt;[bSalt.Length + bIn.Length];&lt;br /&gt;        &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] bRet = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;        Buffer.BlockCopy(bSalt, 0, bAll, 0, bSalt.Length);&lt;br /&gt;        Buffer.BlockCopy(bIn, 0, bAll, bSalt.Length, bIn.Length);&lt;br /&gt;        HashAlgorithm s = HashAlgorithm.Create(&lt;span class="str"&gt;"SHA1"&lt;/span&gt;);&lt;br /&gt;        bRet = s.ComputeHash(bAll);&lt;br /&gt;&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; Convert.ToBase64String(bRet);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;string&lt;/span&gt; GenerateSalt()&lt;br /&gt;    {&lt;br /&gt;        &lt;span class="kwrd"&gt;byte&lt;/span&gt;[] buf = &lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;byte&lt;/span&gt;[16];&lt;br /&gt;        (&lt;span class="kwrd"&gt;new&lt;/span&gt; RNGCryptoServiceProvider()).GetBytes(buf);&lt;br /&gt;        &lt;span class="kwrd"&gt;return&lt;/span&gt; Convert.ToBase64String(buf);&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-183252712033030388?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/183252712033030388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=183252712033030388' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/183252712033030388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/183252712033030388'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/12/interop-with-membership-provider.html' title='Interop with Membership Provider'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6540981611099814645</id><published>2007-12-11T01:03:00.000-08:00</published><updated>2007-12-11T01:11:14.520-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>The dead web - Google + Archive.org?</title><content type='html'>I have put this into this new blog from&lt;a href="http://stevenr2.blogspot.com/2006/04/dead-web-google-archiveorg.html"&gt; my old one &lt;/a&gt;where i originally posted this (actually that was also a re-hash of the same idea i wrote back in 2002, so been on my mind for a while!) a while back due to &lt;a href="http://www.scripting.com/stories/2007/12/10/futuresafeArchives.html"&gt;Dave Winer's recent post&lt;/a&gt;. He is spot on!&lt;br /&gt;&lt;br /&gt;====&lt;br /&gt;&lt;br /&gt;This was something i posted on an old blog some years back, but recent discussions have made me re-post just in case there is some new opinion!&lt;br /&gt;&lt;br /&gt;Over the last 2 months I have been conducting research almost exclusively on the web.&lt;br /&gt;What has really became obvious to me is the amout of dead material out there.&lt;br /&gt;&lt;br /&gt;From web pages, that contain out of date information, to whole sites that stopped running years ago with no indication, to projects that seem to have been in flux for years, businesses that stopped trading years back and left their site on and even stuff written by people whom i'm almost read to email, only to find the passed away a couple of years back.&lt;br /&gt;&lt;br /&gt;So is a new web needed to get us out of this? Can we see Google work with Archive.org and create a diary of the web? A time-aware searcheable web which allows some kind of time scale on the information out there, without requiring everyone to annotate their documents! Could i say "Only search content added/updated in the last year" ?&lt;br /&gt;&lt;br /&gt;I hope so, because frankly it's getting ridiculous. 10 years ago i did some research on solitons for a Physics paper i wrote. Today some of that material returns seelingly as relevant as ever despite things continuing to evolve over the last decade. My File Exists article on 15 seconds at http://www.15seconds.com/issue/990401.htm is now over 5 years old, but still comes 8th in Google when i type "FileExists".&lt;br /&gt;&lt;br /&gt;I don't know how many replies i have had indicating some academic moved on 3 years ago, or some project research was finished, or even links to other sites that closed their doors, re-organized or just changed their content to make it completely useless.&lt;br /&gt;&lt;br /&gt;Could a hyped up archive.org challenge something like Google? I think so. Could we "Diff The Web" to make the content more relevant - noting that getting dublin core on everything is highly unlikely.&lt;br /&gt;&lt;br /&gt;Anyone got answers?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6540981611099814645?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6540981611099814645/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6540981611099814645' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6540981611099814645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6540981611099814645'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/12/dead-web-google-archiveorg.html' title='The dead web - Google + Archive.org?'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-751686962521234501</id><published>2007-12-08T03:46:00.000-08:00</published><updated>2007-12-08T03:49:26.016-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Feelz - search with context</title><content type='html'>Today sees the launch of an experimental idea i've created called &lt;a href="http://feelz.org/"&gt;Feelz&lt;/a&gt; at &lt;a href="http://feelz.org/"&gt;http://feelz.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The idea is to allow you to label things on the web with emotions, audience, characteristics and so on - things that aren't easily understood by computers. It will be particularly useful for audio, video and products but through concepts such as "audience", can easily extend to the web in general.&lt;br /&gt;&lt;br /&gt;I'm really interested in feedback about this and what direction you think it should or should not take.&lt;br /&gt;&lt;br /&gt;You can find the blog at &lt;a href="http://feelz.wordpress.com/"&gt;http://feelz.wordpress.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-751686962521234501?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/751686962521234501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=751686962521234501' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/751686962521234501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/751686962521234501'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/12/feelz-search-with-context.html' title='Feelz - search with context'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6699169158527904601</id><published>2007-12-04T09:35:00.000-08:00</published><updated>2007-12-04T09:44:09.966-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>Le Web and Techcrunch - 1 in 53</title><content type='html'>At least check, there were &lt;a href="http://www.techcrunch.com/2007/12/04/countdown-to-le-web-two-more-free-tickets/#comment-1808730"&gt;53 competing posts &lt;/a&gt;on the competition to win a ticket to &lt;a href="http://www.blogger.com/www.leweb3.com"&gt;Le Web&lt;/a&gt; next week. I am one of them.&lt;br /&gt;&lt;br /&gt;So, to build my confidence i'd figure out what else has a 1 in 53 chance? ....&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.cepr.net/content/view/779/77/"&gt;"The current probability of a pro-union worker being fired"&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.patentstorm.us/patents/6889981-description.html"&gt;"there is a 1 in 53 chance of a Joker being dealt on the initial deal each game [of Jokers Wild]"&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blackvoicenews.com/content/view/35068/14/"&gt;"[a black boy has] a 1 in 53 chance of becoming a teacher"&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://scaredmonkeys.net/index.php?topic=2053.660"&gt;"... each [space] shuttle mission has a 1 in 53 chance of not making it back"&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ah crap, it just went to 54 comments :(&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6699169158527904601?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6699169158527904601/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6699169158527904601' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6699169158527904601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6699169158527904601'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/12/le-web-and-techcrunch-1-in-53.html' title='Le Web and Techcrunch - 1 in 53'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3042738562661093876</id><published>2007-12-03T06:08:00.000-08:00</published><updated>2007-12-03T06:31:47.738-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>How far does collaboration stretch?</title><content type='html'>A few years back I worked at a large government enterprise that attempted to implement a knowledge system that expected users to enter titles, descriptions, hierarchical categories, privacy and so on ...&lt;br /&gt;&lt;br /&gt;.. it didn't work very well. The argument i heard was that too much was expected of the users who had to enter all this data - they had too many other things to do.&lt;br /&gt;&lt;br /&gt;And THEN (roughly speaking) we moved into tagging (delicious kicking this off) and so on - really the first phase of proper online collaboration. This became popular with Tag Clouds (all Scottish ones had rain as a background of course) and so on being implemented by every single web page on the planet.&lt;br /&gt;&lt;br /&gt;Of course the last 2 years or so has seen a movement beyond this to real social collaboration - much of it to this point about ourselves (save specifics such as blogging and wikipedia which is a very small proportion of the online community). The interesting thing (and i have noticed this mainly through non-tech family and friends) is that everyone is using linked-in, geni, facebook and so on. And they all required a LOT of work.&lt;br /&gt;&lt;br /&gt;Furthermore, sites such as Digg etc are very easy for users to make a statement - pretty much a click and Google seem to be looking at adding similar features.&lt;br /&gt;&lt;br /&gt;Here is my question though. How far will this go? We see Mahalo looking at something akin to where Yahoo started out many years ago - human managed information... although now there was is a much longer tail in content and so you needed a LOT of editors - something that is definitely getting easier!&lt;br /&gt;&lt;br /&gt;There is also Freebase and Google base to name but a few. These all expect a lot more from the users than anything before - well at least in 7 years.&lt;br /&gt;&lt;br /&gt;Will this fail again or are we just at the right time for this kind of user involvement to work? Yes I know the stats about we only need X users out of everyone to contribute, but the more content that is added, the more the authors and those with a vested social interest have seemed to become involved.&lt;br /&gt;&lt;br /&gt;There was ALWAYS the issues of creating structures to hold metadata (such as Dublin Core and RDF) but so long as this stuff is abstracted in a nice UI, do we think it can now work in a distributed social environment? In other words, people seem to now be working harder (i.e. actually adding this metadata which in the past was always empty... ask anyone who ever maintained a database of it!) - is this a long term thing or are we just in a social high?&lt;br /&gt;&lt;br /&gt;Will this extend to micro-content and the enterprise?&lt;br /&gt;&lt;br /&gt;I do have a vested interest as i'm working on an experimental idea i wish to release in the next few days, so please post comments as they will be very useful!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3042738562661093876?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3042738562661093876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3042738562661093876' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3042738562661093876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3042738562661093876'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/12/how-far-does-collaboration-stretch.html' title='How far does collaboration stretch?'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8845496104288205081</id><published>2007-12-01T13:26:00.000-08:00</published><updated>2007-12-01T13:38:56.386-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>OAuth for API Authentication</title><content type='html'>I've defined a number of API's in my time and always seem to resort to a different kind of authentication mechanism and my latest API was likely to be no different. I looked at Flickr, Google and Amazon API's and how they did authentication and they all uses customer MD5 and/or HMAC-SHA-1 hashing with a private key with different parts of the query being hashed.&lt;br /&gt;&lt;br /&gt;I thought, there should be a standards around this ... i had looked at &lt;a href="http://oauth.net/"&gt;OAuth &lt;/a&gt;but from an API veiwpoint never really made the connection. Until today! I am looking at a &lt;a href="http://oauth.googlecode.com/svn/code/csharp/OAuthBase.cs"&gt;C# implementation&lt;/a&gt; by &lt;a href="http://www.hueniverse.com/about.html"&gt;Eran Hammer&lt;/a&gt; and i see there is some work on it, but I need to do some more research to find out what i need to provide on top of this to actually implement it (i.e. client and server requirements).&lt;br /&gt;&lt;br /&gt;I hope to learn more about what i need to do to just use this in my API and in particular how i may integrate the authentication in an AJAX client application without redirecting to the site.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8845496104288205081?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8845496104288205081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8845496104288205081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8845496104288205081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8845496104288205081'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/12/oauth-for-api-authentication.html' title='OAuth for API Authentication'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2606871731511214672</id><published>2007-11-27T23:59:00.000-08:00</published><updated>2007-11-28T00:26:27.966-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>Scotland to raise your management profile</title><content type='html'>&lt;a href="http://www.scottishfa.co.uk/res/images/photos/People/Management/AlexMcLeish.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 400px; CURSOR: hand" alt="" src="http://www.scottishfa.co.uk/res/images/photos/People/Management/AlexMcLeish.jpg" border="0" /&gt;&lt;/a&gt; &lt;div&gt;So it happened. I think when I first heard his "anything can happen" spiel I knew it was inevitable. The Scotland Manager (left) Alex McLeish has resigned. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;em&gt; &lt;/div&gt;&lt;/em&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;He has moved to &lt;del&gt;Real Madrid AC Milan Manchester United&lt;/del&gt; Birmingham!! Now I lived in Birmingham and feel the place gets a hard deal from people who haven't been there, but is McLeish for real?&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Are we now at the point where someone who i would have regarded as a REAL Scottish manager - and I remember him from his playing days - is happy to dump the team after 10 months in charge??&lt;br /&gt;&lt;br /&gt;&lt;a href="http://news.bbc.co.uk/sport1/hi/football/internationals/6289073.stm"&gt;Indeed Alex&lt;/a&gt; :"To be manager of your home nation is a very proud day indeed for Alex McLeish, my family and friends". *&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;em&gt;[* footnote : Unless more money comes my way]&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Walter Smith did something similar before, but although i don't think it was the right thing to do, moving to Rangers is probably the only thing that would have made his leave his post. But Alex McLeish - a Scotland "great" has left after 10 months.... and i know how short a time that is as my daugter is only 11 months old.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;He has basically used the National team to springboard to a higher paid job. Don't tell me this isn't about money - i mean he must be really badly off after managing Rangers. Come on Alex - you could have been a huge figure in this country by guiding team to the next World Cup in South Africa... he even managed to screw us just a little bit more by even attending the DRAW in South Africa!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;It pisses me of that these guys are always talking about player loyalty and yet this is the most obvious case of UNLOYALTY i have seen in years. 10 months. I could understand it if were were an awful team but we have progressed pretty well in recent years - which bring me to my next point....&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;If anything positive comes from this, it is that we will now see that we have a team pretty much independent of manager. Smith and McLeish did a good job obviously but (and I wish i had recorded this) I said a number of years back that we would have a decent team as you could see the young players coming through the ranks at club level. This was during the Berti era. It came as no shock to me that we started getting results. Vogts was a terrible man motivator which is what you got from the Scottish lads, but it's important to remember that it was under him that this young team came together.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;My view is that we simply need someone passionate and let the team run itself. I have a 4 year old and once he realized he could read the alphabet he started making up all kinds of words - only every so often does he need to come to me for help.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;And don't kid ourselves we run on passion - sure we have passion, but the second half against the Italians shows us we have no skill shortage either!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2606871731511214672?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2606871731511214672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2606871731511214672' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2606871731511214672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2606871731511214672'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/scotland-to-raise-your-management.html' title='Scotland to raise your management profile'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1333981254557363830</id><published>2007-11-27T09:24:00.000-08:00</published><updated>2007-11-27T09:27:42.684-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>WhoIs On Seesmic</title><content type='html'>I was interested in finding out a bit more about who is on Seesmic - so i asked people to make short videos of who there are and where they are from ... we have three thus far - hopefully get more!&lt;br /&gt;&lt;br /&gt;You can see who is on Seesmic by hitting the following :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic/whois"&gt;http://livz.org/seesmic/whois&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you wish it text format you can hit the following:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic/whois?f=txt"&gt;http://livz.org/seesmic/whois?f=txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hopefully a few more will join so we can follow who is on there! Just add "whois" to your Seesmic video subject line!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1333981254557363830?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1333981254557363830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1333981254557363830' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1333981254557363830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1333981254557363830'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/whois-on-seesmic.html' title='WhoIs On Seesmic'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6792079456289441576</id><published>2007-11-27T08:44:00.000-08:00</published><updated>2007-11-27T08:50:35.169-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Gregg Brockway at Web 2.0</title><content type='html'>I just watched the presentation given by Gregg Brockway of &lt;a href="http://tripit.com/"&gt;http://tripit.com&lt;/a&gt; at the Web 2.0 Conference last month on &lt;a href="http://blip.tv/file/438954"&gt;Blip.tv&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There is a part where his phone went off and he said it was his wife. It was really well done (despite the audio folks needing a prod) and having been in similar situations I actually thought his wife was maybe having a baby! Of course it was him demonstrating how simply someone could be directed to use the service on a mobile via email.&lt;br /&gt;&lt;br /&gt;It was quite an original way of presenting and demonstrating an idea. Worth taking note.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6792079456289441576?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6792079456289441576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6792079456289441576' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6792079456289441576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6792079456289441576'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/gregg-brockway-at-web-20.html' title='Gregg Brockway at Web 2.0'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8371308999290536151</id><published>2007-11-27T03:09:00.001-08:00</published><updated>2007-11-27T03:24:17.316-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Embed Seesmic in your blogs and so on</title><content type='html'>So you use Seesmic and want to have the latest version of your videos, or other videos in your blog without having to copy, paste and edit each time. You can do it now.&lt;br /&gt;&lt;br /&gt;There are some options. Whether you show the video preview or a text link is based on the querystring parameter "f" which takes the value "vid" or "txt".&lt;br /&gt;&lt;br /&gt;So, say i want to just show a text list of the latest (20 by default) videos - i put this in my html page:&lt;br /&gt;&lt;br /&gt;&lt;xmp&gt;&lt;script language="JavaScript" src="http://livz.org/seesmic?f=txt"&gt;&lt;/script&gt;&lt;/xmp&gt;&lt;br /&gt;Bon! But my dear Steven, i want to show only the last 5 posts - can you do THAT? Well, yes we can... as follows using the "c" querystring value:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;xmp&gt;&lt;script language="JavaScript" src="http://livz.org/seesmic?f=txt&amp;c=5"&gt;&lt;/script&gt;&lt;/xmp&gt;Sacré bleu i hear you say. But you want more... you want to display only YOUR latest posts. So for myself who goes under the name "@weblivz" i would show the latest 5 posts as follows:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;xmp&gt;&lt;script language="JavaScript" src="http://livz.org/seesmic?f=txt&amp;u=@weblivz&amp;c=5"&gt;&lt;/script&gt;&lt;/xmp&gt;Ah, but video. Seesmic is about video, can i show my latest video?? Of Course - just change the "f" parameter to "vid" rather than "txt":&lt;br /&gt;&lt;br /&gt;&lt;xmp&gt;&lt;script language="JavaScript" src="http://livz.org/seesmic?f=vid&amp;u=@weblivz&amp;c=1"&gt;&lt;/script&gt;&lt;/xmp&gt;&lt;br /&gt;Of course you can point at ANY username you wish by changing the "u" parameter. Additionally if you do NOT use the "u" parameter you can use the "t" parameter and add any text you wish to be matched as so:&lt;br /&gt;&lt;br /&gt;&lt;xmp&gt;&lt;script language="JavaScript" src="http://livz.org/seesmic?f=vid&amp;t=berners&amp;c=1"&gt;&lt;/script&gt;&lt;/xmp&gt;&lt;br /&gt;Mon Deu! Can it tell me what I should say in my next video to make sure people watch???&lt;br /&gt;&lt;br /&gt;Unfortunately I had to pull that feature at the last minute, but as a work around I suggest clicking the "I'm feeling lucky" Google button and just talking about the first page you come to.&lt;br /&gt;&lt;br /&gt;You can see all of this in action at &lt;a href="http://livz.org/"&gt;http://livz.org&lt;/a&gt;. Play away :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8371308999290536151?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8371308999290536151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8371308999290536151' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8371308999290536151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8371308999290536151'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/embed-seesmic-in-your-blogs-and-so-on.html' title='Embed Seesmic in your blogs and so on'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6839139986676892119</id><published>2007-11-27T01:07:00.001-08:00</published><updated>2007-11-27T04:08:43.922-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Xavier wins Enjoy a Ball trophey</title><content type='html'>Xavier won the Enjoy-a-ball trophey this week for kids so he decided to show it off and by the way he is holding it i get the feeling it may not be the last!! Well done wee man!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://farm3.static.flickr.com/2043/2068706994_0fea3dabcb_o.jpg" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6839139986676892119?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6839139986676892119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6839139986676892119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6839139986676892119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6839139986676892119'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/xavier-wins-enjoy-ball-trophey.html' title='Xavier wins Enjoy a Ball trophey'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-9051685389433804273</id><published>2007-11-27T01:07:00.000-08:00</published><updated>2007-11-27T01:42:00.053-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Question to Tim Berners-Lee</title><content type='html'>I noticed &lt;a href="http://scobleizer.com/"&gt;Scoble&lt;/a&gt; &lt;a href="http://twitter.com/Scobleizer/statuses/447501692"&gt;Twittered&lt;/a&gt; that he is talking with none other than &lt;a href="http://www.w3.org/People/Berners-Lee/"&gt;Tim Berners-Lee&lt;/a&gt; this evening!! Well, i have been reading his book &lt;a href="http://www.w3.org/People/Berners-Lee/Weaving/"&gt;Weaving the Web&lt;/a&gt; which he wrote a few years back and so even though i love all of &lt;a href="http://www.podtech.net/scobleshow/"&gt;Robert's shows&lt;/a&gt;, this one will be particularly interesting for me!&lt;br /&gt;&lt;br /&gt;So he asked if anyone had a question for him, and although i have an infitinite owl:List of questions this is my first attempt (happens to be the similar to &lt;a href="http://twitter.com/ssethi/statuses/447530312"&gt;Sam's&lt;/a&gt; which was way freaky as it was also at the same time) .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;On page 196 of "Weaving the Web" (which i am reading again just now) you voice your concerns specifically over the effect of patenting on reasoning engines for the Semantic Web and i guess the general effects of patenting on the fundamental Semantic Web technologies.&lt;br /&gt;&lt;br /&gt;The Semantic Web is certainly progressing although perhaps not quite as fast as we may have expected (I was looking at RDF when writing my first book on Xml around 10 years ago now). In fact most of the good work I have used has come out of research labs in Universites in the US, UK and Germany.&lt;br /&gt;&lt;br /&gt;Do you think the constant desire for patents around emerging Semantic Web concepts and the counter fact that a lot of the good work has actually come out of Universites and has been fairly open and flexible (and hence trickier - although not impossible - to build patents on top of), has slowed the rate of large scale commercial adotoption of Semantic Web technology development?&lt;br /&gt;&lt;br /&gt;As a startup one of the first things i often hear is "What can you patent?".&lt;br /&gt;&lt;br /&gt;Or perhaps more simply a large consumer facing Semantic application has just now taken hold yet? Rather it is dominated by mashups of existing standards - i.e. using the code to hack the meaning rather than the data containg it. &lt;/p&gt;&lt;p&gt;PS. When are you writing the follow up to Weaving the Web?&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;IF you have time for a follow up question Robert (and you read this!), I'd also like to know whether he can see the existing &lt;a href="http://www.w3.org/P3P/"&gt;P3P&lt;/a&gt; standards emerging to fit into a Social Environment as privacy is perhaps the most fundamental issue of Social Networks that has not really been tackled yet (identity has been discussed much more than privacy) and a standard looks the best way to ensure this very important aspect is included!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-9051685389433804273?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/9051685389433804273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=9051685389433804273' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/9051685389433804273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/9051685389433804273'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/question-to-tim-berners-lee.html' title='Question to Tim Berners-Lee'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5332511899875409761</id><published>2007-11-27T00:44:00.000-08:00</published><updated>2007-11-27T00:46:57.145-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Seesmic Feed</title><content type='html'>Thanks for all the positive feedback on the work I did. Actually the first thing i did this morning was this:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic?u=@weblivz"&gt;http://livz.org/seesmic?u=@weblivz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;and&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic?t=rss"&gt;http://livz.org/seesmic?t=rss&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This returned no results, but i DID get some great feedback on the blogs and privately by email.&lt;br /&gt;&lt;br /&gt;Anyway, glad to receive any feedback and hope it comes in useful. Back to my own plan to rule the world now ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5332511899875409761?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5332511899875409761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5332511899875409761' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5332511899875409761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5332511899875409761'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/seesmic-feed.html' title='Seesmic Feed'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-227903466811208974</id><published>2007-11-26T15:31:00.000-08:00</published><updated>2007-11-26T15:46:43.179-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Playing with Seesmic feeds - 3 small features</title><content type='html'>One of my frustrations with &lt;a href="http://seesmic.com/"&gt;Seesmic &lt;/a&gt;was simply knowing what was going on without hitting the site all the time and filtering posts. The provide a Twitter feed which is pretty good but it's getting busy and although they have an RSS feed on the top of the Twitter feed i never knew this til i looked at their JSON code....&lt;br /&gt;&lt;br /&gt;... in any case there are a number of things i wanted to do and will likely want to do in the future to the JSON to XML stuff i did will likely come in useful again.&lt;br /&gt;&lt;br /&gt;ANYWAY - what have I done??&lt;br /&gt;&lt;br /&gt;Well ....&lt;br /&gt;&lt;br /&gt;1. An &lt;strong&gt;RSS feed&lt;/strong&gt; of Seesmic - updates around every 15 minutes and can be found here :&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic/seesmic.xml"&gt;http://livz.org/seesmic&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2. You can discover &lt;strong&gt;posts relevant to you&lt;/strong&gt; using the "u" querystring value. So&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic?u=@weblivz"&gt;http://livz.org/seesmic?u=@weblivz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;... will return feeds created by me - or directed to me (if you &lt;em&gt;really&lt;/em&gt; only want things created by you, then add "by " to the query, such as &lt;a href="http://livz.org/seesmic?u=by"&gt;http://livz.org/seesmic?u=by @weblivz&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;3. You can &lt;strong&gt;filter based on content&lt;/strong&gt; using the "t" querystring value. So you can find posts about Seesmic with the following query:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic?t=seesmic"&gt;http://livz.org/seesmic?t=seesmic&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;THIS means you can see if anyone has replied to you by just appending "Re: " to the first few characters of your original subject line. So looking at the site just now, i can find replies to "Reload Seesmic for new features !" with the following query ....&lt;br /&gt;&lt;br /&gt;&lt;a href="http://livz.org/seesmic?t=Re:"&gt;http://livz.org/seesmic?t=Re: Reload&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It's a bit of a start - hope it is of some use. I already use it to quickly check the last N posts - i guess the fact i can now translate their JSON to RSS will be more useful when it comes to RSS on a person basic - rather than public (which may be quite soon as it's getting busy). In any case hope the filtering features are of some use.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-227903466811208974?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/227903466811208974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=227903466811208974' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/227903466811208974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/227903466811208974'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/playing-with-seesmic-feeds-3-small.html' title='Playing with Seesmic feeds - 3 small features'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6633279258070402575</id><published>2007-11-26T03:49:00.000-08:00</published><updated>2007-11-26T03:55:35.407-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Seesmic is a conversation</title><content type='html'>I watched a Seesmic video by Loic Le Meur of Seesmic trying to state the point that unlike YouTube, Seesmic is a conversation - much likfe Twitter.&lt;br /&gt;&lt;br /&gt;I've been using it since the weekend now and it really is very cool and yes, it is a conversation (although the actual conversation part is something they need to work on - following parts of a conversation is tricky).&lt;br /&gt;&lt;br /&gt;The difference from YouTube is that you are talking to your friends. Sure, just now everything is public, but over time it will be your friends because as the public timeline gets noisier, you want to follow only things interesting to you - i.e. your friends.&lt;br /&gt;&lt;br /&gt;I have made many friends online recently and many through Twitter, blogs and even Seesmic - so the definition of a friend is pretty flexible.&lt;br /&gt;&lt;br /&gt;We all feel a little self-concious when creating these videos but over time this (i hope) will improve and you (or I) will feel more confortable with it all. I DO think that feedback and people talking back to you on Seesmic in a response to your video is a big part of that.&lt;br /&gt;&lt;br /&gt;Perhaps we should all be teamed with a mentor who is confortable with it all and can give some feedback. Or maybe just an abrupt "hot or not" system :)&lt;br /&gt;&lt;br /&gt;Oh, Seesmic is COOL!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6633279258070402575?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6633279258070402575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6633279258070402575' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6633279258070402575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6633279258070402575'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/seesmic-is-conversation.html' title='Seesmic is a conversation'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6790232276484574917</id><published>2007-11-24T14:07:00.000-08:00</published><updated>2007-11-24T14:12:05.274-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Optimizing NTFS Performance</title><content type='html'>If you are writing any web services that store large files on an NTFS volume, this section is very useful - full article &lt;a href="http://technet.microsoft.com/en-gb/library/bb457112.aspx"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Optimizing NTFS Performance&lt;br /&gt;&lt;br /&gt;NTFS performance is affected by many factors, such as cluster size, fragmentation level, and the use of programs such as antivirus software. In addition, NTFS features such as compression and Indexing Service can also affect performance. Optimize the performance of NTFS volumes by using the following guidelines.&lt;br /&gt;Determine Cluster Size&lt;br /&gt;&lt;br /&gt;Before you format an NTFS volume, evaluate the types of files to be stored on the volume to determine whether to use the default cluster size. Some important questions to answer include:&lt;br /&gt;&lt;br /&gt;* Are the files typically the same size?&lt;br /&gt;* Are the files smaller than the default cluster size?&lt;br /&gt;* Do the files remain the same size or grow larger?&lt;br /&gt;&lt;br /&gt;If the files are typically smaller than the default cluster size (for example, 4 KB) and do not increase, use the default cluster size to reduce wasted disk space. However, smaller clusters can increase fragmentation, especially when files grow to fill more than one cluster. Therefore, adjust the cluster size accordingly when you format the volume. If the files you store tend to be large or increase in size, use 16-KB or 32-KB clusters instead of the default 4-KB cluster size.&lt;br /&gt;&lt;br /&gt;Note Compression is supported only on volumes that use 4-KB or smaller clusters.&lt;br /&gt;&lt;br /&gt;Cluster size is also an issue for volumes that were converted from FAT to NTFS in Windows 2000 or earlier because the default cluster size for converted volumes is 512 bytes, and the MFT was most likely fragmented during the conversion. For optimum performance, back up the data on the volume, reformat the volume, specify the appropriate cluster size, and then restore the data.&lt;br /&gt;&lt;br /&gt;For more information about choosing a cluster size, see “Cluster Size” earlier in this chapter.&lt;br /&gt;Use Short File Names&lt;br /&gt;&lt;br /&gt;Every time you create a file with a long file name, NTFS creates a second file entry that has a similar 8.3 short file name. A file with an 8.3 short file name has a file name containing 1 to 8 characters and a file name extension containing 1 to 3 characters. The file name and file name extension are separated by a period.&lt;br /&gt;&lt;br /&gt;If you have a large number of files (300,000 or more) in a folder, and the files have long file names with the same initial characters, the time required to create the files increases. The increase occurs because NTFS bases the short file name on the first six characters of the long file name. In folders with more than 300,000 files, the short file names start to conflict after NTFS uses all the 8.3 names that are similar to the long file names. Repeated conflicts between a generated short file name and existing short file names cause NTFS to regenerate the short file name from 6 to 8 times.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;To reduce the time required to create files, use the fsutil behavior set disable8dot3 command to disable the creation of 8.3 short file names. (You must restart your computer for this setting to take effect.) For more information about disabling 8.3 short file names, see “MS-DOS-Readable File Names on NTFS Volumes” later in this chapter. &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;If you want NTFS to generate 8.3 names, improve performance by using a naming scheme in which long file names differ at the beginning of the name instead of at the end.&lt;br /&gt;&lt;br /&gt;For more information about short file names, see “File Names in Windows XP Professional” later in this chapter.&lt;br /&gt;Determine Folder Structure&lt;br /&gt;&lt;br /&gt;NTFS supports volumes with large numbers of files and folders, so create a folder structure that works best for your organization. Some guidelines to consider when designing a folder structure include:&lt;br /&gt;&lt;br /&gt;* Avoid putting a large number of files into a folder if you use programs that create, delete, open, or close files quickly or frequently. The better solution is to logically separate the files into folders to distribute the workload on multiple folders at the same time.&lt;br /&gt;&lt;br /&gt;* If there is no way to logically separate the files into folders, put all the files into one folder and then disable 8.3 file name generation. If you must use 8.3 names, use a file-naming scheme that ensures that the first six characters are unique.&lt;br /&gt;&lt;br /&gt;Warning The time required to run Chkdsk.exe increases with larger folders. For more information about determining how long Chkdsk takes to complete, see Chapter 28, “Troubleshooting Disks and File Systems.”&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6790232276484574917?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6790232276484574917/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6790232276484574917' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6790232276484574917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6790232276484574917'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/optimizing-ntfs-performance.html' title='Optimizing NTFS Performance'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5815684688296090512</id><published>2007-11-24T10:11:00.000-08:00</published><updated>2007-11-24T10:18:55.414-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Seesmic Citizens Collective</title><content type='html'>Thanks to &lt;a href="http://pulverblog.pulver.com/"&gt;Jeff Pulver &lt;/a&gt;and his &lt;a href="http://twitter.com/jeffpulver/statuses/440429402"&gt;tweet&lt;/a&gt;, I got a &lt;a href="http://www.seesmic.com/"&gt;Seesmic &lt;/a&gt; invite and signed up and sent in &lt;a href="http://www.seesmic.com/Standalone.html?video=3jWb2i4fSN"&gt;my first video&lt;/a&gt; - it was all spur of the moment and the two kids were kicking off so it was slightly chaotic (whether it gets less chaotic, only time will tell!).&lt;br /&gt;&lt;br /&gt;Anyway, i wanted to simply ask whether there were any other Scottish Seemsic folk and wasn't sure what you call a collection of Seemic folks - i.e. "Are there any other Scottish ..... out there"?&lt;br /&gt;&lt;br /&gt;1. Seesmicites - i'm sure i saw one of these in a nature program&lt;br /&gt;&lt;br /&gt;2. Seesmatics - sounds like a hoover&lt;br /&gt;&lt;br /&gt;3. ?&lt;br /&gt;&lt;br /&gt;Any ideas?&lt;br /&gt;&lt;br /&gt;I should have posted this as a video but the kids are approaching bedtime and so all hell is breaking loose!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5815684688296090512?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5815684688296090512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5815684688296090512' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5815684688296090512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5815684688296090512'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/seesmic-citizens-collective.html' title='Seesmic Citizens Collective'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3267869699228126419</id><published>2007-11-21T05:25:00.000-08:00</published><updated>2007-11-21T05:34:51.725-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>23AndMe, and Geni</title><content type='html'>So I just visited the &lt;a href="http://23andme.com/"&gt;http://23andme.com&lt;/a&gt;  site, a personal genome service which&lt;br /&gt;&lt;blockquote&gt;"... is intended to help people understand their inherited traits and to allow them&lt;br /&gt;to compare themselves with friends and family."&lt;/blockquote&gt;&lt;br /&gt;At first i thought WHAT?! OK, so I thought it was a gentic based dating site (perhaps that's in their future plans ;) ) but once i looked around i thought - COOL !&lt;br /&gt;&lt;br /&gt;It's not cheap at $1k per person but based on the extremely qualified backers and advisors of this site i'd more likely believe it actually works pretty well. I think we'd need educated as to exactly what to take and understand from any results we were given - as well as perhaps some clue as to what to do with it (other than - "i told you you had your fathers stubborness"). Could it be beneficial in education, sports and health?? Even a marginal improvement here can only be a good thing (especially as a father with two kids)!&lt;br /&gt;&lt;br /&gt;Now, imagine this.... They do a deal with &lt;a href="http://geni.com/"&gt;Geni &lt;/a&gt; (one of my fav sites) and over time (as things get slightly cheaper) you get larger percentages of families getting involved. Imagine the kind of searches you could do - even within your own family.&lt;br /&gt;&lt;br /&gt;I don't know how far this will extend from the family but clearly their are huge opportunities - with a whole set of new privacy issues to watch over. But clearly this is a direction these kind of services will move into.&lt;br /&gt;&lt;br /&gt;Has anyone used the service? If so please let me know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3267869699228126419?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3267869699228126419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3267869699228126419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3267869699228126419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3267869699228126419'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/23andme-and-geni.html' title='23AndMe, and Geni'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5315853759493791851</id><published>2007-11-21T01:28:00.000-08:00</published><updated>2007-11-21T01:35:48.483-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>A startup idea to make £56 Million in one week</title><content type='html'>Here is my idea to making £56 million in one week. Any investors out there?&lt;br /&gt;&lt;br /&gt;1. Start a Credit Reference Agency&lt;br /&gt;&lt;br /&gt;2. Get loads of people's credit information.&lt;br /&gt;&lt;br /&gt;3. Wait 'til the government loses 28 million items of personal information.&lt;br /&gt;&lt;br /&gt;4. Charge two pounds per reference check.&lt;br /&gt;&lt;br /&gt;5. After one week, sell to someone else who can make cash the next time it happens.&lt;br /&gt;&lt;br /&gt;6. Check the bank account to see your lovely £56 Million.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Oh crap, someone stole it when they got your credit details. Doh!&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;This is obvously tounge-in-cheek but this is what they are asking you to do. Credit Agencies must be loving it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5315853759493791851?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5315853759493791851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5315853759493791851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5315853759493791851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5315853759493791851'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/startup-ida-to-make-56-million-in-one.html' title='A startup idea to make £56 Million in one week'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1447763250183309427</id><published>2007-11-21T01:01:00.000-08:00</published><updated>2007-11-21T01:37:06.693-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Alastair Darling - we have technology to fix this</title><content type='html'>Having worked on a project for schools in Scotland that required the export and trasportation of some personal information I cannot believe the basic flaws that have been made by the "technical people" at HM Revenue and Customs.&lt;br /&gt;&lt;br /&gt;Here is it in one line.&lt;br /&gt;&lt;br /&gt;DO NOT ALLOW CLEAR TEXT EXPORT OF PERSONAL INFORMATION !!&lt;br /&gt;&lt;br /&gt;This is not difficult. The technologies are far enough advanced. In an attempt to save the trillions of consultancy fees, here is &lt;span style="font-size:130%;"&gt;how to fix this&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;1. Give every member of staff a certificate and/or &lt;/span&gt;&lt;a href="http://www.verisign.com/products-services/security-services/pki/card-management-system/index.html"&gt;&lt;span style="font-family:verdana;"&gt;smart card&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;2. Ensure they use a very strong password when using that certificate&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;3. Any EXPORT routine MUST ask for the private key of the user exporting the data and signs that data. This ensure you know who exported the data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;4. Additionally, any export routine MUST ask for the public key of the EXACT user you intend to send the data to and encrypt that data. Now only that person can read that data as only they have the private key for that certificate.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;5. Now, with the IMPORT routine, when the person wants to read the data they need their own private key to decrypt the data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;6. The IMPORT routine should also check the signature an alert the user as to confirm who SENT them the data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Additional steps should be :&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;7 .Use Key Revocation to ensure that should any key be lost, that key becomes IMMEDIATELY invalid and hence can't be used to view the data.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;8. Know and ensure that every application that uses this data has a common import/export routine with encryption and logging as standard.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;9. Log every interaction with that data. You don't even need the personal data to do this - just &lt;/span&gt;&lt;span style="font-family:verdana;"&gt;an identifier for the user (say the certificate hash) and an identifier for the data items.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;br /&gt;This stuff sounds tricker than it is. I have now done this with the Government, Barclays and a few other places.... in short - you CANNOT just allow people to export this kind of data.&lt;br /&gt;&lt;br /&gt;Now we are all checking our bank accounts - i have an additional post coming next on the business side of this ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1447763250183309427?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1447763250183309427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1447763250183309427' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1447763250183309427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1447763250183309427'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/alastair-darling-basic-flaws.html' title='Alastair Darling - we have technology to fix this'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2356685847306220081</id><published>2007-11-20T06:28:00.000-08:00</published><updated>2007-11-20T09:10:24.177-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>YouTube for Parents  - you have it the wrong way around</title><content type='html'>&lt;span style="color:#ff0000;"&gt;Update : Ian Hayward the founder of Glubble corrected me below in that you CAN indeed restrict on a page basis. We both agree the comments (and links with previews) by others can be quite unfortunate. Tricker to deal with outside of YouTube.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I've just spent 15 minutes trying to find a video for my 4 year old son to watch on YouTube. It's not the fist time. Simply put due to some idiotic and outdated rules on the US site which says only kids in the US can see a certain 5 minute cartoon, it leaves him asking why and me hunting for an equivalent on YouTube.&lt;br /&gt;&lt;br /&gt;However, I would never let him use that site himself as some of the "cartoons" content and comments aren't stuff i want him to see. So i can't even use software like &lt;a href="http://glubble.com/"&gt;Glubble &lt;/a&gt;as it works on a site by site basis. In any case - this is for YouTube to sort out. Oh, and YouTube is not alone, please read on if you have any mixed content with some intended for kids.&lt;br /&gt;&lt;br /&gt;Here is my guide:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;1. Everything should be opt out&lt;/span&gt;&lt;br /&gt;Yes, if i say i am under X years of age or go into "parent mode" (doesn't exist but should) then plesae make EVERYTHING opt in. That means when *I* hit the site there are NO videos. Well, perhaps you can suggest some that have been vetted. *I* will then decide precisely what my kids can see. PRECISELY. I will choose what comments and what content- and you will like to other stuff i have suggested. So that means NO previews of stuff you THINK may be suitable and no "That was fucking awsome. The older stuff was shit but this is good." comments.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;2. Let you and your friends decide which moves you wish to set as opt in&lt;/span&gt;&lt;br /&gt;OK, so i am willing to go one further step and I should be able to specify what friends i have who i also trust to recommend kids material (no offence to any friends :)). If i say my sons Grandma can recommend a kids video to him then i expect you to respect that.... but just because i may be friends with "womanizer77" (i made that up completely btw) does NOT mean i trust his movies by proxy for my kids.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;3. Don't recommend clips from the Exorcist when showing a Ben 10 clip to a 4 year old&lt;/span&gt;&lt;br /&gt;I really don't think much needs said here. It happened.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2356685847306220081?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2356685847306220081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2356685847306220081' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2356685847306220081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2356685847306220081'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/youtube-for-parents-you-have-it-wrong.html' title='YouTube for Parents  - you have it the wrong way around'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8116879556575131373</id><published>2007-11-14T01:32:00.000-08:00</published><updated>2007-11-14T01:38:31.278-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>OpenID provider fitness</title><content type='html'>I'm adding OpenID support to a site i am working on, but came up with an interesting question.&lt;br /&gt;&lt;br /&gt;Typically i have the username/password/email and email verification process. Alternatively you enter your OpenID.... but this is where i started to think. Do I limit the OpenID to trusted OpenID providers or do i just accept ANY OpenID? How do i know they haven't juset set up their own provider and how do i know whether the email is valid??&lt;br /&gt;&lt;br /&gt;Do I request their email and ask them for yet another verification before they can use the site.... something that could get quite annoying overall.&lt;br /&gt;&lt;br /&gt;Would be nice to have an online service which you can query every so often to check the "fitness" of providers so you can decide whether a provider is valid or not. Similar to the certificate lists you get in your browser. This could be managed and be very beneficial for the community i would have thought!? Anyone working on such a service?&lt;br /&gt;&lt;br /&gt;If you are reading and have implemened an openid client on your site, how have you gotten round this?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8116879556575131373?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8116879556575131373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8116879556575131373' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8116879556575131373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8116879556575131373'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/11/openid-provider-fitness.html' title='OpenID provider fitness'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6716708309406952776</id><published>2007-10-24T07:21:00.000-07:00</published><updated>2007-10-24T07:22:49.800-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>UK Postal Scam - spam goes offline</title><content type='html'>"It has been confirmed by Royal Mail. The Trading Standards Office are making&lt;br /&gt;people aware of the following scam:&lt;br /&gt;&lt;br /&gt;A card is posted through your door from a company called PDS (Parcel&lt;br /&gt;Delivery Service) suggesting that they were unable to deliver a parcel and&lt;br /&gt;that you need to contact them on 0906 6611911 (a premium rate number).&lt;br /&gt;&lt;br /&gt;DO NOT call this number, as this is a mail scam originating from Belize.&lt;br /&gt;&lt;br /&gt;If you call the number and you start to hear a recorded message you will&lt;br /&gt;already have been billed £15 for the phone call.&lt;br /&gt;&lt;br /&gt;If you do receive a card with these details, then please contact Royal Mail&lt;br /&gt;Fraud on 02072396655 or ICSTIS (the premium rate service regulator) at&lt;br /&gt;www.icstis.org.uk &lt;file:&gt;&lt;br /&gt;&lt;br /&gt;Please circulate this to avoid anyone else being ripped off. "&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6716708309406952776?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6716708309406952776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6716708309406952776' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6716708309406952776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6716708309406952776'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/uk-postal-scam-spam-goes-offline.html' title='UK Postal Scam - spam goes offline'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-717942036037405529</id><published>2007-10-21T12:25:00.000-07:00</published><updated>2007-10-21T12:43:39.169-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>AI Web Services</title><content type='html'>I asked &lt;a href="http://www.norvig.com/"&gt;Peter Norvig&lt;/a&gt; to point me towards sites that demonstrate real world applications of AI - mainly in the software world. As he wrote the book (literally in this case) and now works as Director of Research at a company called &lt;a href="http://google.com/"&gt;Google&lt;/a&gt;, i figured he'd be a good start.&lt;br /&gt;&lt;br /&gt;He pointed me at a &lt;a href="http://www.aaai.org/AITopics/html/applications.html"&gt;great resource &lt;/a&gt;here which has a list of projects as well as some &lt;a href="http://www.aiai.ed.ac.uk/project/"&gt;here in Scotland&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I am interested in more however. Although i have a background in Applied Physics and software development, i do not have a very deep knowledge of algorithms and AI - however my experience over a number of years gives me a *feeling* that there are potential reusable components - or more likely - pluggable web services - that use AI and can be re-used in your application.&lt;br /&gt;&lt;br /&gt;I want to get a list of these. Imagine a simple one - take a paragraph of text (say a blog post) and reccommend tags. This could be a library component as part of an application or a web service.&lt;br /&gt;&lt;br /&gt;Anyone have pointers?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-717942036037405529?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/717942036037405529/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=717942036037405529' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/717942036037405529'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/717942036037405529'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/ai-web-services.html' title='AI Web Services'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4182883643076073449</id><published>2007-10-18T23:55:00.000-07:00</published><updated>2007-10-19T00:06:41.232-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Applications of Intelligent Systems</title><content type='html'>For a number of years - since actually doing some emergent fractals work in C++ back in 1993 or so - i have been interested in intelligent and emergent systems. I read Emergence a few years back and it only hightened my awareness and desire that rather than creating some elete intelligent system, rather i'd like to add intelligent components to my applications.&lt;br /&gt;&lt;br /&gt;I watched the self-aware robots talk by Hod Lipson at TED. If i wasn't doing what i do now, THAT is what i'd like to do. Not so much the robots (although myself and son are playing with Lego MindStorms) but the software and ideas that create and apply this stuff. Amazing.&lt;br /&gt;&lt;br /&gt;After looking for some books on writing this (couldn't find any in C#) i found the seminal book "&lt;a href="http://www.blogger.com/Artificial%20Intelligence:%20A%20Modern%20Approach"&gt;Artificial Intelligence: A Modern Approach&lt;/a&gt;" by &lt;a href="http://www.cs.berkeley.edu/~russell/"&gt;Stuart Russell&lt;/a&gt; and  &lt;a href="http://www.norvig.com/"&gt;Peter Norvig&lt;/a&gt;. I will re-write their algorithms in C# as needed - there is a &lt;a href="http://code.google.com/p/aima-java/"&gt;Java effort&lt;/a&gt; going on too that is cool.&lt;br /&gt;&lt;br /&gt;HOWEVER, the single post that really illustrates what i want from this is in Peter Norvig's "&lt;a href="http://www.blogger.com/Doing%20the%20Martin%20Shuffle"&gt;Doing the Martin Shuffle&lt;/a&gt;".&lt;br /&gt;&lt;br /&gt;He discusses and demonstrates a real world technique that could be used to improve how the iPod shuffles the songs it plays to you. How ironic as it's Google (who doing amazing rsearch) and Apple (who do amazing UX) kind of sums up my take on thing.. trying new concepts with actual people!&lt;br /&gt;&lt;br /&gt;So the next step IMHO is to take something like the AI book and also take some ideas in the real world (web 2.0 apps are all the rage so why not start there!) and show how intelligent components could be plugged in.&lt;br /&gt;&lt;br /&gt;Very cool stuff!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4182883643076073449?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4182883643076073449/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4182883643076073449' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4182883643076073449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4182883643076073449'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/applications-of-intelligent-systems.html' title='Applications of Intelligent Systems'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6054009492366589091</id><published>2007-10-16T07:10:00.001-07:00</published><updated>2007-10-16T07:10:31.888-07:00</updated><title type='text'>YouTube Video Identification Beta</title><content type='html'>David King, the Product Manager of Google's YouTube &lt;A href="http://googleblog.blogspot.com/2007/10/latest-content-id-tool-for-youtube.html"&gt;just launched&lt;/A&gt; this beta.&lt;BR&gt; &amp;nbsp;&lt;BR&gt; The idea is you can identify your works on YouTube and i guess others can know it is identified as being from you.&lt;BR&gt; &amp;nbsp;&lt;BR&gt; I'm not sure whether it's really for security rather then simple identification - the idea of being able to know what videos have been published - perhaps even by others - on YouTube by a simple hash query over the video content is quite interesting.&lt;BR&gt; &amp;nbsp;&lt;BR&gt; Jeramiah has some &lt;A href="http://www.web-strategist.com/blog/2007/10/16/how-googles-video-security-system-could-impact-the-media-industry/"&gt;interesting comments&lt;/A&gt; on it.&lt;BR&gt;&lt;br /&gt;&lt;hr /&gt;Peek-a-boo FREE Tricks &amp; Treats for You! &lt;a href='http://www.reallivemoms.com?ocid=TXT_TAGHM&amp;loc=us' target='_new'&gt;Get 'em!&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6054009492366589091?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6054009492366589091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6054009492366589091' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6054009492366589091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6054009492366589091'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/youtube-video-identification-beta.html' title='YouTube Video Identification Beta'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-3326729409980909926</id><published>2007-10-16T04:41:00.000-07:00</published><updated>2007-10-16T04:49:53.741-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Robot helecopter from Stanford</title><content type='html'>Watched &lt;a href="http://tinyurl.com/2ebmlb"&gt;this video&lt;/a&gt; this morning with my son after &lt;a href="http://scobleizer.com/"&gt;Robert Scoble&lt;/a&gt; &lt;a href="http://twitter.com/Scobleizer/statuses/339172302"&gt;pointed me at it &lt;/a&gt;throw &lt;a href="http://twitter.com/"&gt;Twitter&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;"Is that from Star Wars" said my four year old son Xavier.&lt;br /&gt;&lt;br /&gt;It is very very cool but now puts a hell of a lot of pressure on us as we are building a robot using &lt;a href="http://mindstorms.lego.com/"&gt;MindStorms&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I &lt;a href="http://www.podtech.net/home/4376/explicit-dan-farber-on"&gt;also watched&lt;/a&gt; &lt;a href="http://www.podtech.net/home/author/steve-gillmor/"&gt;Steve Gillmor&lt;/a&gt; and &lt;a href="http://blogs.zdnet.com/BTL/"&gt;Dan Farber&lt;/a&gt; get kicked off Dow Jones property whilst discussing whether &lt;a href="http://facebook.com/"&gt;Facebook &lt;/a&gt;is worth $100 billion. Even my wife asked me what the heck was going on. Finally i caught &lt;a href="http://scobleshow.com/"&gt;Scoble&lt;/a&gt; talking with Six Apart. Good guys and some nice ideas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-3326729409980909926?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/3326729409980909926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=3326729409980909926' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3326729409980909926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/3326729409980909926'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/robot-helecopter-from-stanford.html' title='Robot helecopter from Stanford'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-9196632857740869150</id><published>2007-10-13T11:59:00.000-07:00</published><updated>2007-10-13T12:05:03.599-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Third World Wind Power</title><content type='html'>I read this great &lt;a href="http://twitter.com/timoreilly/statuses/333482262"&gt;post &lt;/a&gt;from &lt;a href="http://radar.oreilly.com/"&gt;Tim O'Reilly&lt;/a&gt; - &lt;a href="http://link.brightcove.com/services/link/bcpid1214137061/bctid1233395616"&gt;Third World Wind Power&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I love this kind of thinking - not only because of the vast amount of good it can do for the Third World, but also at the relative simplicity of it. Thinking different.&lt;br /&gt;&lt;br /&gt;BTW - this isn't only for the third world - this could work in Scotland too - we certainly get more wind that many places in the world.&lt;br /&gt;&lt;br /&gt;More detailed information can be found &lt;a href="http://www.popularmechanics.com/technology/industry/4224763.html?series=37"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-9196632857740869150?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/9196632857740869150/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=9196632857740869150' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/9196632857740869150'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/9196632857740869150'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/third-world-wind-power.html' title='Third World Wind Power'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-7154024999779729777</id><published>2007-10-12T12:14:00.000-07:00</published><updated>2007-10-12T12:34:54.042-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>re: E-mail Faces Deletion</title><content type='html'>&lt;a href="http://twitter.com/Scobleizer/statuses/331430342"&gt;Scoble pointed me&lt;/a&gt; towards an interesting discussion over at &lt;a href="http://www.businessweek.com/"&gt;Business Week&lt;/a&gt; entitled "&lt;a href="http://www.businessweek.com/debateroom/archives/2007/10/e-mail_faces_de.html"&gt;E-mail Faces Deletion&lt;/a&gt;".&lt;br /&gt;&lt;br /&gt;I am going to twitter him? No - there's not enough space in 140 chars. Am i going to email him? No. He'll never read it. A few people may read it and it there is enough interest someone may point him to it (or directly through Twitter).&lt;br /&gt;&lt;br /&gt;The point is that email is not right for a conversation. 25 messages to arrange a meeting where the overhead is 6 times the content CAN'T be right... and on a mobile (come on SMS has proven this in the UK alone).&lt;br /&gt;&lt;br /&gt;A great point by Scoble is&lt;br /&gt;&lt;blockquote&gt;"But when I left, my e-mail account was turned off. I don’t have access to that&lt;br /&gt;knowledge now."&lt;/blockquote&gt;&lt;br /&gt;.. and neither do THEY! Everyone loses.&lt;br /&gt;&lt;br /&gt;Twitter, Jaiku and so on are not perfect - it gives people like me a chance to write something better. It's all a step in the right direction.&lt;br /&gt;&lt;br /&gt;Email is dead as the primary communication method IMHO - i use it because, like letters, people still do things that way. But, for a few key emails, the rest is broadcast or spam. Communication is going to be about content and pointers to that content (tweets, jaiku's, others) - you write, suggest and maybe i read - kinda like reading an email subject line and deciding whether to read the email.&lt;br /&gt;&lt;br /&gt;In saying that, anyone who thinks communication is going to be one dimensional probably thinks Google is the final answer in search.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-7154024999779729777?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/7154024999779729777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=7154024999779729777' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7154024999779729777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/7154024999779729777'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/re-e-mail-faces-deletion.html' title='re: E-mail Faces Deletion'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-704676472201610015</id><published>2007-10-06T00:10:00.000-07:00</published><updated>2007-10-06T00:17:10.212-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Movavi - please add an API!!!</title><content type='html'>After doing some research i came across an excellent &lt;a href="http://online.movavi.com/"&gt;service &lt;/a&gt;from &lt;a href="http://www.movavi.com/"&gt;Movavi &lt;/a&gt;which allows you to convert media files to flash formats to make it easy to play them back to users.&lt;br /&gt;&lt;br /&gt;They even have an SDK and it's a great price too, but here's a suggestion. Add an API!!!!&lt;br /&gt;&lt;br /&gt;There is no doubt a a hassle adding all the codecs and such for doing the conversion and when they add new codec support you need to download and update and so on.&lt;br /&gt;&lt;br /&gt;However, if they could allow you to call there API as a service it would be very powerful indeed!! I know someone over at Amazon Web Services had created an AMI for transcoding - however the Movavi service is very extensive and supports exactly what i expect most developers would need.&lt;br /&gt;&lt;br /&gt;They could likely integrate some payment method - but it would need to be around the level of Amazon's to keep it open and available to small startup companies like my own.&lt;br /&gt;&lt;br /&gt;If you read this and agree then add a comment - maybe they're listening!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-704676472201610015?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/704676472201610015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=704676472201610015' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/704676472201610015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/704676472201610015'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/10/movavi-please-add-api.html' title='Movavi - please add an API!!!'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1185785299242513713</id><published>2007-09-27T03:05:00.000-07:00</published><updated>2007-09-27T03:20:25.668-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>WCF inheritance in REST interop scenarios</title><content type='html'>I am writing Xml that needs to be consumable by any client that can make an HTTP request. I am also trying to write a service API that using inheritance so that i can have a method such as Accept() that can take any object derived from MyBaseClass.&lt;br /&gt;&lt;br /&gt;The answer turned out to be easier than i thought, but it was a but of a struggle getting there as most answers are tuned toward your CLIENT also being a WCF client (which is the case in about 5% of my use cases).&lt;br /&gt;&lt;br /&gt;The answer is to construct your Xml and use the Xml Schema type attribute to define the type of the object when passing it to a method that accepts its base class.&lt;br /&gt;&lt;br /&gt;So if i have a web service method "Accept":&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;public void Accept(MyBaseClass val);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;... and if i have the class MyClass : MyBaseClass , then in code i can simply write:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;MyBaseClass bc = new MyBaseClass();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Accept(bc);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now, to do the same in an XML REST POST WCF scenario, you construct the following Xml:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;xmp&gt;&lt;val xmlns="http://myns.org" i="http://www.w3.org/2001/XMLSchema-instance" i:type="MyClass"&gt;&lt;br /&gt;...&lt;/val&gt;&lt;/xmp&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;Notice the type attribute is used to state the derived class.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1185785299242513713?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1185785299242513713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1185785299242513713' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1185785299242513713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1185785299242513713'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/09/wcf-inheritance-in-rest-interop.html' title='WCF inheritance in REST interop scenarios'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4331326893947803596</id><published>2007-09-24T00:42:00.000-07:00</published><updated>2007-09-24T00:49:04.875-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>BBC Blast in Glasgow</title><content type='html'>By chance yesterday  we wandered into the &lt;a href="http://www.bbc.co.uk/blast/"&gt;BBC Blast&lt;/a&gt; event in Atlantic Quay, here in Glasgow.&lt;br /&gt;&lt;br /&gt;My son Xavier was fascinated as soon as he saw one of our friends on the big screen (she presents the news on TV) and with that and getting a special badge which went around his neck, we weren't going home anytime soon. It wasn't too busy, but the quality was quite high with artists, musicians, reporters, producers and so on all doing various things to keep your attention.&lt;br /&gt;&lt;br /&gt;My son even wrote his own news report abut saving the earth from a meteor which is printed and laminated. It was a dangerous walk home as he asked me to read it to him - along with his sister who, at 9 months, discovered the "Franci-saurus" in Chile.&lt;br /&gt;&lt;br /&gt;I still think there must be better ways of raising awareness of events in your local area and i'm thinking hard about that just now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4331326893947803596?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4331326893947803596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4331326893947803596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4331326893947803596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4331326893947803596'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/09/bbc-blast-in-glasgow.html' title='BBC Blast in Glasgow'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6147734479502139925</id><published>2007-09-13T01:43:00.000-07:00</published><updated>2007-09-13T02:00:49.555-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Wipro and the elephant</title><content type='html'>I'm reading Bangalore Tiger, the story of &lt;a href="http://en.wikipedia.org/wiki/Wipro"&gt;Wipro &lt;/a&gt;- one of the most successful technical services companies in India and indeed the world.&lt;br /&gt;&lt;br /&gt;I have started to look outside of Silicon Valley for inspiration. The problem is that Silicon Valley is a fairly unique community and businesses coming from the Valley have soooo many resources available to them. I read about them and start realizing that most of what they take for granted just isn't available to most of us.&lt;br /&gt;&lt;br /&gt;Now, i still love the stories of the big Valley companies, but when i started reading about Wirpo i started to see (and no disrespect intended) a company who hacked around until they got it right. They started off in oil and soaps and now run a 68,000 employee technology company. They are an amazing story of bootstrapping.&lt;br /&gt;&lt;br /&gt;I also love the story by Vivek Paul, former vice chairman at Wipro.&lt;br /&gt;&lt;blockquote&gt;He was at a circus on the outskirts of Bangladore and an elephant was tied to a&lt;br /&gt;peg and wasn't trying to break free, despite the fact it easily could. When he&lt;br /&gt;asked the trainer why, he simply said that it has been tied to that peg since it&lt;br /&gt;was a baby and couldn't break free and stopped trying. So in adult life it&lt;br /&gt;continued to believe this and so never tried.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;I love this story, as coming from a relatively small country in Scotland there are too many who believe you can't be successful simply because we are small - negativety is a disease! The result against France last night is a good example of this not being the case.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6147734479502139925?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6147734479502139925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6147734479502139925' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6147734479502139925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6147734479502139925'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/09/wipro-and-elephant.html' title='Wipro and the elephant'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-5362720108244644030</id><published>2007-09-13T01:38:00.000-07:00</published><updated>2007-09-13T01:41:22.987-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>SPAM Frustration</title><content type='html'>Yet again i have been hit by the problem of emails that SHOULD be getting to me going into my Junk mail. It seems with Hotmail that you either get a load of SPAM in your inbox, otherwise most go into the junk mail - no middle ground. Their SPAM options don't work particularly well either.&lt;br /&gt;&lt;br /&gt;A few years back i wrote a short internal paper on intelligent email based on a social network - might be worth looking at it again....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-5362720108244644030?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/5362720108244644030/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=5362720108244644030' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5362720108244644030'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/5362720108244644030'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/09/spam-frustration.html' title='SPAM Frustration'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4565382080606681341</id><published>2007-08-29T16:26:00.000-07:00</published><updated>2008-11-18T13:38:12.919-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>Celtic progress in Champions League</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_22N_0ypJG6E/RtYBnbYjcOI/AAAAAAAAAGU/2x-3F0-IUJE/s1600-h/IMAGE_810.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5104269004548305122" style="FLOAT: left; MARGIN: 0pt 10px 10px 0pt; CURSOR: pointer" alt="" src="http://1.bp.blogspot.com/_22N_0ypJG6E/RtYBnbYjcOI/AAAAAAAAAGU/2x-3F0-IUJE/s400/IMAGE_810.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Well, &lt;a href="http://news.bbc.co.uk/sport1/hi/football/europe/6966717.stm"&gt;tonight was quite amazing&lt;/a&gt;. &lt;a href="http://celticfc.net/"&gt;Celtic&lt;/a&gt; managed to beat Spartak Moscow, the best team we could have faced in the qualifiers and leaders of the Russian league.&lt;br /&gt;&lt;br /&gt;They played very well, but we should have beaten them long beforehand - they had a chance or two but we had SO many but never had our finishing boots on despite playing well.&lt;br /&gt;&lt;br /&gt;As always the atmosphere just can't be beaten - the reason we were voted the best venue in the UK was obvious... especially to the sorry Russian who missed the last penalty.&lt;br /&gt;&lt;br /&gt;I got a few pics, the above was the best. Need a nice camera. I feel physically drained - never shouted and cheered so much. It's hard supporting the best club in the world!&lt;br /&gt;&lt;br /&gt;Hail Hail!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4565382080606681341?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4565382080606681341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4565382080606681341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4565382080606681341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4565382080606681341'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/celtic-progress-in-champions-league.html' title='Celtic progress in Champions League'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_22N_0ypJG6E/RtYBnbYjcOI/AAAAAAAAAGU/2x-3F0-IUJE/s72-c/IMAGE_810.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1162680043114035182</id><published>2007-08-29T05:45:00.000-07:00</published><updated>2007-08-29T06:07:11.251-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Maps still need direction - Collaborative Maps?</title><content type='html'>Well, what with Google, Microsoft, Yahoo and some other familiar names (even open such as OpenStreetMap) i figured Maps were dead. I mean dead in the sense of why would ANYONE write another one.&lt;br /&gt;&lt;br /&gt;Well, that is until is actually tried to use them. The Google and Yahoo API's are nice, i couldn't even FIND an API for Windows Live and although OpenStreetMap is nice, it's API was almost impossible to figure out (i just want to use as part of my app).&lt;br /&gt;&lt;br /&gt;Now, even though i can USE Google and Yahoo easily, it doesn't work for place names!! Yes, in most apps people are going to enter a place name "Mitchell Library" rather than "201 North Street, Glasgow" - but although this works great for the browser, it does NOT work as part of the REST interface either company provides.&lt;br /&gt;&lt;br /&gt;Is this because they KNOW it is so key to future apps? Particularly in the mobile space (prior to us all having GPS)?&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;So here's a call to action.&lt;/strong&gt; Why does every company who doesn't regards their location information as core to their revenue model not join together and create a universal database - like OpenStreetMap or something. Put on a nice API and let people integrate the data.&lt;br /&gt;&lt;br /&gt;I don't mean with all the graphical maps etc - i mean just the data about placenames and where they are. Done together.&lt;br /&gt;&lt;br /&gt;I'm working on something that really needs more than what these companies offer and i'd gladly put my location data into such an open system.&lt;br /&gt;&lt;br /&gt;Anyone?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Initial API:&lt;br /&gt;&lt;br /&gt;Put(placename, number, streetname, city, postcode, country, latitude, londitude);&lt;br /&gt;&lt;br /&gt;Get(placename, country)&lt;br /&gt;Get(placename, number, streetname, city, postcode, coutry)&lt;br /&gt;Get (latitude, longitude)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1162680043114035182?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1162680043114035182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1162680043114035182' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1162680043114035182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1162680043114035182'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/maps-still-need-direction-collaborative.html' title='Maps still need direction - Collaborative Maps?'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-1700481484786118983</id><published>2007-08-29T01:47:00.000-07:00</published><updated>2007-08-29T02:00:44.002-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Scoble video as a social conversation</title><content type='html'>I've read with some interest the many of the posts "dissing" that &lt;a href="http://scobleizer.com/2007/08/26/why-mahalo-techmeme-and-facebook-are-going-to-kick-googles-butt-in-four-years/"&gt;search post&lt;/a&gt; by Robert.&lt;br /&gt;&lt;br /&gt;Now, not saying I agree or diagree with some or all of the points he makes, but HOW he makes it is surely an interesting social experiement for us all - well, more specifically how the responses happened is more interesting.&lt;br /&gt;&lt;br /&gt;You see, i believe brainstorming with smart minds is one of the most exciting things you can do in my field. But that only works if the bar is level - criticism is fine, but it needs to be something that is on a par with the original work. So a better response to Scobles post would be a set of social video responses - an ascychronous online conversation.&lt;br /&gt;&lt;br /&gt;For example, most of the standards bodies and so on are outwith the reach of the majority of us and typically confied to established companies in that field (if fact you often miss the complete conversation as happened to me with &lt;a href="http://www.apml.org/"&gt;Attenion Profiling&lt;/a&gt;) - we have a lot to say, but no way to say it (you sometimes get a public forum if you're lucky). However, the idea of being able to just brainstorm and see what people think through video is pretty exciting.&lt;br /&gt;&lt;br /&gt;I'd like to see more ideas, whiteboards and rants about topics I am interested in. Wake up in the morning and there are 5 responses to what you said - not just criticisms in blogs that don't accept comments, but real views and opinions in the same manner you started.&lt;br /&gt;&lt;br /&gt;So, why not have "comments" on Scobles video post ONLY be videos. That would be very interesting - it's a hard thing to do to just lay it on the line real time. But would be pretty exciting i'd think ....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-1700481484786118983?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/1700481484786118983/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=1700481484786118983' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1700481484786118983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/1700481484786118983'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/scoble-video-as-social-converation.html' title='Scoble video as a social conversation'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6227490007673339678</id><published>2007-08-27T08:49:00.000-07:00</published><updated>2007-08-27T08:52:20.156-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Twitter as IM</title><content type='html'>I added a new Twitter account so i can async IM with people as well as write random stuff i don't wanna bother others with. My new account is at &lt;a href="http://twitter.com/ilivz"&gt;http://twitter.com/ilivz&lt;/a&gt; .&lt;br /&gt;&lt;br /&gt;If you want my &lt;em&gt;regular&lt;/em&gt; stuff i am at &lt;a href="http://twitter.com/weblivz"&gt;http://twitter.com/weblivz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;On my ilivz account i will be posting most of the day so expect a ton or random "stuff" ....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6227490007673339678?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6227490007673339678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6227490007673339678' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6227490007673339678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6227490007673339678'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/twitter-as-im.html' title='Twitter as IM'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-2293586227432401949</id><published>2007-08-27T07:40:00.000-07:00</published><updated>2007-08-27T07:44:58.441-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='misc'/><title type='text'>Celtic game on Wednesday</title><content type='html'>So come this Wednesday there will be over 60,000 fans packed into Parkhead to watch &lt;a href="http://celticfc.net/"&gt;Celtic &lt;/a&gt;play Spartak Moscow in a qualifier for the champions league. The atmosphere is pretty amazing by any standards and thankfully I will be there! Tickets arrived in the door and my and a mate are set.&lt;br /&gt;&lt;br /&gt;I have been told I take on a new persona at football games - maybe we all need something we can vent our energy out on. A couple of beers and screaming at the top of my voice for two hours will be a start!&lt;br /&gt;&lt;br /&gt;I will try twittering and blogging - i might even try a live video cast and see how that goes.&lt;br /&gt;&lt;br /&gt;Hope i don't become the first guy to get arrested using twitter through some bizarre 200 year old legal broadcast rule (yep, why do you think it's called "Scotland Yard" ?!!).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-2293586227432401949?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/2293586227432401949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=2293586227432401949' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2293586227432401949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/2293586227432401949'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/celtic-game-on-wednesday.html' title='Celtic game on Wednesday'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8185322127764136548</id><published>2007-08-17T04:06:00.000-07:00</published><updated>2007-08-17T04:41:39.566-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Changing my viewing habits</title><content type='html'>&lt;span style="font-size:85%;color:#ff0000;"&gt;&lt;em&gt;btw - blogger - I love you!! Thank God you added "autosave" as IE just died on my and i could see the content behind the "Send Error Message to Microsoft" and thought i had lost it!!&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;One of the real frustrations for me is that i miss out on some very cool content on the web. I have a wife, two kids, some consultancy and trying to create a startup at the same time (which is now coming on very well). Thankfully I am going to have a lot of free (i.e. my own) time soon (i hope) as the consultancy (to buy food which is apparently an "&lt;a href="http://www.betterhealth.vic.gov.au/bhcv2/bhcarticles.nsf/pages/Eating_tips_for_children_(5)_primary_school?open"&gt;important part of childrens diet&lt;/a&gt;" etc) is coming to an end.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;However, there is what seems like endless content out there - and there is a wealth of really good stuff too!! I have Gnomedex, Always On, Scoble Show and (thanks to &lt;a href="http://www.samsethi.net/"&gt;Sam&lt;/a&gt;) Intruders.tv - as well as IT Conversations etc - and that is just rich media. My BlogLines keeps going up to 4000 posts... i secretly think Scoble is multi-threaded to get through all this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So how to balance this out? Well, other than the short viewings that can be done between things or on my PDA, i have decided to dedicate at least 3 of my evenings watching online content (say between 7pm and 10pm). At the weekends I should also be able to catch up on some. I don't watch much TV anyway (other than football), but continuing to purely code can also work against you as you miss all this content.... and what i have found is that a lot of it actually feeds in to what you are doing and either changes what you are doing or the way you are doing it - and sometimes i creates completely new ideas or angles - this is exactly what happened after I listened to Robert Scoble &lt;a href="http://www.podtech.net/scobleshow/technology/1599/trends-in-humancomputer-interaction-from-stanford-university-prof"&gt;talking with Scott Klemmer Stanford&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This will clearly affect my coding time, but some of the things I learn that have a direct impact on what i am interested in is just too important. I actually think the net effect will be better coding - or rather higher quality results.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;How is anyone else coping with this (who is in a similar situation?).&lt;/span&gt; There is no way we can catch &lt;strong&gt;everything&lt;/strong&gt;, but there is also no way some this can be missed .... and i have long since lost the illusion of remembering to go back to see it or checking my bookmarks! If i don't watch it there and then, i likely will never.&lt;br /&gt;&lt;br /&gt;This isn't really &lt;strong&gt;&lt;em&gt;work&lt;/em&gt;&lt;/strong&gt; for me - it's like reading a good book when listening to some of these podcasts and videos so moving from traditional TV isn't hard (it's even easier with the stuff that they show over here). However, it's also very important that i spend plenty of family time with my wife and kids, who aren't quite as interested as me (yet [rubs hands as scary laughter roars out....]).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8185322127764136548?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8185322127764136548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8185322127764136548' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8185322127764136548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8185322127764136548'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/changing-my-viewing-habits.html' title='Changing my viewing habits'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4992707563683739957</id><published>2007-08-16T08:20:00.001-07:00</published><updated>2007-08-16T08:20:19.754-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>WCF RESTful GET queries using custom entity input parameters</title><content type='html'>I am looking to map RESTful GET queries to custom objects in my WCF service layer and asked the folks over at Microsoft how to do it. To my surprise i got the reply that:&lt;br /&gt;&lt;blockquote&gt;An HTTP GET request may come from a web browser, and all parameters that are&lt;br /&gt;sent to the operation need to be specified in the URL. There isn't any set&lt;br /&gt;way to represent a list of locations in the URL. &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1998097&amp;SiteID=1"&gt;[link]&lt;/a&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Now, I am no expert in REST architecture, but I think of the URI template mapping stuff Microsoft are adding as much the same as RegEx which we have all used for years. I can think of a number of ways that you could map URL parameters to a custom object... even an option allowing you to define a custom mapping layer would be neat. I like the idea of using XPath, but anything that maps an input pattern to a custom object would do me.&lt;br /&gt;&lt;br /&gt;Otherwise i need to define all my GET interfaces using simple value types rather than my custom entity objects - which can be returned fine, just not passed in...&lt;br /&gt;&lt;br /&gt;I'm in view of flexibility and not having to think of REST interfaces in WCF as something special - other than the attributes you need to apply. I don't think anything i am asking for is difficult in any sense so i'd be interested in where any issue in doing this would lie?!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4992707563683739957?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4992707563683739957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4992707563683739957' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4992707563683739957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4992707563683739957'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/wcf-restful-get-queries-using-custom.html' title='WCF RESTful GET queries using custom entity input parameters'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-9149906013053754200</id><published>2007-08-16T08:07:00.000-07:00</published><updated>2007-08-16T08:10:44.668-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Son back at school</title><content type='html'>Xavier went back to school today (Nursery really, but he calls it that) - he is only 4 and just missed out on the "big" school.&lt;br /&gt;&lt;br /&gt;He has a great day apparently, very social as he is now the "big kid" and looked afer the little ones really well.&lt;br /&gt;&lt;br /&gt;He ALSO corrected the teachers on his name, which they randomly spelled last year. Now he says "There is no need to look it up, it is X-A-V-I-E-R".&lt;br /&gt;&lt;br /&gt;He also remembered every teachers name which was pretty impressive consdering i need a map and compass to get home at night.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-9149906013053754200?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/9149906013053754200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=9149906013053754200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/9149906013053754200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/9149906013053754200'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/son-back-at-school.html' title='Son back at school'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-4529504822363624578</id><published>2007-08-04T12:31:00.000-07:00</published><updated>2007-08-04T15:35:18.418-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Geni the next Linked In?</title><content type='html'>First off, i love &lt;a href="http://geni.com/"&gt;Geni&lt;/a&gt;. It has put me in touch with many family members and we now have more than 700 people in our tree, most of which has been viral.&lt;br /&gt;&lt;br /&gt;I also like Linked In. Scoble &lt;a href="http://scobleizer.com/2007/08/02/the-latest-shiny-social-object-an-opencontrollable-social-network/#comment-851435"&gt;mentioned to me on his blog&lt;/a&gt; that he hates linked in and will never go back. However, many of my contacts remain on Linked In and moving them all would be more hassle that it is worth. So while i use Facebook, i'd only start to use it as my main social networking solution IF it was part of a distributed open identity network where i could merge people in there with others in other networks.&lt;br /&gt;&lt;br /&gt;However, Linked In has remained fairly static for a long time now. Sure, they have added some features, but they have stood still for so long they have lost ground on other networks that have seen the clear need for something &lt;em&gt;after&lt;/em&gt; you have made contact... collaboration, community. Facebook have done very well in that area. FB has also added a "platform" that allows people to build on their services. Linked In could probably take this to the next step by completely opening up and acting as a social network platform for other communities. However, they will have to work fast for this to happen.&lt;br /&gt;&lt;br /&gt;So how does this relate in any way to Geni? It's the same thing really, only the connections are family. Once that connection has been made, the major problem on Geni is that there is nothing else to do - not really any tools do make you return after you have connected. I have said in the past they should work with &lt;a href="http://dandelife.com/"&gt;Dandelife&lt;/a&gt; (in fact i think Dandelife really need that connection too, but perhaps less than Geni).&lt;br /&gt;&lt;br /&gt;At the very least, Geni needs to add family blogging style tools. My daughter said her first word today ... "dada" .. something many of my family would be interested in knowing, along with my video and a few pictures. Geni doesn't really provide any tools to enable that to happen. &lt;em&gt;&lt;span style="color:#ff0000;"&gt;[ Update (based on Geni Team comment):While I know and have used their image upload and tagging tools which work well, i really mean a diary style tool - the reason blogging has become so popular; this would work really well with a family site and would save me having to "diff" the content of my family tree ]&lt;/span&gt;&lt;/em&gt; They could probably just provide an option to include external feeds from flickr, youtube, blogger etc and that would be a start.&lt;br /&gt;&lt;br /&gt;There is a clear window of opportunity for someone to create what Geni has done, but add the stickiness factor to it. I really think they will need more than just connections... they have such a great opportunity and i love their service, so i hope they start brining some of these things to us soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-4529504822363624578?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/4529504822363624578/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=4529504822363624578' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4529504822363624578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/4529504822363624578'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/geni-next-linked-in.html' title='Geni the next Linked In?'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8361774299670584942</id><published>2007-08-03T01:06:00.000-07:00</published><updated>2007-08-03T01:11:48.323-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Amazon FPS</title><content type='html'>&lt;em&gt;&lt;span style="color:#ff0000;"&gt;Update: Seems you need a U.S credit card to use this.... will this be extended soon, as i don't :)&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Amazon's &lt;a href="http://www.amazon.com/b/ref=sc_fe_c_1_3435361_1/104-9066604-5529567?ie=UTF8&amp;node=342430011&amp;amp;no=3435361"&gt;FPS &lt;/a&gt;(flexible payment system) was released about 10 minutes ago ... &lt;a href="http://jeff-barr.com/"&gt;Jeff &lt;/a&gt;was waiting for about 2 days to post and eventually he posted and didn't disappoint. When Jeff was in Glasgow I had asked about improvig the way transactions could be done through services. It seems he got back to his team at Amazon and they wrote a 250 page spec for me in a week or so... thanks Jeff ;)&lt;br /&gt;&lt;br /&gt;I look forward to reading about this through the day... this is really powerful stuff. I am particularly interested to see if there is anything for Micropayments (i haven't look yet) as i was discussing this at AO yeterday - i see this as crucial for pay as you go services... don't want to use my CC every time.&lt;br /&gt;&lt;br /&gt;Lot of reading to do ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8361774299670584942?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8361774299670584942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8361774299670584942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8361774299670584942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8361774299670584942'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/amazon-fps.html' title='Amazon FPS'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6612257315448145382</id><published>2007-08-03T00:47:00.000-07:00</published><updated>2007-08-03T01:27:13.104-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>HumanML - would be nice to see it gain popularity</title><content type='html'>Many years ago i was a little involved but mainly following &lt;a href="http://www.oasis-open.org/committees/humanmarkup/documents/HM.Requirements.html"&gt;HumanML &lt;/a&gt;(or &lt;a href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=humanmarkup"&gt;here&lt;/a&gt;)- the Human Markup Language.&lt;br /&gt;&lt;br /&gt;At AO yesterday, i got talking with &lt;a href="http://www.starbourne.com/About.html"&gt;Rex Brooks&lt;/a&gt;, who was involved in starting the concept and vice-chaired it at OASIS (he is now co-chair of the &lt;a class="extlink" href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=emergency"&gt;Emergency Management Technical Committee&lt;/a&gt;)- he told me that due to lack of participation he had to close it down.&lt;br /&gt;&lt;br /&gt;I'd like to see this come back. Why? Well, i'd like to be able to index my conversations online, Twitter and more specifically in second life. I'd like to be able to search for people i was happy talking with, or confused, or enlightened. "Find me people (or conversations) who englightened me in search technology". You can imagine this could get a little more complex and very powerful.&lt;br /&gt;&lt;br /&gt;Emoticons in IM's, chat etc can easily map to HumanML and this could also be indexed and searched upon. It could also make images more searchable - based on your emotions in the image.&lt;br /&gt;&lt;br /&gt;Surely Second Life would want us to be able to do this? Anyone able to ask them? I'd love to see this happen again as it's now the right time. Anyone???&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6612257315448145382?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6612257315448145382/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6612257315448145382' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6612257315448145382'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6612257315448145382'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/humanml-would-be-nice-to-see-it-come.html' title='HumanML - would be nice to see it gain popularity'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-318914833983119668</id><published>2007-08-03T00:32:00.000-07:00</published><updated>2007-08-03T00:47:10.872-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Innovation and Technology on Second Life</title><content type='html'>After some discussion in the Always On chat panel (all brilliantly hosted as far as i'm aware by &lt;a href="http://www.divergentshadows.com/"&gt;Evan Donn&lt;/a&gt;, aka &lt;a href="http://onmedia.goingon.com/user/divergent"&gt;divergent&lt;/a&gt;), I really think Second Life (meetups, conferences etc rather than generally walking around) could be very useful for quite a lot of us.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;Update : I created the Eventful group "&lt;/span&gt;&lt;a href="http://eventful.com/groups/G0-001-005603639-3"&gt;&lt;span style="color:#ff0000;"&gt;SecondLifeTech&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#ff0000;"&gt;" for second life technology events - the general one had over 5000 random events.... &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;There was a general view that moving what we were doing into a "virtual" environment would be quite a neat thing to do.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;So I am going to try and capture (a) &lt;strong&gt;active&lt;/strong&gt; places, groups etc&lt;br /&gt;in Second Life discussing innovation and technology, and (b) related innovation&lt;br /&gt;and technology events. Follow their events listing on SL is too difficult. &lt;/blockquote&gt;&lt;br /&gt;So why not use &lt;a href="http://eventful.com/"&gt;Eventful&lt;/a&gt;, with a tag of "secondlife tech" to life tech and innovation events? Please let me know if you know of some. I will be adding the Amazon AWS event and meetup location first. Not sure where I'll list them, but i'd like to get more involved... there are some good people out there and i enjoyed talking with them on AO!! Contact me if you know anything i should at add weblivz AT hotmail DOT com&lt;br /&gt;&lt;br /&gt;ps. next year i'd like to see AO open thing up so i can finally have a good reason for my webcam and mic and ask from questions direct to the panel. They answered three this year which was great!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-318914833983119668?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/318914833983119668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=318914833983119668' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/318914833983119668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/318914833983119668'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/innovation-and-technology-on-second.html' title='Innovation and Technology on Second Life'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-476473401304847948</id><published>2007-08-02T07:27:00.000-07:00</published><updated>2007-08-02T07:42:07.973-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Blognation</title><content type='html'>&lt;em&gt;&lt;span style="font-size:85%;color:#ff0000;"&gt;update: FWIW, i'd like to see something similar for Latin America. I got my first ASDL line there long before i could get one in Scotland.&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;br /&gt;&lt;a href="http://www.vecosys.com/"&gt;Sam Sethi&lt;/a&gt; et al are doing some very cool things over at &lt;a href="http://blognation.com/"&gt;Blognation &lt;/a&gt;- especially if you have ever wished there was something concentrating on the European startup scene. Our countries are generally smaller than some of the big players, but collectively we are quite large in comparison - however, most times i just assume a startup is from the US unless a notice it is not by chance (e.g. &lt;a href="http://plazes.com/"&gt;Plazes &lt;/a&gt;from Germany) or I am told directly (as happened with WeeWorld which is a stone throw away... I do actually know this after having to pay for a replacement window for them - sometimes theory is as far as it should go!).&lt;br /&gt;&lt;br /&gt;You may ask why it matters where a startup is based. Well it does and it doesn't. In terms of technology, it probably doesn't (most of the time). However, US startups are closer to where the action has been traditionally. Even if you are not from the US, you often have US investors and in some cases end up over there. So these startups get more press and there is an uneven buzz about them .... as of course would happen when events are closer, timezones are more aligned (e.g. staying up 'til 3am to listen to always on an be part of the chat is tricky during the week!).&lt;br /&gt;&lt;br /&gt;However, there is a lot going on in Europe and i want to hear more about it. In fact i want to hear more about startups closer to where i am (Glasgow/Scotland in my case) - for a different reason. They may not be competitors or even in the same field, but is it encouraging to know there are more of you out there and from this you can perhaps form smaller localized startup communities - share information - wisdom of crowds and all that! Earlier it &lt;a href="http://twitter.com/ssethi/statuses/182239552"&gt;was mentioned&lt;/a&gt; that with localized startup data and &lt;a href="http://maps.google.com/"&gt;Google Maps&lt;/a&gt; &lt;a href="http://microformats.org/"&gt;Microformats &lt;/a&gt;support we may see this in Blognation sooner than later - now that is something that i think will be very cool indeed!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-476473401304847948?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/476473401304847948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=476473401304847948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/476473401304847948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/476473401304847948'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/blognation.html' title='Blognation'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-6061512619448743345</id><published>2007-08-02T04:50:00.000-07:00</published><updated>2007-08-02T04:56:05.122-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Global Patenting</title><content type='html'>Yesterday i asked a question to the patenting panel at Always On and got a response - what is cool is that it was from &lt;a href="http://www.fenwick.com/attorneys/4.2.1.asp?aid=355"&gt;David Hayes&lt;/a&gt;, Partner, Intellectual Property Group, Fenwick &amp; West . he has represented companies such as Apple, Cisco and Google so really knows his business.&lt;br /&gt;&lt;br /&gt;I simple asked where companies based outside the US should consider patenting - US, China, India or UK (based in the UK).&lt;br /&gt;&lt;br /&gt;The obvious answer was "depends on your market" - but as he said that everyone in the forum commented that most businesses these days are global.... just as he said it :) Good to know we're all on the same page.&lt;br /&gt;&lt;br /&gt;His answer was US, China, India and Europe (i assume you can get a pan-european patent).&lt;br /&gt;&lt;br /&gt;I wonder how soon until China comes at the start of that list?!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-6061512619448743345?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/6061512619448743345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=6061512619448743345' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6061512619448743345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/6061512619448743345'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/global-patenting.html' title='Global Patenting'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5901969713488428158.post-8591111119233096427</id><published>2007-08-01T13:50:00.001-07:00</published><updated>2007-08-01T13:55:02.829-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><title type='text'>Peer Patents</title><content type='html'>After a chat whilst watching Always On today (where i got two questions answered by the panel!!), i decided to join the &lt;a href="http://www.peertopatent.org/"&gt;PeerToPatent&lt;/a&gt; project.&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;Peer-to-Patent involves 1) review and discussion of posted patent applications,&lt;br /&gt;2) research to locate prior art references 3) uploading prior art references&lt;br /&gt;relevant to the claims, 4) annotating and evaluating submitted prior art, and 5)&lt;br /&gt;top ten references, along with commentary, forwarded to the USPTO. The goal of&lt;br /&gt;this pilot is to prove that organized public participation can improve the&lt;br /&gt;quality of issued patents. &lt;/blockquote&gt;&lt;br /&gt;I would ideally like to see a process that is startup friendly and allows you to have your patent validted by the community and reserved for one (or two) years until you ahve the money to pay for it. We all know that for all butthe larger companies, getting patents in more that one country is using finances you really can ill afford to spend on anything other then keeping your business alive!&lt;br /&gt;&lt;br /&gt;Anyway, I hope to be able to help out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5901969713488428158-8591111119233096427?l=weblivz.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://weblivz.blogspot.com/feeds/8591111119233096427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5901969713488428158&amp;postID=8591111119233096427' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8591111119233096427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5901969713488428158/posts/default/8591111119233096427'/><link rel='alternate' type='text/html' href='http://weblivz.blogspot.com/2007/08/peer-patents.html' title='Peer Patents'/><author><name>weblivz</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
