Monday, May 31, 2004

Ayreon: The Human Equation

I'm glad people make great music still. This album is simply beyond words. I've been listening to it 2 days non-stop. Nothing else has entered my player. For those that don't know, Ayreon is the brain-child of Arjen Lucasson. He basically assembles a cast of stellar musicians and singers, writes all of the music, and records it. Every album is nothing short of amazing. In fact, everything that Arjen touches is simply incredible. But, his new album, "The Human Equation" is way better than anything I could have expected. It's nice to have a musician to have hopes for and they exceed them everytime. The story is amazing and the music is a tour de force of prog, folk, symphonic, electronic, and metal. And it all sounds coherent. I can't stop listening to it. Right now, I have 10 albums from Mr. Arjen Lucasson and they all KICK. If you enjoy music that challenges and delights you (ala Dream Theater, Yes, etc), then go out and buy this now. This is the album of the decade. YES, IT'S THAT DAMN GREAT! Also, there is a tribute of sort to Mr. Alice Cooper (it would have been nice to have the real thing, but the tribute was done well).

Sunday, May 30, 2004

Weight Watchers One Year Anniversary

This past week marked my one year anniversary of sticking with Weight Watchers. I still haven't reached goal, but I've lost over 65 pounds. I'm actually very close and hope to be at my goal weight by xmas. I feel better than I have in years. It's amazing what losing a little weight and quitting smoking will do for you! Here's to another year of great health!
Omaha Smalltalk User's Group

We had a great meeting this past Thursday! Gary gave a great presentation on ultra-structure and I think everyone walked away with visions of how they could apply it at work (I know I was). We went out later to discuss the Omaha Smalltalk User's Group project. A lot of ideas were batted around, but nothing in stone yet. We even discussed which Smalltalk to use. Whatever we choose to do, it will be fun! Anyway, I wanted to thank Gary for the excellent presentation and everyone that came out! GO SMALLTALK!

Wednesday, May 26, 2004

Camp Smalltalk Mailing List

What Smalltalk god do I need to worship to get on the Camp Smalltalk mailing list? I'm going and I want to join in on all of the pre-game fun. AARRGGHH! I just know that Camp Smalltalk is going to rock and I can't wait. I hope to learn a lot from the masters there! Now, I just need to get on the list! Can anyone help me? PLEASE?!

Tuesday, May 25, 2004

One Year Blogging Anniversary

Today is my one year blogging anniversary! YIPPEE! It doesn't feel like a year. But, it's felt good talking about Smalltalk and the virtues of it. In the past year, I went from being a Java developer (and unhappy) to coming back home to Smalltalk. It feels great to be doing 100% of my off time programming and on job stuff in the language I love most. I'm happy that I was given the opportunity. And yes, programming in Smalltalk everyday is worth living in Nebraska for. So, here's to another year of pro-Smalltalk and pro-dynamic languages blogging!
Tornadoes, Winters, and Allergies

Good grief! Allergies have struck me again. I'm medicated now and feeling better, but what a week here in Nebreska. First off, the midwest and my nose do not like one another. I didn't have any problems with my allergies until I moved out this way. It's already cost me a day of work and one evening. Darn allergy headaches! But, if that wasn't enough, we get all these violent thunderstorms with tons of tornadoes! I feel like I'm playing russian roulette with mother nature out here...=) And did I mention the winter? It's not winter, it's anartica! OK, OK, OK, I'll stop complaining now...

Sunday, May 23, 2004

Chaos, Fractals, Recursion, etc

Lately, I've been back in my mathematician mode and reading books of a mathematical nature. I've always been interested in making complex systems out of simple rules. So, the idea of making fractals by use of simple rules and recursion seems mystical to me. I've been thinking that it would be cool if we could do the same thing in computer science (particularily, multi-agent systems from what I've read). Well, I cam across this link with an interesting discussion on Emergnent Behavior that follows the same lines (simple rules, complex behavior). Check it out here. It's fun stuff to think about.
Modern Day Witchhunt?

I picked up this bit of news from Blabbermouth.
    Donald Bradley of The Kansas City Star is reporting that city of Blue Springs, Missouri has returned almost half of a $273,000 federal grant it received in 2002 to fight a perceived growing Goth culture. Some feared the black clothes, morbid music and obsession with the occult — and Ozzy Osbourne — could lure a wave of youngsters into a world of depression, drugs and suicide.

    Officials returned $132,000 of the money because the Goth situation was overstated in the beginning, Blue Springs Police Chief Wayne McCoy said Friday (May 21).

    Community forums on Goth culture were never held because of a lack of interest, and no youth received treatment for Goth behavior. Both were provisions of the grant.

    "My belief is that you guard public dollars very carefully," McCoy said. "The money wasn't being used so we gave it back."

    The issue arose when parents and other residents called police to inquire about Goth and its influence on teens. McCoy said the callers feared what they didn't understand.
This sounds so incredibly dumb to me. I can't believe our government would spend money to "fix" goth kids. I can think of worse things that a kid can do besides dress in black and listen to depressing music (like doing drugs). We have a problem in this country with drugs and obesity. Why not spend money to fix those problems? I'm glad I'm a not kid growing up now because this is the kind of stupid stuff I grew up with. I was a metal head kid and everyone wanted to "fix" me. Grrrr...People should worry about their own backyards...And one more thing, where did the other half of the money go?

Friday, May 21, 2004

Words Out Of Mouth

James Robertson posted a quote by Colin Putney that say what I was thinking about over vs under design in a much more direct way. It's exactly my thoughts. Go check it out here

Thursday, May 20, 2004

Re: Under-design vs. Over-design

Michael Arnoldus had some interesting comments:
    Very interesting subject. Allow me to suggest a few questions which will help me understand and maybe make it clearer what answer you are searching for. After reading David Schmaltz: "The Blind Men and The Elephant" i've found worthwile to investige in what 'action-context' an answer is to used. Do you need the under- vs. over-design answer to blame somebody or do you need it to evaluate how much design you need to do before beginning? Another question, does the design-question make sense at all until after the fact, when we know what we should have done? Isn't the under/over design answer just as much subject to change as XP claims (and I agree) the requirements are? I'd like to know what you think.

Well, the answer is certainly not to be used to blame anybody for anything (like "NO NO NO BAD PROGRAMMER!") of course. I think the evaluation of how much design do you need to do is getting closer. I think the real reason for the discussing "over" vs. "under" design is to understand how far do you need to go when thinking about a system. The thought and planning still needs to happen, but how much is good enough? Is it OK to err on the side of not enough thought or on too much? Like I said before, the extreme cases of either is clearly bad. But, what about the less than extreme cases. I think we can all point to examples of where under design killed a project or where over design burdened a project into extinction. I keep pondering on what side would I want to err on (of course, I want to err as little as possible, but I know that perfect designs are very hard to obtain if not impossible). The thing about XP is that it says that to err is human and to err on the side of under design because if it not enough then you can refactor in a better design as you outgrow the old one. It doesn't say not to do design, but just to not to go overboard with super generic solutions (basically, don't invent a new tool if a hammer will do for today). I also think its extremely important to always been evaluating a design and refactor it the minute it becomes painful to use. So, I do believe in post-mortem activities after iterations in XP. And to his last point, I would say I would expect the design to change as often as the requirements in the beginning and then slowly harden as the project continues. I would expect changing too much of the design constantly would be a bad thing. A good design changes slowly. I mean how many times was Smalltalk rewritten before we got the system we have today? Perfection is not obtained overnight. I look at a good design like a fine wine. It gets better with age.

Wednesday, May 19, 2004

Under-design vs. Over-design

I've been throwing a question in my head for a while and I thought I'd post about it. The question is simple: What's better under-design or over-design? Sure, the extreme cases of both are bad (awful would be a better word) and painful. But, what about the less extreme cases? I would imagine everyone would agree that good design is in the middle (not too much, not too little). Good design is easy to work with and easy to make changes to. But, a shift either way is under or over design. Now, I don't live in a perfect world and most designs I've seen tend to go to one side or another. I've been asking anyone within earshot what they think and the answers have been very enlightening. My first gut instinct would be to err on the side of over-design, but I think this from coming from the non-XP world. But, now, since I've been doing XP for a little while. I think I would rather land on the side of under design. Why you ask? A lot of people think XP is devoid of design (which is think is absolutely wrong). It's just in XP, we design what we need today and refactor unmercilessly as we go along. The "refactor unmercilessly" is the key phrase because without it you get a severe case of under design and your code becomes painful to maintain. Back in the old days (pre-XP), I was on teams that would design for months before we wrote any code. What we usually got was way over-designed code that had to be changed anyway because of forces of the real world (always making our elegant code messy! How dare it!). When I first started to play with XP, I knew it was a good way to go but was scared about "only design for today" adage. But, what I found is the systems are more adaptable to change. The only time we have problems is when we get into time crunches and forget to "refactor unmercilessly". I think I go back to my saying, "Design for today, but your keep your eye on the future". Lots of times you can add "hooks" to your code that allo extensibility for future enhancements without sacrificing succintness nor adding complexity or code. Think before you code! XP is not about blind coding without thought (which I have heard arguments as such). So, what's everyone else's opinion? I don't know if there is a right answer because each has it's plues and minuses. But, from my experience, a little bit of under design is better than over design. Your mileage might vary of course.
Congrats to Jeremy Turner

It seems Jeremy Turner has gotten the gig as the new Cannibal Corpse guitarist. Jeremy played in the local Kansas band, Origin. And they were an awesome band with a great attitude. They always put on an incredible show and all are great musicians. I met Jeremy a couple of times and he was cool. My old band opened up for them right before I joined (I was doing lights) and Origin spent some time with our guitarist teaching him licks. It's cool to see a local brother doing GREAT (even though I'm not in Kansas anymore...bite me)!!! Way to go man!

Tuesday, May 18, 2004

Cool Quotes

James Robertson has had a string of great quotes! Here's just a couple:

"In the church of complexity, more is always better..."
"The dead hand of rigid systems is holding the entire software development world back..."


Why can't I come up with cool quotes like that. James, I don't care what anyone else says, you are the man! Plus, I love how he has the knack to push up the blood pressure of developers from the world of statica. It's great! Keep up the good work!
Bad Blogger

I've been a bad blogger lately. I've been extremely busy (yeah, a poor excuse I admit). But, it hasn't been for a lack of thoughts! I've been researching fractals and chaos theory lately. Basically, I'm trying to get ready for the GRE to go back to school and it's reignited the mathematician in me a little bit. Of course, I have a list of Smalltalk projects that I'm itching to do as well (XML tools inspired by Seaside and my hate for the poor tools for XML, JXTA, Java integration, .NET VM, neural nets, rules and object integration, etc, etc). But, I want to get back to blogging regularly as well. What's a poor soul to do?

Is anyone else couting the days till Camp Smalltalk? I heard via Patrick Logan that there's a mailing list. I need to get on it!
Next Omaha Smalltalk User's Meeting

Alright, I've got another exciting speaker lined up for the Smalltalk User's Group Meeting here in good ole Omaha! This time is Gary Overgard and he will be talking about Ruleforms. I'm very excited to see this presentation since I have been very interested in rules and objects for a long time and I have never ran across any of this material. Looks AWESOME! The meeting will be May 27, 7:00pm-8:00pm at the Abraham's Library Conference Room. I hope to see EVERY SMALLTALKER in OMAHA there! And hey, if you've been curious about what all the fuss is, come on down and we'll be glad to show you. Yes, that means if you don't know Smalltalk, you're invited too!

The Ruleform Hypothesis: Complex system structures and behaviors are generated by not necessarily complex processes; these processes are generated by the animation of operating rules. Operating rules can be grouped into a small number of classes, whose form is prescribed by Ruleforms. - UltraStructure ACM 1/ 95, Jeffrey Long

More information:
http://c2.com/cgi/wiki?UltraStructure
http://smalltalk.cincom.com/community/digest/2001/May/index.ssp?content=ruleforms

Saturday, May 01, 2004

Omaha Smalltalk Mailing List

I've started a mailing list for the Omaha Smalltalk User's Group. If you would like to subscribe, please send an email to smalltalk_omaha-subscribe@blainebuxton.com with no subject or body. We're planning on starting a new project and I would like to start all the discussion on the list. Everyone is invited! See you there!
Published Presentation

OK, several people have asked me if I would bundle the presentation to make it easy for people to see it. I made a zip package that includes a squeak VM and image with the presentation, Seaside 2.5a, and Komanche preloaded. All you have to do is click here or on the left of the screen. Once you have downloaded it, unzip it, and simply double click on the Squeak.exe. When you see the image, point you web browser to http://localhost:9090/seaside/presentation. And that's it! I pre-started the web browser and I put notes in the image so you can configure Seaside and play around with it. Enjoy!