Making the ugly elegant one day at a time
Gerald Jay Sussman
...And So Many More...
05/01/2003 - 06/01/2003
06/01/2003 - 07/01/2003
07/01/2003 - 08/01/2003
08/01/2003 - 09/01/2003
09/01/2003 - 10/01/2003
10/01/2003 - 11/01/2003
11/01/2003 - 12/01/2003
12/01/2003 - 01/01/2004
01/01/2004 - 02/01/2004
02/01/2004 - 03/01/2004
03/01/2004 - 04/01/2004
04/01/2004 - 05/01/2004
05/01/2004 - 06/01/2004
06/01/2004 - 07/01/2004
07/01/2004 - 08/01/2004
08/01/2004 - 09/01/2004
09/01/2004 - 10/01/2004
10/01/2004 - 11/01/2004
11/01/2004 - 12/01/2004
12/01/2004 - 01/01/2005
01/01/2005 - 02/01/2005
02/01/2005 - 03/01/2005
03/01/2005 - 04/01/2005
04/01/2005 - 05/01/2005
05/01/2005 - 06/01/2005
06/01/2005 - 07/01/2005
07/01/2005 - 08/01/2005
08/01/2005 - 09/01/2005
09/01/2005 - 10/01/2005
10/01/2005 - 11/01/2005
11/01/2005 - 12/01/2005
12/01/2005 - 01/01/2006
01/01/2006 - 02/01/2006
02/01/2006 - 03/01/2006
03/01/2006 - 04/01/2006
04/01/2006 - 05/01/2006
05/01/2006 - 06/01/2006
06/01/2006 - 07/01/2006
07/01/2006 - 08/01/2006
08/01/2006 - 09/01/2006
09/01/2006 - 10/01/2006
10/01/2006 - 11/01/2006
11/01/2006 - 12/01/2006
12/01/2006 - 01/01/2007
01/01/2007 - 02/01/2007
02/01/2007 - 03/01/2007
03/01/2007 - 04/01/2007
04/01/2007 - 05/01/2007
05/01/2007 - 06/01/2007
06/01/2007 - 07/01/2007
07/01/2007 - 08/01/2007
08/01/2007 - 09/01/2007
09/01/2007 - 10/01/2007
10/01/2007 - 11/01/2007
11/01/2007 - 12/01/2007
12/01/2007 - 01/01/2008
01/01/2008 - 02/01/2008
02/01/2008 - 03/01/2008
03/01/2008 - 04/01/2008
04/01/2008 - 05/01/2008
05/01/2008 - 06/01/2008
06/01/2008 - 07/01/2008
07/01/2008 - 08/01/2008
08/01/2008 - 09/01/2008
10/01/2008 - 11/01/2008
01/01/2009 - 02/01/2009
09/01/2009 - 10/01/2009
Saturday, February 28, 2004
Java Serialization Framework
I'm so excited right now. I started the Java Serialization idea 2 years ago! Now, it should not have taken this long to write it, but I've change jobs twice and lots of overtime at my real job doesn't help. Well, I finally got some free time and got it working. I'm still not 100% happy with it, but I plan on making that better over time. The next mission is to be able to run the Java byte codes in the class loader. Should be fun! But, I can at least say that I finished what I set out for part 1. Anyway, check it out here. I've already found it great to debug serialized java object streams (especially, if the classes had changed and someone forgot the serial version UID!). It now does read/write of serialized streams.
Wednesday, February 25, 2004
Camp Smalltalk, Here I Come!
I just sent in my deposit and I can't wait to make the journey to this year's Camp Smalltalk. It will be the first one I've ever attended. So, who's coming with me?
Monday, February 23, 2004
Why Smalltalk is so freaking great
Go directly to Alan Knight's post. AMEN BROTHER! AMEN! Can I add a few?
Well, that's all I could add since Alan did such a great job. Go read his excellent post now!
Saturday, February 21, 2004
Excellent Article On Business and Lisp
There's simply nothing more that I can add, except go read this blog post from Bill Clementson. I think we should do the same for Smalltalk as well since I think it's equally suited for the same reasons Bill gives for Lisp.
Definition of Stupid
I've never seen this definition before, but I like it:
Friday, February 20, 2004
I want to go!
Here's the details on Camp Smalltalk 2004!
July 18-23 2004 in the vicinity of Portland, Oregon, USA.
To finalize our space reservation, we need to place a deposit on a
minimum of ten sleeping room reservations. We expect more than that to
attend, but we need at least ten definite attendees to step forward
and send in a deposit now. We must receive the minimum number of
deposits BY MARCH 5. If you want to make a reservation, see below
Camp Smalltalk. Smalltalk enthusiasts spending several days in small
groups collaborating on a number of open-source projects to benefit the
Smalltalk community. All Smalltalk dialects welcome. For more details,
Smalltalk enthusiasts. All experience levels are welcome, from "Using
Smalltalk for more than 20 years" to "Fascinated by Smalltalk, but never
really used it."
Afternoon of Sunday, July 18, through midday Friday, July 23
Troutdale, OR, USA
The main cost is the lodging and meals package at Edgefield. You're
responsible for getting yourself there. All prices given include room,
meals, gratuities, and tax for all five nights, and are in $US.
Single-occupancy King or Queen or Double Queen room: $600
Single-occupancy King or Queen or Double Queen Suite with bath: $952.50
Double-occupancy King or Queen or Double Queen room: $530 per person
Double-occupancy King or Queen or Double Queen Suite with bath: $787.50
There are very few rooms with two beds -- if you want one of these
rooms register soon.
We're looking into high-speed internet access, which would have some
additional cost. We will not commit to additional cost without the
approval of those who have registered.
McMenamins Edgefield, Troutdale, OR, USA
A 15 minute drive east of PDX, the Portland Airport
It's right on the edge of the Portland Metro area, five minutes from the
hiking and waterfalls of the Columbia River Gorge. It's easy to reach by
public transit from either PDX or downtown.
A private brewpub-based resort at a lovingly and quirkily restored
historic campus of buildings -- lodgings, restaurants, brewpubs,
winery, gardens, movie theatre, and more. Even a little golf
course. Filled inside and out with interesting artwork
(http://mcmenamins.com/Edge/art.html). Even a working hot glass studio
on the grounds. Hillside location with views across the Columbia River.
We'll be in the main ballroom, which is generously sized (36x68 feet,
11x20m), on the second floor of the main lodge, with many windows on
three sides and a huge mural on the walls.
The view is away from the river.
Mostly European-style rooms, with private baths down the hall. Some
suites with bath are available at a higher rate (see above). Most
rooms have one bed. A few two-bed rooms are available -- send in a
deposit soon if you want one of these.
Meals are included with room. If we eat in fairly small groups in their
restaurants, they'll give us vouchers good for up to a specified amount
for each meal. The Black Rabbit Restaurant
(http://mcmenamins.com/Edge/brabbit.html) is very good, and the Power
Station Pub (http://mcmenamins.com/Edge/pub.html) also has good stuff.
Voucher amounts will be $10.50 for breakfast, $16.95 for
lunch, $26.25 for supper.
On-site: Golf, evening movies, wandering around looking at interesting
stuff (brewery, winery, distillery, artwork).
Fairly short drive: The Columbia River Gorge
(http://www.fs.fed.us/r6/columbia/forest), with hikes and viewpoints
for amazing waterfalls and volcanic cores, Bonneville Dam, mountain
viewpoints and more hikes. About the same distance to downtown Portland.
Longer drive: Mount St. Helens, Mount Hood, boardsailing or kitesailing
on the Columbia, etc., etc.
To register, print out the registration form available at
and send it with your deposit to:
1260 NW Waterhouse Ave, Suite 200
Beaverton, OR 97006 USA
To help us reach our minimum, and to guarantee you a room, we must
RECEIVE your deposit by MARCH 5.
For details, check the FAQ below, or the latest info at
Wednesday, February 18, 2004
OK, I just found this recommended reading list from the Squeakland website. It was compiled by none other than Alan Kay. What shocks the hell out of me is that I've never heard of any of these books. Crap, just as I'm getting a little bit of head way on my reading, this comes up. Looks like I'm going to have my nose in a few books soon...=) Should be a lot of fun!
Master of Fine Computing And Mentorship
Alright, I've been thinking of the idea of aprenticeship lately (shocker, right?). And it got me thinking about the mentors that I've had in the past. Several people have taken me under their wing and mentored me. I am thankful to every one of them. I learned different things from each of them. Everyone of them have made me not only a better developer, but a better person as well. Mentors can teach things that a book will never ever do. They teach experience via horror stories of their own past. The writing style of Andy Hunt and Dave Thomas reminds me of being around a great mentor without being physically there. I love their books, but back on topic... I am thankful that I've studied under the best. They made me understand objects, taught me all sorts of cool tricks, and discipline. But, I feel like I have so much more to learn. Which brings up to my next question. Who would you want to be a apprentice under? I've already be an apprentice under Steve Wessels, Richard Manning, John Sarkela, Paul McDonough, Leroy Mattingly, and many more than I can think of. So, here's a list of people I would love to be an apprentice to: Paul Graham, Andy Hunt, Dave Thomas, Rebecca Wirfs-Brock, Allen Wirfs-Brock, Dan Ingalls, Alan Kay, Jill Nicola, Mark Mayfield, Mike Abney, Robert Martin, Martin Fowler, Kent Beck, Ralph Johnson, Gerald Sussman, Harold Abelson, Joe Armstrong, and many more. I'm sure I'll think of more that I missed later. The list grows every year. But, it's fun to think of. There's just so many people that have helped me and will help me. I'm thankful to them all. So, who would you pick if you could pick anyone to be an apprentice for?
Harvesting Party For Squeak
Ken Causey just announced 100 hour parties for harvesting Squeak bug fixes. I think this is simply a brilliant idea and I hope to attend at least one of these:
No, I don't mean one party that is 100 hours long. I mean a recurring
party every 100 hours.
I'm sure everyone has noticed that the Harvesting process has
bottlenecks. We are largely a community of Doers. It's difficult to
find the time to settle in and take care of some of the mundane issues
associated with harvesting. We also don't have enough eyeballs looking
at code right now even at the best of times. So I would like to borrow
a page from other open source communities and schedule our version of a
bug squashing party. To steal from Kent I would like to 'turn the knob
up to 10' on this concept. Let's have a regular event scheduled in such
a way that everyone has an opportunity to attend at least once a month
or so. 100 hours = 7 days * 24 hours - (3 days * 24 hours) + 6 hours.
By scheduling a 4 hour party every 100 hours each party will occur on a
different day of the week during a different period of the day. With an
average of 7 parties each month taking place on different days and at
different times everyone should be able to find a time to attend at
least one each month.
We can develop the details of what happens at a Harvesting Party over
time but I envision that everyone that has some free time during the
party come to the Squeak IRC channel (#squeak on irc.freenode.net) for
companionship and virtual refreshments. You will start up a Squeak
image with BFAV2 loaded and pick out a BUG or a FIX or an ENH that needs
reviewing or approving or fixing (depending on your abilities and
preferences). When you run into a snag or a question the others
attending the party will be there to provide support and advice.
I floated the idea first to Göran on #squeak and he mentioned that he
had just sent an email to Marcus Denker suggesting a 24 hour harvesting
party to try to move 3.7a along to beta status. So we threw the idea
together and so here's the bang:
The first Harvesting Party will take place from Noon GMT Friday February
20th, 2004 to Noon GMT Saturday February 21st, 2004. A 24 hour party
with a goal to replace that 'a' with a 'b'.
The next Harvesting Party will take place at 16:00 (4 PM) GMT on
Wednesday February 25th, 2004 (100 hours after the end of the big
Each regular schedule Harvesting Party will last 4 hours.
The schedule for the next 7 harvesting parties is (each 100 hours after
the start of the previous party):
20:00 (8 PM) GMT Sunday February 29th 2004
24:00 (Midnight) GMT Friday March 5th 2004
04:00 (4 AM) GMT Tuesday March 9th 2004
08:00 (8 AM) GMT Saturday March 13th 2004
12:00 (Noon) GMT Wednesday March 17th 2004
16:00 (4 PM) GMT Sunday March 21st 2004
20:00 (8 PM) GMT Thursday March 25th 2004
I will handle announcing the parties regularly.
So put on your party hat, limber up your fingers, prepare your mind, and
Tuesday, February 17, 2004
I've always been bothered with the notion that programmers are interchangeable parts. Technical managers that I have had seem to think we are all the same. Cut from the same tree if you will. Am I the only one that thinks this is hog wash? Like anything in life, there will be people that rise to the top of their field and be the best there is. But, it seems people think that programmers are all the same. I find this bothersome. I've known managers that thought they could pull anyone off the street and in 6 weeks have a good programmer. Would we expect to do the same with musicians? Just pick anyone off the street that knows nothing about music and expect them to play a mozart concerto flawlessly after the same period of time? I think the answer would be no! Would we expect to take even a first year english student and expect them to write poems the caliber of William Shakespeare? HELL NO WE WOULDN'T! So, why do we expect the same from programmers? I think like anything in life, those that have passion for programming will be better because they simply practice more (and read more too). We all know great programmers are hard to find (and I always pick their brains when I find one). Not every programmer is the same. We all have strengths and weaknesses. Why should we treat software engineers as interchangeable? It makes for nice marketing, but leads to mediocre software. I hear a lot of complaints about that. Well, I think one path away from mediocre software would be to stop treating us as interchangeable equal parts. Some people will be just better (either through talent, brain power, or sheer knowledge) at certain programming tasks. We should listen to them more when we are doing those tasks. The expert will not always be the same person. We should give them work that matches those talents. There is room for every skill level of developer on a project (and for each task), but we should make our better programmers be the mentors for their respective expert area. The best way to learn is by example and everyone can improve their code-fu. Thinking of programmers as being on the same footing leads to laziness and never offers a way for junior developers to learn from the more talented developers. Apprenticeships should be our path. Programming is not a simple task and has many facets. Why don't we just acknowledge it? I seemed to be all over the map on this one, but there's a lot to be said.
Sunday, February 15, 2004
Updgraded to Squeak 3.7a
WOW! It looks pretty! I love the new font and a lot of the graphics to make things look a little bit more mature. I like it! It took awhile to update my 3.6 and it looks like there has been a LOT of changes! Squeak changes a lot from release to release and it's simply amazing. I've also decided to work on my Java Serialization framework again and to finish it up!
Saturday, February 14, 2004
Do you love peanut butter and jelly? Well, it peanut butter and jelly time! Go here to prepare!
Thursday, February 12, 2004
I just finished Dave Thomas' and Andy Hunt's excellent article, The Trip-Packing Dilemma. I wish I had the knack for boiling concepts down like they do and making them easy to understand. I've been questioning the YAGNI (you ain't gonna need it) concept lately of XP and they have written an excellent critique of it. It's full of food for thought. Right now, they might be favorite programming authors (better watch out Mr. Fowler). They don't know how much I get from their wisdom. I am eternally grateful.
Wednesday, February 11, 2004
I just read via the comments on James Robertson's blog that Avi is working on a new version of SmallBlog! I've been looking at adding cookies for a little while (but I got too deep and screwed everything up). And well, I must admit I can not wait till Avi is finished so I can see how he did it! I haven't made any new updates to Smallblog because of this and I keep finding myself in trouble in the code. But, I've been learning a lot about Comanche and Seaside (always a good thing).
Monday, February 09, 2004
My grandmother-in-law sent me this great joke:
train to the Super Bowl. At the station, the three Northerners
each buy a ticket and watch as the three Southerners buy just one ticket.
"How are the three of you going to travel on only
one ticket?" asks one of the Yankees.
"Watch and learn," answers one of the men from the
They all board the train. The three Yankee men take
their respective seats but all three Southerners cram into a toilet
together and close the door. Shortly after the train has departed, the
conductor comes around collecting tickets. He knocks on the toilet
door and says,
The door opens just a crack and a single arm emerges
with a ticket in hand. The conductor takes it and moves on.
The Yankees see this happen and agree it was quite a
clever idea, so after the game they decide to do the same thing on
the return trip
and save some money. When they get to the station
they buy a single ticket for the return trip, but see, to their
astonishment, that the three Southerners don't buy any ticket at all.
"How are you going to travel without a ticket?" says
one perplexed Yankee.
"Watch and learn," answers the men from the South.
When they board the train the three Northerners cram
themselves into a toilet and the three Southerners cram into another
toilet just down the way. Shortly after the train is on its way, one
of the Southerners leaves their toilet and walks over to the toilet in which
the Yankees are hiding. The Southerner knocks on their door and
says, "Ticket, please."
More Alto Dorado Music Posted
Well, it's old stuff that was mainly written on my qy-70 when I first learning midi sequencing. Fun stuff. I dragged it back out and had forgotten how much I enjoyed it. So, I decided to put it on the web. Hell, I figured somebody out there might like it. Go here to listen and scroll down to the bottom (it's the oldest stuff, thus it's on the bottom).
Nothing cleanses the soul
Like a day of listening to nothing but Zakk Wylde. I can not wait for his new acoustic album. If it's anything close to Book Of Shadows. The man is a rare breed: a great guitarist and songwriter. Something that you don't see too often. Plus, you gotta love that southern rock vibe coupled with heavier than hell guitars. It doesn't hurt that he puts down Limp Biskit every chance he gets too....Hehehehehe...=) Just preparing myself for some great southern metal tomorrow: DAMAGEPLAN! This is going to be the year that the southern boys teach everyone what an ass kicking truly is. I know, I know, Zakk is not southern, but damn, I make him an honorable member of the club of southern metal gentleman. Hint: Zakk's the real deal and not that wuss kid rock....=) Now, if Dimebag and Zakk would make one album together....Metal would be over as we know it.
New Agent Remote Control
I decided to spend a little bit of time and make some much needed updates to my agent remote control software. It's a fun little project that I do for just me. I've now added the capibility to load/store your own tapes for the agent to run. The next version will have the capability to edit the event list and the delays. I also fixed several bugs that had been nagging me and a basic clean up of the code. I'm still not happy enough with the code to release it yet. Anyway, have fun.
Sunday, February 08, 2004
Collections, messages, and blocks
I've been seeing a lot of code lately that uses select: and collect: messages to collections and you might be thinking, "yeah, Blaine what's the big deal, that's the way we do things!" Now, doing a collect:, select:, or anything else on small collections is fine, but what about when the collections get big? Things like a collect:, select:, or reject: become time consuming and huge memory suckers, since Smalltalk has to create a new collection for the new copy. Or does it? Since, we are just sending messages around and are encapsulated from the implementation of the collection that is returned by collect: or select:. Why not delay the calculation? Keep the block around and avoid calculating the new collection until absolutely necessary. I want to play around with this idea and see what happens. I'm thinking for small collections, it will cost more, but as the collection grows to be very large, the performance gain of not creating a new collection will be enormous. Or maybe not...Stay tuned...At the very least, having a language with lambdas (blocks) and dynamically typed gives one a lot of flexibility to think thoughts like this and try them out.
Wednesday, February 04, 2004
More snow coming (I'll let you figure out the acronym) and we're expecting 6-10 inches. There's already like a foot on the ground. This is the third major snow storm is less than 1 month. Oh joy, more shoveling...=)
New Damageplan kicks ASS!
Well, I just couldn't resist the temptation and listened to the entire new Damageplan tonight on vh1's site. The sound was crappy, but the songs came shining through. There's more diversity in the songs (I would have liked a little more) than in Pantera and I think I'm going to love it with each listen. It's cool to see southern brothers doing good and still making kick ass music. Alright, Crowbar you're next for kicking my southern ass...=)
Space Music Retreat
I WANT TO GO! Check it out:
space music retreat
May 3-7 2004
Sky Lake Lodge, Rosendale NY
There will be a retreat for electronic musicians at a secluded lodge in
the Catskills of NY state.
Anyone who is interested in sharing 4 days of space, ambient, electronic
and experimental music is invited to participate. Musical activities
will include individual performances, group improvisations, and
collaborations. This is a great opportunity to develop creative ideas
and broaden your musical community, while relaxing in a peaceful,
Non-musicians are also welcome.
The registration fee of $320 will cover 4 nights lodging and 3 meals per
Details are available here:
We are also planning a one day space music festival in Philadelphia, on
the Sunday after the retreat (May 9). Priority for performances at the
festival will be given to those traveling longer distances to the
retreat, and collaborations formed there.
Happy Birthday Alice
Well, it's the master's birthday! Let's hope he enjoys more! Which reminds me...when is that new tour coming around? I need my Alice fix!
Sunday, February 01, 2004
March 9 is going to kick all ass
The Judas Priest box set is coming out on that date and it has something that I have been waiting for a long time. The 1983 Memphis concert from the Screaming For Vengeance tour!!!!!!!!!!!!!!!!!!!!!!!!!!!!! OH MY GOODNESS! Now, all I have to wait for is the new Alice Cooper remastered discography! This is going to be the year of music!
Another 6 inches is to fall upon us. Oh joy...
My Weekly Top 20 Artists