@Lab
Back by popular demand. A semi-regular review of lab life as seen through my computer screen and sometimes in person. A lot has happened since I last posted, here’s just a brief summary.
Strategery Seminar
We heard a great talk from the Lab49 Strategy Practice. We’ve got a team that can analyze markets and business decisions, perform original research and apply analytical methods. They can describe it much better than I can too. They’re mostly MBAs, but unlike George Bush, they speak very clearly.
The Tao of Var
What does the var keyword in JavaScript do? You can declare a variable just by using it, so what does var do? Answer below.
The Bull, the Bear, and the Python
I think its cool that contracts may be specified in programming languages. The SEC proposal is here. Lab49ers picked apart the language choice, its operational semantics, and non-termination and exclusion thereof. I just think its cool.
Rush
A gaggle of Lab49ers, including one of our esteemed fearless leaders, caught the Rush documentary the other day.
oh my God—it’s full of stars
Plenty of early adopters around here, so I’ve seen the IPad…. and … its …
Beautiful
Can You Code a Binary Search?
I can, but I might not get it perfectly right the first time and I don’t have a problem with that… On the other hand, I might, maybe its just a question of mindset and motivation. With a computer telling me I’m not perfect 100 times a day, I wouldn’t state anything with certainty. This guy says that’s no good. Here’s some reasons I might want to care.
Now Using Code Behind – Horrors
Some third party controls are being unwieldy with MVVM and forcing us to use code behind as the least worst option. Its a 1% problem, so its probably not a new holy war.
Blog Catchup
I’ve been away from the blog for a while and missed quite a bit – here’s some things you may have missed on the Lab49 Blog – I did:
Videos: Bruce Kyle of Microsoft and MVP Stuart Celarier explore the new languages features in C# 4.0
InfoGraphics are informative? click here for the answer.
Pomodoro? I wonder if the Pomodoro Technique has any applicability to programmers. If the problem is interesting or exciting enough, I’ll usually work until full exhaustion, then after swearing I’ll only work a few more minutes, work several more hours, sometimes I only stop when the router dies. Thanks, but I’ll pass Ray.
Fed, Frannie and Freddie – As told by Paddy Hirsch.
Silverlight Analytics framework released at Mix.
Var
Var is a scoping keyword and limits a variable to the current function (or closure), so if you don’t use the var keyword, you’re using a global variable, even if you declare it within the function.
@Lab this Week
Humor from ZeroHedge is still popular. Unfortunately, the Goldman they’re praising is not me.
Heisenbugs
If you’re looking for Heisenbugs try MS Chess. It can detect subtle hard to repeat bugs in concurrent programs. It works in both managed and native windows programs.
CHESS repeatedly runs a concurrent test ensuring that every run takes a different interleaving. If an interleaving results in an error, CHESS can reproduce the interleaving for improved debugging. CHESS is available for both managed and native programs.
read more about it here and here.
Tech Seminar
Kalani presented Lambda Calculus. It dates from the 1930’s, but my only experience is .Net lambda expressions. I had the strange sense that I knew what he was talking about, but I still didn’t understand half. I think it’s going to start making sense when I get serious about studying .Net lambda’s which I’m still half hacking.
In the Web World…
Route.JS
Marak spoke at NYC.js (New York City JavaScript) Meetup for one of my ongoing open source projects, route.js
route.js is simple JS framework for creating statefull navigation in the browser based on location.hash changes.
Marak gave me a demo and it seems like an awesome and incredibly lightweight script. Its less than 100 lines right now. You can make a single page that has lightning fast links, making it look like a whole bunch of pages. Basically, its easy DHTML. There’s a bunch more uses too, like infinite tree navigation.
Kaazing
Some folks went to a full day Kaazing class. Here’s the techno speak on Kaazing: “it’s a WebSocket server implementation that offers full downgraded emulation (on both client and server) for browsers that don’t support WebSockets.” I think its a really awesomely cool real-time web product.
GO – Google’s new programming language
Quite a bit of interest in GO… Google believes will combine performance with speed. GO is based on the C programming language but also incorporates elements of all dynamically linked languages like python, and even pascal/modula/oberon family of languages.
There is an hour long tech talk available.
Heard @Lab
“If you really want a solid brain f*ck, I recommend Haskell.”
“I’d go outside, but they don’t have slashdot outside”
I was never a big slashdot fan, but I got sucked in and its now on my home page news feeds.
But Wait, There’s More…
Visual Studio, Now in Linux?!
Online IDE – wow
An IDE in your browser designed for the cloud.
PowerShell
We have a PowerShell evangelist, who also happens to be a MS MVP in PowerShell. I personally have seen him evangelizing PowerShell all over the office. (Maybe I’ll use it for my video project) He makes a good point on his blog about thanking the people of Lab49. I personally am inspired to do more just being @Lab.