Feed on
Posts
Comments

I’ve been saying for the last year that Microsoft would be including virtual services with Windows Vista.  The first proof to surface is today’s announcement that Microsoft Virtual Server is now free.  Is this because of  the competitive offer from VMWare early this year?  According to Ben Armstrong, Virtual PC PM, this is not the  primary reason.  The main reason? Because Vista will include free virtual services as part of the package.  Whatever the reason, you got to like the price.  VMWare or Microsoft Virtual Server — your choice for free.


I’m really liking the new Avalon (Windows Presentation Foundation) layer in Windows Vista and WinFX.    I’ve been working with it for the last six months and have developed a couple talks that I give about the technology.  It’s going to change the face, no kidding, of Windows development over the next five years.    Imagine a tool that lets you easily mix 2D, 3D, Rich Text, Video, Multimedia and more into a single API.  

I tell people about how cool its going to be, but it’s not easy to visualize.  If you don’t have the Avalon beta bits on your computer you can’t run any of the demos.  So a lot of people think it just going to be eye candy and some transparent windows.    So watch a video and decide for yourself.

iBloks is a new game/toy application built with Avalon.  You can animate pictures, mix sound and more.    Watch the video here.


I’m really trying to like the new .NET 2.0 help system.  I am, I really am!

I’m used to the fact that some help pages will be COMPLETELY lacking in sample code.  I don’t like it, I think that Microsoft is really missing the mark here.  But I’m used to it because I see it all the time. 

I’m annoyed that there doesn’t seem to be any peer review or editing of the help files.  Web pages on MSNBC have editors.  Why don’t MSDN help pages?  Today I ran across a help page that had more than ten typos.  You can bet that no one reviewed that document.

Then there is the C# – Visual Basic chasm.    You can tell that lots of the documentation is written for C# and then converted to other languages.  My guess is that some of the code sample are run through a code converter.  No sane VB programmer would write code like some of the translations you get from on-line code converters.

That brings me to today’s tidbit from this help page.

Do you see the problem with the following Visual Basic code?

You got it!   The Public Sub MyChildConfigElement.  Those two Subs are supposed to be the Constructors.  But in VB you use the Public Sub New instead. 

Here is the C# version.  Do you think the VB code was copied from the C#.


There are some tools that just seem to find their way into every .NET developer toolbox.  Lutz Roeder’s Reflector for .NET is one of these.  I don’t know a single working .NET developer that doesn’t use Reflector.  Some of my friends live inside of it.

Add to Visual Studio

Since Reflector is such a useful tool it would nice to have it at your fingertips when working within Visual Studio.  All versions of Visual Studio since VS 4 support adding custom tools.  There might have been support earlier, I can’t remember anymore.  The only tricky part is figuring out how to pass the current assembly from Visual Studio to Reflector. 

It’s not really hard at all. Visual Studio has built-in arguments that pass data from the IDE to your third party application.

The following steps work for Visual Studio 2005  and Visual Studio 2003.  I haven’t tested with any other versions.

  • Click the Tools/External Tools… menu.

ReflectorTools1

Tools Menu
  • Click the Add button in the External Tools dialog.

ReflectorTools2

External Tools
  • Add the following to the External Tools dialog.  The $(TargetPath) argument will pass your assemblies to Reflector.

ReflectorTools3

That’s all.  Enjoy

ASP.NET Lifecycle

In ASP.NET there are a lot of complex actions happening with each page request.  Code needs to be compiled.  Events need to be fired.  HttpModules and HttpHandlers are invoked.  It’s a complex process.

MSDN has a some interesting documentation showing all the action during each call to your website.

ASP.NET Lifecycle

ASP.NET 2.0 has a lot of great new features.  I’ve been working with it for about a year and I’m very impressed with what you can do with Visual Studio 2005 and ASP.NET 2.0. 

But…

There is always a ‘but I hate what they did with my…‘ statement isn’t there? I’m not happy with some of the changes. I’ve run into a few annoyances,  shook my head at some of the new ‘features’ and ranted about some of the other changes.  Today however I’m going to share a tip that I find useful for dealing with the removal of the component tray for ASP.NET 2.0 web pages.

1.x component tray.

In Visual Studio 2002/2003 the Forms designer has a area called the component tray for all non-visual UI components.  When you drag a DataSet or SqlConnection  to the webform they get added to the component tray. 

This is nice because it keeps the components out of your way and doesn’t clutter up the HTML designer or Design view of your form.

Missing in Visual Studio 2005

In Visual Studio 2005 the component tray has vanished in the Webform designer.  Now you end up with your non-visible components, like the SqlDataSource, on your page designer.

Tip: Move the components out of your way

I found out that I can put the components in a Panel control and they still work correctly.  Then I can move the panel to an  out of the way spot on the page.  Sort of like making my own component tray.

Steps to reproduce

  1. Add a panel to your webpage.
  2. With the panel selected – click the Layout/Position/Relative menu item.  This makes the panel drag-able in the form designer.
  3. Drag the components you want to move to the Panel control.
  4. Drag  the Panel to your desired location.

 

Comments

2/23/2006 9:23 PM RRS

That’s slick. I never would have thought of that.

3/12/2006 3:50 PM Jason Conway

This method works, in addition to this method, you could also:
Click the "View" menu
Select the "Component Designer"
When the Compent Designer renders on a new tab, right click the Name in the tab and select "New Horizontal Tab Group"
You can then resize and it looks and functions very similarly to the 1.1 Component Tray :)

3/18/2006 2:24 PM Walt Ritscher – Thinking about code

Jason.
That doesn’t work for me. I get an error -Failed to create component. WebForms toolbox can only be used on Webform pages.
Thanks anyway.

For the last couple months our fax machines has been inundated with junk faxes.  I’ve been so busy traveling and teaching that I haven’t had much time to deal with it.  Each junk fax dutifully lists a toll-free number to call for removal from the list.  Sure! We’re busy, just like you are.  I really don’t  have time to make 30-40 calls each week just to get off your stinking junk fax list that I wasn’t supposed to be on in the FIRST PLACE!

Today I found the FCC site for file complaints.  It is a general purpose site, you can complain about a lot of different problems. ( wireless and wireline telecommunications issues, cable, broadcasting and telecommunications accessibility issues). Also you can complain about Slamming.

"Slamming" is the illegal practice of changing a consumer’s telephone service – local, intralata service, or interlata service (including state to state, in state and international long distance) – without permission. The Commission’s slamming liability rules provide a remedy if you’ve been slammed and take the profit out of slamming for telephone companies. The FCC’s Enforcement Bureau will also take action against slammers.

I filed my first complaint today against some MORON advertising 1.00% mortgages.   I’ll see what happens.  It felt good anyway.  If the company suffers a little aggravation , then I’m happy.

FCC resources

General information about filing a complaint.

Form 475 – Electronic Form for filing complaint.

————–

Update:   I got a letter today from the FCC.  It looks like they are following up on this.  Listen up all you junk fax broadcasters, Apparently you can be fined up to $11,000 per incident for sending junk faxes.

I vividly remember reading Popular Science magazines when I was in Junior High school.  I loved reading the ‘What’s coming’ section.  I followed the new ideas researcher were pursuing.  I’d daydream for hours about what I could do with the new gadgets.  It probably won’t surprise you to know that I also devoured science fiction books.  One year my uncle gave me a box of musty smelling books from his basement – it was full of old copies of Analog magazine and hardcover sci-fi books from the 1950′s and 1960′s.  That was heaven for me for a few months.

I still am fascinated by the ingenuity of people, the way their minds work and what great ideas they uncover.  I wish I had more time now to follow-up on the fascinating research happening today.  Occasionally I do find a winner though.  Today I stumbled across some very intriguing work being done with touch-sensitive screens while looking for some tablet PC articles.

NYU researchers are doing mind-blowing work on  human interaction with computer screens.  They have LARGE screens, more like plasma TV screens, that react to multiple touches.  Imagine placing three fingers of each hand on the screen and seeing six circles show up on the screen. Each circle following your fingers as they move across the screen.  Images flipping pages of a virtual book with your fingers,  playing games with out a mouse.

Don’t daydream for too long because they have videos that show how it works.

I really like tablet PC’s and how responsive they are to the stylus -  but I think I see the future of our future computer screens  in NYU’s multi-touch interactive screens.

Update:

The NYU site is slow due to too much traffic.  You can also find the video at YouToob.  Thanks to Roy Osherove for the link.

OK let’s do a simple review here.  SQL Server 2005 was in development for what? Five years?  Give or take a year.  That is sixty months, or  1800+ days, however you want to look at it.   A good portion of that time was waiting for .NET 2.0 to  stabilize so that the CLR could be incorporated into SQL Server. The good news is that the SQL Server team did a great job of integrating managed code into the product.  It’s in many places,  CLR support, Visual Studio integration, .NET data type and so on.

I’ve used SQLDMO in a few products, including our DbValidator tool.  So I was thrilled to see that DMO has been replaced with SQL Management Objects (SMO).  SMO is  a completely managed API granting you full programmatic control over the SQL Engine

This week I started working with SMO and I gotta tell you.  The help bites! 

NOT ONE SINGLE CODE SAMPLE

Let me say that again.  “Not one single code sample

Five years of work and Microsoft can’t give us examples for each object in the library? I spent the last hour looking through the SMO namespaces and comparing them against the SQLDMO version.  Not one single topic had any code samples other the simple syntax declaration.

public bool Identity { get; set; } (C#)
Public Property Identity As Boolean (VB)

What is the documentation team thinking anyway? 

SQL Server 2005 Team Documentation Meeting

PM  “So remember our target audience for SMO is developers (echo of Steve Ballmer chanting (developers, developers, developers)).  Oh and maybe a admin or two who wants to write some script automation”

Help Author “OK.  So I’ll put some C# in the help.  I can show how the method is declared.”

PM “Better write some VB.NET too or the VB team will be all over my back”

Help Author “What’s that?  You mean VB Script?”

PM “No, I think it’s a little different”

Help Author “I don’t know VB.  I’m a writer, not a programmer.  But I can make C#,  we have a tool that generates it for us.”

PM  “Well, find a C#-VB.NET converter and run the C# stuff through it.“

[No developers in the meeting because they are too busy trying to integrate the latest CLR build into their code.]

Tester “I think we ought to include some code that shows how to use the…“

PM  “Come on.  This meeting is over. I’m already late for the 3:30 meeting with marketing.“

Help Author “Alright, we’re going.  Sample code makes the help files too big anyway”

Help for Help

I cannot believe that a namespace full of SMO objects is completely lacking in any code examples on the individual classes, methods, event or properties.  I did find a few scattered general examples (like how to open a connection) but it’s not what I expect to see in a professional help file.

I’ve been bumping into Billy Hollis at developer events for the last ten years.  Last time I saw him, we were riding in a taxi in Sydney Australia with a tremendous thunderstorm raging outside the cab.  If you know Billy, you know that he was telling stories — funny and profound, all the way back to the hotel. 

Well, he’s still spinning stories, and he’s got a couple of funny ones up on his website.  Both are pure gold, here a few excerpts. 

History of the BASIC family of languages.

1964 – A pair of instructors at Dartmouth College decide they have a group of students too lazy to learn FORTRAN. They produce a new language with only 26 variable names, so that even a lazy programmer can keep track of them.

1966 – The creators of BASIC decide it will never have any commercial application since students too lazy to learn FORTRAN can’t possibly write anything of value. They place the language in the public domain…Billy Hollis – Funny History of C and BASIC

History of the C family of languages.

1972 – The precursor to C, the language B, is developed at Bell Labs. The B language is fast, easy to maintain, and useful for all kinds of development from systems to applications. The entire team that designed the language is immediately fired for behavior unbefitting a telephone company employee, and the project is handed to Dennis Ritchie. He alters the language to be incomprehensible, difficult to maintain, and only useful for systems development. He also designs in a pointer system guaranteed to give every program over 500 lines a pointer into the operating system…

« Newer Posts - Older Posts »