The Global Business Network is a network of very smart people who think about the future. The founders are closely associated with the ideas of scenario planning that came out of Shell.
If you're a member they send you lots of interesting things to read, as part of their book club. However, they are nice enough to list the books the recommend here. I've read more books off that list than any other. Every now an then I check in and go on an Amazon frenzy.

Not that anyone else should really care, but I've started keeping a list of the books I've read in a new typepad blog. Just the books as of January 2006 thus far. I take the commuter rail to work, so I get more than 40 minutes of good reading each way. I get through I little less than a book a week, including keeping up on the Economist.

Last Friday I realized both Alden and I had MLK day off the following Monday, so we decided to be spontaneous and go to Camden, Maine for the weekend. Camden is a lovely little town in the Mid-coast region of Maine. We have been a number of times, but never in the off season.

It was largely empty of people, but most of the shops and restaurants were still open. We were very naughty and took our 5-year-old to Francine's Bistro, which was fantastic. It is definitely fine dining - no kid menu here, but we knew that going in. We were the first ones there at 5:30pm, Alden was a trooper, and it worked out beautifully. The food was some of the best I've had, even by Boston standards.

We stayed for the first time at a Bed and Breakfast called Abigail's Inn. I'd recommend it to anyone going to Camden. It is a little 4 room B&B, with a very nice couple running it. Three of the rooms were renovated this year, with very nice decor what wasn't fussy Victorian stuff (a plus for me, your mileage may vary). The bed was super comfy, causing my wife to want a new mattress at home. They have really good freestanding gas stoves in the room, which made things cozy.

If you're traveling with an only child then you have to stay in the Abigail and John Suite. It has a little second room with a twin bed. Alden really like having his own room. Despite the "Suite" name, it is the same price as their other rooms, which seemed a good value to me.

Breakfasts were really good. We had a baked apple and a fritatta one morning, and a fruit cup and German pancake the next.

The location is just at the top of the hill by the library, so you could walk down to town very easily.

Last night on the train ride home, I was thinking about the math of Sudoku. I was wondering what the minimum number of givens or clues (i.e. squares with specified numbers) you have to specify in order to have a unique solution. It turns out to be an open problem, with the smallest known limit as 17. According to Gordon Royle there are 35396 solutions with 17 givens.

If you think about it much, it is a really hard problem. What is a good way to represent it having a "unique solution"?

As the Director of Development at SlickEdit, I'm always looking for feedback on our products and why people choose an editor.

I'm glad they're interested in continuing to improve the product beyond 10.0. As I said in my original post, no editor is perfect for me. So this post shouldn't be taken as "things that are wrong with SlickEdit". Rather, they are "things that would make SlickEdit my perfect editor."

At the moment I'm using jEdit, although I'm having trouble using it as my only editor. It uses 2-3X the size of a file in memory, so it runs out of memory trying to open two 10MB files.

Here is a screen shot of jEdit, showing some of the interface elements I like. (Click to enlarge.)

The number one item I'd like is the file buffer list in the right hand column. It shows the open files in a nice directory tree structure. This makes switching between files much easier than file tabs, which are hard to navigate once you have more open files than screen width. Right clicking on the file buffer tree give options a menu of options to close, save, revert, etc. The button on the right edge of the screen toggles showing this pane, so it gets out of the way easily.

This could replace the "List Buffers ..." floating window in SlickEdit, which is used and dismissed. The Macintosh TextMate editor goes one step further and has a collapsible tree outline to opening files as well. You could see the integration of these two ideas.

The other major omission is an integrated shell window. We use a custom make environment at work. I just issue make command in the shell window to build, and then it automatically greps for errors. If it finds any, it collects all the error and switches to the Error List pane. Clicking on the errors in Error list takes you to the appropriate line. This allows for nice "on the fly" integration with the system. I know I can setup build operations with menu items in SlickEdit, but this is more dynamic. The odd "OS Shell" command in SlickEdit just pop up an unrelated shell, as far as I can see. It looks like a "checklist feature" that was added to say "yes we have an OS shell too."

Buttons along the bottom toggle the Console, Error List, and HyperSearch panes on or off, and switch between them. This gets them out of the way quickly. I like this approach much better than the push-button auto-hide feature in windows. The auto-hide window overlaps other windows, which I find odd. I'd like everything to have its own chunk of screen.

The figure shows how jEdit handles matching parenthesis, in a less distracting way than the gray selection of SlickEdit.

The split pane command is implemented so that each pane gets its own set of scroll bars. The drop down at the top lets you easily choose which buffer is in each pane. Seeing two buffers at once is as simple as clicking on a split pane icon, and then choosing a file from the drop-down (or clicking on the new buffer, and then choosing the buffer from open buffer list.) There is an "unpane" icon (my term) that restores things to a single buffer in one click.

The SciTE editor also has a few nice GUI flourishes. It has "indentation guides" which are the light gray dotted lines you see in the if statement, below. These really help the eye to line up code. They are much more subtle than most attempts at indentation guides, so they don't get turned off out of ugliness.

When you close a brace or parenthesis, it changes them both to blue. Even better, the dotted line connecting them also turns blue, as seen in the else clause.

SciTE and jEdit both do a nice job of code folding. The column to the right of the line numbers has - characters that can be collapsed to hide sections of code (the - changes to + in that case). SlickEdit should replace their "Selective Display" feature with true code folding.

I've found I use code folding quite a bit on text files. You get a poor man's outliner, which is handy for to-do lists. The jEdit code folding is shown below.

The final GUI improvement I'd like would be a cleaner open file dialog. jEdit and Boxer both have good open dialogs, where you can use a tab key to expand partial file names. (Always having to do the down arrow to select the expansion is a pain.) An easy "favorite directory" element in the dialog would also be useful.

As you can see in my outline graphic, there are several small items I'd change. I'd imagine these could be implemented in SlickEdit using the macro language. I especially like the fact that you can modify the entire menu structure of SlickEdit. jEdit doesn't allow this easily, and it relies on plug in code. The menu items for the plug ins end up together, even when they would more logically be somewhere else.

My little change are:

A reload menu item (this seems a strange omission.)

A unwrap line command, that takes a multiple line selection and removes the \n characters (in reformatting an email to quote it for example).

Like many of the Mac Faithful, I'm looking forward the Steve's keynote at Macworld tomorrow. The Guardian has an interesting behind the scenes article about the work that goes into a reality distorting keynote talk.

Maybe Bill Gates should read it for pointers, since I read more than a few blog posts along the lines of "His CES keynote was really bad compared to a Steve Jobs keynote."

I'm liking Guy Kawasaki's new blog. You know who he is - the original evangelist for the Mac. He writes books too. So far he's been really interesting. I hope he can make it past the "I have a new blog" enthusiasm.

Is there a web based program to help you manage your private bookmarks? What del.icio.us can do would be perfect, but I'm too shy to put my links out there for all there world to see. Is there a private equivalent? (See I post questions, but unlike Dave, nobody reads my blog, so I won't get 40 answers in 10 minutes like he does.)