Galin Iliev's blog

Software Architecture & Development

VS 2005 SP1 is here. Go and get it....

The SP1 for Visual Studio 2005 with over 2200 bug fixes (yay) is here, however, don't just go installing without checking out the release notes file first. It includes warnings like: the install takes a loooooooooong time, requires a lot of hard drive space and has a lot of “features” that might be a little confusing. Here are some of the points from the Release Notes, but definitely read through the entire thing  in advance of installing or like many others who just got so excited and clicked the install button only to get very frustrated, you might find yourself dragging your sorry butt to the local watering hole to ease the pain.

Quoting from the Release notes:

Service pack installation takes longer than the original product installation:
Installing Visual Studio 2005 SP1 takes longer than installing the original release version because the SP1 installation is much like a product installation, but with additional installation tasks. Installation time depends on which product is installed and the computer’s configuration.

Installation requires significant disk space:
Disk space equal to that taken by the original product installation may be needed to install a service pack. If you have more than one Visual Studio product installed, you will need disk space for each service pack installation. You can find an estimate of the required disk space on the download page for the service pack.

Visual Studio 2005 SP1 tries to install multiple times:
The service pack will run multiple times if you have multiple Visual Studio products installed on your computer. Do not start the installation more than once.

Dialog boxes are partially hidden during installation:
This problem occurs if you move the Configuring … dialog box away from the center of the screen. Subsequent dialog boxes are centered on the Configuring … dialog box. If the Configuring … dialog box is near the corner of the screen, larger dialog boxes that display later may be partially off the screen.

Visual Studio 2005 SP1 will not install immediately after a Visual Studio compilation:
You cannot install Visual Studio 2005 SP1 until the debugger service closes.
To resolve this issue, do one of the following:
• Finish compilations that are in progress and wait for the debugger service to close. This could take up to ten minutes.
• Use the Task Manager to end all instances of the mspdbsrv.exe service.

Team Foundation Server prerequisites:
You must install the update from KB article 919156 ( before you install Visual Studio 2005 SP1. This update makes sure that the server does not process client requests during the installation of SP1.

Uninstallation of Visual Studio 2005 Web Application Projects required:
Follow these steps to install Visual Studio 2005 SP1 if you have Visual Studio 2005 Web Application Projects installed:
1. Uninstall the Visual Studio 2005 Web Application Projects ( add-in.
2. Install Visual Studio 2005 SP1.

Virtual PC on Windows Vista

Yesterday I had interesting experience: I was trying to run Virtual PC/Server on Windows Vista.
After installing full IIS on Vista and turnning off UCA :) installation went smoothly. I copied esixting VHD with Windows XP SP2 on it and attached to newly created vurtual machine.

According Web-based manager and CPU meter Guest OS was started but... I see only black screen on remote client. From this point on I tried bunch of install/deinstall and so on. My friend Marto told me about existing beta of Virtual PC 2007 and I decided to give a shot.

After patiently register and download the installation package I installed it ... and ... can you imagine ... same nasty black screen.

As this is VPC 2007 is beta there is posts with bugs I looked at bug list. Lucky enough I found similar post which describe same problem and says...  the problem is gone after restart or two.

I restarted my machine and THAT"S IT - IT WORKS :)

Probably I should mention I did all these efforts on laptop. Since I have the laptop I have used mainly hibernate feature and it is restarted only when MSI, OS or some software rewuire restart.

It is amazing how I forgot how good old restart resolves many many problems. I have been working with windows since windows 3.1 and used to know about magic of restart. Right now I am restarting less and less (and resintsalling my working machine very rarely)

WPF/E CTP is out

Microsoft released the first CTP for WPF/E. “WPF/E” is the Microsoft solution for delivering rich, cross-platform, interactive experiences including animation, graphics, audio, and video for the Web and beyond. Utilizing a subset of XAML (eXtensible Application Markup Language)-based Windows Presentation Foundation technology, “WPF/E” will enable the creation of content and applications that run within multiple browsers and operating systems (Windows and Macintosh) using Web standards for programmability. Consistent with Web architecture, the XAML markup is programmable using JavaScript and works well with ASP.NET AJAX. Broadly available for customers in the first half of 2007, “WPF/E” experiences will require a lightweight browser plug-in made freely available by Microsoft. The CTP contains the WPF/E plugin itself and SDK There is a Macintosh version as well Links: WPF/E Downloads WPF/E Dev Center

Top ten geek business myths

Have you ever thought you can repeat Bill Gates' success?! Or you could be next IT millionaire!?

Be sure: This is not easy!!!

Not convinced J  of course not:

Read “Top ten geek business myths” article below:

Since I've started my new career as a venture capitalist I have become keenly aware of some of the classic mistakes that geeks make when trying to raise money for a new business. Instead of writing the same comments over and over again I thought I'd try to summarize some of the mistakes that people -- especially smart people -- make when they decide to try to turn their bright ideas into money. Here then is my top-ten list of geek business myths:

Myth #1: A brilliant idea will make you rich.

Reality: A brilliant idea is neither necessary nor sufficient for a successful business, although all else being equal it can't hurt. Microsoft is probably the canonical example of a successful business, and it has never had a single brilliant idea in its entire history. (To the contrary, Microsoft has achieved success largely by seeking out and destroying other people's brilliant ideas.) Google was based on a couple of brilliant ideas (Page rank, text-only ads, massive parallel implementation on cheap hardware) but none of those ideas were original with Larry or Sergey. This is not to say that Larry, Sergey and Bill are not bright guys -- all three of them are sharper than I can ever hope to be. But the idea that any of them woke up one day with an inspiration and coasted the rest of the way to riches is a myth.

Myth #2: If you build it they will come.

There is a grain of truth to this myth. There have been examples of businesses that just built a product, cast it upon the ether(net), and achieved success. (Google is the canonical example.) But for every Google there are ten examples of companies that had killer products that didn't sell for one reason or another. My favorite example of this is the first company I tried to start back in 1993. It was called FlowNet, and it was a new design for a high speed local area network. It ran at 500Mb/s in a time when 10 Mb/s ethernet was the norm. For more than five years, FlowNet had the best price/performance ratio of any available network. On top of that, FlowNet had built-in quality-of-service guarantees for streaming video. If FlowNet had taken over the world your streaming video would be working a lot better today than it does.

But despite the fact that on a technical level FlowNet blew everything else out of the water it was an abysmal failure as a business. We never sold a single unit. The full story of why FlowNet failed would take me far afield, but if I had to sum it up in a nutshell the reason it didn't sell was very simple: it wasn't Ethernet. And if we'd done our homework and market research we could have known that this would be, if not a show-stopper at least a significant obstacle. And we would have known it before we spent tens of thousands of dollars of our own money on patent attorneys and prototypes.

Myth #3: Someone will steal your idea if you don't protect it.

Reality: No one gives a damn about your idea until you actually succeed and by then it's too late. Even on the off chance that you do manage to stumble across someone who is as excited about your idea as you are, if they have any brains they will join you rather than try to beat you. (And if they don't have any brains then it doesn't matter what they do.)

Patent protection does serve one useful purpose: it can make investors feel warm and fuzzy, especially naive investors. But I strongly recommend that you do your own patent filings. It's not hard to do once you learn how (get the Nolo Press book "Patent it Yourself"). You'll do a better job than most patent attorneys and save yourself a lot of money.

Myth #4: What you think matters.

Reality: It matters not one whit that you and all your buddies think that your idea is the greatest thing since sliced pizza (unless, of course, your buddies are rich enough to be the customer base for your business). What matters is what your customers think. It is natural to assume that if you and your buddies think your idea is cool that millions of other people out there will think it's cool too, and sometimes it works out that way, but usually not. The reason is that if you are smart enough to have a brilliant idea then you (and most likely your buddies) are different from everyone else. I don't mean to sound condescending here, but the sad fact of the matter is that compared to you, most people are pretty dumb (look at how many people vote Republican ;-) and they care about dumb things. (I just heard about a new clothing store in Pasadena that has lines around the block. A clothing store!) If you cater only to people who care about the things that you care about then your customer base will be pretty small.

Myth #5: Financial models are bogus.

As with myth #2 there is a grain of truth here. As Carl Sagan was fond of saying, prophecy is a lost art. There is no way to know for sure how much money your business is going to make, or how much it will cost to get to market. The reason for doing financial models is to do a reality check and convince yourself that making a return on investment is even a plausible possibility. If you run the numbers and find out that in order to reach break-even you need a customer base that is ten times larger than the currently known market for your product then you should probably rethink things. As Dwight Eisenhower said: plans are useless, but planning is indispensible.

This myth is the basis for one of the most classic mistakes that geeks make when pitching their ideas. They will say things like "Even if we only capture 1% of the market we'll make big bucks." Statements like that are a dead giveaway that you haven't done your homework to find out what your customers actually want. You may as well say: there's a good chance that only 1 customer in 100 will buy our product (and frankly, we're not even sure about that). Doesn't exactly inspire confidence.

Myth #6: What you know matters more than who you know.

Reality: You've been in denial about this your whole life. You were either brought up to believe that being smart mattered, or you just didn't believe your mother when she told you that getting along with the other kids was more important than getting straight A's.

The truth is, who you know matters more than what you know. This is not to say that being smart and knowledgable is useless. Knowing "what" is often an effective means of getting introduced to the right "whos". But ultimately, the people you know and trust (and more importantly who trust you) matter more than the factual knowledge you may have at your immediate disposal. And there is a sound reason for this: business decisions are horrifically complicated. No one person can possibly amass all the knowledge and experience required to make a broad range of such decisions on their own, so effective business people delegate much of their decision-making to other people. And when they choose who to delegate to, their first pick is always people they know and trust.

Ironically, C programmers understand this much better than Lisp programmers. One of the ironies of the programming world is that using Lisp is vastly more productive than using pretty much any other programming language, but successful businesses based on Lisp are quite rare. The reason for this, I think, is that Lisp allows you to be so productive that a single person can get things done without having to work together with anyone else, and so Lisp programmers never develop the social skills needed to work effectively as a member of a team. A C programmer, by contrast, can't do anything useful except as a member of a team. So although programming in C hobbles you in some ways, it forces you to form groups whose net effectiveness is greater than the sum of their parts, and who collectively can stomp on all the individual Lisp programmers out there, even though one-on-one a Lisper can run rings around a C programmer.

Myth #7: A Ph.D. means something.

Reality: The only thing a Ph.D. means is that you're not a moron, and you're willing to put up with the bullshit it takes to slog your way through a Ph.D. program somewhere. Empirically, having a Ph.D. is negatively correlated with business success. This is because the reward structure in academia is almost the exact opposite of what it is in business. In academia, what your peers think matters. In business, it's what your customers think that matters, and your customers are (almost certainly) not your peers.

[UPDATE: this is not to say that getting a Ph.D. is useless. You can learn a lot of useful stuff by getting a Ph.D. But it's the knowledge and experience that you gain by going through the process that is potentially valuable (for business endeavors), not the degree itself.]

Myth #8: I need $5 million to start my business

Reality: Unless you're building hardware (in which case you should definitely rethink what you're doing) you most likely don't need any startup capital at all.
Paul Graham has written extensively about this so I won't belabor it too much, except to say this: you don't need much startup capital, but what you do need is a willingness to work your buns off. You have to bring your brilliant idea to fruition yourself; no one else will do it for you, and no one will give you the money to hire someone to do it for you. The reason is very simple: if you don't believe in the commercial potential of your idea enough to give up your evenings and weekends to own a bigger chunk of it, why should anyone else believe in it enough to put their hard-earned money at risk?

Myth #9: The idea is the most important part of my business plan.

Reality: The idea is very nearly irrelevant. What matters is 1) who are your customers? 2) Why will they buy what you're selling? (Note that the reason for this could very well be something like, "Because I'm famous and I have a huge fan base and they will buy sacks of stale dog shit if it has my name on it." But in your case it will more likely be, "Because we have a great product that blows the competition out of the water.") 3) Who is on your team? and 4) What are the risks?

Myth #10: Having no competition is a good thing.

Reality: If you have no competition the most likely reason for that is that there's no money to be made. There are six billion people on this planet, and it's very unlikely that every last of them will have left a lucrative market niche completely unexploited.

The good news is that it is very likely that your competition sucks. The vast majority of businesses are not run very well. They make shoddy products. They treat their customers and their employees like shit. It's not hard to find market opportunities where you can go in and kick the competition's ass. You don't want no competition, what you want is bad competition. And there's plenty of that out there.

Special bonus myth (free with your paid subscription): After the IPO I'll be happy.

If you don't enjoy the process of starting a business then you will probably not succeed. It's just too much work, and it will suck you dry if you're not having fun doing it. Even if you get filthy stinking rich you will just have more time to look back across the years you wasted being miserable and nursing your acid reflux. The charm of expensive cars and whatnot wears off quickly. There's only one kind of happiness that money can buy, and that is the opportunity to be on the other side of the table when some bright kid comes along with a brilliant idea for a business.

All these myths can be neatly summarized in a pithy slogan: it's the customer, stupid. Success in business is not about having a brilliant idea. Bright ideas are a dime a dozen. Business is about taking a bright idea and assembling a team that can turn that idea into a product and bring that product to customers who want to buy it. It's that simple. And that complicated.

Good luck.


Note: I liked this so much so I decided to make full copy.


Demystifying C# 3.0 - Sahil Malik's series

MS MVP Sahil Malik wrote nice serie of short articles about C# 3.0

a) Demystifying C# 3.0 - Part 1: Implicitly Typed Local Variables "var"
b) Demystifying C# 3.0 - Part 2: Anonymous Types
c) Demystifying C# 3.0 - Part 3: Extension Methods
d) Demystifying C# 3.0 - Part 4: Lambda Expressions
e) Demystifying C# 3.0 - Part 5: Object and Collection Initializers
f)  Demystifying C# 3.0 - Part 6: (LINQ) Query Expression Translation (to C# 3.0)
g) Demystifying C# 3.0 - Part 7: Expression Trees

These topics are very good described. Enjoy

Schumacher retires from racing

"Words are not enough and whatever I could say now will never fully express how much I love this fascinating world of motor sport and all it has given me. From go-karting to Formula One, I have lived through moments that I will never forget. I am profoundly grateful for everything I have had. I want to thank everyone who has accompanied me, supported and inspired me, right back to the days of my childhood."

With this words 7th times F1 World Champion annonced his decision that season 2006 will be his last as F1 driver.

But he will remain as the most succesfull F1 driver in history of Formula1, the man who wrote the golden pages of Formula 1 and broke all records...

Good luck, Michael. We will be missing your style on the track and your never ending willingness to WIN.


Make IE and FireFox go faster than ever

This is interesting... Do you want to boost your browser?! Who doesn't!? :)

Take a look at

Interesting but IE has two registry keys that set number of connection to server. Copied from (the post is from October 17, 2001. How did I miss this?!)

"Go to the registry key:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings

Look for the following values:


If they don't exist, create them as DWORD values.

Set these values to the number of simultaneous connections you want to allow. A good value is 50." Download tweak11.reg!(.18 KB)