Welcome...



...All those moments will be lost in time, like tears in rain....

- soliloquy from Blade Runner


Bits and bytes do get lost, awash in the rain of data flow that is Internet. They slip away from us, never to found again... some of them will be captured here, many more will not... like tears in rain...



Monday, July 30, 2012

Rebuttal of WSJ article about who created interent


 Wall Street Journal had an article stating that internet was invented at Xerox, and that government didn't do anything. Luckily, people involved are still alive and very outspoken - Michael Hiltzik cut his theoryin to shreds:

http://www.pcmag.com/article2/0,2817,2407539,00.asp

Especially after that NBC anchor introducing Tim Berners-Lee and admitting to not knowing who he is!

Thursday, July 26, 2012

Knockout.js

 I've heard about knockout.js when I was reading one of MVC posts from Steven Sanderson. His books are great, so I took note of that library, but didn't have time to try.

 So I did went to a meetup yesterday, and it was very useful. MVVM pattern is not something I've encountered before - in the nutshell, it's basically separation of UI logic from business logic. It allows for data binding between model and views - in "viewmodel" part.

 To do that, knockout uses data attribute from HTML5 - data-bind construct allows objects to be bound to html elements.

Simple example:

View:

<p>First name: <strong data-bind="text: firstName"></strong></p>

<p>First name: <input data-bind="value: firstName" /></p>

<button data-bind="click: capitalizeLastName">Go caps</button>

ViewModel:

function AppViewModel() {
    this.firstName = ko.observable("A");

    this.capitalizeFirstName = function() {
        var currentVal = this.firstName();        // Read the current value
        this.firstName(currentVal.toUpperCase()); // Write back a modified value
    };    
}

// Activates knockout.js
ko.applyBindings(new AppViewModel());


 Interactive tutorial is available on their site:


Knockout.js tutorial

It's very object oriented javascript (who said Javascript is not object oriented language ? :)) and it makes sense when you read the code - it's very good library. I know how to do those things manually in javascript because I have been working with javascript for 10+ years, but this little library makes development easier and end code more readable. 

 Best part is that knockout will be included with Visual Studio 2012, since it works very nicely with MVC 4.0 and jQuery.

Can do attitude

 People in US will never cease to amaze me. When I initially moved to Bay Area, 12 years ago, I went through a cultural shock; it wasn't a big one, but it was unsettling. From realization that I am missing words for everyday things to homeless people in San Francisco, to living in suburb first time in my life (we moved to City since then!) ... on the positive note, smiley everywhere, sunny attitude and really, we've met a lot of friendly people, that helped me to not to feel like a stranger, full of advices and ready to help when we needed help (thanks Ceco!).
 
 Yesterday, I went to meetup for knockout.js - javascript library I've heard much about but didn't have time to play with to see what's so good about it. Speaker started the presentation flatly stating that he has speech impediment - he stutters! He wasn't bad, actually and whole presentation was very good, but what baffled me was how matter of fact he was - yes, I have the problem, and yet, I do refuse to let that stop me from presenting.

It's hard to explain how strange this sounds to somebody outside of US - you stutter and you want to do public presentation? Really? I am impressed and I think that attitude of "I can do it" is what I really like here - people _do_ believe they can do things, and they do work very hard to make them possible.

It reminds me of that wonderful Mark Twain's book - "Connecticut Yankee in King Arthur's Court" - main character is just sure he can turn things around, or build anything he needs to build - he doesn't doubt that for a second. "I can do it' is such a part of character that it convinces reader too and you are not surprised by changes he made in just couple of short years that he is in 6th century.

It did make me think about the way I am approaching problems, that's for sure. 

Monday, July 23, 2012

Visual Studio 2010 and "Can not create the window" error

 This very cryptic error showed up while Visual Studio was loading. After some digging, turned out that my changes to machine.config caused Visual Studio to complain. I've recreated my entries in machine.config (on both Framework and Framework64 folders) making sure that all tags are properly formatted and error's gone.

http://connect.microsoft.com/VisualStudio/feedback/details/458377/cannot-create-the-window-dialog-appears-during-vs-2010-startup

Wednesday, July 18, 2012

XKCD.com - Awesome or what?


 I don't know is this because of all that statistics and probablilty classes I had to take, but I have a soft spot for a genetic algorithm and this joke is awesome:

 http://xkcd.com/720/

Tuesday, July 10, 2012

Oatmeal versus incompetent lawyer

Confronted with lawyer bent on extortion, he raised 200K for charity, instead of paying ransom of 20K.

Twisted part - they stole his content and they threaten to sue him!

Here's the pile of money before donation:
http://boingboing.net/2012/07/09/oatmeal.html