Tuesday, July 08, 2008

image Last week I gave a Windows Workflow Foundation (WF) presentation at the Portland Area .NET Users Group (PADNUG). I figured it's summer, a couple of days ahead of the Fourth of July weekend, I should be prepared to have six people in attendance. But, in truth, it was around to 30. Not bad considering the competition. And it was great group for breaking in my new WF talk with several excellent questions and comments from the audience. And there was general beer drinking and WF merriment at Gustav's afterwards.

A PDF of the slides is available for you to download and enjoy.

Increase and decrease font size from the keyboard. I got tied up in traffic on the way to the talk, which discombobulated me slightly, and I forgot to bump up the font sizes in Visual Studio the way I always do. Thankfully, someone called the small fonts to my attention. As if on queue, Rich Claussen talked me through Sara Ford's Visual Studio Tip #242: "Did you know… You can bind macros to keyboard shortcuts (or how to quickly increase / decrease your text editor font size)?" That totally rocks. Thanks, Rich. Thanks, Sara.

Change font and size of IntelliSense. While I was looking that tip, I ran across an equally awesome tip for presenters on Sara's blog, "How to change the font and font size for Intellisense: Statement Completion, Parameter Info, and Quick Tips." I can see this one will be really handy for presentations where I am using IntelliSense to discover and explore some kind of object model. Nice.

Monday, July 07, 2008 11:24:28 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Thursday, June 19, 2008

The long-anticipated Subversion release 1.5 is now available. Subversion is an open source version control system available on a wide range platforms. It was written as the compelling replacement for CVS. Release 1.5 introduces several features, including support for basic merge tracking suitable for many common scenarios, as well as changelists.

At Corillian-now-part-of-CheckFree-now-part-of-Fiserv, we've been using Subversion for nearly three years. It took people some time to adjust to optimistic concurrency, it meets most of our source control needs. We'll probably wait a few months until we're in a better place in our development cycle before upgrading, unless a team member finds something we simply cannot afford to live without.

Many developers here use the TortoiseSVN client, which should have a Subversion 1.5 compatible release shortly. Support and training for Subversion 1.5 is available from CollabNet.

Congrats to all the Subversion contributors, I know it's been a long haul getting this one out.

Thursday, June 19, 2008 12:58:57 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [1]  | 
 Wednesday, June 18, 2008

Matt Hinze draws attention to a little-known (translation: new to me) item in Appendix B of the TortoiseSVN documentation, Create a shortcut to a repository. In short:

Create a new shortcut and set the target to:

TortoiseProc.exe /command:repobrowser /path:"repositoryURL" /notempfile

Replace repositoryURL with the path in the desired repository. Thanks to Travis Illig for passing this along.

Wednesday, June 18, 2008 8:11:07 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Tuesday, June 17, 2008

Cliff Simpkins in CSD, replied very promptly to my post over the weekend asking why there was no Visual Studio in the WF tutorials.

image It turns out that the tutorials I was looking at were old versions from the original .NET Framework SDK. The SDK clearly doesn't include Visual Studio, hence no mention of Visual Studio. That makes sense.

For whatever reason, the tutorial links that are on the Windows Workflow Foundation Tutorials page in the MSDN Library link to the old, SDK-only versions of the tutorials. MSDN is working on getting those updated to link to the modern versions of the tutorials. That might take a week or so if there are other priority things in the MSDN queue.

In the meantime, you can get to all of the modern versions of the WF tutorials by navigating the tutorials using the tree view on the left. I think you want to use this exclusively until MSDN fixes all the links.

The modern versions of the tutorials guide you through using either Visual Studio or a POTE (plain old text editor). Sweetness.

You can tell if you are looking at an old SDK-only version of a tutorial because the tree view on the left will be severely truncated and not show the page you are viewing, and the navigation controls at the top of the right page will only show "MSDN | MSDN Library" instead of several additional levels.

Additional resources

Cliff also pointed me to some other WF resources to share. First stop is the Windows Workflow Foundation (WF) Developer Center at http://msdn.microsoft.com/workflow (score bonus points for the cool URL.)

Next up, HelpDesk v1.0 is a sample web app that demonstrates WF on TryIt Channel9.

Finally, there is a nascent collection of Windows Workflow Foundation articles and overviews on MSDN. Good stuff there, and I expect more over time as Microsoft continues investing in WF.

Tuesday, June 17, 2008 3:26:44 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [1]  | 
 Sunday, June 15, 2008

Updated 17 June 2008: Cliff in Microsoft's Connected Systems Division quickly identified the problem. See Yes, we have Visual Studio in WF tutorials for the full story. I was buried yesterday or I would have posted the update sooner!

I had a notion to see what the WF training materials on MSDN were like. Straight away I hit upon a conundrum.

Does anyone out there have a clue why the Windows Workflow Foundation tutorials on MSDN Library studiously avoids use of Visual Studio?

The first tutorial, creating a sequential workflow, Exercise 1, Task 1 has you creating a .csproj file and pasting in a few dozen lines of XML without explanation of why we're going down this path. What's wrong with VS2008's File | New | Project?

Then it has you cut-and-paste over 200 lines of code into a .cs file for a Windows Form application, most of it in InitializeComponent which I am guessing was generated in the VS designer. That's wacky.

Sure, it is a time saver, and purely ancillary to the WF topic, but this is not how I start building applications. And nary a word of why.

What gives?

Sunday, June 15, 2008 10:05:59 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [1]  | 
 Saturday, June 07, 2008

imageMy friend Patrick Cauldwell will be talking on The Code Is The Easy Part on June 12, 2008 at 7 PM at OGI in Portland. His talk addresses of continuous integration in theory and practice. The talk is free and open to the public, please register at the above link.

The Code Is The Easy Part
Patrick Cauldwell
Sponsored by Rose City Software Process Improvement Network (SPIN)
OGI School of Science and Engineering, Wilson Clark Center
6:00 PM networking and pizza, 7:00 PM seminar

Patrick is also the recent author of Code Leader: Using People, Tools, and Processes to Build Successful Software on Wrox Press. To get a sense of where the book goes, read Patrick's post This I believe... the developer edition. Scott Hanselman wrote the forward to Code Leader and blogged some comments on the book.

Saturday, June 07, 2008 8:57:32 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Friday, May 30, 2008

image Microsoft DreamSpark is a program for students at accredited colleges and universities in 11 countries to get free copies of Visual Studio 2008 Professional, Microsoft Expression Studio, Windows Server 2003 and the XNA Game Studio.

Get started with DreamSpark today and spark your own dream.

DreamSpark is hosted on Channel 8, Microsoft's site specifically for students. It is a sister to Channel 9 and Channel 10. There are some great resources, as well as serious fun to be had on these websites.

Friday, May 30, 2008 4:42:05 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Wednesday, April 30, 2008

image I first saw Seattle-based Tableau Software a few years back at a conference expo, and ended up spending about an hour at their booth. Then I dragged friends over to their booth. Being a big fan of Edward Tufte and his beautiful work on data visualization, I was instantly impressed with what Tableau is doing. If your job includes analysis of data, or creating visual representations of data for others to analyze and draw their own conclusions, then you need to look at this company's award-winning software.

image They now have a page of interesting examples of data visualization created using Tableau. It is well worth exploring even if you aren't interested in their product. You can drill into the details of each example, including downloading the data behind each visualization. What better way to convince someone of your analysis than to show them the data?

<warning>

I had a bit of trouble with the dynamic popups on the examples page. When you hover the mouse over an example, a detail window is popped up. If the popup window is displayed so that the mouse is in the window, it immediately closes the popup window. The net effect is an annoying flash — now you see it, now you don't. No, you can't move the mouse fast enough to get it out of the way, and I couldn't see any rhyme or reason to where the page decides to pop up each window.

That's a real UX bummer, Tableau. Can you get that fixed, please?

For now, you can just click directly on the example for a detail page.

</warning>

From what I've seen, Tableau has been hard at work evolving their capabilities and offerings, including a free Tableau Reader. Nice.

Want more? Take a product tour, download a free trial, watch on-demand web seminars, or make plans to attend their first customer conference 20–22 July 2008 in Seattle, Washington.

Wednesday, April 30, 2008 6:16:03 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Thursday, April 24, 2008

image Here's a handy trick for whipping C# using declarations into shape. Visual Studio 2008 will remove unused using declarations, or sort them, or both in one shot. Here's how.

In Visual Studio 2008, open a .cs file. Right-click anywhere in the block of using declarations at the top of the file and select Organize Usings. Now you can select Remove Unused Usings, Sort Usings, or Remove and Sort which does both.

Thursday, April 24, 2008 8:16:16 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Friday, April 11, 2008

For those attending the Microsoft MVP Summit, here's some late breaking news. Patrick Smacchia (C# MVP) has a talk on NDepend that's a new addition to the schedule. It will be 5PM, Wednesday, 16 April 2008 in the MSCC. The session highlights new features of NDepend, including integration with code coverage metrics from NCover or VSTS.

If you aren't aware of NDepend, it a freaking amazing code analysis tool. It generates seriously deep code metrics, and provides tools for analyzing and visualizing the results. In the Documentation section of the website you can find a pdf "placemat" for understanding the code metrics which I created with help from Scott Hanselman and Patrick Cauldwell.

Friday, April 11, 2008 12:16:45 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Sunday, April 06, 2008

The InnoTech 2008 conference is here in Portland, Oregon, April 16 – 17, 2008, at the Oregon Convention Center. There are a lot of events included in the conference or associated with it. You may be particularly interested in two of those events.

The Developers track runs on Wednesday, April 16, and Thursday, April 17, and features ten sessions. A number of my friends and colleagues are presenting:

And the other sessions look great, too. A big hand to my fellow SAO Development SIG committee member, Mark Lawler, for putting the track together.

The Open Source Summit runs on Thursday, April 17. One of the many things that I really respect about the open source community is their creativity when it comes to presentations and conferences. The Open In Oregon Lightning Talks session features seven snapshot 'lightning talks' by an outstanding panel of presenters. Nice.

InnoTech 2008 is presented by the Software Association of Oregon and EasyStreet Online Services.

Sunday, April 06, 2008 6:16:32 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
 Tuesday, April 01, 2008

imagePain. IntelliSense is handy in a number of ways. One way it is not so handy is that when it pops up, it covers up whatever is down and to the right of where you are typing. Murphy's Law dictates that whatever is covered up is exactly the context that you need to see in order to write your code. Sigh.

For example consider the situation shown here. I was counting on the adjacent code to jog my memory if the class member I am about to create should public, protected, internal, or private.

Band-aid. I've always worked around this annoying 'IntelliSense-makes-a-better-door-than-window' problem by dismissing the IntelliSense window by pressing the Esc key, looking at that code I need to see, and then bringing the IntelliSense window back by pressing Ctrl+J. It's not pretty, but it works. I've done this so much that I find it is hardwired into my fingers. But it is a band-aid solution at best.

imageRelief. When IntelliSense is displayed, you simply hold down the Ctrl key and the IntelliSense window becomes semi-transparent (is that translucent?) so you can see right through it. It's not gone: if you look closely at this screen shot, you'll see the ghost of IntelliSense lingering just inside the range of barely perceptible. Release the Ctrl key and the IntelliSense  window is opaque once again.

Nice. Nice. Very nice.

Updated: as Rob comments, this is a Visual Studio 2008 feature. Sorry for not making that clear. Another good reason to upgrade.

Tuesday, April 01, 2008 7:51:57 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [2]  |