Monday, December 17, 2007

The Advantages of Upgrading From Vista To XP

CodingSanity writes:
I have finally decided to take the plunge. Last night I upgraded my Vista desktop machine to Windows XP, and this afternoon I will be doing the same to my laptop.
He goes on to do detailed comparisons of the two operating systems in categories including Look & Feel, Performance, Device Support, Reliability, Gaming and Multimedia. In the end, it looks like MS may have a real winner with Windows XP. ;-)

Thursday, November 22, 2007

Weekend Fun: Plot the Mandlebrot Set by Hand


Another critically useful diversion from Wikihow...
How to Plot the Mandelbrot Set By Hand


http://www.wikihow.com/Plot-the-Mandelbrot-Set-By-Hand

Friday, November 16, 2007

How to convert a photo into an icon or favicon

Did you know that you can save icons from Photoshop with the free ICOFormat plugin from Telegraphics? I didn't. There's a nice little writeup on the Telling Machine: Convert photos into icons using Photoshop.

Thursday, November 15, 2007

Are you LinkedIn?

Everybody seems to be doing this, which is usually a bad, bad sign... but anyway:
View Paul Smith's profile on LinkedIn

New SourceForge Project Released

This just in: A new LGPL project that I'm maintaining has just been added to SourceForge.net. The project is called StormFactory, which stands for Simplified, Tiered, Object-Relational Modeler. We were going to call it Fast Enterprise Entity Tiers, but the acronym didn't invoke quite the right mental image. ;-)

Here's the executive summary: StormFactory is a stored procedure-oriented code generator which targets the C# language and Microsoft SQL Server. It's implemented as a Visual Studio 2005 Windows Forms solution that can simply be downloaded & run to start generating code (i.e. there are no schemas to create or templates to fill out). Given a suitable SELECT procedure, the tool generates an entity class (to expose the result columns as properties), a data-access class which both encapsulates a generic collection of the entity and acts as a provider/factory for itself. Finally, the tool generates a stored procedure to save entity instances and/or entity collections back to the database. Each data-access class is entity-specific, and can serialize/deserialize itself to/from XML. Advanced options let you create collection filters, make certain properties read-only, control serialization attributes, and more.

The project has its own site at StormFactory.net, and documentation is in-progress on the project wiki on SourceForge.

Anyway, I'd love to take credit for and/or ownership of all of this, and I could have if it weren't for those meddling open-source licenses. ;-) The project includes 100% open-source (GPL and/or LGPL) contributions from a variety of contributors, and it uses a few open-source libraries itself (FireballCodeEditor, and in v2.0 onwards, weifenluo 's DockPanel suite).

Check it out and let me know what you think!

Tuesday, October 30, 2007

Unescaping strings in the Immediate window (C#) when debugging

Ever get annoyed at the unfriendly strings the Visual Studio debugger prints when running a C# project in the IDE?

Here's a creative solution courtesy of Daniel Cazzulino's Blog:

At debugging-time, if you ask for any string variable value you get it escaped, which isn't very useful. You can't copy/paste to a text editor to save to a file and check how it looks like, for example. A trick I use all the time is issuing the following command in the Command Window - Inmediate:

System.Diagnostics.Debugger.Log(0, "", theTextVariable) You will get in the same window, the unescaped string, including any tabs, CRLF, etc.

Read the original at http://weblogs.asp.net/cazzu/archive/2004/02/10/70658.aspx

Data Compare in Visual Studio 2005 for Database Professionals

I recently discovered a little "gotcha" when using the Data Compare feature Visual Studio 2005 for Database Professionals*: it silently ignores data in any table that lacks a primary key.

Now I would never accuse you of creating tables without primary keys, ;-) but you just might inherit a database in such a condition. Seriously though, many developers (including me) often leave PKs off their join tables, since they're usually composed of nothing but foreign keys anyway. If that's you too and you plan on using the Database Professionals tools for Visual Studio, just remember you'll have to go back and add those primary keys. It's a good habit to get in anyway, since it forces you to be explicit about your unit of uniqueness for joins, e.g. you have to consider whether you need an identity column or can simply create a PK across one or more of the FK columns.



* If you do SQL development and aren't familiar with this great set of tools, check 'em out! This setup considerably eases three essential database tasks: (a) Getting your object definitions under source control, (b) comparing schemas and migrating changes between environments, and (c) comparing data between environments and applying the diff from one server to another.

Visual Studio 2005 Team Edition for Database Professionals Add-on for Visual Studio 2005 Team Suite Edition
http://www.microsoft.com/downloads/details.aspx?familyid=7DE00386-893D-4142-A778-992B69D482AD&displaylang=en

Microsoft® Visual Studio® 2005 Team Edition for Database Professionals Service Release 1
http://www.microsoft.com/downloads/details.aspx?familyid=9810808c-9248-41a5-bdc1-d8210a06ed87&displaylang=en

Microsoft® Visual Studio® 2005 Team Edition for Database Professionals Power Tools
http://www.microsoft.com/downloads/details.aspx?FamilyID=DA3F11AD-BD54-4EDA-B08C-4DF84DF0D641&displaylang=en