Skip to main content

Posts

Showing posts from 2007

Sharepoint/MOSS: Learning the Ropes

A few years ago, my career touched on Sharepoint 2003 but I haven't worked with it in some time. My group is starting to see some traction with it so I decided to update my understanding.

First off, as Microsoft is fond of doing, there are at least five different versions of Sharepoint. This chart, while far from concise, communicates the functionality in the different offerings. I found it helpful for my breath of understanding.

Also, I'm investigating books I can read in my free time. Here's what I came up with along with some suggestions from the gurus at my firm (thanks, Leon, Steve):

Microsoft SharePoint 2007 Unleashed
Professional SharePoint 2007 Development
Pro SharePoint 2007 Development Techniques (Pro)
Inside Microsoft Windows SharePoint Services 3.0 (Pro Developer)
Real World SharePoint 2007
Microsoft SharePoint: Building Office 2007 Solutions in C# 2005
Microsoft SharePoint 2007 Technologies: Planning, Design and Implementation
Professional SharePoint 2007 Web Content Ma…

ADO.Net Entity Framework: Vendor Support

Last night we held our bi-monthly practice meeting at the office. One of the guys on my team presented LINQ. We got to talking about the ADO.Net Entity Framework and someone wondered about vendor support.

InfoQ is reporting this morning eight vendors have already jumped on board issuing their support in the near future. Beta3 of the framework released two weeks ago so I'm looking for an RTM maybe early Q2...?

Free Microsoft eBook: LINQ, AJAX, Silverlight

From the link...

The free e-book includes content from three recent publications from Microsoft Press:

Introducing Microsoft LINQ by Paolo Pialorsi and Marco Russo (ISBN: 9780735623910)
This practical guide covers Language Integrated Query (LINQ) syntax fundamentals, LINQ to ADO.NET, and LINQ to XML. The e-book includes the entire contents of this printed book!

Introducing Microsoft ASP.NET AJAX by Dino Esposito (ISBN: 9780735624139)
Learn about the February 2007 release of ASP.NET AJAX Extensions 1.0, including an overview and the control toolkit.

Introducing Microsoft Silverlight 1.0 by Laurence Moroney (ISBN: 9780735625396)
Learn how to use Silverlight to simplify the way you implement compelling user experiences for the Web. Discover how to support an object-oriented program model with JavaScript.

Gated Check-ins

Our development shop [gently ;-)] ostracizes the developer who "breaks the build" as a way to encourage quality. We also deliver awards for the group who breaks the build most infrequently. Unfortunately, the carrot and the stick treatment doesn't always work.

Completing the build locally is a good first step but obviously, it doesn't replicate the server CI process identically.

Brian Harry writes of an open source solution for TFS described as "Gated Check-ins". The code is shelved until receiving the necessary sign-offs (manual or automated) and can successfully pass the build sequence. Once successful, the source is unshelved and submitted into the "real" build sequence.

Windows Live Writer

I'm sure there are other on/offline blogging applications but I've recently taken up using the Windows Live Writer application. It's a WISIWYG editor that enables you to draft posts, save them locally, and when connected to the Internet, post to your blog. I also like the style-import feature. This allows one to suck in the theme of your blog so even when editing locally, you know what the post will look like when posted. Finally, it supports most platforms. I use it on both TypePad and Blogger (and soon on WordPress). My team from The Freestyle Entrepreneur constantly complains about the TypePad editor. Fine, we're switching to Live Writer! (I'm migrating off TypePad as soon as I get our WordPress site running anyway. ;-)

MSDN Event: Visual Studio 2008 - Easton

Today I'm attending the MSDN Visual Studio 2008 launch event at the AMC Theatres at Easton Town Center in Columbus, OH. William Steele, Microsoft Developer Evangelist is fielding the discussion for the entire day: Visual Studio 2008, Astoria and Silverlight in the morning and IIS7/ASP.Net in the afternoon. I've never seen William speak but I receive his updates via MSDN emails. He's handling the crowd well and is smooth with the slides and demo. After delivering a bunch of presentations and seeing others present, I just have the greatest respect for folks who can not only pull off a big event like this but do it with comfort and a bit of humor. Topics included:Visual Studio 2008 - what's new.Net 3.0/3.5: C# 3.0/VB.Net 9.0, LINQ, anonymous types, etc.LINQWCF/WF/WPFADO.Net Entity Framework - abstract/extrapolate physical data model into conceptual model (Beta 3 released 12/5/2007...RTM expected Q2 2008)Codename Astoria - expose entities via RESTful web services (Official…

Heartland Influencer Summit

Friday, I braved the early morning tumultuous weather in Columbus to travel to Detroit for a meeting with our Microsoft Heartland District's leaders Jeff Blankenburg (Developer Evangelist) and Josh Holmes (Architect Evangelist). Thanks again for the invitation, guys. The topic of the day focused on how Microsoft can best help the developer community. Most of the 20 or so attendees were affiliated with the local user groups in the district. Hey, at least they [Microsoft] are asking. Microsoft may not always get it right but I've been pleased at the creation of roles such as Developer and Architect Evangelist. This alone really bridges the gap between Microsoft and the community. Now Microsoft just needs to increase the budget for these road warriors. [hint, hint]As a thank you for attending the meeting, Jeff handed out USB Rocket Launchers. Somehow, he scored them from Micro Center for around $10. Nice work, Jeff, they're $35 on Think Geek! Anyway, my 3-year-old couldn'…

Recommendation: Attend CodeMash

If you're anything like me, your responsibilities pull you in about 50 directions--all at once. This is especially true if you're in a technology career. For me, I maintain a list of goals surrounding my career which average around 10-12: figure out Oslo, get stronger with TFS...particularly Rosario, learn ASP.Net/C# 3.5, present technical topics often, maintain my certifications, keep my team happy and growing, etc. Typically, it has been my experience during my 12+ year career that conferences--especially non-vendor-managed conferences are not a good use of my time. One ends up burning a day or two with travel ('cause they don't do conferences in the mid-west), the topics and sessions are hit-or-miss, and they're expensive. CodeMash alleviates all of these shortcomings. Hosted right here in Ohio, the independent founders of CodeMash knocked one out of the park last year in their inaugural offering: logistics, price, content, speakers, SWAG, and organization. Over…

Tools: Free Download Manager, Magic ISO Maker

I've been downloading and installing lots of software lately with the release of VSTS 2008 and the CTPs of Rosario. Downloading through a browser is mediocre at best. I started using Free Download Manager for the downloads and Magic ISO Maker to expand the ISOs.

Check them out. First, they're both free but more importantly, they work great. FDM has built-in restart support and integrates seamlessly with browser downloads. Magic expanded my ISOs quickly and correctly.

Presenting on TFS Wed. Nov. 28th at Columbus XP User Group

Stop by and see me present on Agile using VSTS and TFS 2008 Wed. Nov. 28th at Columbus XP User Group. Go easy if you attend...no hecklers. ;-)


Meeting Topic: Agile with Team Foundation Server (TFS)
Do you expend lots of time and effort inquiring about the status of your projects and setting up infrastructure rather than delivering value? Is it almost impossible to determine progress and velocity using your current process? Do developers constantly tell you, "Hey, no worries...I'm about 80% done"? Well kiss those days goodbye with the introduction of Microsoft's Team Foundation Server (TFS).

TFS coupled with Visual Studio Team System (VSTS) delivers a complete SDLC management, development, testing, and release solution. Targeted to all the roles involved with the SDLC (developers, testers, PMs, BAs, stakeholders, architects, build masters, etc.), TFS assists you in managing requirements, tracking traceability and defects, improving code quality, and most importantly, fa…

Good C# Learning and Interviewing Links

C# Learning
http://www.codeproject.com/csharp/quickcsharp.asp
http://msdn2.microsoft.com/en-us/vcsharp/aa336766.aspx
http://msdn2.microsoft.com/en-us/vcsharp/aa336809.aspx
http://www.oreilly.com/catalog/learncsharp2/

C# Interviewing
http://rileyperry.blogspot.com/2005/05/c-interview-questions.html
http://blogs.crsw.com/mark/articles/252.aspx
http://www.hanselman.com/blog/WhatGreatNETDevelopersOughtToKnowMoreNETInterviewQuestions.aspx
http://spellcoder.com/blogs/bashmohandes/archive/2007/02/26/5991.aspx
http://www.geekinterview.com/Interview-Questions/Microsoft-NET

Bonehead: Headlight Replacement

Isn't pride a sin? I think so. Anyway, I take great pride in keeping my 12 year old Honda Accord in working condition. I'm gonna drive that POS until the wheels fall off. Except for a ton of dings and a few quarks, it's actually in good shape. As long as it gets me where I'm going, I'm happy.

A few days ago, my headlight burned out. Ugh. I replaced them once before (I told you, I've had this car for a long, long time) so I figured, "no problem". I went to Advanced Auto, got the right bulb, and scooted home...again proud of myself for only spending $8.

I get home, pop open the hood, move the radiator overflow tank out of the way and get to work. First off, the cap/gasket-like ring is jammed. After a half hour, I get out the serious tools: screwdriver and hammer. That's right...it's wrecking time! Even after bloodying myself, the gasket won't budge. Ok, time to call in the big guns: Lockjaw Pliers! I locked on to the old socket and just starte…

Balmer Doesn't Get Social Networking...Few People Do

Web 2.0 is about community. Web 2.0 is about relationships. Web 2.0 is NOT about Ruby on Rails. Web 2.0 is NOT about building a "better" MySpace.

Robert Scoble posted an interesting tirade yesterday about Steve Balmer misinterpreting social networking. Scoble cites Balmer's propensity to respond with the Microsoft insular comment about Web 2.0 "We could build [fill in the blank with Web 2.0 technology] in a matter of [short period of time]" as wildly off base. I couldn't agree more.

Scoble's most compelling argument focuses on Ebay. Ebay isn't successful because of its technology. It's successful because it surpassed the tipping point. Everyone uses it for auctions. Why would I want to use another service to buy or sell something when everyone is on Ebay?

Every time I see a job-board listing needing a Ruby/PHP/whatever developer to "build a Facebook-like" application or a "Monster-like job board", I cringe. So some engaging ent…

Judge Lowers the Boom on SCO. Hasta la vista, baby.

It's about time this non-innovator, tort-exploiter got what was coming to it (although I feel for their shareholders):

Mount an ISO

Working with ISO images is a PITA! Typically, I download ISOMagic or ISOBuster and extract the image to my hard drive. However, apparently, this functionality is no longer accessible with the free download. ;-(

I then discovered "Virtual CD-ROM Control Panel for Windows XP". Works under Win2K3 as well. The interface is clunky and I needed to start the "IMAPI CD-Burning COM Service" service but it provided exactly what I needed. I'm surprised this isn't just built into the OS...?

Making Money Online with Content

Over at my other blog, The Freestyle Entrepreneur, we're brainstorming how to actually turn a profit. I think we produce outstanding, compelling content. It's a really good read. But, as much as I like learning about blogging, the technology, and interactive marketing, admittedly, I'd also like to turn a profit on this investment (of my time).

To this end, I compiled a list of online resources we'll experiment with over the coming weeks. I thought I'd share my research here:
Definitive source for learning how to make money blogging: ProBloggerPaid reviews of products: Blogsvertise, PayPerPost, ReviewMeAffiliate marketing: Amazon, Wiley, Commission Junction, ClickBank, LinkShare, Chitika, etc.Gain advertisers on the site: 10 Ways…More Attractive, "Advertise with us Banner", " 7 Levels of Revenue for your Blog" (monthly, recurring advertisers, graphical banner ads, text link ads, etc.), CrispAds, BlogSponsorships, Finding Advertisers …

Historic Social Online Uprising over HD-DVD Decryption Key

Yesterday, the social networking site Digg community vehemently refused a cease and desist / take-down order on a user posting an HD-DVD decryption key (granting a very technical user the ability to copy DRM-protected movies) online.

Interestingly, Digg management/owners pulled the user post down. However, the community revolted and "forced" the post back online (by repeatedly re-posting the decryption key). This event should prove historic because a social / community uprising "won". The "protesters" may not have been right (as in law-abiding) but I think digital freedom is right (as in morally).

This looks a lot like the Boston Tea Party to me. No one likes DRM: it's intrusive and it interferes with my right to use the content. If I paid for Spiderman II on DVD, then it should damn well play on every single DVD player I own--including my laptop. Therefore, these protesters dumped the tea overboard by providing the entire Internet with the keys to the…

Increasing Blog Traffic

Over on my other blog, The Freestyle Entrepreneur, I'm constantly trying to increase traffic. We have, IMO, great content...it's just a matter of getting it in front of folks. I pride myself on being aware of most online marketing venues but Achieve-It alerted me to one I wasn't aware of: ezinearticles.com. I'll be investigating this...submitting to the blog carnivals is effective but not quite yielding the desired results.

Windows Installer XML (WiX)

I've used a lot of installer tools over the years and...now I'm adding another! I'm embarking on the WiX journey. WiX is the Windows Installer XML open source project. Getting started:

Project
SourceForge
Introducing WiX (old but Mike Gunderloy is one of the best in installer technologies)
Google Group
WiX v3 Roadmap Draft

I downloaded WiX v3.0 and got the integration working with VS.Net 2005. Instructions:
Automate Releases With MSBuild And Windows Installer XML
System Folder Properties

PowerShell: Alternative to VBScript and DOS Scripts

Most developers I know still use VBScript and DOS to compose reusable and one-time scripts. I was one of these people until I discovered PowerShell. It's a bit tricky to pick up but far more powerful than the legacy alternatives.

My favorite feature is the "-whatIf" flag found on most (if not all) operations. One can set this flag to understand exactly what would happen if you were to execute the command as it is written. It's almost like having a unit test harness for scripting operations. No more accidental hard drive formatting.

So, for your next scripting task, check out PowerShell instead of writing some hard-to-maintain/author legacy script.

Cube Farms Brought to you by Uncle Sam?

Joel Spolsky wrote recently on building out additional office space. They're choosing to leverage portable walls instead of drywall construction. They took this direction because permanent space improvements depreciate much slower than office equipment expenses.

In this regard, do we really have the IRS to thank for the proliferation of cube farms as opposed to the traditional thinking: mega-corporation? (PS. I'm a firm believer cube farms kill productivity and stifle creativity...I'm not a cow. However, they're much better than a big table housing 11 shoulder-to-shoulder consultants.)
Office furniture can be depreciated much faster than leasehold improvements, over 7 years. So for $20 of office furniture you can deduct about $3 a year: better than nothing. Even better, office furniture is a real asset, so you can lease it. Now you're not out any cash, just a convenient monthly payment, which is 100% deductible. This is why companies build cubicle farms instead of wa…

Turn off Email Notifications

Steven Borg writes a post that hits home for me. He suggests turning off email notifications while developing (or trying to focus on an intense task). I am so guilty of this. I'm all the time flipping into Outlook, Gmail, or OWA to check email (client, personal, and employer/firm). I'd probably be twice as productive if I followed his advice of only checking once an hour.

I'm going to work on this...

BTW, I took Steven's 3-day intense Team System training. I don't attend training often but his was some of the best I've seen delivered. His blog is a great resource for SCM, Team System, and just good overall development guidance.

DotNetNuke 4.5.0 Install

Struggled with this one. I have two sites to build so I downloaded the DNN 4.5.0 source and copied it into two separate directories within Inetpub. I downloaded and installed Visual Studio Web Express Edition.

I pulled up the first site (VS Web Express uses Web Sites vs. Web Applications), built it, and browsed to the site. I walked through the straightforward install wizard getting to the last step where the database scripts install. And it just scrolled the progress bar endlessly. I even let it run overnight. Nothing.

Finally, I bypassed the install wizard setting the UseInstallWizard to false within the web.config file. Afterwards, I browsed to the default page again and an pragmatic but successful script informed me the site had executed the scripts successfully and my portal was available!

Other than this hiccup, I'm impressed with the installation mechanism and functionality.

WCF Presentation Coming

I have a .Net Windows Communication Foundation (WCF) presentation due in a few weeks. So, I'm going to collect my travels here on Effective Thoughts.

To start off, how do I obtain and install WCF?
(...assuming you have Visual Studio 2005 w/ SP1 installed)
Visit the Windows Vista Developer Center and download:
.Net Framework 3.0 Redistributable
VS.Net 2005 Extensions for WCF, WPF (Nov. 2006 CTP)
Windows Vista SDK

Resources
.Net WCF home page
.Net 3.0 Virtual Labs
MSDN WCF home page
.Net Framwork WCF home page
Vista Series on SearchVB

More to come!

Freestyle Entrepreneur Outgrows TypePad...DotNetNuke Here we Come

In my spare time, I operate a small business / entrepreneur blog called The Freestyle Entrepreneur (affectionately known as TFE) with my cousin. We started it about 6 months ago to help entrepreneurs and to try and make a profit. I'm handling the technology, the marketing, and a bit of the content. Other than this personal blog on Blogger, TFE was my first foray into serious blogging.

After much investigation, I placed us on TypePad using their top-tier offering. It's a very reasonable $15/month given the value of what TypePad (or SixApart...also makers of Moveable Type) provides. To be clear, TFE isn't really outgrowing TypePad, we've outgrown blogging.

This isn't to say, "Pfffft, blogging? We mastered that in 6 months! Whatever!". Quite the contrary. We've refined our approach and identified blogging is just one piece of what we're about. We're taking a more holistic approach with a more newspaper/portal feel with blogging assuming just one p…

Mom has Ubuntu Now

You're probably thinking I abandoned the effort of repairing my Mom's ancient Dell workstation with the failed hard drive previously running Windows 98, right? Well not so fast my friend!

After about 80 hours of struggling to get Ubuntu to a usable and consistent state (yes, I feel less than brilliant about that), I finally concluded the hard drive I'd dug out of my box of obscure, random computer parts was bad itself. Way to go Einstein.

I found a deal on an 80GB, 7200RPM drive at Microcenter for $50, purchased it for pick-up on their web site, pulled the jumper, attached the 40-pin, mounted it to the chassis, booted into and installed Ubuntu, updated the distro, and wala: Ubuntu lives! Insultingly, this entire effort, including time spent retrieving the hard drive from Microcenter consumed a whopping 2 hours.

Mom visited this weekend. I spent 10 minutes walking her through the interface, how to configure the wireless card when returning home, and using OpenOffice.

So, the ea…

MSBuild Always Rebuilding

Some of the brilliance of MSBuild includes recognizing when source files have not changed and therefore avoiding a re-compile. However, despite possessing an OutDir property, MSBuild always uses the /obj/Debug (or /obj/Release) directory to perform the comparison. MSBuild uses this directory as a temporary folder to avoid contention issues.

In our case, our compiled DLLs reside in a separate directory named /build. Thus, with MSBuild writing DLLs into the /obj/Debug directory, it would always rebuild the DLL (thinking it didn't even exist). These "modified" DLLs would be checked into source erroneously.

To overcome this, I interrogated the Microsoft.Common.targets file to see what the MSBuild team was doing. (This file sits in [Windows]\Microsoft.NET\Framework\v2.0.50727) To truly override the output directory, I'm using the IntermediateOutputPath and BaseIntermediateOutputPath properties. My MSBuild looks something like this:



Named to TeamFB (FinalBuilder)!

I'm excited to be named to TeamFB for FinalBuilder! This is similar to Microsoft's MVP program. I suppose I bugged them with enough questions they figured, "Give him some work to do". Anyway, I think this is a great product and look forward to helping other developers implement this technology.

FinalBuilder

My latest project involves creating an automated build solution for .Net 2.0 source code. For the solution, we're using MSBuild, Cruise Control.Net, and a commercial product called FinalBuilder. I'll write up a later post outlining the approach/solution but I just wanted to recommend FinalBuilder. It's a great build orchestration solution both on the desktop and the server. It also integrates with CruiseControl.Net, extends via Java/VBScript, COM components, or .Net assemblies (called Custom Actions), and their support rocks.

I've been active on their newsgroups while constructing my client's solution. My FinalBuilder posts.

TFS: "Unable to connect to the Windows SharePoint Services"

Whew. I'm finally past this troublesome TFS project creation error.

At first in my research, I discovered TFS is (somewhere...RegProxyFileCache.xml I think) configured to look for WSS (Sharepoint) Admin at port 17012. Some folks identified a second install of WSS leads to the incorrect port for WSS...thus causing a TFS project creation error. This was not the case for me.

Finally, upon highly scrutinizing the project creation log file, I found an inner, inner, inner exception reading:
Exception Message: The request failed with HTTP status 403: Forbidden.Checking IIS on the TFS instance for the "Sharepoint Central Administration" site, I opened the Directory Security tab. Sure enough, the "IP address and domain name restrictions" option was set to default deny and only granted to localhost (127.0.0.1). Ugh. Security. ;-)

To resolve, I simply set the option to default grant. Project creation successful! I hope this helps someone avoid this issue.

What is Visual Studio Team System?

Microsoft's marketing engine IMO, missed the mark branding and naming Team System. (To their defense, it's tough to understand this product line and communicate its vast functionality.) I've seen these products referred to as Team System, Team Suite, Team Edition, and a host of other monikers. To help clear up the confusion, here's a brief write-up and a link to Wikipedia which [I hope] offers a clear explanation.

Visual Studio 2005 Team Edition - The Integrated Development Environment (IDE) technology workers use to accomplish work. There are five "editions", each targeted to a particular role:
Visual Studio 2005 Team Edition for Software DevelopersVisual Studio 2005 Team Edition for Software TestersVisual Studio 2005 Team Edition for Database ProfessionalsVisual Studio 2005 Team Edition for Software ArchitectsVisual Studio 2005 Team Suite - This edition encompasses the functionality of the other four. It's an extra $1200 but I recommend it. The crossover …

I am Green Lantern

Your results:
You are Green Lantern
Green Lantern
70%
Spider-Man
70%
Hulk
70%
Robin
68%
Superman
60%
Iron Man
50%
The Flash
50%
Batman
50%
Supergirl
48%
Wonder Woman
43%
Catwoman
25%

Hot-headed. You have strong
will power and a good imagination.



Click here to take the "Which Superhero are you?" quiz...

TFS Links, Tools, Blogs, Books, etc.

Favorite C#.Net Interview Question: Numeric Conversions

I like to ask a wide variety of technical questions targeted to the candidate's seniority during interviews. My favorite C# question focuses on converting an Int64 into an Int32. Hopefully, this isn't something you need to perform often (poor design) but occasionally we have to clean up after the other guy, right? ;-) (If you interview with me and are reading this post-consider it a gimme...and hopefully you learned something anyway.)

Situation: We have an Int64 "b" I need to convert into an Int32 "a". How should we set a = b in the safest manner (i.e. no data loss)? Here are some options:



Line 15 does not compile throwing a "Cannot implicitly convert type 'long' to 'int'. " exception.
Line 17 properly raises an OverflowException.Line 19 does _not_ throw an exception. a's value incorrectly becomes 1569325055.
Line 21 properly raises an OverflowException.
In my opinion, the style in Line 17 is the best because it leverages the Fra…

Death to DRM

Props to Steve Jobs for finally calling a spade a spade and dismissing DRM as an ineffective solution to rights management. I'm all for protection of author/artist rights but DRM just isn't getting the job done. DRM is simply the major record/movie houses trying to solve the problem with technology. We see this all the time in business. It's easy to treat everything like a nail if all you have is a hammer. Get creative. Come up with a solution that works-hint: it's not technology.

Defeating Cancer: Lance Armstrong starts Lobby

Most fortunately, no one in my family has battled cancer. Hopefully, this will continue. However, we must become more vigilant in this fight. I'm encouraged by Lance Armstrong's renewed push to conquer this silent foe. It is truly an abomination that a people so rich in knowledge and experience have yet to defeat cancer. We put men on the moon...almost 40 years ago! How is cancer anything but a footnote from the 1990's?

I urge you to join in with Lance's army. The V Foundation and the American Cancer Society are also responsible agents in the fight against cancer.

CodeMash: Day 2

Well done! Well done. CodeMash really delivered. Day 2, for me, could be summed up as Scott Guthrie Day. I'm not sure how he pulled off 3 knowledge-laden, engaging presentations...all while on Redmond time. I kept noticing the clock on his laptop. During his keynote at 9am, his clock read 6am. And he was still going strong during his 3-4:15 discussion. Impressive. I hope he gets/got a few hours of nap time on the flight to SeaTac.

Highlights:
Dave Donaldson's review of NHibernate. This guy just impresses me. He's not a rock star (as in unapproachable, full of himself) but more like the people's developer. Down to earth. Human. Wants to help. I'm excited about the prospect of NHibernate. I've used NetTiers with good success but never really pushed the limits. Although, LINQ may trump NHibernate...LINQ. This Object-Relational Mapper (ORM) will revolutionize traditional data access tier development. The Microsoft developer community made solid progress in recent ti…

CodeMash: Day 1

I'm so impressed with the organizers of this conference. In some ways, the "grass roots" effort exceeded the effectiveness of "professionally" organized conferences. Some of the highlights:
Bruce Eckle - Listen to him speak if you get the chance. Abstract but a good message: we must experiment to learn; your assumptions are probably wrong; designing up front will likely miss the mark
Ted Neward - I love it when people break through the religion and the BS to tell it like it is. Ted discussed embracing both Java and .Net to create the best solution to a business problem.
Pillar programming problem contest - I spent about an hour trying to figure this one out on a spreadsheet and failed miserably. ;-) (I think I'm missing some constraints...) Regardless, it was a fun exercise and likely, a great way to attract solid developer candidates.
Video games - I've never been a gamer but I find the innovation intriguing. The Wii over at Quick Solutions seems to be the…

Installing Team Foundation Server Workgroup Edition

It's not rocket science but I found the Team Foundation Server (TFS) installation process a bit tedious and tricky. The install MSI will reactively inform you of what you're missing (with System Health Check) but something more proactive would help. Also, an error within the System Health Check necessitates re-starting the TFS install from scratch. ;-( Regardless, I wanted to share my experience.

My purpose in installing TFS is learn the product and prepare to share with others through demos and presentations. So, I'm working off a Dell Inspiron 6000 laptop running Windows XP. Also, I chose Workgroup Edition because I don't want to mess with CALs and I don't intend to upgrade to Standard or Enterprise Edition. Workgroup and Standard are the same except Workgroup limits to 5 users.

TFS doesn't support Windows XP and I don't want to run Win2k3 Server so I'm using Virutal PC to host my TFS instance. This, BTW, is an amazingly effective and safe way to instal…

Converting .Net 1.1 Applications to 2.0

This post outlines my approach and findings from converting several hundred .Net 1.1 projects (300+) from .Net 1.1 to .Net 2.0.

Approach
Retrieve all .Net 1.1 source code from source code control repository

At the root directory, use “DIR /C /B *.csproj >> projects.txt” at a command line to dump the full path of each C#.Net project into a file

Use the /upgrade option with devenv to convert the .Net projects to 2.0 (devenv "MyProject.sln" /upgrade)

Open a new worksheet in ExcelType devenv in the A1 cell; copy it down into the next several hundred rowsOpen the projects.txt file, select all, and copyPlacing the cursor in cell B1 in Excel, pasteType /upgrade in the C1 cell; copy it down into the next several hundred rowsIn the D1 cell, paste in the following formula =A1& " " & B1& " " & C1; copy it down into the next several hundred rowsSelect the D column and copyCreate a new file called convert.batconvert.bat and paste the clipboard…

Microsoft MCPD Certification Preparation

While I likely won't pursue it (probably not the best use of my time...), I'm starting to point some of my folks down the .Net 2.0 certification route and I wanted to clear up some confusion as well as share some of what I've learned. There are three MS Certified Professional Developer (MCPD) "tracks" one can pursue: windows, web, and enterprise applications (EA). Due to the exam matrix (below), I would recommend developers pursue the EA because it's a combination of web and windows requiring only 5 exams. In contrast, pursuing the web and windows tracks individually requires 7 exams.

WEB70-53670-54770-528
WIN70-53670-52670-548
EA70-53670-52670-52870-52970-549
Finally, while few materials are available, these are the self-study books I'm aware of (most not yet published):

MCTS Self-Paced Training Kit (Exam 70-536): Microsoft .NET Framework 2.0 Application Development Foundation
(Not yet published...) 70-536 Exam Prep: Microsoft .NET Framework 2.0 Foundati…