Subscribe: Everything IT
Preview: Everything IT

Everything IT

Programmer, SQL and Server Admin

Copyright: Gerry O'Brien

CLR and C# Learning Materials

Wed, 12 May 2010 14:58:05 GMT

Originally posted on:

Have you ever found that one book or resource that just brings it all home?  Seriously.  These are rare finds when you read the content and all the stars seem to align, you have those "Ah ha!" moments.

Well, I have found that book and it is CLR via C#, Third Edition by Jeffrey Richter.  If you're not familiar with Wintellect, look them up.  This book is published by Microsoft Press and is the third edition of this title. 

I'm in chapter 5 at the moment and already I have a better understanding of the CLR and how things work.  I'm a former Visual Basic MVP and C# is a language I learned as a result of projects I worked on at a software development company a few years ago.  Like a lot of VB programmers, I never went deep into the workings of the "behind the scenes" aspects and just focused on the applications.

My next possible career move involves a deeper knowledge of the CLR and a .NET language.  This book is one that I will have my bookshelf for reference long after I have read that last page.




Sun, 08 Feb 2009 17:52:34 GMT

Originally posted on:

Yes, this blog has been neglected for some time.  I'm not a great blogger by any means.

So, a new look, a new title, and now time to start updating regularly.



TechEd '06 Day 3

Sun, 11 Jun 2006 17:08:00 GMT

Originally posted on:

Sunday is when the keynotes are taking place.  This is a switch from last year and I think a good decision.  The reasoning behind it is to allow for more session times.  We need to get the rest of our room setup and configured.  One of our sessions will require subnetting to work correctly so we need to physcially seperate the computers by using the switches.  Not a great amount of work but hey, get it done today rather than Thursday night or Friday morning.

The venue is a pretty cool place.  Of course the arrangement this year is designed to reduce the amount of walking you have to do by placing everything in color coded, categorized locations.  This is a pretty cool idea I think.  The breakout sessions and other conference sessions are located in various locations througout the conference center so there will still be some walking required.  Although not as large as the Orange Country Conference Center in Orlando, the BCEC is still a large place.

A few more preparations and verifications for the room and then some more prep time tonight and we should be ready for kickoff tomorrow.  The time zone change is still playing a little on the body just yet as well so it would be nice to get caught up on some more rest before tomorrow.  Once we kick off in high gear, there won't be any downshifting until Friday. :-)

See you at the BCEC!


TechEd '06 Day 2

Sun, 11 Jun 2006 16:58:00 GMT

Originally posted on:

Well, day 2 for us anyway.  We found our way to the Boston Conference and Exhibition Center and registered for the conference first thing.  There were a grand total of 20 people registering when we arrived so the lines haven't started yet.

The first couple of sessions were strictly speaker and staff training sessions.  After that we had our training session with the MCT Ambassadors who will be helping us deliver the Instructor Led Labs this year.  I think we have an awesome group of MCT Ambassadors for these sessions which will definitely help to make the ILL's a success, regardless of the acronym. :-)

Unfortunately our room was not completely set up asthey were waiting for more monitors and keyboards to arrive.  Not a problem, we did get our instructor machine configured and setup with the necessary PPT decks in preparation for Monday's first session.   I guess I have the honor of starting of the sessions with Administering BizTalk Server 2006 Applications.

Once we got the work out of the way, it was time for a tour.  We went to Faneuil Hall based on the recommendation of one of the BCEC staff and were happy we asked.  This was a great district that had tons of shops, pubs and restaurants.  Our chosen spot to dine was Cheers.  A little busy in Norm's Cafe but the food was good, the beer was better and we even enjoyed entertainment.  Boston was hosting Texas at Fenway and they had the game on the big screen.  Behind us, live entertainment from a gentleman playing piano and all the classic piano tunes you might expect from Elton John, Billy Joel, Eric Clapton and on and on.

After dropping of our TechEd luggage we hooked up with another colleague and made our way around to see some more sights in Boston and check out the night life.  Word to the wise who haven't been here before, the driving is just a tad bit aggressive.  It's apparent right off the bat.  Watch you step in crosswalks.

Overall, a good day.  And now, prep for Day 3.  Getting PPT decks in final order and practicing sessions as appropriate.


TechEd '06, The Flight

Sun, 11 Jun 2006 16:45:00 GMT

Originally posted on:

737-800s are no more comfortable than an Airbus A319.  About the same amount of leg room and seat room (Not nearly enough).   Otherwise, very happy with Alaska Airlines.  A 5 hour non-stop flight and we found ourselves in Boston.  We are staying at the Hilton Boston Logan which is actually quite nice.

Our first trip into downtown Boston resulted in a cabby not only taking us for a ride, but taking us for a ride!!  We found our way to McCormicks and Schmicks, I think I spelled that correctly, for some fine dining.  I have been out on the west coast for almost a year now and I must tell you that the taste of a Maine Lobster brought me back to home in a real quick way.  I really missed the taste of East Coast seafood.

We took a small tour of that area of Boston before heading back to the hotel for the night and finished the day off with a night cap.


I'm Off to TechEd 2006

Wed, 07 Jun 2006 12:16:00 GMT

Originally posted on:


This will be a different TechEd for me this year.  I will be in attendance as a Microsoft employee.  Looking from a different side of the fence this time.  It should be cool.

If you are in anyway interested in seeing what Microsoft Learning's official Instructor Led Training has to offer, I recommend stopping by the Instructor Led Lab sessions (ILLs).  No, I did not come up with the acronym.

We will have tracks for various audiences such as developer, IT Pro and Information Worker.

Come and see Visual Studio Team System for Developers in action or check out the new features of Exchange 2007.  Interested in what Office 2007 looks like?  We have sessions on that as well including the new Sharepoint technologies. 

All in all, the ILL sessions should prove to be a great addition to TechEd 2006.  Note that these are different than the hands on lab sessions that will be taking place this year as well.  The ILL sessions will have Microsoft Certified Trainers delivering 10-15 minute lecture overviews of the technology you will apply in the lab. 

The sessions are excerpts from our courseware and will allow you to experience them in an environment somewhat similar to delivery at a certified partner site.  There will be Microsoft Certified Partners for Learning on hand to answer your questions about courseware delivery locations and costs if you are interested in pursuing the courses further for certification efforst or career and personal improvement.

Stop by and check it out.  See you there!


(image) (image)

Before Accepting Employment in the USA

Thu, 23 Feb 2006 00:17:00 GMT

Originally posted on:

So, if you plan to accept an offer of employment from a US based company to work in the US, please make sure you investigate all the immigration and work elegibility requirements for your spouse and other family members before you accept the job.

I have a fantastic job so I'm not complaining about that aspect.  What I find troubling is the lack of information that is given to foreign nationals who come to this country to work.  As long as your employer is sponsoring your work visa, no problem.  For you that is.  Your spouse is a different story.

There are only two classifications of work visa that automatically qualify your spouse to work in the US as well.  One is an L class visa.  You get that if you work for a company that transfers you to the US.  The other one, I don't remember it's classification because it doesn't apply to me, is for people from Australia.  Figure that one out.

At any rate, if you are coming here to work and your spouse is coming with you and expects to find work as well, take note that he/she will not be able to work without some digging and pushing on your part.  In short, you have to ask your employer to sponsor your petition for a green card.  Only then can your spouse also apply for a green card and obtain work authorization.

We have spent the past 6 months trying to find out how to obtain work authorization for my wife here and finally stumbled on the answer after grilling the immigration officer with question after question.  They will only tell you up front that your spouse can or cannot work based on their visa type.  They will GIVE you NO answers without you really searching for the right question to ask.

I post this so anybody else experiencing this same situation or about to, will know what they are getting into.  My situation is still not solved yet as we are waiting to see if my employer is going to sponsor my application for a green card.  I will post the results of that later as well.



Too Long Not Posting

Wed, 23 Nov 2005 15:08:00 GMT

Originally posted on:, has it been this long since I posted?  Neglect has no excuse.  Not that I have a band of regular readers mind you. ;-) The reasons?  I have gone through the hiring process for Microsoft.  Successfully I might add. What a roller coaster way of getting a job.  Here's what happened as I remember it. 1) I debated in renewing my MCT with Microsoft as I wasn't certain how much training I would be doing.  My job at the time involved more software development with a sprinkling of content development.  After reviewing the process and costs involved in re-entering the MCT realm, I decided to renew which was the cheaper and easier alternative. As a result of renewing, I still had access to the MCT private newsgroups.  This is where I first saw a posting for a technical reviewer for Microsoft Official Curriculum to which I applied and was accepted.  This was merely a contracting opportunity but afforded me a contact with MS Learning.  The next posting I came across, I thought was for another contracting position.  I submitted my resume again. 2) I received an email from the poster indicating they received my resume and would get back to me by the end of the week.  As promised, I received an email asking to set up a phone interview to which I accepted.  I thought it a little strange as the other contracting position didn't require it but I went with the flow. 3) The day of the phone interview, I reminded my wife that I had a phone interview for this position to which she replied, “What interview?”.  Ouch, forgot to tell her.  Her comments were basically, “Who is this for?  Microsoft?  Aren't they in Seattle?  I'm not moving to Seattle so forget it, don't even ask!!!”.  Major ouch.  I told her not to worry, it wasn't a full time position and even if it was, did she honestly think that MS would hire me??. 4) During the phone interview, I came to the realization that it was a full time position.  WOW!  My first question to them after they finished their line of questioning was if the position was location specific.  They indicated it was and that I would have to relocate to Redmond.  I let them know my wife's position and politely declined the job at the time.  They were somewhat disappointed and notified me that I was considered a strong candidate for the job and they were sorry to hear I couldn't continue the process. 5) As you might expect, my next step was to go to my wife and explain to her just what I gave up for her.  We discussed the implications of not moving forward with this and I reassured her that MS would not hire me in the end anyway, but I thought I should at least go through with the whole process.  She agreed and I immediately went and called MS back hoping I hadn't shot myself in the foot.  To my surprise, I hadn't and they were still very interested in interviewng me formally. 6) After the arrangements were put in place, I was flown to Redmond for my day of interviews.  I arrived the day before and after getting lost twice, I found my hotel and tried to get some sleep.  The whole interview process was like nothing I had ever gone through before.  A full day of interviewing can be a little exhausting, especially when you are coming here from 4 time zones away. 7) I had the opportunity to interview with two Technologists who were working in the role that I was applying for.  I also interviewed with a project manager and a content development manager as well as the manager for the team.  My last scheduled interview was with the manager from 3-4 PM.  When we finished our interview, she asked if I had a few minutes before I left to which I indicated I had[...]

Microsoft Launches VB6 Resource Center

Wed, 06 Apr 2005 16:00:00 GMT

Originally posted on:

For all those VB6 developers who have not yet moved to .NET or perhaps will not move to .NET, there is some salvation for you still at Microsoft.  MS has announced the opening of VBRUN, the Visual Basic 6 Resource Center.  It is a subsite of the Visual Basic Developer Center and can be found at

This looks like a great resource site and should provide some great content for all the VB6 developers who are still creating new applications in VB6 or maintaining existing applications.  Although I haven't programmed in VB6 for about a year and half now, I think this site is a welcome addition from Microsoft and should serve to complement other resources in existence already.

Kudos to Microsoft for implementing this!



Accessing a Web Service Written in VS2005 Beta1 From Visual Studio 2003

Wed, 05 Jan 2005 19:00:00 GMT

Originally posted on:

I spent some time trying to figure this one out.  I had a web service that was written in Visual Studio 2005 Beta1.  I was accessing this web service from an app that was written in Visual Studio 2003. 

When adding a web reference or updating the reference, I was getting the error;

“Unable to download the following files. http://url_goes_here/service.asmx?wsdl.  Do you want to skip these files and continue?”

It turns out that the error is related to two values that are added the WebServiceBinding attribute of the class file in the service.  These two values are;

(ConformanceClaims = WsiClaims.BP10, EmitConformanceClaims = true)

When they are removed, the web reference works as expected. 

This was an especially strange occurrence as the app had been working all along.  Apparently, somebody made a change to the web service and updated it on the production server.  During this time, the changes made caused these values to be re-inserted in the attribute and the code file was checked into our source control app.  When I did a get latest, I D/L the modified code which broke my test app.

I guess I'll have to research these two values to determine their importance.



Deploying a Sharepoint Site to Another Server

Tue, 07 Dec 2004 00:48:00 GMT

Originally posted on:

Well that was interesting.  I had my first attempt at deploying a Sharepoint site I created to a remote server.  At first I wasn't sure how smoothly the deployment would go.  The main reason is that my test environment hosted the Sharepoint site and the database on the same server.  The remote site would host the Sharepoint site on one server with the database residing on another server behind a firewall.

The smigrate.exe utility that is found in the bin folder of the Sharepoint services web services extensions folder made life somewhat easier.  This utlity is used to back up your Sharepoint site to a single file that you can then transfer to the remote site.  At the remote site, you can simply reuse smigrate to restore the site.  Pretty slick.  However, there is one gotcha.

When you install Sharepoint Services on the remote server, ensure there is a top level web site created first or the restore will fail with the message, “The web server at does not appear to have Sharepoint Services installed.”, or something along those lines, I don't remember the exact string.  It leads you to the wrong conclusion, that Sharepoint is indeed not installed or at least not installed correctly.  The solution is to create at least one top level web site on the Sharepoint server.  Your restore will go smoothly after that.

My site also contains custom user controls hosted in web parts.  These web parts and functionality will not transfer with the smigrate tool.  You will need to either manually copy the user controls and web parts yourself or create and installer package and install your controls and web parts using that installer.



DataGrid Content Editing

Thu, 30 Sep 2004 16:50:00 GMT

Originally posted on:

My latest quest is finding the most efficient way to edit a cell in a datagrid and have those changes affect the contents of another cell.  Simply put, I want to change a quantity value in one cell and have the value in the Total cell change to reflect that.  And of course the changes must be written back to the Dataset that populates the data grid in the first place.

What is your most efficient method for accomplishing this?



Blogging From SauceReader to This Site

Tue, 28 Sep 2004 21:23:00 GMT

Originally posted on:

I am now using Sauce Reader as my aggregate RSS app, mostly due to a recommendation from my employer.  He likes it better than RSS Bandit because he says you can update your blog from within Sauce Reader.

I think that is a great idea however, I now have to figure out how to configure Sauce Reader to work with this site.  It has an option for .Text enabled sites but I think the RPC path is wrong.

Has anyone else managed to get Sauce Reader to work with geekswithblogs?



Reporting Services Report Parameters

Fri, 30 Jul 2004 22:57:00 GMT

Originally posted on: spending some time with Reporting Services over the past couple weeks, I have noticed a few issues that I find rather odd, at least in my opinion. If you create a report and use a parameterized query, report services will nicely add the parameters to the report for you as well.  This is a great feature and I really like that aspect. What is different however, is when you want to call that report from within an ASP.NET web application.  Ideally, you would like to be able to pass the values for the parameters in the URL. For the most part, this should not create any problems, but it does. If you were to go into reporting services and view the report, you will not get any data returned until you enter the values required for the parameters in the SQL SELECT statement in your datasource.  This is by design as you have not told reporting services what you want returned yet. The way that Reporting Services works in this case is to present you with two text boxes with appropriate labels allowing you to enter the parameters required by the SQL string.  Once you enter the values and view the report, your data displays.  You can also do this from within Visual Studio by selecting the Preview option in the report designer.  All seems to work well until you notice that when you run the report in the browser, you see the prompts at the top of the form for the parameters.  If you have passed in the values in the URL, the report should display properly but the values will also be displayed in the text boxes.  This is not desirable most times. By going into Reporting Services directly in the browser, http://localhost/reports/Pages/Folder.aspx, you can set various properties of the report, one of which is to not prompt the user.  This is found under the Parameters link for the report you wish to work with.  I caution you, DO NOT do this.  Once you have set the prompt check boxes to cleared, your reports will now issue this infamous error; Reporting Services Error The report parameter 'paramnamehere' is read-only and cannot be modified. (rsReadOnlyReportParameter) Get Online Help Microsoft Reporting Services Click the Get Online Help link to find out that there is very little help available for this error message other than to say; Explanation This error occurs when you attempt to set a value for a parameter that is read-only.     User Action Search Books Online for more information about the parameter. There are conditions that you can control that determine whether the parameter is read-only. Currently there are no Microsoft Knowledge Base articles available for this specific error or event message. For information about other support options you can use to find answers online, see Nice?  NOT! Here is what I have found to be the solution.  Go back into the report manager on your computer and set the Prompt User check boxes to checked.  Now, you still don't want the prompts to be displayed on the page because you are passing them in the URL.  Go back to your project and select the report viewer control, if you are using it, and set the Parameters property to false.  If you are not using the viewer, you can set the property in code.  Once you set the parameter property to false, the prompts will not display at the top of the report in the browser anymore. BTW, you can supposedly also suppress parameters in the URL by adding a query string parameter of rs:parameters=false.   Gerry [...]

Developing Without Admin Privileges is Most Frustrating!

Fri, 23 Jul 2004 15:03:00 GMT

Originally posted on:

Today, I have spent considerable time bashing my head against the wall.  Our company policy stipulates that no developer will work while logged on with an administrative account.  Although I applaud this idea and accept it for its inherent security and general all around good idea, it is still frustrating as heck. (Not the word I want to use).

Why do VS Developers and Debugger Users not have read permission to the MSSQL directory?  Or for that matter, why not read and execute to most of the directories and subdirectories on the file system? 

I tried to install the Reporting Services sample application from MSDN which uses an MSI file.  There is no Run As for those files types.  Aarrrrggghhh!!!

Thank God It's Friday!!!

1) Stop at beer store on way home

2) Place entire 12 pack on ice in a bucket

3) Place bucket beside pool within easy reach

4) Do not get out of pool until beer is gone

Exceptions to rule 4:

a) bathroom breaks

b) ice melts

c) wife is motioning in a seductive fashion ;-)