September 2005 - Posts
I was working with WMI yesterday to report information about a computer. When trying to use the data in the application I ran into a problem that there is not an easy way to convert CIMTypes to System types. If anyone has a suggestion let me know. If not you can use my switch statement as a start for a Convert function.
private System.Type ConvertCimType(CimType ctValue)
{System.Type tReturnVal = null;
switch(ctValue){
case CimType.Boolean:
tReturnVal = typeof(System.Boolean) ;
break;
case CimType.Char16:
tReturnVal = typeof(System.String);
break;
case CimType.DateTime:
tReturnVal = typeof(System.DateTime);
break;
case CimType.Object:
tReturnVal = typeof(System.Object);
break;
case CimType.Real32:
tReturnVal = typeof(System.Decimal);
break;
case CimType.Real64:
tReturnVal = typeof(System.Decimal);
break;
case CimType.Reference:
tReturnVal = typeof(System.Object);
break;
case CimType.SInt16:
tReturnVal = typeof(System.Int16);
break;
case CimType.SInt32:
tReturnVal = typeof(System.Int32);
break;
case CimType.SInt8:
tReturnVal = typeof(System.Int16);
break;
case CimType.String:
tReturnVal = typeof(System.String);
break;
case CimType.UInt16:
tReturnVal = typeof(System.UInt16);
break;
case CimType.UInt32:
tReturnVal = typeof(System.UInt32);
break;
case CimType.UInt64:
tReturnVal = typeof(System.UInt64);
break;
case CimType.UInt8:
tReturnVal = typeof(System.UInt16);
break;
}
return tReturnVal;
}
—Brendon Schwartz
I don't know if I've posted these links before or not, but I'm going to do it now b/c I just ran across them again as I was digging through my bag of TechEd goodies.
http://msdn.demoservers.com and http://msdn.microsoft.com/virtuallab - These sites are full of hosted windows environments that you can log into for 90 minutes at a time and experiment with any of the following technologies: Windows Workflow Foundation, SQL Server 2005, Microsoft Office Professional Edition 2003, Visual Studio 2005 , Java to .NET Framework Migration Workshop, Visual Studio .NET 2003, Microsoft BizTalk® Server 2004 , and more. Each has a downloadable lab and a full environment where you can learn a ton of useful stuff. I'm not actually sure why there are two different links - they both show the same exact content with different formatting. Whatever, maybe there will be a difference at some point in the future so I'm giving both links.
-- Matt Ranlett
I'm actually writing this blog entry from the HOL room in the Intellinet offices as Dan wraps up his presentation of the 200 level content. We had a similar level of audience dropoff between the level 100 HOL and the level 200 HOL. Last time we had nearly 40 people show up where this time we had just under 20. The nice thing about the smaller audience is that the group was much more managable when things went wrong (as they inevitably do thanks to typos and the like).
Dan did a good job leading people through the Frontpage demo, the simple web part, and the deployment of web parts. We gave the group about 45 minutes of self directed study time to go at their own pace in the middle of the presentation. This gave us an opportunity to work with the people who's virtual machines were giving them problems while the ones who felt confident zipped through the development of another two web parts. Everyone finished at about the same time (thanks largely to the wandering help Brendon and Keith provided) and everyone practiced deployment with Dan.
I've not seen the surveys yet, but I'm confident that everyone attending had a good experience and is going to walk away with some great knowledge.
Thanks again to Intellinet for offering us the HOL lab space!
-- Matt Ranlett
Ramping up the content's technical level from the 100 level to the 200 level cut our audience to about 60% of our level 100 audience. This time we only managed to bring out about 42 developers interested in how to code some custom SharePoint web parts. As one of the members of the presentation team, I felt we did an excellent job preparing for this presentation. Our slideshow had a custom template, our handouts were all printed in color on glossy paper, and we had a water bottle on the desks ready for everyone who sat down. To my mind, this was the most professional training event I've been to that didn't cost over a thousand dollars per attendee! I know I'm biased, but I'm highly impressed with myself and my team - mostly my team. Of course, none of what we've done would have been as easy as it's been without the continued support of our sponsor Intellinet. Two days before our presentation they surprised the presentation team with some very nice button down shirts with our logo embroidered above the pocket! Thanks guys! That's a really nice touch, and totally unexpected too!
Keith and Brendon did the presentation, and they did their best to cover all the material we had laid out in our allotted time. Unfortunately, we discovered that we can't actually squeeze 34 sides AND 14 demos into a single 2 hour presentation. We had to skip the deployment topic - how to get a web part into a production SharePoint site (as all our other demos used a development environment approach to display our custom web parts). We've got time to cover this in the Hands on Labs on Tuesday, however.
The reviews we got from everyone were very positive and we certainly appreciate all of the constructive criticism we've received. We're doing our best to make each presentation better than the last and we need your help to do it. Thanks to everyone who showed up - I hope you learned something that made it worth your time.
-- Matt Ranlett
Brendon and I strayed from our normal user groups last week and went to a presentation on Agile development processes by some folks from ThoughtBridge at the Extreme Programming/Software Architects group. While most of the 25 person audience were Java programmers, the concepts we went over apply to any programming language/technology.
One of the core concepts for XP was how to manage your work items and your progress. The recommendation from our panel of experts from ThoughtBridge was to use 3x5 index cards to represent each work item. This way, when you're planning out your iterations and what to build in each iteration, you have something tangible to manipulate that gives you a real idea of how long something will take and how you're doing vs your project goals.
Of course we also talked about Pair Programming, having an onsite customer, small iterations with code drops after each iteration, etc. Most people seemed enthusiastic if slightly skeptical about how well management would swallow some of the ideas.
-- Matt Ranlett
The Atlanta MDF SQL Server user group met in their new location for the first time last week. They are now meeting down off North Druid Hills in the Childrens Hospital of Atlanta training facility. We had a great presentation on SQL Server security, especially in light of Sarbanes Oxly (I know I spelled that wrong) restrictions. The content was promised to us via e-mail, but we have yet to see it. I'm sure we'll get it eventually and we'll get it online. About 45 people were in attendance at the beginning of the evening but we lost some at the break and were down to about 30. Douglas had some really nice handouts as well - neat little tape measures with built in pens and pads of sticky notes. Not sure which IT company is handing them out but they sure were cool.
-- Matt Ranlett
Google is making it easier to find the things you want with some specialized, targeted, search engines. If you want to look in the blogsphere for some tidbit of info and you can't remember who said it, check out http://blogsearch.google.com - a new blog search engine.
If you're working on some thorny issue involving Microsoft technology and need to know something without cluttering up the screen with irrelevant hits, check out http://www.google.com/microsoft for an engine that searchs www.microsoft.com AND all the related sites (for example, www.eweek.com, compnetworking.about.com, and www.ebpml.org popped up as the top 3 results for a search on Indigo)
-- Matt Ranlett
Microsoft is looking for some local software folks to work with area high school kids taking AP Computer Science courses. They're looking to take the most gifted students, put them together in a project team, and build a Hunt the Wumpus application. Sue from Microsoft put a call for help on the DevCow forums.
More details about Hunting Wumpi
-- Matt Ranlett
I'm trying to think of some reasons why I NEED (aka - can use to justify to Kim) purchasing this $400 upgrade to my entertainment center. I've got (and love) the Xbox and I'm sure that there are some compelling reasons why I need the new one:
- new, better looking games (but I don't have a HD TV so that feature is lost on me)
- wireless controllers (but I can get this for my existing Xbox without spending $400)
- play my images and DVDs (but my DVD player does this already)
- super cool b/c it's new! (yup, but Kim's not biting)
OK - Microsoft has done a good job of creating some amazing looking websites but they've not really gone the extra mile to convince me what features the new Xbox has that I just can't get in my current model. It looks like the smart money is on me not actually buying the new Xbox until mine either dies an unfortunate death or I can come up with something really good that let's Kim know how much I need the new Xbox. Alternatively, I could make $400 on my own somehow...
-- Matt Ranlett

Out now, a new ultra tiny iPod. Nearly twice as expensive as the now retired iPod Mini - this thing is REALLY small
Also out now, the new iPod phone - Rokr, which integrates directly with iTunes wirelessly. Despite some rather lame limitations discussed in this CNET Article, the phone seems fairly cool.
-- Matt Ranlett
Are you planning on doing a code based presentation using Visual Studio.Net? Are you tired of having to change your fonts back and forth between what you actually code with and what you want your audience to read? Check out this blog posting by Harry Pierson (who got the idea from Scott Hanselman)
Basically, build up a pair of macros which will change your font instantly.
In order to use these macros, copy the code below into a macro project via the Macro Explorer. I'm using the "Visual Studio Developer" profile, and so I hit Alt-F8 to bring up this window. You can also find it on the menu at View > Other Windows > Macro Explorer and at Tools > Macros > Macro Explorer. Once you've got the macro explorer open, it's pretty easy to create a new macro project, open it for editing, and paste this code into it.
Private Sub SetEditorFonts(ByVal size As Integer, ByVal family As String, ByVal bold As Boolean)
Dim Props As Properties
Props = DTE.Properties("FontsAndColors", "TextEditor")
Props.Item("FontSize").Value = size
Props.Item("FontFamily").Value = family
Dim clritems As EnvDTE.FontsAndColorsItems = Props.Item("FontsAndColorsItems").Object
clritems.Item("Plain Text").Bold = bold
End Sub
Sub DemoConfig()
SetEditorFonts(18, "Lucida Console", True)
End Sub
Sub NormalConfig()
SetEditorFonts(10, "Courier New", True)
End Sub
— Matt Ranlett
Ok, so it’s a lame post topic, but I really do like the new keyboard I’m using at my new workplace. It’s a wireless Dell keyboard, which is pointless for me b/c I almost never move the keyboard more than an inch. It’s also not a split keyboard which I really do prefer, but it does have some really nice extra feature controls on it that I like. I really like the media controls on the top right. I spend a lot of time listening to music through headphones and the control on the top right are very handy for this.

— Matt Ranlett
Due to the regions extreme freak-out with gas prices, Jim decided not to ask everyone to spend the required $50 in gas to get to the VB.Net meeting last night. The meetings will go on as scheduled from now on.
-- Matt Ranlett
I've started using Deepnet Explorer - an Internet Explorer wrapper with some really nice features. It adds some great features like tabbed browsing, integrated news reader, popup blocker, and more. I mostly want the tabbed browsing and I am resistant to Firefox, so this is an acceptable substitute until I get my MSDN Universal number later this week and can download the IE7 beta.
-- Matt Ranlett
My first day wasn't very eventful. I learned that by taking the interstates and GA400, it will take me about 45 minutes driving each way. That's an hour and a half in the car a day (and the traffic was light). I learned that I'm inheriting the tape backup system here at the new place b/c no one else wants to bother with it. I also got a look at the application I'll be maintaining and eventually re-writing. It's a warehouse management system. Should be fun! Looks like there's loads to do.
-- Matt Ranlett
More Posts
Next page »