Archives / 2004 / July
  • I bet Dr. Craig Barrett, CEO of Intel, is really upset now

    4 GHz Pentium 4 is delayed till next year.

    Not enough 3.6 GHz Pentium 4 chips to go around.

    Some small problems with their latest chipset.

    Sorry, but I can't help but laugh at this.  He just sent out the “big“ memo last week and now this.  I still think it is a communication problem.  Sorry Dr. Barrett, but I go back to my original views on the problem.  You have created an adversarial relationship with the workers in your company and you are now reaping the rewards of the relationship which you have helped create.  Good Job!

    BTW, I don't hate Intel nor do I think that offshore outsourcing is somehow evil.  I think that offshore outsourcing is merely a fact.  The problem I have had and continue to have with the view of Dr. Barrett (and others, he is merely the most vocal), is that after they tell us to look towards the high end and to get a better education, they then “pass the buck“ and say that there is no guarantee that Intel, or any other company, will be interested in hiring you.  Why?  Well only they know.  Interesting that Intel, and other companies saying the same things, wouldn't give me the first look, let alone a second, when I graduated from college with honors with a BSEE and MSEE specializing in VLSI design and computer architectures yet these are the same companies that wanted to greatly expand H1-B and now are so hot on offshore outsourcing because there aren't enough technically competent people already in the US.  Stop the double talk folks.  Admit that the reason is money and let's move on.

    Ok, rant over.


  • Tooting my own horn........

    Have you ever heard the phrase “The more I practiced, the luckier I got?” Well, that is how I feel right now.  I have been working really hard recently on some relatively simple reporting code.  There is a report query page and a report output page.  Due to the nature of the application, both pages are written in classic ASP and run on a Windows 2k server. 

    The problem has been that I have been trying to improve the accessibility of the output for screen-reader users.  In the US, the term is 508 user, so it may be something different for you depending on where you are.  We did some accessibility testing yesterday.  While we passed just fine, I took some of the suggestions from the accessibility group and put them into my reporting code.  I resubmitted the changes to the group this morning.  About 1:00 pm local time, I got an email from the head of the accessibility group calling me a GENIUS! (which, of course, I am) for having researched the appropiate html output and put it in appropiately.  He said that I am the only developer that in this government department to do this correctly.  Not only did this note go to me, but it went to several people further up the org chart here.  This can't hurt!  I hope that this is remembered when I ask for more money in the future.

    Why is the fact that this guy sent this out so amazing?  Well first off, no one ever says anything good about anyone else.  That is just human nature.  The big issue though is that the first time I ever set down with this group, by the end of accessibility exam, they looked like the village people from an old 1930s horror flick where they are coming after the monster with pitchforks and torches.  I barely escaped with my life.  By the time that I had gotten back over to my group, the project manager had already recieved a call about all of the accessibility problems with the application (an app that I took over from someone else).  While I can't fix a lot of the problems due to budgets, I have made sure that my new code is as accessible as possible. 

    Today, I got the payoff for all the hard coding time.  I worked hard, practiced hard, developed hard, and I got lucky.  Funny how it all goes together.


  • Win64 for x64? Wait till 2005

    First Whidbey Beta 1 doesn't work with the build available on MSDN.  According to the newsgroups, it only works on this magical mystical build 1184 that only official testers have.

    Then Yukon Beta 2 only works on a build after the magical 1184 build.

    Now this, Win64 for x64 won't see the light of day till sometime next year as a released product.,1759,1628259,00.asp

    What is someone to do with a AMD64 bit system that won't run Whidbey or Yukon.


  • New build of .NET 2.0 Framework included with Yukon Beta 2

    A new build of the .NET 2.0 Framework has been included with Sql Server 2005 Yukon Beta 2.  This appears to be an incremental release with merely some framework bug fixes.  The build number goes from something like .16 to .42 according to the newsgroup posts that I have read today.  Unfortunately, I have not seen this myself.  I am mentioning this because I have read this in one or two newsgroup posts.  Your mileage may vary. If you have installed the beta 1 of Whidbey, you will need to uninstall the framework before performing a new install of Yukon beta 2.  This information comes from the publically available newsgroup microsoft.private.sqlserver2005.relationalserver.clr on the MS NewsGroup Server at  Enjoy your reading and adventures with Sql server 2005 Yukon Beta 2.


  • Whidbey / CLR debugging & Deployment tip

    If you create a CLR Object in Whidbey with the VS.NET IDE and then try to deploy it in Sql Express, you will want to make sure that you are looking at the Output Window when you perform the deploy.  If not and you get an error message in the lower left hand corner saying "Deploy Failed," you will be left wondering what in the heck is going on.


  • Method Overloading in CLR Objects

    I just wrote some CLR Objects with C# in Whidbey Beta 1 and Sql  Express.  I had a couple of methods named the same thing and I was going to use Method Overloading to call them given the parameters that I handed in.  I compiled and everything was fine.  I tried to deploy to my Sql Express database, and bango, multiple methods with the same name are not supported.  Is there any “good way” to simulate method overloading in Sql Express / Yukon?


  • LoginView Control in ASP.NET Whidbey

    First off, special thanks to Stephen Walther for his article on the new security features in Whidbey

    I have been looking at the Login controls in Whidbey with great interest given all the cool code that comes with them.  I think that the LoginView Control can give you some interesting data, if you configure it correctly.  I spent a couple of minutes putting it into a form that I can use.  Basically, here is the idea:

    • Anonymous users.  They get the anonymous template information.
    • Logged on users.  They get the logged on user template information.
    • Role users.  These users get the logged on information specific to the role to which they belong in the application.

    Here is the configuration for the LoginView Control.  It is fairly simple, but the idea is powerful.

            <asp:LoginView ID="LoginView1" Runat="server">
                    User is not logged in.<br />
                    User is logged in.<br />
                    <asp:RoleGroup Roles="Admin">
                            You are an Admin User.<br />
                    <asp:RoleGroup Roles="User">
                            You are a Regular User.<br />

    The would be very powerful in a footer or some similar location on each page of an application.


  • What is the problem with Marketing People?

    Why is there such a problem with Marketing People?  I have dealt with numerous ones thru the years.  None of them will ever listen to how the consulting business works.  They just want to launch into selling something, anything, and they won't do the necessary homework and prepatory work, like understanding consulting, understanding who potential customers are, understand who the wrong potential customers are (you would be amazed at the number of worthless meetings I have gone to where the customer wants a custom developed package for the cost of something at CompUSA), creating marketing documentation, using a package like ACT! or Goldmine to document what is going on.  Just this week, a lady that has worked for my father told him that she didn't need to know any of that stuff and she acted like she didn't need to learn anything about a computer.  What is wrong these marketing people? 

    When I meet a potential customer, I spend a lot of time asking them how their business operates, what their goals are, what does their technology infrastructure look like, and educate myself as to how their business runs.  Why can't I find a marketing person that will do that?


  • ASP.NET Whidbey logon controls

    If you are looking at the ASP.NET Whidbey logon controls, you will most likely want to change two things.  The first item is the logon page that your site uses.  To set that, go into the web.config and set the value for the loginUrl to something like what you see below.  Note that I removed the timeout value.  Thanks to Greg Beamer for reminding me of the basics.  ;-)

    <authentication mode="Forms">

    <forms loginUrl="Default.aspx" protection="All" />


    The second thing to do is to change the value of the DestinationPageUrl property of the logon control to the page that you want to direct the user to once a logon is completed.  The default is to go to the Default.aspx page.


  • Do you own a Dell laptop?

    If you own a Dell laptop, you might want to look for small cracks in and around the hinges that hold the LCD to the system both on the top of the laptop and the back.  I called Dell about a different hardware problem and the guy on the other end asked if I had any cracks.  He stated that both the problem I called about and the cracks would be taken care of.  I have an Inspiron 8200.


  • Whidbey Web Site Admin Tool

    If you are using the Whidbey Web Site Admin Tool with Beta 1, be careful when you are setting up the databases in the Profile section.  If you misspell the database that you want to use, the Admin Tool will automatically create a new database with the name of the misspelled database, instead of the database that you want to use.  This took me a couple of hours to figure out last week.  I was using a fresh database that I had already created, so the fact that I could not see my new tables was causing a lot of confusion for me.  Once I figured out what was going on, it was easy enough to resolve.


  • MSDN Product Feedback

    If you have not done so, go look at the MSDN Product Feedback application.  It looks to be a pretty good spot to provide feedback on Whidbey issues as they come up.  It is easy to track what you have put in.  This is much nice than the newsgroups and trying to remember where you put something in.


    PS.  I didn't even see Eric's entry.  :-)

  • Paul Wilson lovefest,1759,1623736,00.asp

    Paul Wilson quote: "I've heard some great things about SP2," said Paul Allen Wilson, a Microsoft MVP and software development consultant based in Atlanta. Wilson in particular pointed to expected improvements in Microsoft's Internet Explorer (IE) browser.

    "But on the other hand, I've also heard that SP2 has some 'gotchas'—that if you install it, your applications might break," he added.


  • What do you do with a database that is specific to that database?

    Hi folks.  I am looking for some information from you regarding features that you use in databases where those features fall outside of the “standard“ set of database features.  For example, all database support things that are standard.  The sql language is relatively standard, in that each major database supports insert, update, delete, and select (though joins seem to have slightly differing syntaxes).  Each database seems to have their own extensions to do something that is specific to them or not handled well by the standard sql language.  What do you do with a database (Sql Server, Oracle, DB/2, MySql, or whatever) that is fairly database specific?  For example, do you use the Sql Servver full text search Contains or FreeText commands to query data, which is different than the MySql Match command?  Do you use the database to store BLOBs?  Here is my current list of general items that are different.  Please feedback with ones that are different along with the database that you use them in.

    • JOINs. (MySql seems to be lagging in this.  Oracle seems to have caught up in this.).
    • BLOBs.
    • Full-Text Search.
    • XML.
    • Primary keys (sequence in Oracle vs. Identity or GUID in Sql Server).


  • Check out the Web Site Application Administration Tool in ASP.NET Whidbey

    If you have not already seen it, the Web Site Application Admin Tool included with ASP.NET Whidbey is very nice.  Things that I used to pull my hair out regarding the specific syntax are now done for you in an application.  This is very nice.  Ok, so how do you bring it up?  In Visual Web Developer, go to the Website ->ASP.NET Configuration option and it will come up.  From here, you can setup a bunch of things to configure your ASP.NET Whidbey Web Application.


  • ASP.NET Whidbey Overview - Feedback Request.

    Hi folks.  I am currently working on a presentation regarding ASP.NET in Whidbey.  Feel free to take a look at this powerpoint document and provide some feedback.  Let me know if you think that there are some things that should be added or taken out.  This is for some User Group presentations that I am doing over the next few months in Knoxville, Huntsville, and Birmingham.

    The sample code is not on the ftp site, just the presentation.


  • DataSource controls really do work in ASP.NET Whidbey

    I wrote some code in ASP.NET Whidbey last night to use the DataSource controls.  Wow, this stuff really does work.  I used it to perform some queries against my Web Search with .NET code.  Here it is and it actually does work.  There is a drop down list box that is populated with the server name.  On a change of the server name drop down, the grid on the page changes and displays all of the items that are found in the database that are associated with that domain name.  The one question that I have had is how would you put a blank item into the drop down list box as the selected item and keep the query from running the first time thru?  I assume it is something in the Page_Load event.  Suggestions?


    <%@ Page Language="C#" MasterPageFile="~/ExampleMasterPage.master" Title="Data Source Controls"%>

    <asp:Content ID="cExample" ContentPlaceHolderID="cph1" Runat="server"><asp:DropDownList

    ID="ddlDomainName" Runat="server" DataSourceID="sqldsDDL" DataTextField="DomainName"

    DataValueField="DomainName" AutoPostBack="True">


    <asp:SqlDataSource ID="sqldsResults" Runat="server" SelectCommand="SELECT [SearchUrl] FROM [tblSearchResults] WHERE ([DomainName] = @DomainName)"

    ConnectionString="<%$ ConnectionStrings:sqlResultsConnection %>">


    <asp:ControlParameter Name="DomainName" Type="String" ControlID="ddlDomainName" PropertyName="SelectedValue"></asp:ControlParameter>



    <asp:SqlDataSource ID="sqldsDDL" Runat="server" SelectCommand="SELECT DISTINCT DomainName FROM dbo.tblSearchResults"

    ConnectionString="<%$ ConnectionStrings:DDLLookupString %>">


    <asp:DataList ID="dlResults" Runat="server" DataSourceID="sqldsResults">



    <asp:Label Text='<%# Eval("SearchUrl") %>' Runat="server" ID="SearchUrlLabel">

    </asp:Label><br />

    <br />




  • Dynamically setting a theme in ASP.NET Whidbey from a drop down list box

    With some suggestions from ScottW and J. Ambrose Little, I just got done with some code to dynamically set a page's theme thru a drop down list box.  While this code works, I think the code that I finished with is pretty ugly, so if you have some suggestions, I am more than glad to hear them.  BTW, I tried to use the Control.ClientID to get the value from the Request.Form collection with little luck.  Even through the form on the master page is set to perform a GET, it still seems to be performing a POST.  Note that UglySkin is a theme that I created that is visually disgusting.


    <%@ Page Language="C#" MasterPageFile="~/ExampleMasterPage.master" Title="Theme Skin Page" %>

    <script runat="server">

    void ddlTheme_SelectedIndexChanged(object sender, EventArgs e)


    Response.Redirect(Request.ServerVariables["Script_Name"].ToString() + "?ThemeValue=" + Convert.ToString(ddlTheme.SelectedItem.Text));


    void Page_PreInit(Object sender, System.EventArgs e)


    if (Request.QueryString["ThemeValue"] != null )


    string strValue = Request.QueryString["ThemeValue"].ToString();

    Page.Theme = strValue;



    void Page_Load(object sender, EventArgs e)


    if ( ( Request.QueryString["ThemeValue"] != null) && ( !Page.IsPostBack ) )


    ddlTheme.SelectedIndex = -1;

    string strValue = Request.QueryString["ThemeValue"].ToString();

    foreach (ListItem liItem in ddlTheme.Items)


    if (liItem.Value == strValue)


    liItem.Selected = true;







    <asp:Content ID="cObj" ContentPlaceHolderID="cph1" Runat="server">


    ID="ddlTheme" Runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddlTheme_SelectedIndexChanged">





    </asp:DropDownList><br />

    <asp:Label ID="lblText" Runat="Server">Theme Test.</asp:Label><br />

    <asp:TextBox ID="txtText" Runat="server">Text Box Test</asp:TextBox><br />


  • What Sql Express supports (and some things it doesn't)

    I had a question come up regarding what is supported in Sql Express (specifically full-text search).  I pulled this from the Books Online for Sql Express.  It describes the features in Sql Express and what won't be in Sql Express.

    SQL Server Express supports most of the features and functionality of SQL Server 2005. The following table lists some of the major features and components supported.

    Stored Procedures

    SQL Computer Manager


    Replication (as a subscriber only)


    Advanced Query Optimizer


    SMO / RMO

    sqlcmd and osql utilities

    Integration with Visual Studio 2005

    Snapshot Isolation Levels

    Service Broker (as a client only)

    Native XML support, including XQuery and XML Schemas


    T-SQL language support

    Multiple Active Result Sets (MARS)

    SQL Server Express supports Service Broker applications, but direct communication between two SQL Server Express servers is not supported.

    The following list highlights the major SQL Server 2005 components that are not supported in this version of SQL Server Express:

    • Reporting Services
    • Notification Services
    • Analysis Services
    • Full text search
    • DTS
    • OLAP Services / Data Mining
    • English Query

    The following table lists the additional SQL Server 2005 database features that are not supported in this version of SQL Server Express. It also lists database features from previous versions of SQL Server that are not supported.

    New SQL Server 2005 features

    Existing SQL Server features

    Dedicated Administrator Connection

    SqlMail and SQLiMail

    Database mirroring

    Fail-over clustering

    Online restore

    Distributed partitioned views

    Database snapshot

    VIA protocol support

    Parallel index operations

    Log shipping

    Mirrored media sets

    Parallel DBCC

    Scale up partitioning

    Parallel Create Index

    Address Windowing Extensions (AWE)

    Enhanced Read Ahead and Scan

    Hot-add memory

    Indexed views (materialized views)

    Native HTTP

    Partitioned views


  • Upgrading an application from VS.NET 2003 to VS.NET Whidbey

    I just updated my Web Search with .NET code to run under Whidbey and to use Sql Express as the database.  I had some problems getting the database structure in Sql Express.  The application consists of some winforms applications to walk thru the web, MSMQ to provide an asynchronous method to store data (also, its out of process, so I am not stuck with exhausting the threadpool in my application).  Once I changed my database connection strings and created my message queues, everything seems to just work.  Due to the fact that this application use multiple projects, I used VS.NET as oppossed to the C# Express. 

    Does Sql Express support full-text search indexing?

    Update: No, Sql Express does not support full-text search indexing.


  • Whidbey & MySql

    I downloaded MySql for Windows Server the other day along with the MySqlDriverCS.  This morning, I create a small sample table and then I inserted some data using a Command() method.  I then followed it up with a call to DataSet.Fill().  It seems that command to insert data worked along with the query that is being run with the dataset.


  • Sql Express build released this week != Yukon Beta 2

    I'm not complaining about the fact that the build of Sql Express released this week is not Sql Server 2005 / Yukon Beta 2.  I just want to make sure that everyone knows that.  If you look at the second entry it says:

    Download SQL Server 2005 Express Technical Preview, successor to MSDE 2000. This is a Technical Preview (Pre-Beta 2) release of the product and is unsupported in production environments.


  • Direct URLs for Downloading the Express SKUs from Microsoft

    if you are looking for the direct URLs to download the express products, check these out:

  • What are the most exciting changes to the BCL in Whidbey and Why?

    I am working on a user group talk regarding .NET in Whidbey.  I have a question for the general pool of .NET developers.  What do you see as the most exciting changes in the Base Class Libraries in Whidbey and Why?

    I like the threadpool changes because I have an application has become threadpool starved under .NET 1.x.  What's your opinion?


  • .NET 1.1 Service Pack 1 and .NET 1.0 Service Pack 3 - Tech Preview

    Lost within all of the excitement over TechEd Europe, Whidbey, the Express Family, and other exiting items, it seems that the .NET 1.1 Service Pack 1 and .NET 1.0 Service Pack 3 Technical Preview Announcements were lost in that boring “current release” mindset.  I just heard about them in Paschal's blog.  So, if you are interested, here is what I found: