Monday, April 10, 2006

According to an article in today's Post-Gazette:

By the time visitors stream into Pittsburgh for the July All-Star Game, Mayor Bob O'Connor and Pittsburgh Downtown Partnership CEO Michael Edwards want them to be able to fire up their laptops and connect to the Internet from anywhere in the Golden Triangle. The system may tie into another wireless network the Pirates want to deploy in PNC Park.

That would be the MLB All-Star game, coming to PNC Park this summer.

Monday, April 10, 2006 6:25:40 PM (Eastern Standard Time, UTC-05:00)
 Sunday, April 09, 2006

I've used CSE HTML Validator for quite some time.  I started with ther free version, and upgraded to the full version after using it for a while.  They've recently released a free online HTML validator, based on their Lite version engine.  Find it at http://onlinewebcheck.com/.  You can submit the URL of a page, upload a page, or paste in a snippet.  Very cool, and you can't beat the price.

Sunday, April 09, 2006 10:37:29 AM (Eastern Standard Time, UTC-05:00)

In my article on Preventing Page Review After Logout With Forms Authentication, I talked about several HTTP headers that can be used to direct browsers not to cache pages locally.  In one comment, a reader said they had used the article's code, but Firefox was still caching pages.  Another reader left a comment about using the "cache-control: no-store" header to prevent Firefox from caching pages.  If you see that Firefox is caching secured pages, try adding this header to your pages.  If possible, add it to your master page or page template.

ASP.NET, you can set this header by using the HttpCachePolicy.SetNoStore method.  Put this in your page_load at the latest.  You can also set this in your page's HEAD section  by adding the following line of code:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">

In the IIS control panel, you can set headers to be automatically added to every response.  This is discussed briefly at http://support.microsoft.com/kb/815313/, but if you're in a shared host environment, you probably don't have access to the IIS control panel.

The "Cache-Control: No Store" header can cause problems with PDF files in IE 6.  Microsoft has a KB article on this at http://support.microsoft.com/default.aspx?scid=kb;en-us;812935.  File downloads via SSL may also beimpacted if you use this header; see http://support.microsoft.com/?kbid=323308 for more details.  This second article involves a registry edit.

Also, remember that browsers need to cache image files if you're using image rollovers, so be careful where you use any of these headers.  You might mess up your menu.

Sunday, April 09, 2006 10:17:29 AM (Eastern Standard Time, UTC-05:00)
 Wednesday, April 05, 2006
Holy cow, nice ballpark. Pirates vs. Brewers, 1-0, bottom of the 2nd. 18 rows behind Pirates' dugout. Sweet!
Wednesday, April 05, 2006 7:46:20 PM (Eastern Standard Time, UTC-05:00)
 Tuesday, April 04, 2006

Pittsburgh MSDN Event, May 25 1pm-5pm at Carmike 10 Theater on Fort Couch Rd.

With the productivity enhancements in Visual Studio 2005 and the .NET Framework 2.0, you'll spend less time coding and more time focusing on actually getting the job done. First, learn how to build customizable web user interfaces in no time flat with the ASP.NET 2.0 Web Parts framework. Next, see how the many new language features of Visual Basic® 2005 and C# 2005 can simplify your coding. Finally, stand on the shoulders of giants by incorporating Application Blocks from the Enterprise Library for .NET Framework 2.0 into your application. Your project will be finished and you'll be on to your Xbox 360™ before you know it! These don't-miss events are always free, local and live.

  • Creating Customizable User Interfaces with Web Parts and ASP.NET 2.0
    Learn how you can easily add a dynamic, modular, customizable portal interface to your own ASP.NET 2.0 Web site using the new Web Parts framework.
  • Language Enhancements in the .NET Framework 2.0
    This session highlights key language enhancements for both C# and Visual Basic, explores the usage of partial classes to manage source code, and looks at the new My namespace in Visual Basic.
  • Exploring the Enterprise Library for the .NET Framework 2.0
    In this session, we'll examine the design and usage of several application blocks that will streamline and simplify your coding, and how their architecture embodies Microsoft's best practices and recommendations for .NET-based applications.

Full info and registration at http://www.msdnevents.com/?dist=MAtGP.

Tuesday, April 04, 2006 4:00:54 PM (Eastern Standard Time, UTC-05:00)

via Betanews:

Microsoft is preparing to beta test a new software client for Windows Mobile 5.0, which will replace the Pocket MSN application with Windows Live based services formatted for smartphones. Pocket MSN features currently include one-click access to Hotmail and Messenger, along with viewing alerts.

With Windows Live services set to succeed their MSN counterparts throughout the year, Microsoft will update the mobile client as well. The company is seeking beta testers to trial the new software, which requires a Windows Mobile 5.0 device such as a Treo 700w. The test, only available in the United States, is open to join through Microsoft's Connect beta site -- users can find an application survey under the "Available Programs" link.

Part of the program requirement is a compatible cell phone (such as a Treo 700w) and a good data plan.  Click through to the connect site, sign in with your Passport, and fill out the survey.  The program is near the bottom of the list.

Tuesday, April 04, 2006 1:30:19 PM (Eastern Standard Time, UTC-05:00)

This used to cost bucks, but it's now free.  Why?

As Microsoft releases its Windows hypervisor technology in the Windows Server "Longhorn" wave, customers will be receiving the benefits of virtualization as part of the Windows Server operating system. Today’s price change makes it easier for customers to access and experience the benefits of virtualization technology.

Umm....yeah.  Basically, the next server versions have better stuff included, so might as well give away the current technology.  I think.

Anyhow, go get yours: http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx.  RAM is your friend (seriously--get as much as you can).

This is the version which supports Linux.  Maybe.  See image below (original document at http://www.microsoft.com/windowsserversystem/virtualserver/evaluation/linuxguestsupport/default.mspx).

Virtual Server 200? Linux support

Tuesday, April 04, 2006 1:27:06 PM (Eastern Standard Time, UTC-05:00)

I received an e-mail in regards to my article Exporting to Excel in Crystal Reports .NET - Perfect Excel Exports:

I have crystal reports that are displayed in PDF or Excel format from an ASP.NET application. The reports are displaying, my only problem is in Excel, I keep getting fixed width columns when exporting the report. On my localhost it works (variable width columns, very esy to use), I move my product to the Windows 2003 server, and the export becomes fixed width (same size columns, very difficult to modify).

We are using Crystal Reports 9, VS.NET 2003, Windows 2003 Server, Windows XP (local box for developemnt).

My first thought was that this was a DLL problem, perhaps an outdated or incorrect one on the server.  As it turned out, the problem was with some registry entries not being created when the Crystal Reports was installed:

What happened is in the server, the registry entries for export from crystal reports did not exist. I copied the register entries for Crystal Reports - Export from my machine into the server registry and it fixed my problem (I don’t know if I would recommend that for novices, due to the problems that can occur from changing the registry). In short the server didn’t know what to do with the constant width column statement until I gave it a reference.

I don't advocate poking around in the registry of a production server, especially if you're not an experienced regsitry person.  Instead, I think an administrator uninstalling and reinstalling the Crystal Reports might have solved the problem.  Try that first, before poking around in the registry.

Tuesday, April 04, 2006 11:05:48 AM (Eastern Standard Time, UTC-05:00)
 Monday, April 03, 2006

If you're an avid blogger, prolific article author, guru of some forum, etc., then check out Community Credit at http://www.community-credit.com.  You can earn points for each answer, article and activity; at the end of the month, those with the most points win swag.  This month's grand prize is the very cool Projector Keyboard:

Monday, April 03, 2006 9:44:54 AM (Eastern Standard Time, UTC-05:00)
 Tuesday, March 28, 2006

I get asked this question a lot, and I've never really liked the answer "a weblog is an on-line diary".  I've never kept an off-line diary, so that answer just never reached me.  I prefer to think of a blog in a different way.

Have you ever run into someone you haven't seen in a while, and asked them what they were up to?  Have you ever met someone new and asked them what they do?  To me, a blog is a pre-emptive answer to either of those questions.  If you're reading my blog for the first time, welcome!  Look around, and you'll get an idea of what I do, what I like, and a little of how I think.  If you're an old friend, great to see you again, and here's what I've been up to.  Sorry I haven't kept in touch better, I've been really busy.  Drop me a line and I'll try to do better.

Whether or not a blog is good depends on how much the reader cares about the question you're answering.  Not being lame is critical though.  If you're interested in blogging but are concerned about being lame, check out Naked Conversations and learn both good and lame by example.  You can find my review at http://www.rjdudley.com/blog/Review+Of+Naked+Conversations.aspx, or use the link below to get the book from Amazon.

If you read the blog for Naked Conversations, you'll hear Shel Israel talk about his friend Ernie the Attorney, whom Shel met researching the book.  By the time they actually met in person, Shel considered Ernie one of his best friends; that Shel had come to know Ernie just by reading his blog.  That's exactly what I'm talking about.  Ernie had already answered the question "Here's who I am, and what I do."

As far as small businesses are concerned, think about some of your long-time customers.  You know them and their preferences, and they know you.  You probably have some inside jokes, and they've seen some of the amazing stuff you've done.  These are your best customers, and your fan club, too.  They're your brand evangelists--the folks who don't work for you, but bring you new customers through their word of mouth.  Turning new customers into long-time customers can be a lengthy process (duh!), but your blog can help.  Introduce your staff (like they do at Aldo Coffee), show off some of your cool work (like at The Wedding Blog or Lincoln Sign Company), share something funny, but not one of those "you had to be there" moments.  People who just find you will be "in the loop" in no time, and your business will be so much the better.

Tuesday, March 28, 2006 10:44:40 PM (Eastern Standard Time, UTC-05:00)

BADNUG will meet April 20 from 6-8 pm at Communifax HQ in Cranberry Township. Please join us as Tony Casale of Communifax discusses developing custom server controls and HTTP handlers, with real-world experience and examples. More information at http://badnug.org. Directions to Communifax at http://communifax.com.

Tuesday, March 28, 2006 9:46:35 PM (Eastern Standard Time, UTC-05:00)

If you’re receiving this error when you Compile Components, chances are you have multiple websites on the same computer, and you’ve simply connected to the wrong one.  Exit FrontPage or Dreamweaver, then start back up again and open your site.  Run Compile Components again, and make sure you’re connecting to the correct site.  The path should read http://localhost/SITENAME/ssl/management/clientaccess.aspx.

Tuesday, March 28, 2006 9:38:07 PM (Eastern Standard Time, UTC-05:00)

Another little gallery app I used recently is ThumbGallery from FlashRelief.  It's $20, but that's really cheap considering how nice this gallery is.  You don't need Flash at all--they provide you with a pre-compiled Flash control which you embed into a web page, and you configure the whole thing with a simple XML file.  Downside is having to make both a thumbnail and full size image yourself, which can get tedious if you have a lot.

We used this recently on our prom corsage and boutonniere gallery at http://www.bloomery.com/promgallery.htm.

Tuesday, March 28, 2006 6:59:19 PM (Eastern Standard Time, UTC-05:00)
I found a free news scroller at http://www.rainforestnet.com/newscroller.htm.  It's easy to add to a page, easy to configure, and free.  There are actually two scrollers--one is a basic scroller which will continually flow a single message, and one which will scroll a page and pause to allow reading.  Installation and demo are on the download page.
Tuesday, March 28, 2006 4:09:29 PM (Eastern Standard Time, UTC-05:00)

nGallery was a great application on its own, but Community Server is just far too much overhead when all you need is a simple gallery app.  Even though it haven't been updated in a while, nGallery is still one of the better gallery apps out there.  After quite a bit of template tweaking, I have very customized gallery up at http://www.cleantownusa.com/gallery/.  The template seems difficult at first, but after fooling around with it for a little bit, it's actually quite easy.  You need either a great mind's eye, or you need to use the refresh button liberally as you tweak, and very liberal use of source control for the different template bits is highly recommended.  "I told you so", in advance, for those who don't.

BTW - CleanTown USA is Pittsburgh's favorite car wash and interior detail center.  Find them online at http://www.cleantownusa.com.  Shameless plug, but the marketing coordinator threatened to cut off my supply of free Mountain Dew if I didn't say it.  I hope you understand.

Tuesday, March 28, 2006 2:14:57 PM (Eastern Standard Time, UTC-05:00)

The folks at Pittsburgh Dot Net have been busy with preparations for Pittsburgh Code Camp, and they've released the confirmed topics:

-AJAX / Atlas for .NET
-An Inside Look at the .Net Framework Garbage Collector
-Common Pitfalls with .NET and COM Interop
-Eliminate Application Backlog
-Introducing Iron Python .NET
-Introduction to Custom Membership Providers (ASP.NET 2.0)
-Microsoft Composite UI Application Block (CAB)
-.Net using Mono/Open Source
-Quicker Implementation of Web Services with CRUD Generation
-Refactoring in .NET 2.0
-SOA-Building Services for Reuse
-SQL Server Integration Services
-Unit and Web Testing with Visual Studio 2005
-Using Attributes and PropertyGrids to Manage System Configuration
-Using the Enterprise Library
-Windows Workflow Foundation for .NET

Looks to be an awesome day!  Pittsburgh Code Camp is April 8, and you can apparently still regsiter at http://www.pghdotnet.org/CodeCamp/default.htm.

Tuesday, March 28, 2006 9:17:50 AM (Eastern Standard Time, UTC-05:00)
 Sunday, March 26, 2006

StoreFront includes some client-side design tools which plug into FrontPage or Dreamweaver, and they’re not too bad (especially for beginners).  One downside to these tools is that they completely rewrite the styles.css file each time you save your settings.  Not so good if you’ve made some CSS changes.  Instead of altering the styles.css, I recommend using an additional stylesheet.  Remember that styles are cascaded—that is, if you specify the same class in two stylesheets, the browser will mash them together and use both sets of settings.  If you specify the same element in both stylesheets, then the sheet which is listed last wins.  This is excellent for us, because you can add settings to all the basic classes in styles.css, and you don’t have to worry about losing your settings if you still want to use StoreFront’s design tools.

To make sure our new stylesheet is added to every page, you need to add one line of code to the CWebPage.vb file and recompile your site.  Open CWebPage.vb in FrontPage or Dreamweaver, and find the subroutine named PageHeader.  Scroll down to the end of the subroutine (marked by ‘End Sub’, at roughly line 938).  Add the following line of code right above End Sub:

response.write("<link type=""text/css"" rel=""stylesheet"" href=""MyStyleSheet.css""></script>")

You do need the double double-quotes where you see them, and remember to change the name of MyStyleSheet.css in the line of code.  This line of code will add a stylesheet link to the end of the header of every page.  Recompile your site using Compile Components on the StoreFront menu, and you’ll be good to go.

Now playing: Eddie Money - Gimme Some Water

Sunday, March 26, 2006 6:55:57 PM (Eastern Standard Time, UTC-05:00)
We're getting a new Chili's here in Butler, and trust me, that's pretty big news in this small town. The pepper went up this week, and my mouth is watering. The general contractor is from Ohio, but the excavators and pavers are local companies. Thanks for that, Chili's, I know you'll get a lot of business from this town, and we appreciate the support back. Now, if you ever need flowers, call that nice shop practically across the street...
Sunday, March 26, 2006 11:22:44 AM (Eastern Standard Time, UTC-05:00)