Log in

No account? Create an account

Deleting Your Work, Starting over is good for the soul...

« previous entry | next entry »
Sep. 4th, 2008 | 09:48 am

On Tuesday I woke up from my drive from BRC and decided to tackle the UTF8 issue in Drizzle.

What is the issue?

We only support UTF8. No oddball character sets, just UTF8. End to end support. If you want to do something else, you need to convert it before you send it to us.

We could do more character sets, but the web is UTF8, and supporting the hod-podge of character sets which have existed just makes for a nightmare of choices.

So how does this work?

I look in mystrings and start to feel around for what is going on. Lots of calls to non-posix/GNU specific stuff.

Yank it goes.

So what is the problem?

After a couple of days I realize that my approach was all wrong to refactoring the strings library. I would not have known this though without trying the first approach.

So what did I do?

I deleted the tree I was working on.

The big lessons I learned, and the little lessons will come back to me as I work on it again.

Who knows, I might even delete the new tree after a couple of days if I do not like it.

One of the biggest lessons I have learned in working on Drizzle is that mass scale refactoring never works the first time. It is an iterative process and there are many rat holes to fall down.

It felt good to delete yesterday's tree and start over again. More often then not this is a best practice :)

Link | Leave a comment |

Comments {3}

Muddling through rewrites

from: hodgesrm
date: Sep. 5th, 2008 03:16 pm (UTC)

It's comforting to hear this happens to other people too. I often start out on a complete muddle somewhere in the middle of problems and have to restart at least once to get something working. The corollary to your principle is to avoid getting into situations where you end up being forced to release your first or even second crack at the solution. That accounts for a lot of really bad commercial software.

Cheers, Robert

Reply | Thread