Friday, December 7, 2007

My Linq Article

As you must have noticed by now, I'm trying to limit the heavy technical .Net to my other blogs/articles. But if you are interested in reading about my first experience with Visual Studio 2008, unit testing and Linq (Language INtegrated Query), look no further than my last CodeProject article: LINQ Performance Test: My First Visual Studio 2008 Project.

Also feel free to look at my other CodeProject articles (link on the upper right side). Don't forget to vote!

Thursday, December 6, 2007

Facebook Poaches Google Employees

I've heard this rumor in the valley about a month ago: seems like many people in Google are packing and moving to the next gold mine: Facebook.

With the Google stock at an all time high, the chance of hitting the jackpot at Google right now is slim to none. The "bonanza" (i.e. people becoming millionaires) is way behind us.

Facebook, however, has its future ahead of it. And getting Facebook options now, after the Microsoft's investment inflated Facebook's valuation to $15bn is akin to getting Microsoft stock in 1981.

And then I ran across this Techcrunch post. Not only does it confirm that numerous key people left Google for Facebook, and that 2-4 people a month keep migrating, but it bemoans the fact that Facebook "poached" TechCrunch's product manager, Ben Meyer, by promising him some options (and, one would assume, a better salary than TechCrunch - a startup, could offer).

Michael Arrington, TechCrunch's CEO doesn't take this lying down - he actually asks for any negative Facebook story people can provide, so he could publish it on TechCrunch's blog.

Poaching has been practiced for years. There's actually a whole branch of recruitment called "headhunting" which specializes in locating people in managerial and executive positions at company A, digging up their salaries, benefits and career goals and having company B top those wishes. This way you get an experienced person, with a proven track record. And if s/he was (relatively) underpaid, you get them at market value.

(By the way, there's a link to my resume on the upper right side of this page. Poach me, Facebook! wink).

Noncompete Agreements Kill Innovation

Noncompete agreements are used by companies to make sure their former workers will not jump over to their competitors, taking with them precious proprietary knowledge. Of course, those agreements do not take into account the employee's right to choose his employer and earn an honest living.

All of us who work at the software industry, had to sign a NCA at one time or another. I remember reading through my first NCA years ago, looking at the long list of potential competitors to my employer and wondering "can anyone really enforce this agreement?"

I know a guy who worked in a very specialized part of the industry, with a limited number of companies competing in the same space. When treated like crap by his employer, he up and left to join the competition. His former employer sued him, probably to set an example for any future deserters.

But the judge didn't see the NCA as committing. In a ruling I still find funny to read, he said that due to the fact this guy's employment opportunities are limited, he can only be expected to stay at home and not work. Therefore, his former employer should pay him a full salary to stay at home and not compete. That - or let him work wherever he pleases. Furthermore, he charged the former employer the entire trial costs, plus compensation for time lost by the employee.

This interesting article deals with certain aspects of the NCA. It calls it "DRM for humans" and asserts that just like DRM (Digital Rights Management) hurt the recording industry, so will the hi tech industry suffer if stagnation kicks in, due to employees frozen by NCAs.

It further discusses the theory that Silicon Valley in California prospered while Boston's Route 128 stayed behind, due to the California's courts refusal to enforce NCAs.

Freedom as a success accelerant? I can subscribe to this theory.

What Will Be the Name of the Next IE?


In a short, but funny post in IEBlog, the official Microsoft blog of the Internet Explorer group, Dean Hachamovitch describes the names they've considered for the next release of IE (version 8):

  • IE 7+1
  • IE VIII
  • IE 1000 (think binary)
  • IE Eight!
  • iIE
  • IE for Web 2.0 (Service Pack 2)
  • IE Desktop Online Web Browser Live Professional Ultimate Edition for the Internet (the marketing team really pushed for this one ;-)
  • Ie2.079 (we might still use this for the Math Major Edition)
I liked the self humor (and coming from Microsoft, that's saying something).
Read the full post here.

Tuesday, December 4, 2007

The (New) Bubble Song

Just got this link to a Youtube video from a friend.
It starts funny, but listen to the words: it's a set of current technology trends, set to the (possibly) recognizable tune of Billy Joel's "We didn't start the fire".

I've recognized (and experienced) almost every trend mentioned. Looks like we are indeed in the midst of another bubble cry.

And since the song specifically asks "blog this song", I'm contributing my tiny part in helping the bubble burst smile.


(Thanks for the link Yaniv)

Crash on Demand

Has it been a while since your Windows system crashed? Do you miss the bluish hue of the BSOD (Blue Screen of Death)?

Have no fear! Microsoft to the rescue!

Presenting the most useless feature in Windows that you never knew you had, nor did you need it: the ability to crash your system with a key click. 2 Microsoft Support articles (for Windows 2008/Vista and Windows 2003/XP) will tell you about a key you can add to your registry. After restart, all you need to do is hold the right CTRL key and tap the Scroll Lock key twice. You'll get a full memory and core dump and get a blue screen with the message:
*** STOP: 0x000000E2 (0x00000000,0x00000000,0x00000000,0x00000000) The end-user manually generated the crashdump.

Of course, all jokes aside, this is a good way to get a core dump when you develop drivers or system-level applications. Also, for QA guys, it's a good way to force a crash to see how your app handles it (i.e. what gets corrupted upon restart).

And, let's not forget the fun factor: add this key to a friend's computer, use the key combination, and exclaim "how come your computer crashes every time I use it?" smile

The (Virtual) Dog Ate My Homeork

Have you ever needed to send a report or presentation, which was far from being complete, on a tight deadline? Have you ever needed to just "buy some more time"?

Here's a great solution. Take a file of the type you need to send (Doc, PDF, PPT etc.) and screw a bit with the bits, so it's no longer readable by its software. Send it to your boss/colleague/girlfriend on time, and do your best to sound surprised later when the other party claims the file is unusable.
Prepare a nice excuse, such as "It's my mail client", "my firewall hates zip files", "our spam filter does not allow Docs through" etc.

You can achive this result by using a simple Hex editor, or by renaming an already-corrupt file.
Or, if you are extremely lazy, you can use File Destructor. You can upload any file of any type to this site, and receive it back destroyed beyond use. Free of charge and no size limit.

Now, repeat after me: "the internet ate my file" biggrin.

Sunday, December 2, 2007

Technological Digest V

Another weekend, another digest:
  1. The picture at the top of the post is, in my humble opinion, the best CAPTCHA ever designed. A CAPTCHA is a series of characters drawn in a way that a computer program can't read. Usually in an unintelligible font or on a confusing background. You've seen many CAPTCHA images in your online life: in forums, online forms and even when commenting to this blog. The idea is the same: make sure that whoever fills up the form is a human and not a machine.

    Well, recently, people have been enraged that hackers managed to break the CAPTCHA on TicketMaster.com, thus allowing scalpers to get the bulk of the tickets to a Hannah Montana show (another Disney brainwash), before regular parents.

    This interesting article
    explains why the CAPTCHA hasn't really been broken - but that the TicketMaster developers have been negligent in their jobs. It also provides CAPTCHA samples and explains which you should use on your site - if you don't want to be visited by bots.

  2. 2.2 million people got married in the US last year. 1.4 got divorced. With these odds, it's a wonder why people get married in the first place (my guess: to provide income for lawyers biggrin). However, if you like the odds, I suggest bookmarking the following site, just in case: Divorce360.com is a site for people who need support before, during and after their divorce process. Built by a startup from Florida, I'd give a lot to see the presentation they gave their VCs to get the seed money ("Chances are, more than half the people in this room have gone, or will go through a divorce...").

  3. Have you heard of the BSA (Business Software Alliance), the agency in charge of keeping copyrights for the largest software manufacturers out there? (oh, who am I kidding - mostly Microsoft). Well, according to this article, their strategy of getting money, is targeting small companies, who can't afford to fight back.
    Another interesting fact: they are usually notified of software license violations by disgruntled, or fired IT employees. So managers - be nice to your IT people!

  4. I've been playing around with a beta of SP3 for Windows XP. It works nice, but nothing to write home about. But more and more sources and blogs around the net are reporting that it delivers up to 10% performance boost over SP2. Some of the measurements can be argued, but I'm still trying to understand: why would Microsoft continue to improve XP, when it clearly wants us all moving to Vista? Do they know something we don't? Will Vista fold like Windows ME?

  5. This funny post asks the question: "what if Gmail has been designed by Microsoft?". If you've ever suffered on the MSN Hotmail site, you'd appreciate this smile.

  6. This patent request, filed by Amazon, is quite scary and enraging. It patents "Generating Current Order Fulfillment Plans Based on Expected Future Orders" - or, in plain English - how to ship slower to customers who are not predicted to provide future business. I understand awarding frequent customers - but penalizing the infrequent?

  7. And finally, a new gadget in the ocean of gadgets introduced over the last 2 weekss caught my eye. No, it's not a new media player, or a nifty GPS. This one is more practical and much cheaper.
    If you're a plant lover, you know you're biggest dilemma is when to water your green friend. Enter ThirstyLight - a tiny humidity sensor with a green LED, that will glow when your plant needs water. For $10 a pop - this is a great idea. Get them here.

Document Templates at docstoc

Just found this out: if you need a template, or a sample, for common documents, like NDAs, non-competition agreements, wills, or other legal papers, look no further than docstoc.

After a (free) registration, you'll gain access to a repository of business-oriented documents and a community that contributes, manages and rates them. You'll also be able to download some pretty neat marketing presentations.

Documents are distributed in Office formats (MS and Open) and PDF files.

The highest ranking document on the site right now is the NDA. Check it out (and also take a look at the Beginners Guide to Venture Capital). Clearly people are back in start-up mode :)

Saturday, December 1, 2007

The Immortal Game

I'd like to highly recommend the book I'm finishing right now: The Immortal Game - a History of Chess, by David Shenk.

No, you don't need to love chess to admire this book. You don't even have to know how to play it. The author traces the long (over 1500 years) history of chess and analyzes its impacts on the way we think, plan, strategize and abstract the real world.

His main question is: how could 32 carved pieces, on a 64 square board have so much impact on human intelligence? While tackling this question, Shenk covers other issues, such as:
  • Does chess really help in planning and executing real war strategies?
  • Why are so many chess grandmasters driven to mental illness?
  • Why was chess used as a propaganda tool by dictatorial regimes?
  • Does the child "chess prodigy" really exist, or is it just hard work mixed with myth?
Throughout the book, the readers will follow one particular intriguing game of chess. A practice game, held in a cafe in London between 2 European grandmasters in 1861. No one attributed any importance to this unofficial bout, but it later entered the annals of chess as the last great classical chess game - the "Immortal Game".

Along the way, the book managed to rekindle my interest in chess, history, religion and the human psyche. Give it a try and you won't regret it. A link can be found on the left - as always.

Goating

One thing I was taught early on, when I started working with sensitive material: when you get up, even to get a cup of water, you lock your terminal. The enemy is always around.

Usually, it's no biggie: with Windows, you just click the Windows Key + L and the OS is locked (similarly, if you're an aspiring pianist, you may go for ctrl + alt + del and then click "Lock Computer"). But sometimes you forget. And if you forgot in a room full of tech people, as once happened to me, you pay the price.

One colleague (I now know who) opened my mail program, and wrote an email (full of BS) to our CEO. He left the mouse hovering over the "Send" button. Luckily he didn't click it - and neither did I confused

I've learned my lesson, but many people around the world haven't yet. And their "friendly" colleagues are there to remind them. The art of mucking up a person's workstation in his absence is called "Goating" - because originally people would put a picture of a goat on your screen while you were away (don't ask me why).

It has advanced a bit over the years. Other than changing your background, fonts, language, send emails to distribution lists etc., some people resort to smarter tricks. Such as replacing your desktop with a picture of your desktop (minutes of fun to watch), or invoking Clippy, the annoying Microsoft "helper".

Read and get some more ideas here. And don't get near my laptop!

Search for Faces on Google Images

I've used Google Images many times, to find images that would suit my posts. But I never knew that there is an extra, undocumented parameter, that can make my search easier and more precise.

The parameter is imgtype and it takes 2 values: news and face. I'll let the images do the talking.

Here's what you get when your search term is "gates":
You can see good old Bill, whose image I was looking for, appears the first time at the 13th place, after various gates.

Here's what you get when you add &imgtype=face at the end of the URL:

Clearly we're getting somewhere here - with more people pictures than abstract gates.

Now, when you use &imgtype=news, you get this:


Now you get pictures of Robert Gates, the US Secretary of Defense, who's been in the spotlight lately.
Why not give it a try? Search Google Images





Where Was I? Oh, Yeah...

Call it a combination of lack of time and laziness, but I haven't blogged at all last week.

I spent Thanksgiving in NYC and continued to Boston from there. I can say one thing for certain: if I hear "Silent Night" one more time, I will go postal evil.

So here are some New York vignettes to warm your cold nights:
  1. Everyone got upset that the mayor of NY pushed the lighting of the Christmas tree one week, to "conserve energy" (he can conserve more if he pushes it to next year, in my humble opinion biggrin). Furthermore, the tree this year will be decorated with LED light bulbs.

  2. Apparently, the NYPD is running out of recruits, seeing as how they have Spongebob direct traffic:

  3. A long line went around the block, to get into the Abercombie & Fitch store on 5th avenue. While I was pondering who are those idiots and what are they waiting for, I heard from behind me "Sweet! This is a genius business plan! Let only 4 people in the store at a time: create a line outside and more pressure on the people inside to buy!" - 3 young MBA students (one can only assume) appreciated the situation for me.

  4. Central Park looks A-M-A-Z-I-N-G in the fall. If I were more of a photography enthusiast (which, by judging my photos so far, you can clearly see I'm not), I could have spent an entire day there.

    One tidbit: a bum, lying on the floor and shouting at shoppers with bags full of whatever: "Hey, give me some money! You clearly don't need it, but I do!".

  5. One more thing I've learned this week: don't trust United Airlines. When they tell you a flight from Boston to San Francisco is "direct", they don't necessarily mean "non-stop". As I found this week, not only can they include stops, but they can charge you extra to change back to a "direct, non-stop" flight. Boo mad
That's it, now back to tech tips, news etc. The rest of the photos can be viewed here.