« March 2005 | Main | May 2005 »

April 30, 2005

On ADO.NET 2.0 Asynchronous Operations

Originally Posted 4/30/2005 and imported here from my old blog.

Okay, it’s cool that ADO.NET 2.0 now supports asynchronous operations like BeginExecuteReader. That’s the good news. The bad news is that the DataTable Load does not. Suppose you use BeginExecuteReader to execute a query and (for some really dumb reason) it returns 10,000 rows. If you want to move that DataReader into a DataTable, you can use the new DataTable.Load and point to the DataReader. That's cool, and fast(er) than doing it yourself. However, it turns out that DataTable.Load takes far more time than the initial query. That’s because when SQL Server returns from the query, it’s not really done. It has just built the first buffer of rows and told ADO to come and get them. At this point DataReader.Read (called by Load behind the scenes) starts fetching those rows and SQL Server turns around and starts finding more. Unfortunately, all of this takes place synchronously so your cool progress bar incremented while the asynchronous operation was running does not get bumped. Nope, the Load method also eats the events fired by the Timer control too so plan B won’t work either.

It would have been nice to enable asynchronous Load and Fill as well as Execute. I would settle for progress events on Load and Fill... This would give me a chance to say “Forget it... this is taking too long” or “See folks, it's still working and not really locked up”.

April 29, 2005

Backing Up, Restoring & Rolling The Dice


April 29, 2005 • Vol.27 Issue 17
Page(s) 22 in print issue

I lost another hard drive last weekthat makes two this month. It makes me realize that hard disks (nay, any kind of mechanical media) have a limited lifetime. As disks get larger, the amount of information at risk grows, as does the difficulty of finding some way to save what’s important. What I really need is a wife who can double as an IT manager, so I don’t have to worry about keeping my systems working smoothly and the data backed up and safe.

After this little scare I started looking around for better backup solutions. I have a license for Nero 6 Ultra, which can burn DVDs, and it did a reasonably good job of archiving my most important stuff. Now that’s the rub isn’t it? We back up what we think is important and leave the rest to chance knowing that we can rebuild the system if there’s a major crash. Too bad more of us don’t actually go through the process of recovering a system from scratch. It’s not that easyespecially if you try to restore a system image to different hardware.

VPC & I Have Parted Ways

At the last Dev Connections conference, I knew that VPC and I were quits: It locked up too many times. After having seen a slimbay drive carrier for my ThinkPad, I decided that I could boot off a second Hitachi 7,500rpm drive with a demo version of XP, eliminating the need for VPC. I was able to build a base system very quickly using the ThinkPad Recovery CDs, but they did not include the latest XP SP2 or the dozens of Microsoft/IBM updates released since then. Fortunately, IBM has also been working on this issue. I discovered a (relatively) new program called the ThinkPad Software Installer. This puppy does what Windows Update does: It walks the Registry to see what IBM drivers are installed and shows you which drivers are out of date. It even checks the BIOS version and lets you choose which drivers to updateincluding the BIOSall without having to touch (pretty much) anything.

Ghost Fails To WorkAgain

Now that I had an image to work with, I (naturally) thought that Symantec Ghost would be able to back up the drive/partition and let me restore it. Ah, no. Although Ghost 9.0 could back up the partition (if the moon is in the right alignment), the restored version would not boot. I called the so-called support people and discovered (as many, many people have discovered) that their support staff in India is, well, terrible. They are barely understandable and can’t seem to do anything but read a script or ask someone else for help. I wonder if they just phone back to the states for the hard questions. After hours on hold, I gave up and dug through Google and the IBM site for help. The bottom line: Ghost can’t do it viably, reliably, or easily.

The IBM Backup/Restore Solution

After several days of frustration, I called IBM support and was connected to someone in Atlanta. Wow, what a difference! The IBM people were professional, smart(er), and made some great suggestionsin Englishthat I could understand. I described the problem, and they suggested IBM’s own backup program. I didn’t want to use it because it requires me to dedicate a big hunk (up to half) of my hard drive to the backup image. And what happens if I want to use another drive or the original drive fails? The support staff assured me that the new program (released in January) would be a far better solution.

I downloaded and installed the new IBM Rescue and Recovery beast (about 900MB). It couldn’t have been much easier. There is a major problem with it, though. I pointed the application at my 120GB USB drive, and when I started the backup, it unceremoniously formatted it. I lost a ton of stufffortunately all backed up elsewhere. (I think.) I told IBM that the program should warn you twice that it’s going to format the drive and require a note from your mom before proceeding, especially when it finds data on the target drive. They assured me that the new version now in testing (due out in July) fixes this problem. I sure hope so.

The Rescue and Recovery program also made the USB drive bootable. This means the next time the system is booted with the USB drive attached, the program (which is also integrated into the boot loader) boots into a recovery mode. This will be a lot easier than keeping a bootable CD (although that’s still an option). If you press F11 when the system boots, it launches the R&R program from somewherewithout a drive being attached. I also restored my second drive with R&R, and it’s fastvery fast. Where are those Ghost Busters when you need them?

re: Where’s Bill?

What kind of execption are you getting? Did you install on a virgin XP system or one that had been used for other Beta V releases? Uninstalling or running XP Restore does not seem like enough at this stage--it rarely is. My SQL Server Express instance installed, but threw an exception but it works anyway.

re: Finally, my ThinkPad is backed up and restored.

I was told that only IBM techs have the program "Maint172" to make this change. I took it back to the people at TechPower Solutions here in Redmond and they got the program from IBM and ran it. It also turns out that the latest BIOS updates seemed to "adjust" this setting as I was prompted in a similar way when it was applied.

hth

re: Finally, my ThinkPad is backed up and restored.

Hi,

Was just wondering how you got the serial number & model type Bios issue fixed ?

I've had a systemboard swapout recently and they engineer didn't set the details.

Cheers

Terry

re: Where’s Bill?

I only downloaded the WebDev Express edition at home. The speed was good, but the Yucon Express edition didn't install (tried several times). And you need it to use the providers i guess.

Pity they removed the access providers. Anyone knows why?

April 28, 2005

Where’s Bill?

I apologize for not posting as often as I would have liked, but I’ve been up to my kiester in home projects and trying to get the April Beta V 2/Beta 3 builds installed. Last week we installed new windows here at the house and this took almost all of my time. The company installed the windows was less than stellar in how they communicated with us which made a fairly simple task far harder. We’re still waiting for hardware so we can lock the new doors. Remember that I don’t believe in guns for all occasions—I’m a bayonet guy—just in case you’re thinking about breaking in. I’m working up a blog entry to let the world know who these people are and why to avoid using them in the future.

As to the April CTPs, I was able to download them without much difficulty (except for the painfully slow download time). It seems that Peter (in the UK) was able to get over 120Kbs download speed while I (within artillery range of Microsoft) could only get about 25Kbs. This meant that it took two days to get the files. It’s funny how the other products I download from Microsoft seem to arrive at 50-120Kbs but the files from MSDN arrive far more slowly.

Both the Whidbey and Yukon installs went very smoothly on this side of the Atlantic—but not for Peter. He tried to uninstall and run the XP Restore. It didn’t work. I did notice that Microsoft had not fixed one of the more serious issues: the exception handlers in ADO.NET seem to be broken. That is, they return “Timeout” for far too many situations that used to return (somewhat) meaningful exceptions. They tell me this is fixed, but in the RTM fork so we might not see it in the next CTP—perhaps not until RTM. I’ve turned in about a dozen help topics written with C# but no Visual Basic .NET examples. So far it’s about one in five that fall into this category.

I also gave up on VPC. The VPC installations are clearly too slow to be useful. The performance I’m seeing in Visual Studio 2005 and SQL Server 2005 once I install them on a “real” (non virtual) system are now (IMHO) “acceptable” but still noticeably slower than the Visual Studio 2003 RTM build. To get around the performance and strange stuff issues, I went to the trouble of building a base XP system and made a Ghost image of it. No, this approach won’t work for your IBM laptop as Ghost is clueless when it comes to rebuilding an image that you can boot from—at least it never worked for me. I found the new IBM R&R program does the job faster anyway.

 

 

re: On WebCasts and Dead Meeting

Bill, everything alright? You didn't fell asleep dit ya?

April 27, 2005

Yet Another Petition to Microsoft: XQuery in the .NET Framework

Yet Another Petition to Microsoft: XQuery in the .NET Framework

April 11, 2005

re: On WebCasts and Dead Meeting

I agree it could be better, but hey a common problem - is a market - for WebEx.

I feel they will improve this product in the upcoming generations though.

April 08, 2005

On WebCasts and Dead Meeting

 I just sat through another Microsoft Webcast using their heavily touted Live Meeting software. At this point (after my nth Webcast) I think they should rename the product “Dead Meeting”. The interface is easy enough to use, but the audio is spotty—even when the presenter speaks native English. No, I can't afford to tie up my business line for an hour so that I can hear better. Thankfully, the last couple of sessions had easily understood speakers.

During the session, the feedback you get to provide does not let you do much but ask for help or speak up. What about a “please clarify this point” flag? It would be very nice if we were given the slides ahead of time so we could print them and take notes on the slides. Of course, that’s for the slides where the presenter does not simply read the content. It would be even nicer if the interface let us take notes in context with the slides and save this annotated file locally.

As to the questions we get to ask, that’s the biggest problem. I like to ask questions in context to get clarification of points as we go. The Live Meeting interface permits attendees to ask one (and only one) question at a time. If the presenter (or whomever) does not respond to the question you can’t ask another. What I end up doing is editing my question and appending another question. This makes it tough(er) on the presenter as they don’t have the context for the question and have moved on to other topics. Perhaps if there was an on-site moderator to read and acknowledge the questions, put them in the queue, compile them and ask the presenter to respond at the end of every (few) slides. Sure, this might take a bit longer to do, but the end result would be far more useful.

And another tip for the presenters. You need to turn hardware optimizations OFF during the presentations. If you don't some of the graphics and other slide content are not rendered correctly on our end.

April 07, 2005

Finally, my ThinkPad is backed up and restored.

I just spend an entire week coming up with a viable/reliable/easy way to build a base XP image, back it up and restore it so I can eliminate the need for Virtual PC (VPC)-based demos. At this point I am very glad I have a ThinkPad. Once I discovered their recovery CDs, I was able to build a base system very quickly. But it did not have XP SP2 or the dozens of updates since then. These CDs also did not have the dozens of upgrades to the IBM-provided components that make the ThinkPad sing. Fortunately, IBM has also been working on this issue. I discovered a (relatively) new program called the “ThinkPad software Installer”. This replaces the older application that never did work correctly. Unfortunately, this program would not run when installed. It seems that the people at TechPower Solutions (here in Redmond) did not bother to reset my serial number and system type on the motherboard when they fixed it a couple of months ago. That took another day to get fixed. Fortunately, the guy that did this (very sloppy) work has gone into the Marines. Anyway, the software installer works kinda like Windows Update except that it checks for updated versions on every IBM-supplied tool, utility, or driver. It also can update the BIOS. This is (IMHO) very cool.

Now that I had an updated/current/stable XP base image to work with I (naturally) thought that Norton (Synmantec) Ghost would be able to backup the drive/partition and let me restore it. Ah, no. While Ghost 9.0 (the latest) could backup the partition (if the moon is in the right alignment), the restored version would not boot. I called the so-called support people at Symantec and discovered (as many, many people have discovered) that their support staff in India is, well, terrible. They are barely understandable and can’t do anything but read a script or ask someone else for help. Don’t get me started on them again. After hours on hold, I gave up and dug through Google and the IBM site for help. The bottom line: it can’t be done viably, reliably or easily. Yes, I tried Partition Magic and it thought my perfectly functional drives had errors. It had no way to fix the problem or even tell me what was wrong.

I also discovered that my Thinkpad would not recogize a couple of older drives (12GB Toshibas) for some reason. IBM says they aren't supported. Sigh. I went out and bought another 7500 RPM Hitachi 60GB drive.

To get around some of these issues, I called IBM support and talked to someone in the deep south--Atlanta. Wow, what a difference. The people were professional, smart and made some great suggestions—and I speak Atlantian (and Texican, Mainian and several other US dialects) so they were easy to talk with. I also did not have to wait on hold (at all) during peak hours. I described the problem(s) and they suggested their own backup program. I said I did not want to use it as it requires me to dedicate a big hunk (up to half) of my hard drive to the backup image. And what happens if I want to use another drive or the original drive fails? They assured me that the new program (released in January) would be a far better solution.

I installed the new IBM Rescue and Recovery beast (about 900MB). It could not have been much easier. There is a major problem with it though. I pointed the application at my 120GB USB drive and when I started the backup it unceremoniously formatted it. I lost a ton of stuff—fortunately all backed up elsewhere (I think). I think the program should warn you that it’s going to format the drive twice and require a note from your mom before proceeding—especially when it finds data on the target drive. I’m going to send some mail to IBM about this. The program backs up the hard drive very fast and restores even faster. It also made the USB drive bootable. This means the next time you boot the system with the USB attached, the Rescue and Recovery program (which is also integrated into the boot loader) boots into a recovery mode. By integrating the R&R program into the boot loader, you can restore with a virgin hard drive and a DVD or backup USB.

It seems that the R&R program is also usable on other systems. While I have not tried it (yet), I think it will be a great way to perform systems backups that can actually be restored—unlike some other products. Where are those Ghost Busters when you need them?

 

hth

April 05, 2005

re: Motorola Woes and the MPX220

Ah, no. You must not have had much experience with many digital cameras or other phones. My daughter (Fred's) phone is a lot cheaper and the camera's resolution, speed, sensitivity etc. are all far better. I have a number of deadly serious digital cameras and this is the poorest camera I have seen in a decade. I was told by Motorola that the bluetooth issue is a hardware problem--not just a firmware upgrade. Of course since I could not get the same story out of two different support people, I don't know that that is true either. Of course, they might turn around and fix it. I still have not received any response from repeated attempts to get their email support team to correspond with me.

re: Motorola Woes and the MPX220

Well I think the MPx220 ROCKS!! And Im sure that Motorola will have a fix shortly for the voice over bluetooth. it's just a matter of time, The camera is awesome! (maybe you just need to tweek the settings). And the Sound could not have been better, and the ability to listion to all my MP3's is Unbeleavable! MiniSD card, & not to mention the windows CE- And Quad Band. plus the option to just say the number your calling and it will dial it for you, (without bluetooth) but it still works like a charm. Also, Just as a little note rather than turn the device off change the profile to silent while your in church to avoid obnoxious tunes, Its faster and of-corse sielent. plus you will know if you missed a call once you look at your phone later. ;)

Anyway Thumbs up to you Motorola ! keep up the great work! Whoo!
-Sonny Morrison

April 02, 2005

re: Petitions and other Silliness

Yeah, but Bill I'm still going to take your word on a technical matter over a lot of other peoples whether or not you have "MVP" after your name.

April 01, 2005

What’s Going On At Microsoft For Developers?


April 1, 2005 • Vol.27 Issue 13
Page(s) 23 in print issue
Peter Blackburn and I spent the week of March 14 at a Microsoft-sponsored author/publisher conference in Redmond learning more about how Microsoft plans to implement Visual Studio and SQL Server 2005. We heard Jon Roskill and several other Microsoft product managers hint about when they expect Whidbey and Yukon to ship. I was with Microsoft long enough to know that until we get a bit closer to the date, any estimate on release to manufacturers has to be taken with a grain of salt.

I expect Microsoft to try to get most of Visual Studio and SQL Server 2005 out the door before the end of the year. But if the company waits too long, it'll miss the last opportunity to market it in 2005 at the Developer Connections conference in November. (See www.betav.com for details.) No one really pays attention to developer tools in December, so if it gets that late, Microsoft will have to wait for the late winter or spring shows to kick the products off. That might give the development team a chance to fill in some of the missing pieces before the package products are released to the public.

Team System—For Enterprise Developers

Microsoft also spent quite a bit of time touting its new Team System but relatively little time talking about Visual Studio for "ordinary" developers. I expect that this new VSTS SKU will have a positive impact on larger "enterprise" corporate development shops but little impact on the bulk of Visual Studio developers. Team System is a replacement (as I see it) for Source Safe and the mechanisms used to architect, design, develop, and test software (especially complex OO software) in teams. I'm willing to let this mature in the development marketplace before passing judgment on it.

SQL Server Express Edition

Microsoft made it abundantly clear that its new SQL Server Express edition is a key element to its overall SQL Server strategy. Many authors were surprised that this new version of SQL Server 2005 is free. Microsoft also announced a new SQL Server SKU: the Work-group Edition. It's the next step up from the Express Edition at roughly $740. Note that the Standard edition is now $2,800—up from $800. I think this branding of the SKUs is something like trying to get a "small" drink at Wendy's. "No, we don't have small—just medium, large, extra large, and humongous."

While I can't reveal the details, I can say that I'm impressed with the aggressive approach Microsoft is taking with SQL Server Express Edition to solve many of the complex issues. You see, it's trying to replace JET as the small office database of choice. We've heard that some companies have 40,000 JET databases spread (like a virus) over the company's systems. SQL Express is designed to provide better security and control over this data. Of course, Microsoft also hopes that the number of Microsoft Excel "databases" will also move to SQL Express for many of the same reasons.

In order for this to happen, Microsoft is going to have to make Access work (best) with SQL Server Express. No, it can't take JET out of Microsoft Access because it's woven too tightly into the fabric of the product, but it can get Access to use MSDE or SQL Express (in the next version) to be the default DBMS engine (instead of JET). This move would go a long way to alleviating the stress that JET databases impose on IT managers. One question remains: Is SQL Server Express Edition overkill for Access/JET applications?

Is Visual Basic 6.0 Support Really Ending?

We were also reminded about the "end" of Visual Basic 6.0 support through Brad McCabe's blog (blogs.msdn.com/brad_mccabe/archive/2005/03/10/393704.aspx). It seems that Visual Basic 6.0 is still going to be supported, but support will not be free. This "extended" support, which lasts until March 2008, will mean that developers that call in for help will be charged $99 or $245, depending on how quickly they want a solution. After March 2008, there is no support at all. I guess the people in Bangalore will just hang up if you ask a Visual Basic 6.0 question.

I and several thousand others, including 203 MVPs, signed a petition to encourage Microsoft to continue support of Visual Basic 6.0 (classicvb.org/petition). Although I don't expect Microsoft to integrate Visual Basic 6.0 into the Visual Studio IDE, I hope the noise the petition is making will get Microsoft to reconsider its support decision. A number of companies (some very big) simply can't afford to convert off of their Visual Basic 6.0 applications before support is dropped completely in 2008, so the 2008 deadline seems all too close. I also discuss this on my blog at betav.com/blog/billva.

We heard Eric Rudder has promised the Visual Basic 6.0 runtime will be tested in Longhorn. How the new OS will deal with these issues will be an interesting topic for further discussion.

re: Petitions and other Silliness

To make this perfectly clear, there were very few MS people on my case about the petition. Since then the MS people that count have assured me that this is not how they want MS people to behave. For the most part, some MS folks and I have agreed to disagree--others agree with me quietly. We are all working toward the same goals. MS is really hamstrung by what they can do.

re: Motorola Woes and the MPX220

BTW, I saw your comment about the Sql Server CE book. Have you had a chance to play with Sql Mobile? I've been living and breathing it lately and the fact it also runs on the desktop rocks - we actually have a Web app that's using Sql Mobile as the back end (or course it's proof of concept). Would love to have another good book (Rob Tiffany is the only one I know of and it's darned good) on CE out there.

re: Motorola Woes and the MPX220

BlueTooth enabled cars rock, you should be a champ and one so everyone else can tell their spouses "Mrs. Vaughn let Bill get one, why can't I get one too"

Never penalize someone for speaking their mind...

re: Petitions and other Silliness

"When I visited the speaker’s lounge I felt like a caged bear with kids poking me with sharp sticks. It seems that the Microsoft folks in attendance took exception to the Visual Basic 6.0 petition that I signed along with a number of other MVPs. A couple implied that I would be lucky to keep my MVP status because I chose to speak up."
What!? That's insanely rude of them... As if MS is helped by a bunch of Yes men as MVPs...