Just some babblings by Jeff Sparkes

.

February 25, 2005

Paul Martin made an actual decision on the nuclear missle defense.

Filed under: Opinion, Canada

I wonder if he would have done it if "The Economist" hadn’t called him Mr. Dithers.

He’s further ahead than Jean Chretien, who continually avoided making a an actual decision about Iraq until it was waay too large. (I agreed with not going to Iraq, but I would have preferred some body to be explicit about it.(

February 21, 2005

Well, duh! Refined carbohydrates bad!

Filed under: Opinion

Now we have "official" confirmation from Reuters.

via Chuq.

February 12, 2005

TDD: smalltalk comparsed with python

Filed under: Development

I was at
this meeting
, (I was sitting in the middle, literally and figuratively) and it prompted me to go back and look at python. I’ve been prototyping and playing with TDD in VisualWorks Smalltalk. I started to do the same thing with python as well to learn about python’s doctest module.

I’ve got the define a method in the debugger goodie loaded. You create the class, create the test case class, and start writing and running the tests.

The debugger pops up with a undefined method error. There’s a button to click that creates the method. You restart the method, and it immediately hits the breakpoint in the debugger created method. You can edit the method in the debugger, save it, and again restart the method. You keep going until the test passes. You write the next test case, and continue.

This is an incredibly smooth process. There are no mental mode switches to be made; it’s continuous programming mode. Wow!

Doctest in python is also very clever. Inside the comments of a class, or one of it’s methods, you add lines from a interactive python sesssion, showing input and expected output. See the documentation for more details.

You need to run the file with python to run all of the tests embedded in various comments. If all the tests pass, you don’t get any output. Running python requires a switch to a terminal window. Or a couple of keystrokes in emacs, which is much easier.

As long as the tests pass, everything is fine. If a test fails, you get a stack backtrace in the output. It took me a while to get used to it, but I soon got the knack of tracking the errors. It’s possible to get the errors to throw python into the debugger to make figuring out the problem easier. I hadn’t used the python debugger much, so I haven’t tried that yet.

Using python avoids the compile/link delay (which is long enough in C++ to let my mind completely away), which is good, but the thought process is interrupted enough to intrude on the smooth flow of smalltalk.

I’m still interested in using python, though. The pain of trying to convince management to use smalltalk is hard, and selling them on Cincom’s royalty pricing is damn near impossible. I enjoy the smalltalk language and environment very much. It’s made a great change to my thinking and programming styles. It’s a shame that circumstances make using smalltalk for "real work" just a fantasy for me.

If something useful comes out of my python code, it might be possible to ship it commercially.

February 6, 2005

You know you’ve been married too long when…

Filed under: General

Today is our 17th wedding anniversary. A couple of weeks ago, my wife and I were making plans, but we couldn’t remember if our anniversary was on the 6th or 8th. Luckily, my parents had given us a clock on our first anniversary with the date engraved on it.

Having my anniversary a week before Valentine’s Day is a great mnemonic.


According to About.com,
the gift for 17 is furniture. I think that’s supposed to be a sign that the passion is gone, but for us that’s just not true. But it seems that my parents knew what they were doing. (I’m sure it was just my mother.)

February 5, 2005

Handwrite - one letter per phoneme

Filed under: General

Via Journalisimo | Back to Analog: Handwrite, a link to an interesting writing system using one letter per phoneme. (If I understood it properly.)

I’ve always wanted to improve my writing. but this might be a bit much. It’s probably better than shorthand. Does anybody even learn shorthard now?

I’ve read in several place that italic handwriting would be the best for schoolkids to learn, but could never find details.

Writing with a nice Waterman fountain pen with a flexible nib did a lot to smooth out my letters, and make much better loops. I prefer a fine nib, which means I don’t get a calligraphic look. I’ve used a Waterman Phileas, but I guess I write too small to appreciate it.

Using gel pens (following the Pilot G2 meme) is almost as good. There’s a 0.4 MM pen they have too that I really like.

I’m such a follower, I just picked up a Moleskine, so I’m thinking about pens and writing.

February 2, 2005

trapped in a maze of twistly little license servers

Filed under: Development

One of the problems with shipping C++ libraries to a customer is the need to match compilers, even to the exact same version. We had been doing Solaris builds on an old Sparc-5. I’d been using using Solaris compiler 5.0 and other than the slowness, things were going fine. I’d been asking for a newer build machine, but it never came to top of the priority list . Then, it crashed. The disk was making a nice whining sound from the metal being scraped off.

As I was rebuilding on the new machine (hardware death is one way to get an upgrade), I found something odd. We had a license certificate from Sun for C++ 4.2. From 1999, I think. I couldn’t figure out how we were actually running 5.0. We had no certificate, and checking my download history at Sun (a very nice feature) , I couldn’t find anything. I did once download a demo license for Forte 6.0; maybe the license server got confused.

The older Sun licenses were bound to a specific host. I could move the 4.2 license to a new server via Sun’s license center, but I don’t think I can actually buy a 5..0 license. The oldest version of C++ that I can still dowload is Forte WS6U2, which is ironically too new to match the customer’s version. The actual compiler version number was 5.3.

I also downloaded Sun Studio 8, compiler version 5.5, which can be used for versions from now forward. However, it doesn’t want to be installed with any older version. Each compiler came with its own version of the licence server too. After installing a second compiler, it took lots of work to get the compiler, license, and license server in sync so that I could actually get the compiler to run.

Boy, I wish I could still use g++.


Get free blog up and running in minutes with Blogsome | Theme designs available here