Tuesday, July 26, 2005

Discovery

As recently as 100 - 150 years ago we as a nation (the USA) were a people made up of explorers and seekers and adventurers. Theodore Roosevelt compared the nation to a young grizzly bear, "Big and strong and brave even if we are prone to stumbling around from time to time."

At our core I think the biggest failing we as a culture exhibit is this, we've lost our identity as a nation of explorers to become a nation of consumers. As a group we seem much more concerned with having the bigger house, or the nicer car or the cooler more hip pair of sneakers.

As I watch the shuttle Discovery on her current flight, I am at once hopeful and at the same time fearful that the promise of what Discovery means will not be realized because we as a people have lost our identity as explorers and discoverers.

Here then is my hope for a safe flight, and a rebirth of the United States as a people who explore, and stretch and discover. God speed Discovery, and come home safe and soon.

Friday, July 22, 2005

My Thoughts on Harry Potter and the Half Blood Prince

Let me start by saying that my introduction to the Harry Potter franchise was listening to Jim Dale read the first book on tape as I was traveling with my wife and children. I will forever hear Mr. Dale’s portrayal of the characters when I read the books.

We purchased the most recent installment on Saturday 16 July 2005. My younger daughter Sarah had dibs by virtue of some lottery or some such to which I was not privy. I did however get the second crack at the book, and so Sunday morning dove into the book admittedly with some trepidation. You see, I never really cared for the fifth book. By now all of you know that Harry’s godfather dies in the course of the book, a vehicle which I anticipated but never really liked. In the main though my complaint with book five had to do with Harry himself. I’ve never liked whining much and he was carrying on throughout the book. Ok, he’s feeling put upon and overwhelmed, I understand that, but it doesn’t make being a whiner any more appealing to me.

Within the first couple of chapters I discovered that I liked Harry much more in this book than I did in the previous one. He’s not comfortable with being the hero, or the “Chosen One” as he’s been dubbed by the “Daily Prophet”, but he’s no longer whining about it. He still has some growing to do some of which is forced on him in the course of this book, but he seems to me to have turned a personal corner.

I am trying studiously to avoid spoilers for those of you who have not read the book yet, but I do have a few things to say.

Severus Snape – That figures.

Teenage Romance – Enough already (more on this topic in a minute) I do realize that it’s the central factor in the lives of most teenagers, and for most teenagers life is a constant soap opera, but enough already.

Buckbe … err Whitherwings – Yay …

Draco – heh heh heh.

The ending of the book – Ok, when I finished the book I literally flung it.

All in all, Rowling’s best work to date as far as I’m concerned, and she has managed to accomplish something with this book that she did not with book five. She made me want to read the last one.

Just my thoughts on the subject, but as always your mileage may vary.

Wednesday, July 20, 2005

Good Code := Poetry

Steal this poem v1.2

This poem is copyleft,
You are free to distribute it, and diffuse it,
Dismantle it and abuse it,
Reproduce it, and improve it
And use it
For your own ends
And with your own ending.

This is an open source poem
Entering the public domain
Here’s the source code,
The rest remains
For you to shape, stretch and bend
Add some salt and pepper if you want
Share it you amongst your friends.

Because I didn’t write this poem, I molded it.
Picked up the lines out of a skip and refolded it
As I was walking on over here,
Rescued leftover ideas,
On their way to landfill,
Found screwed up fragments
And found them a use.

Because, think about it
I can’t tell you anything truly new.
There can only be few more new ideas to be thought through.
So should we treat them as rare commodities, high value oddities?
Probe the arctic reserves and other sensitive ecologies
For new ideas buried deep beneath the permafrost?
No! we should re use and recycle them
Pile our public places high with ideas beyond anyone’s imagining..

So I steal a riff here and a rhyme there,
A verse here and a line there
Pass them on around the circle,
Roll the words, add a joke
Here go on.. have a tok,
Does it get you high?
This poem is indebted to Abbie Hoffman, Gil Scott Heron, Jim Thomas and Sarah Jones,
This poem is indebted to all the words I’ve read and the voices I’ve known
This poem is a composit of intellect, yours and mine.
This poem RIPPED OFF every single time

Because intellectual property is theft
And piracy our only defense left against the thought police.
When no thought is new
It’s just rewired, refined, remastered and reproduced
The revolution will be plagiaraised
The revolution will not happen if our ideas are corporatised.
So STEAL THIS POEM
Take it and use it
For your own ends
And with your own ending

This poem is copyleft,
All rights reversed

Clair Fauset
Email: angelclare@riseup.net
Homepage: www.hammerandtongue.org

This poem was the lead in to an article in issue 50 of Linux User & Developer which can be found in bookstores as of the writing of this blog entry. The article goes on to discuss a topic very near and dear to my heart.

In the dim and distant past dear reader when yours truly piled the majority of his worldly possessions into the folded down back of his 1977 Dodge Colt and departed fresh faced and idealistic for college it was not to earn a degree in software engineering. My chosen course of study was art (much to my father’s chagrin I might add). Visions of Renaissance and Dutch masters spun through my head as the miles rolled by. Had anyone told me then that nearly 20 years later I would make my living writing software I would have scoffed and thought them mad. Who was truly mad I wonder?

Colleges and universities around the world teach software development the same way, as an engineering discipline. This is in large part a result of the fact that for several decades computers and the building of programs to run them has been the domain of lab coated scientists from the halls of academia.

I find it an interesting corollary though that most of the “good” software developers I know are also gifted in some form of art. I draw and paint and occasionally much to the suffering of my wife and children dabble in music. A number of developers of my acquaintance are musicians and still others writers and poets. My best friend and partner in crime (who’s blog can be found at http://bmccord.blogspot.com/ ) posits that good code is eloquent, even poetic. In his book on refactoring (Refactoring; Fowler, Martin; Addison-Wesley Publishing (ISBN:0-201-48567-2)) the author talks about code smelling good or bad.

Engineering as a practice focuses on the known, the quantifiable, the procedural and doctrinal. Art as a practice focuses on the unknown, the intangible, the unseen and improbable. Which is better? I suppose that depends on what you want to accomplish. Both approaches to the problem certainly have their benefits and their limitations.

As we move forward to educate software developers though we have an obligation to teach them not just the known and the predictable, but also how to seek how to explore how to find what lies beyond sight.

In art school everyone is required to take numerous drawing courses during which will inevitably be many exercises in drawing “negative space.” When one draws negative space one focuses on a single object (often a chair) and then erases the object from their vision and draws what lies around it and within the nooks and crannies. By doing so the artist defines the object not by what it is, but by what is around it. This type of exercise goes beyond teaching the student to draw what they see, into the realm of drawing not even what they don’t, but what could be.

Software developers often deal in the intangible and the unknown, the at best sketchily defined requirements that users and stakeholders provide. If we teach software developers only that which is known and not how to seek then we only half way arm them to accomplish the one goal of every development effort, placing usable software in front of the users.

But that’s just my opinion, your mileage may of course vary.

Tuesday, July 05, 2005

Software vaguries

I spend most of my time writing software. Let me preface what I'm about to say with the following, I am a Java developer. My area of expertise is with server side development. That said ...

Who's brain damaged misbegotten excuse for an idea was ColdFusion anyway? The company I work for asked me to take on maintaining and finishing a project that had been written in ColdFusion. Ok, it's a tag based wrapper for html and javascript. Simple enough in and of its self.

Add into this the fact that my predecessor decided it would be useful or maybe just entertaining to build into the application a pseudo-object oriented processor so that they could make believe that ColdFusion was anything resembling an object oriented platform. Ok, in all fairness I actually did this once myself about 10 years ago in another platform. (Don't ask it's a hideous memory that I try to repress.)

In essence what they've done here is to have the home page of the application act as a pseudo-object handler they pass a parameter into the page on the url that contains something that bears a resemblence to a Java package structrure. As an example they would have a url that looked approximately like this ( server/application?method=folder.folder.coldfusionfile.cf ) ...

All this does in reality is to add to the amount of code that's required because now in the home page there has to be a means to parse that parameter and make some sense out of it, and then point at the right page to load. It also adds an enormous amount of complexity to the operation as a whole.

ColdFusion does have a place in the universe, for shops without real programming talent (Read as either Java or .Net), but are heavy with design people, and if the chief interest is in the appearance of the site as opposed to the functionality, sure it's great. It's not the way I would approach the problem, but it does work in that context.

All that said, I'd be happier if I never had to touch ColdFusion again. EVER !