Tom has only started blogging a week ago, but obviously he decided to not waste any time with long useless stuff. After all, he’s a Smalltalker 😉
His first posts so far were all very interesting, tearse, and provide a lot of useful information and ideas around build automation with VA Smalltalk. One of the big mysteries in VA Smalltalk is the role of the abt.cnf file, which was said to support the execution of Smalltalk scripts on startup of an image, but there’s never been much documentation about it. Since the execution of the Smalltalk code in abt.cnf happens very early in the startup sequence, simple attempts of doing anything useful in abt.cnf failed miserably. So I gave up on it long ago and had almost forgotten about it.
In his latest post, Tom shows how to use abt.cnf for loading code into a virgin image which really contains no pre-loaded code (meaning a copy of abt.icx from the /newimage subdirectory). So I’ve learned something new that I will definitely use to get rid of the necessity of building “basic preloaded kernel images” for our Stream-based configuration and packaging tool. We can just use abt.cnf to pre-load that base image without any prerequisites – a cool thing!
You know, in a world where you have these ever-re-occuring steps like loading the latest code into a virgin image every morning and performing all the same 43 steps for packaging again and again, every little improvement pays back after a very short time (just imagine your machine prepares a new image in the morning for you while you discuss the latest soccer results at the coffee machine or during your standup meeting…).
And I liked this one:
I have a deep and abiding hatred for the Application Organizer, so I like to ensure that it won’t offend me with its presence…
My favorites are the question whether I want to go to the Organizer or start a new project every day 😉 and the fact that StSDebugger is always deactivated bay default (luckily, I fixed that one a year or two ago).