Sunday, December 6, 2009

Web Server projects (90's IBM commercial)

I've been trying to find the English language version of this 90's IBM commercial.

They basically are blame-gaming (server blames network, network blames developers, etc.) and I think the last lines are roughly:
"Who's job is it to make sure all this stuff works together?"
{uncomfortable pause}
"that would be yours"

The look on the lady's face at the end... Reminds me of every web-facing project. There are so many tiers and providers/teams to go with them. The most challenging part, and lengthiest (by duration, if not by effort) are 'making it all work together'

PayPal buttons in 2.0

Getting a simple PayPal Buy It Now button working in an 2.0 site was trickier than I thought. Because the entirety of an 2.0 'page' essentially becomes the content within a HTML form tag ( <form>), the PayPal Buy It Now, with it's own HTML form conflicts.

Just placing the PayPal code within a basic page, then clicking the PayPal 'Buy Now' button would refresh the current page. I was chasing popup blocking and cross-domain issues for a few minutes before I realized the page was just posting back to itself.

Ended up using the 'IFrames' solution described at
PayPal Button (Pay Pal Button ) SOLUTIONS!!!! - ASP.NET Forums
just cause I could bang it out in about an hour tonight. Maybe will look at the devloper kits in the future.

Also added in the hyperlink as a backup (if a customer does block pop-ups, or some other strict security setting in the future)

Also, the post to paypal didn't work when debugging locally. The page would open, but none of the post parameters were going across. Figured it was a local browser setting, and it worked when running from the live host, so I didn't dig any further on that one.

Thursday, November 5, 2009

International Project Management Day

Attending IIL's International Project Management Day webcast. (on a 10 min break) The topic is 'sustainability'. They are taking Sustainability in a broader view of creating projects that survive the pm, team, etc. as well are sustainable in an environmental, employee and business sense. I'm glad they are not hyper-focusing on the 'environment' as some of the recent PM Network magazine issues have. (The environment is dead! Long live the environment!)

Bonnie Nixon, Hewlett Packard, had a interesting quote as she took on her role on a project as to 'make herself dispensible'.

Friday, October 23, 2009

Word-Bitmap Converter

A tool I wrote eons ago (around 2002-2003 ish) has been listed at softpedia - Word Bitmap Converter.

Back before Office 2007, when a print screen was pasted into Word, it would store it as a bitmap, and the file size could increase dramatically. The Word Bitmap Converter went through the document, and converted each image to a jpeg, typically at limited or no noticable lower quality.

Thursday, September 10, 2009

TechNet Script Center

Received an email today about Microsoft Script Center, and the evolution of what used to be called the 'Community-Submitted scripts'. The new TechNet Script Center allows you to upload scripts directly under your profile (Windows Live/Passport), draft and publish scripts (not unlike this blog), get ratings, and host a discussion board for each script.

In the bad old days, believe it or not, the method to submit scripts was to email them with the script in the body of the email to a Microsoft address. While it seemed low-tech, they were actually extremely reliable and pretty quick turning submissions around.

Like it a lot as a way to share some generic code snippets/modules, things that don't justify setting up a whole project with source control such as CodePlex.

Be sure to keep an eye on my TechNet Script Center Contributions. I'm posting a few that have been useful historically.

Wednesday, September 9, 2009

Word 2007/MOSS Metadata Integration

Word 2007/MOSS Metadata Integration

Looked up some sites on how to pull data into a Word template from a MOSS List. Scarily examples with a ton of code embedded either in the doc or through a seperate .net app. Finally found a modestly stable technique that involved linking to the SharePoint list through an Access db, and then using that Access db as a source of a Mail Merge in Word. Not bad - unidirectional and has a few moving parts.

Then, this technique: Word 2007/MOSS Metadata Integration, uses a document library with columns, similar to setting up a list, then the columns can be used in a Word 2007 document with bidirectional updating.

Challenge I've ran into so far is versioning of the template, not seeing an easy way yet to update the template used on existing documents if columns are ever modified, added or deleted.

Thursday, August 20, 2009

IE8 Developer tools tutorials

Some of these were a bit elementary – but were really compelling in showing how they could be done in IE8.

IEBlog - Check Out the New Developer Tools Tutorials

Friday, August 7, 2009

Cub Scout site using Google Sites

Just [re]launched the web site for my son's Cub Scout pack, using Google Sites:

The Cub Scout Pack 22 web site is fairly modest containing information about the pack, rosters, and events that change year-over-year, and some more frequently updated items like the calendar.

Google sites made it really easy. I use Microsoft SharePoint Server at work, and have setup small business or non-profits sites in the past either with custom work on on content management systems (CMS) such as phpWebSite and DotNetNuke. Usually with the idea (based in reality or otherwise) that non-technical people would maintain the site, focusing on content, and not infrastructure. Google sites is probably my first experience where I really see that being possible. (I could see a SharePoint Server also, but I haven't yet came across a hosted solution that is really economical without a bunch of limitations)

The Google branding is extremely unobtrusive - the persistent search box uses Google search as one might expect, and a few legalese links at the bottom of the page. The price - $0.00. If we choose to spring for a domain name, i would feel completely comfortable pointing it to that host (something that in years past, hosting companies would hit you over the head with their logo next to yours)

To create a google site from an existing google account, you simply create the site, enter the title and a few site-wide settings and you are almost immediately editing your first page. The title bar and 'sidebar' (for links to the pages) are fixed, but very customizable. Images are added while editing a page, then can be edited from the page, or from a central 'attachments' link on the site.

Saturday, February 21, 2009

Search Terms as Indicators of Platform Popularity

Lately, I've came across a number of articles that use the number of search queries as the indicator of the popularity (or lack thereof) of a certain platform. A typical one is comparing the popularity of Visual Basic vs. C# as the language for Dot Net development. At varying degrees, these article seem to be committing a common fallacy of false cause, assuming that the popularity, acceptance, or adoption of the language is driving the number of searches. In fact it's possible the number of searches is indirectly related, or not related at all to any of those factors.

Visual Studio magazine has published a few articles that include, recently 'Where Did All The Developers Go?' by Dan Appleman in Feb. 2009, and C#'s Exploding Mindshare by Patrick Meader in Nov. 2007 (including the use of book sales). A number of Wikipedia articles - Comparison of C sharp and Visual Basic .NET include this. Blog posts (, reference this.

The sources themselves are fairly unassuming - Google Trends is strictly raw data, and Tiobe Software's Programming Community Index clearly spells out the criteria by which they are rating. The articles using such then synthesize this into the broader popularity of the language itself (vs. the concept of searches related to it)

In practice, developing with Microsoft Visual Studio of various types and versions, I've observed both trends that would drive searchs up... and drive it down... with much uncertainity as to where the final results lands at vis-a-vis any indicator of popularity, market acceptance, or the 'best' language.
  • Legacy VB searches - Pre-2003 or so, VB5, VB6, Classic ASP - there was a lot to search for, it was common to use Windows API calls in even some very routine Windows apps, and it was not extremely easy to discover the object model of components from within Visual Studio once you got beyond basic Forms and routine DAO/ADO data access
  • On the other hand... internet access was slower and less ubiquitous, and search engines, code sites less developed, this era probably referred to local help documentation more often.
  • .net Introduction - 2002-2003-ish - C#'s adoption would seem to drive those searchs up, and the changes to Visual would drive up those searches
  • On the other hand... Classic VB apps being upgraded, and the use of the Microsoft.VisualBasic namespace could have led to those developers just continuing their practices with no need to search for additional terms.
  • Data-bound controls, other 'code-free' features - Building a .net app (as a beginner or expert), so much more of the process require no direct coding. While these step could still lead to bugs or questions, the resulting searches would be less likely to include a language-specific query, the search would be prefaced by 'Visual' or ''
  • On the other hand... there could be a huge number of language-level searches, but the searcher doesn't care if the results of or C#. Once the issue at hand is seen in terms of which Framework classes are at issue
I appluad Appleman's February 2009 article - he addresses some of these nuances, including that experienced developers wouldn't often specify the language. Later in his article, though, he uses region-specifie search counts to assert that some countries are advancing in development skills (and future jobs). But it's possible that those regions are less-experienced and hence need to search more, their language or culture reflects differently in measuring of search results, they have more or less population, any number of other causes.

From those general trends, it would appear that the VB search counts could have gone nowhere but down, and C# search counts gone nowhere but up over each languages life, perhaps settling out as each language reaches an consistent installed base and changes become more incremental. A number of factors, though, including the true adoption of each language could significantly swing those numbers one way or the other. My goal here is not to debate vs. C#, but point out that comparing search terms popularities do not provide an unbiased view of either languages popularity, adoption, or quality.

Tuesday, January 27, 2009

Useful Tools

More SSIS posts are on tap.... got a few in draft mode... including some more issues with importing Excel, and some patterns for single file imports.

In the meantime, a useful tool I've been using to compare SQL Server databases - usually for rolling out changes from development to production.


Select two databases, click compare, and a list by object type will show any database objects that are on one side and not the other, or are different between the two.

Previously, I had used a tool called Database Compare from StarInix - It's free (cost), but not open source, so I started looking on CodePlex for an open source project that seemed like it could grow as SQL Server versions changed, etc. DBDiff is not very active either, so I'm keeping my eye on alternatives every once in a while.

Both tools offer alter scripts to bring one side in sync with another.