Hubbard-Software.com: CodeSketch

CodeSketch Home Page

Download CodeSketch now

CodeSketch is a freely available code generator that creates

I wrote CodeSketch when I first moved from creating software primarily for Microsoft Windows, to systems programming for Unix / Linux / embedded / RTOS systems.

As for documentation, I will rely upon a combination of two articles I wrote, plus the tool's self-generated usage notes:

  1. There is an article, called Generating Device Drivers on Linux with CodeSketch, in the March 2003 issue of C/C++ Users Journal, that thoroughly explains how to use CodeSketch to create linux device drivers. It does not say too much about the more basic uses of CodeSketch, as I recall.
  2. The tool itself explains how it likes to be used, if run without any parameters.
  3. There is an earlier article, Building a Professional Software Toolkit, in the May 2001 issue of C/C++ Users Journal that explains how to use the tool to create C++ classes. Back then, CodeSketch was called fcc (for "Fast Class Creator").

Here is the current version (3.10) of CodeSketch, stored locally. C/C++ Users Journal no longer appears to be storing the original version of the source code (it used to be stored at ftp://ftp.cuj.com/pub/2003/2104/hubbard.zip , but that link appears to be gone).

Licensing

Currently, CodeSketch is licensed under the LGPL (Library GNU Public License), which is significantly less restrictive than the standard GPL. However, I will most likely change the license to a FreeBSD license or something similar; those licenses are even less restrictive in their terms of use. The general idea is to ensure that the source code is freely reusable, by anyone and everyone, so long as they leave my copyright and "no warranty" notice in the comment headers.

Why make it so open? Simple: in today's economy, even a top engineer can expect to change companies every few years. Placing key tools under an open source license ensures that I (and my colleagues) can use them, regardless of where I happen to be working at the time. This entire web site, in fact, exists partly due to the same line of reasoning.

Last updated: 28 May 2006

Home | Professional Reading | Software Tools | Publications | Blog | Personal | About | Copyright © 2005 -2006, by John F. Hubbard