Attention: We are retiring the ASP.NET Community Blogs. Learn more >

Fear and Loathing

Gonzo blogging from the Annie Leibovitz of the software development world.

  • Blog is back

    Everything looks good now. Have it reconfigured so it's not that much different (why mess with a good thing). There are some new features like the ability to email or digg one of my posts (yeah, like that will ever happen) and the tags at the side are sized based on the number of posts with those tags.

    Neat.

    Now I just have to figure out how to get BlogJet to support connecting to it (there's no option in BlogJet to post to a CS server) and I'm rockin.

  • Offline for an upgrade, Plumbers @ Work, and Calgary Code Camp

    Just wanted to let you know that my blog (and RSS feed) will be unavailable between 4pm EDT (-5GMT) and Midnight this evening. This is to facilitate an upgrade on the weblogs.asp.net site from .Text to Community Server. The long awaited upgrade will provide a few extras for you as a visitor here so we’ll get those configured once the upgrade happens.

    Our latest episode of Plumbers at Work went online a few days ago (forgot to report it) so check it out here. Plumbers at Work runs off the latest version of Community Server so you can kind of see what to expect this blog to transmogrify into.

    Also next week is the Calgary Code Camp where I’ll be presenting two sessions, one on .NET tools and one on building ASP.NET 2.0 Web Sites with Master Pages, Web Parts, and cool stuff. Be sure to register as it’s free and we’re giving away stuff.

  • What is this CodePlex all about?

    So CodePlex is out in the wild and there are a few showcase projects setup, but what’s it all about?

    CodePlex.com is a simple but highly functional online collaboration venue for distributed, community-collaborative software development. For the last year, a team in Microsoft has been putting together this tool which is the first Visual Studio Team Foundation Server (VSTFS) over the Internet. For Microsoft, their primary objective with CodePlex is to enable Windows and .NET developers to write, share, and consume source code and applications. It’s that simple (and free).

    Korby Parnell and his team designed CodePlex as a replacement for GotDotNet Workspaces, and if you’re like me, it kicks the llama’s ass. CodePlex is written from the ground up in C# utilizing .NET 2.0 technologies and built on VSTFS. CodePlex enables geographically-distributed teams to enjoy the benefits of VSTFS over the Internet which is pretty cool if you’re familiar with the capabilities of VSTS. If not, then you should check it out.

    Much like the multitude of Googles projects, the site is marked as beta but unlike Google, this won’t stay that way for long as this is their final release before production. Between now and the end of May they are on boarding a small number of high quality “Showcase” projects. There’s some cool stuff there like NUnitLite, the Commerce Starter Kit, Atlas Control Toolkit, a meta generator for the BDC, IronPython (a Python implementation on .NET), and of course my SharePoint Forums Web Part (#2 on the activity chart!). The plan is to go public sometime in June where any project can join up and be hosted there.

    The first thing everyone will do is compare this to the highly populated SourceForge. I’ve been a member on SourceForge since 1999 so yes, I think they have a lot to offer. The services have grown with things like the new support for Subversion (which blows CVS out of the water so go get it if you’re on CVS now). Side by side, both CodePlex and SourceForge offer project hosting with similar features (file releases, source code, issue tracker, documentation). The Web Interface for CodePlex seems nicer but it’s the Team System integration where it really shines.

    Once a project has been created for you on CodePlex and you’re ready to upload source files and binaries, you must download and install one of the following Team Foundation clients. Whereas the Web site is designed as the primary interface for project administration (manage members, write documentation, delete off-topic discussion threads, etc.) and project evaluation (download and install SharePoint Forums, engage in discussions, read documentation, submit bugs, etc), all version control and many work item tracking functions must be performed using one of the following VSTFS clients:

    • Visual Studio .NET 2005 Team System
    • Visual Studio .NET Team Explorer, stand-alone GUI client
    • TF.exe, a stand-alone command line interface

    The Visual Studio Team Explorer client comes with Visual Studio Team Foundation Server and is also available for download from the Microsoft Download Center as a CD image file (you can rename this to ISO which is the same thing).

    SourceForge has changed over the years. In writing this blog I wanted to post the stats to the site, which used to be on the front page. This listed the number of projects and users (which was pretty astronomical) but is now missing since the last layout change to the site. SF seems cleaner these days, but cleaner doesn’t mean better. CodePlex is simple and intuitive to view and navigate but can stand some improvement (as demonstrated by the various suggestions we’ve already made in the discussion forums there). Besides all that, hopefully CodePlex won’t become the ad-ridden marketing tool that SourceForge has become where it’s just pimping it’s Enterprise version (in this case, VSTFS).

    Unfortunately, for us with WSS sitting on top of VSTFS now there’s no CodePlex for you to host behind your firewall. Microsoft does not have any plans to release the source code and, according to Jim Newkirk “The software is designed to run in the Microsoft data center, so it isn't something that could realistically be hosted in another environment.” Bummer. I’m sure some people will cry foul because they can’t get the source code but free is good so we’ll take anything at this point. It does show you that such a beast can be built and TFS can be used, like SharePoint, as an application delivery platform (if of course you have a year and a lot of smart softie brains). 

    Microsoft expects CodePlex to emerge as one of the most popular, if not the de facto collaboration venue for community software development projects that target or extend Microsoft products and platforms. CodePlex is and will remain a free, Internet-based edition of Visual Studio Team Foundation for the use of Microsoft valued developer and IT Pro customers.

    Will CodePlex turn into just another SourceForge, with thousands of abandoned or empty projects? To prevent project spamming and to ensure that CodePlex remains a bastion of the highest quality open and shared source projects rather than empty test projects and code-free wonders, the CodePlex team is reviewing and approving/denying all new project requests (with the help of a few CodePlex community members) through the end of the calendar year. 

    Time will tell.

  • Installing and Configuring the SharePoint Forums Web Part

    I’ve detailed and completed the instructions for installing and configuring the Forums Web Part for your systems. There’s been a lot of people who have either never editing web.config to add SafeControl entries, or never created a custom security policy file and are a little lost in step 3 or 4.

    You can find the complete instructions here on the CodePlex Wiki. Each step contains a link to a more detailed page outining what has to be done (with examples). Hopefully these instructions are complete enough for everyone.

    Yeah, the system really needs an installer.

  • Test Driven Development guidelines done right

    Remember all the bruhaha a while ago when Microsoft published a document about their concept of Test Driven Development guidelines. We were all up in arms as they tried to define the process to match Visual Studios auto-test-generation and all that and well… it just blew.

    So they’ve republished the paper here with all the right stuff. I checked it out and was going over everything in my head, hoping it wouldn’t be another series of blogs telling MS they screwed up again.

    Red, green, refactor. Cool.

    Write the minimal amount of code to pass. Awesome.

    Refactor to design. Superb.

    Of course the author is a TDD leader in his own right, so it doesn’t surprise me it’s a mucho-better document than before and now something you can point your kids at. Thanks J!

     

  • Cool CodePlex Feature

    Yeah, I'm groking CodePlex and loving it. There's a great feature that I just did for the first time. A user posted a message in a forum (the first forum post! And there was much rejoicing!) about clicking on categories which would cause nothing to happen. This is due to a change in the way forums were being retrieved and something I had to fix. You select the forum post and click on "Convert to Work Item". This does two things.

    First it creates a Work Item where you can track the feature/bug/whatever. The second thing it does is post a message to the thread saying it's been converted to a Work Item and telling people to track it there.

    This is the way cool technique to implement features and fix bugs. There's no loss of tracking a suggestion (if you choose to create a Work Item) and really ties things like requirements to work done.

    Nice stuff.

  • Documenting the SharePoint Forums Web Part

    I've started putting together the documentation for the SharePoint Forums Web Part (SFWP anyone?) on the CodePlex site so let me know if there's anything you're looking for specifically (and feel free to jump into the discussion forums there to get some open discussion around features, bugs, etc. started). I've also started a FAQ here that you can use for a quick reference on things if you're not into reading lots of text (like most of us are).

    Also note that I've removed the download link that used to be on downloads.bilsimser.com and all downloads of the Web Part need to be done through the CodePlex download link here (this will require you to agree to the license agreement). The Web Part is released under the Creative Commons Attribution-ShareAlike 2.5 License. This basically means that:

    • Commercial use of the Web Part is allowed
    • Modifications (including derivative works) of the Web Part are allowed as long as they are released under the same license as this one

    Please respect this when using, modifying, and sharing the Forums Web Part.

  • SharePoint Forums on CodePlex

    CodePlex kicks ass. There. I said it.

    And my SharePoint Forums Web Part project has a new home. On CodePlex. Cool.

    CodePlex is the brainchild of Microsoft and is basically a public facing Visual Studio Team Foundation workspace (the first one that I know of) for hosting and sharing of community projects. If you’re familiar with sites like SourceForge and GotDotNet, it’s very similar. SourceForge is closer to what CodePlex offers (or the other way around if you prefer) in that you have discussion forums, file releases, news, source code, a Wiki, etc. except that rather than hosted on Linux and using CVS/Subversion it’s all ASP.NET 2.0 baby and Team Foundation Server.

    Although (and feel free to quote me on this) GDN just plain blows monkey chunks. When I go there, navigation is a nightmare and half the time I end up looking at the main page when I thought I was in a project. Also (just today for instance) I joined a new project, was approved and all that then tried to download the project files and was asked to join. I gave up after signing in a dozen ways to Sunday (oh and how I just love Passport). Nuff said.

    I really love SourceForge and it’s served me well (and the other 60,000 projects hosted on it). Will CodePlex be the next SourceForge? I don’t know but I do know I’m going to enjoy working with CodePlex that much more. Complete Visual Studio integration, wikis, work items, tracking, forums, etc. That just works for me.

    Okay, some people will gripe and say SourceForge (or the much improved GForge) is much easier to use and doesn’t require a $15,000 client to access it. Fear not as you can use the “tf” command line tool to use even if you don’t have Team Suite (which means you can still use say the free Express edition for development but still access your project on CodePlex). That’s the beauty of TFS, it’s open ended and I’m sure the command line client won’t be the last one you see (hint: hey TortoiseCVS and TortoiseSVN guys, it would be great if someone could put together a cool TortoiseTS project).

    The main thing that I’m digging is the Wiki support so I’m just going to fill the site with documentation on the Web Part so I don’t have to keep posting tidbits on my blog or through emails. The collaboration features of CodePlex are going to be quite cool too since I could (eventually) have a team around the world working on the Web Part, all checking stuff in etc. in a nice interface without having to leave the comfort of Visual Studio.

    Yeah, I know. You’re all saying Bil has just become a Microsoft brainwashed addict and has gone off his rocker spouting gobs of Team Server propaganda. Like we care since so many other sites have done far more for far less so what’s the big deal. I’m sure people will continue to say sites like SourceForge (and others) far surpass what CodePlex could ever be. Guys, don’t review the movie just from the trailer. Sure, CodePlex isn’t something that we haven’t seen before but it’s a damn better step forward than what GDN offers and (IMHO) can only get bigger and better. Time will tell.

    I’ve just got the Forum project site setup and will be adding documentation, releases, and source code to it over the next week or so. There are some forums there, so feel free to sign up on CodePlex (it’s free of course) to ask questions, share experiences (good, bad, or ugly), suggest features, and all that jazz. Feel free to visit the site for updates as well and collaboration on the project (and I’ll be posting updates here but most of them will redirect to pages on CodePlex) and let’s make it the most popular one on the system (at least until something better comes along).

    Oh yeah, while this is my first project on CodePlex (and from what I was told, the first non-MS project hosted there) this certainly won’t be my last project on CodePlex.

    You can check out my SharePoint Forums CodePlex site here. I’ve also posted the file as a release now so please use this link to grab it (this includes a license agreement page you need to agree to in order to download the file) as I’ll be removing the old one. SharePoint Forums is released under the Creative Commons Attribution-ShareAlike 2.5 License.

    P.S. sorry for the over abundant use of the word “cool” in this blog. It’s been a good (and long) caffeine enriched day.

  • SharePoint 2003 and .NET 2.0

    Personally I’m seeing more and more people asking questions and being generally confused about building Web Parts with Visual Studio 2005 and .NET 2.0 for the current version of SharePoint. This is of course compounded by the fact that ASP.NET 2.0 has a class called WebPart, can do Web Parts but they’re completely different from the SharePoint 2003 ones.

    My advice to you, weary traveller, is to simply don't bother with VS2005, ASP.NET 2.0 and SharePoint 2003 (WSS or otherwise) today. Yes, there are bloggers and MVPs out there that have instructions/sessions/presentations on how to do it however you can make it happen only under certain circumstances, and if you sacrifice the correct number of chickens (or virgins if you prefer) in the correct order on the correct night of the full moon. It's really just a big bother for very little gain IMHO.

    Wait until later this year when you can just build stuff right out of the box. Trust me, VS2005 and SharePoint 2007 works like a dream.

    Click, code, create.

    No mess. No fuss.