Vista- Windows Vista Tips
posted in Vista | 0 Comments
posted in Vista | 0 Comments
I have been in hell with my main work laptop since Friday. On Friday I tried installing the Visual Studio SP1 upgrade.
The first time I tried the upgrade I didn’t realize that I’d need 2+ GB of free space so the installer failed.
VS SP1 apparently still has a bug where if the install fails, the roll-back fails horribly, corrupting your
.NET 2.0 install. Trying to run the VS SP1 setup or repair the .NET 2.0 gives you the cryptic error message “Error 25007.Error occurred while initializing fusion. Setup could not load fusion with LoadLibraryShim(). Error: The handle is invalid.”.
Since then I’ve spent 3 days uninstalling and reinstalling things and trying to find advice on web-sites
for how to fix the problem. Most of the advice didn’t help but I finally found a suggestion
in the end of this post that solved the problem. By deleting the c:\Windows\WinSxS\Policies directory, I could reinstall .NET 2.0 and proceed from there. What a nightmare.
I’m a little reluctant to point this out since there were some very good people on the team, but its pretty clear that some of the fundamental underlying problem is the technology called Fusion. This was an ambitious effort to fix some of the system fragility problems with the registry and dll-hell on Windows. The result can only be described as a fix that is 10x worse that the problem. The registry certainly has its problems, and most developers had figured out how to rename DLLs with strange version #s when they made incompatible changes. Things were fragile but a reasonably skilled Windows power-user or developer could fix them. With fusion the model is so much more complex and the databases are more opaque so pretty much the only people who can fix problems are the developers on the Fusion team. Its incredibly easy to get the wrong thing in the GAC (global assembly
cache) or otherwise make some minor configuration mistake that is almost impossible to fix.
Who knows, maybe this is a product opportunity. It seems like pretty soon there might be a big market
for fusion repair tools. Go for it…
posted in Technology | 4 Comments
posted in Skiing | 0 Comments
posted in Technology | 0 Comments
posted in Launch21, Technology | 0 Comments
The power came back on late Sunday night- what a relief. All that I can say is that having the power off
was miserable. I can’t imagine how horrible it must be for people who still don’t have power now that
the work week has started. At least we didn’t run out of laundry and were able to go to the gym for a hot
shower.
It is pretty incredibly how poor the information availability was during the past week. Back at the 2003 PDC
we did all kinds of demos of cool visualizations for situation-rooms and emergency response centers. But we never
mentioned anything about helping provide information to people so they can find out what is going on. I’m sure
there are kinds of social issues involved with providing more detailed information (why is that block prioritized ahead
of mine?) but it still seems like we could do much better.
With my server running nicely in its rack in the datacenter, I thought I’d mention how great of a change
it is to have modern virtualization technology. This is one of those things that took a bit to sink in. It was pretty
clear right away why it was cool to have virtual memory and preemptive multi-tasking back a couple of decades ago. But
when I can run all my apps at once nicely in one OS, why would I care about running more than one OS?
But with just 1U of space in the datacenter, the flexibility that virtualization gives me is just really amazing.
The machine I got can easily expand to more than 10GB ram, 8 cores of CPUs, and 3TB of disks space. Those upgrades
are all much easier than buying an extra hardware box. And eventually I’m sure I will buy an extra piece of hardware
for redundancy. But in the meantime I can setup the services I’m building, deploy them on their own virtual
machines, and they are all easy to manage. System updates used to be scary for a server when you don’t have physical
access, since if the machine didn’t reboot right, you weren’t there to reset it. Now if I need to reset a “machine”
I just log into the host machine and go to its console.
Once I have a second server, I don’t need to do any complicated reconfiguration. I can just move some of the
VM configurations to the new box, and start them up. I didn’t even have to shut-down my app servers to bring
the physical hardware to the data center- they were all suspended, and once I booted up the host they were all
able to just resume. I could be wrong but it looks like reboot times might be much easier to manage and
much quicker with this setup too.
This stuff is going to be industry-changing for sure. Its already taking off quite a bit, but its clear
that within a couple of years its going to be ubiquitous. On the other hand, Microsoft’s current licensing schemes seem
like they are going to be a serious problem. Just dealing with product activation already puts Windows Server
at a huge disadvantage in this kind of world where its trivially easy to just clone a Linux machine image
but Windows Server puts me through many more hoops to get it to work. Microsoft is going to have to figure
out how to charge (and not gouge) for this stuff without being too much of a nightmare for the administrator.
If they don’t their already precarious position in the server space is going to collapse.
posted in Technology | 0 Comments
Thursday night we had a huge wind storm here in Seattle and the power has been out in our neighborhood for
a day and a half now. Since my email server has been hosted out of my house, it is down at the moment and
presumably my email is bouncing. I’m going to try to move it somewhere hosted as soon as possible-
for now I haven’t heard any solid predictions of how long it will take to get the power back. Oh, and its
getting pretty chilly at home too. At least the stove works and we have a ton of candles.
I went and installed the Fast Carrot server at
GridZones last night. With the power out it wasn’t doing any good
and this way maybe I can make a push to get the site ported over to it over the weekend.
Update: My email appears to be working now. I’ve moved it to a hosted service so that should be safer.
]]>
posted in Home | 0 Comments
Mike Taulty has posted
a cool sample of playing 12 video streams at once and animating them
using WPF/E. It looks like there is a bug on Windows where the videos aren’t caching property so it looks
like the video is being downloaded 12 seperate times. The Mac doesn’t have the same issue but the video playback
and especially the animation are not nearly as smooth (despite my Mac having a slightly faster CPU than the PC).
It looks like both MIX07
and the Microsoft PDC have been scheduled for 2007. I’ve added them both to my
calendar of technology events on CalendarData.com. At the moment I’m more likely to go to Mix than
the PDC, but we will see when it gets a bit closer. I’m already planning on being in Palm Springs for
Coachella
2007 the night before so flying down to Vegas is just a short hop.
]]>
posted in WPF | 0 Comments
I will shortly be moving the hosting for CalendarData.com and probably associated sites. So far
I have been using 1and1 which has worked out fine for development
purposes, at least on the linux side. Their ASP.net hosting is pretty horrible and once the traffic starts
to build as it has for calendardata, their solutions are insufficient.
My current approach is to build out 1U servers using the Tyan
Tank GT20 barebones. They seem to offer the most flexibility since you can put 2x Intel Woodcrest CPUs in which themselves can
be each up to 4 cores, + it supports 4 hot-swap hard-drives. Running either VMWare or Xen for virtualization I can easily
deploy multiple “servers” on one unit and as I need more capacity I can initially upgrade that first physical server with
more RAM, CPU and disk, and later move them off to additional physical servers.
I’m currently shopping for a co-location service. In addition to the folks
I mentioned back in March I’m also
looking at gridzones- they have some attractive rates for 1U, although
I’m trying to find someone who has experience with their service.
On the WPF/E front, I’ve revised my “detectwpfe.js” script. It now encodes the user setting as
WPFE/YES/IE so that it will group better in the Google analytics display where the YES or NO is the
most important state to analyze. You can download the update here.
]]>
posted in Technology | 0 Comments
function GetWPFEStatus()
{
var Status = "WPFE-";
var Installed = false;
if((navigator.appVersion.indexOf('MSIE') != -1))
{
Status += "IE-";
try
{
var TheWPFE = new ActiveXObject("AgControl.AgControl.0.8");
if(TheWPFE)
Installed = true;
}
catch(e)
{
}
}
else
{
try
{
if((window.GeckoActiveXObject && navigator.userAgent.indexOf('Windows') != -1))
Status += "FF-WIN-";
else if(navigator.userAgent.indexOf("Macintosh") != -1)
Status += "MAC-";
else if(navigator.userAgent.indexOf("Linux") != -1)
Status += "LINUX-";
else
Status += "UNK-";
for (var i=0; i < ; i++)
{
}
You can then wire this in to your Google Analytics reporting like this-
__utmSetVar(GetWPFEStatus()); _uacct = "-your-code-here-"; urchinTracker();
posted in WPF | 0 Comments
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| « Nov | Jan » | |||||
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 | ||||||