VS 2005 CTP March 2004

Wednesday, May 26, 2004 by scott

I’ve been working with the CTP to put together an article for ASPToday. Along the way I’ve kept some notes. Since the version I’ve been working with is now obsolete, I thought I should post these notes before they become too obsolete also.

  • The intellisense features are just too good. My cat even loves intellisense. Her name is Beaker. She occasionally lumbers across the keyboard producing random characters and compiler errors, but with the May build I wouldn’t be surprised if she paws out the source to a CLI compliant “Hello World” program. Thanks to Cyrus and the rest of his team for making this work so well.
  • One request – I didn’t have intellisense or the ability to ‘format document’ in a web.sitemap file. I imagine this is only a matter of time.
  • One more request to consider: when I auto-complete on a method override, the default is to give me a stub method like so:

             {
                  throw new NotImplementedException();
              }

Would it be possible to give me a stub method that forwards the call to the base class with the parameters? This would seem like a more useful stub to build on.

  • Last comment about the editor (honest!). I find the bold class names a bit distracting, as well as the squares that appear around matching delimiters. I lose track of the insertion point when the magic squares appear and start hitting the arrow buttons until they go away.
  • There used to be a “Set As Start Page” option in the context menu for a web form in the solution explorer window, but there is not in the CTP. Hopefully this is just a temporary omission as it’s a nice way to avoid an extra navigation step when starting the debugger.
  • Please don’t change the shortcut keys. It took me months to stop pressing F7 after moving from 6.0 to NET.
  • The data visualizations are coming along very well.

I’m wondering how well the CTPs are working for Microsoft. Are they getting the early and useful feedback they were hoping for? Most of the comments on JRoxe’s request for feedback post seem to be of the “yes I’m using it” type.

Now ... on to the May 2004 CTP.

Microsoft SQL Server Best Practices Analyzer

Tuesday, May 25, 2004 by otcnews
Download Microsoft's database management tool to verify the implementation of common best practices on your SQL Servers.

TechEd TechEd Blah Blah Blah

Tuesday, May 25, 2004 by scott
I don’t have any news to report from TechEd, because I’m not there. I’m not bitter about it though. I’m very happy here in the humidity of Mid-Atlantic USA. I’m very happy walking outside and not being able to hear myself think over the roar of the brood X cicada. I’d say I get a certain amount of glee when swarms of them bash into my windshield like hail pellets in a heavy storm, but you might think I’m some sort of deranged entomophobic who would rather be at TechEd. I don’t want to give you that impression.

I’m glad I’m avoiding the sore feet, the junk food, the airports, the jockeying for position at an AC power source, and being herded like an animal to feeding troughs for lunch.

That’s what I keep telling myself anyway.

Embedded Code In Reporting Services

Monday, May 24, 2004 by scott

If you’ve ever wondered just what you can do with the Code property of a report, this article serves as an introduction.

SQL Server 2005 : Reduces Carpal Tunnel Syndrome Too!!

Friday, May 21, 2004 by scott

I came across an MS slide deck recently touting business intelligence improvements in Yukon via Duncan Lamb. Check out slide 22 – it measures the tedious mouse-clicking festival I experienced today designing a cube to analyze hospital profitability (or lack thereof).

To build the Sales and Warehouse cubes in the sample Foodmart database using SQL 2000 requires 115 wizards and 1,321 mouse clicks.

Building the same cubes in Yukon requires 7 mouse clicks.

Honestly, I dread the cube editor in Analysis Services 2000. All hail Yukon!!

The Lab Experiment

Thursday, May 20, 2004 by scott

The Windows Template Library (WTL) first appeared in the Platform SDK in 1999 I believe, and many Windows programmers latched on to WTL as a lightweight and aesthetic alternative to MFC for building GUIs with C++.

About 4 years ago I was at an after hours conference event where someone asked Tony Goodhew about WTL. Tony was, I believe, a PM for VC++ at the time and the response surprised me. WTL, he said, was “an experiment that escaped from the lab” – something to that effect. He then continued to tell everyone not to use WTL. Not in the “use at your own risk this is unsupported” sense but in a “do not use this because I find it very irritating, and it will be destroyed…” sense.

I’m sure there is a story behind his comments, but even after a couple beers it wasn’t forthcoming. In any case, WTL is the second chunk of Microsoft code to reach SourceForge, where presumably it is now safe from Tony.

Tony’s other irritation that evening was the Remote Object Proxy Engine –ROPE. ROPE was part of the unsupported SOAP toolkit version 1. SOAP on a ROPE sounded cute, but didn’t exactly project a professional image. ROPE didn’t make it to V2. I had fond versions of the early toolkit, because I managed to get a client’s J2EE environment working with my company’s COM+ components pretty quickly, even though we both had early toolkits from Microsoft and Apache which did not implement all of the SOAP encoding specifications.

Come to think of it – I wonder if the person who came up with the name for ROPE also came up with the name for SOAPSUDS. If I remember correctly, Don Box declared ROPE flawed, and now SOAPSUDS dead.

Test-Driven Prose (TDP)

Tuesday, May 18, 2004 by scott

When I work on an article, or a newsgroup answer, I often find myself writing little bits of code to tinker with the framework. Sometimes I just want to try out a scenario before I write up a theory as fact. Other times I just want to see what happens in edge cases through observation instead of digging into a spec or decompile code with Reflector. I’ve found this is a good way to clarify grey areas of documentation.

Many times these little code snippets live inside a project in a temp directory with the name of ConsoleApplication9 or something along those lines, and they eventually end up in the recycle bin. Then tonight it finally hit me on the head with a thud – I should use NUnit, and formalize these snippets into something useful - an ongoing work of tests and experiments.

Now, whenever a new version of the framework arrives, be it a major release or a maintenance / bug fix release, I can execute the tests and see what has changed or been fixed.

I can see a potential benefit for authors who will want to update a work for future versions of the framework. By codifying a book’s descriptions of framework behavior into unit tests, an author can spend less time reading the “What’s new” section of the framework documentation. When combined with unit tests for all the sample code, the turnaround time for revision could be much quicker, which makes both author and editor happy people.

In this community of bright people, I’m sure someone has already thought of this. Maybe there is already a book out about TDP and I just don’t know about it.

Speaking of books, I’ve also been eyeing the book ‘TDD in Microsoft .NET’ as a potential purchase. Steve Eichert has a positive review, and I’m wondering what Marcie Robillard thinks of the book. All of my TDD knowledge has been built from conference and magazine material, so it would be nice to have a more comprehensive and detailed source of information.

My Pluralsight Courses

K.Scott Allen OdeToCode by K. Scott Allen
What JavaScript Developers Should Know About ECMAScript 2015
The Podcast!