November 27, 2002 spout

My Coding Standards

Wednesday, November 27, 2002

Sometimes it’s like I’m a war veteran in my head. I’ll be going along, minding my own business, when *bang*! out of nowhere, a flashback from my days as the director of a software organization hits me right between the eyes. When it happened today, I thought it would be therapeutic to talk about it instead of trying to bury it when these episodes” intruded on my normal life.

The nice thing about setting up your own software organization is that you get to set your own rules, and this time do it right.” I had always planned on getting my engineers together one day and coming up with a common coding standards document, just like every software organization had, but in the interim, we started with this one:

  1. All code will use spaces instead of tabs.
  2. All new code in an existing file will match the existing style.

Rule #1 nicely handles the case where different editors expand tabs to different spaces, causing code that was easy to read when it was written to go all crazy. Rule #2 says not to waste time reformatting existing code into your own style, but to mimic the coding style that was used by the original author. Rule #2 had the unexpected side effect of helping developers get into each others’ heads, which helped transfer knowledge between us. I personally learned a bunch of cool tricks by fixing bugs in files in the style of the original author.

After a few attempts at adding other, more traditional rules to this short list, like where the braces go and how to name variables, we couldn’t find anything that was worth ruining the simplicity of our two-rule coding standards with, so that’s what I’ve used ever since. One other benefit of this simple set of coding standards was that it left us all kinds of time to debate the merits of various text editors, which is an argument that won’t be solved until just after the Christianity vs. Judaism debate is ended…

Discuss

November 26, 2002 .net

The .NET Show: The Compact Framework

Here. A new episode of The .NET Show shipped today on the Compact Framework. More and more I want to use WinForms for smaller and smaller devices. I am looking forward to programming CF apps on my cell phone!
November 22, 2002

SOAPScope Ships

Here. "Mindreef SOAPscope Personal is an easy-to-use, toolkit independent diagnostic aid for developers, testers and application support technicians who must isolate Web Services problems. Our primary design goal with SOAPscope Personal was to create the best logger/viewer for Web Services - one that is SOAP, WSDL and XML aware. Most Web Services developers and testers use some type of tracing tool to troubleshoot problems, but the available tools lack the features needed to make troubleshooting efficient. By combining a scaleable logging environment with many innovative features, Mindreef SOAPscope Personal easily meets our original goal." MindReef showed the beta version at the Web Services DevCon to critical acclaim. It sure looks good.
November 22, 2002 .net

.NET Refactoring Tool Enters Beta

Here. "C# Refactory is a revolutionary new tool which enhances Microsoft's Visual Studio.NET IDE. It performs a number of complex refactorings automatically, allowing you to shape and re-shape your code as needs arise. It also helps you identify code which needs attention by calculating metrics, from 'lines of code' all the way up to 'cyclomatic complexity'. It is fully integrated with the IDE - no external tools means that refactorings are always ready at your fingertips." As I'm writing a bunch of book code just now, I'm not a good beta tester for this tool, but the descriptions of what it does look yummy. I would especially love Extract Method and Rename Type.
November 19, 2002 .net

Building Secure ASP.NET Applications

Here. From Hun Boon Teo: From MSDN library: Summary: This guide presents a practical, scenario driven approach to designing and building secure ASP.NET applications for Windows 2000 and version 1.0 of the .NET Framework. It focuses on the key elements of authentication, authorization, and secure communication within and across the tiers of distributed .NET Web applications. (This roadmap: 6 printed pages; the entire guide: 608 printed pages)
November 18, 2002 .net

‘Essential .NET’ is shipping in the UK

Here. From Andrew Webb: It's in stock at the PC Bookshop.
November 18, 2002

Hierarchy Doesn’t Scale

Here. My thoughts on the short-comings of the use of hierarchy to organize data and a plea for something better.
November 17, 2002 .net

Download the Visual Studio .NET 2003 Final Beta

Here. "Be the first to try Visual Studio .NET 2003, which is currently in Final Beta and available for download from MSDN® Subscriber Downloads." "With integrated support for the .NET Compact Framework, Visual Studio .NET 2003 brings mobile and embedded devices such as the Pocket PC, as well as other devices powered by the Microsoft Windows CE .NET operating system, to .NET. Now, developers can use the same programming model, development tools, and skills to build applications that span from small devices to the largest data center." The final beta of Visual Studio .NET 2003, aka the Everett version of VS.NET, is available for download by MSDN subscribers. Wahoo!

← Newer Entries Older Entries →