Many Pies

Many Pies

Tuesday, November 27, 2007

Friday, November 23, 2007

Learning lessons from the Chandler project

I read a really good article called Software is Hard which starts with a summary of Scott Rosenberg's book Dreaming in Code a few months ago. It's about the Chandler project, an open source alternative to exchange, which seemed to go more pear-shaped than an orchard of, well, pear trees. I then started thinking about the next phase of a project I'm involved in and thought there were some lessons to be learned. However I couldn't find the article again.

Recently as I think about this project the background processing part of my brain turns up some words which should help located it in a google search, and after a bit of seraching I found the article. So I'm posting it here so I can find it again.

Here are a couple of good quotes as to the mistakes made:
Uncontrolled feature creep. Kapor originally conceives of Chandler as a complement to Microsoft Outlook targeted at "'information-intensive' individual users and small companies." But everyone on the Chandler team has a different vision of what that means, and in the absence of pressure to ship, Chandler becomes the union of everyone's ideas. Instead of borrowing from successful similar products like Outlook/Exchange, the Chandler team is determined to invent something entirely new from first principles. They want to support user plug-ins and scripting, built-in encryption, storage of messages in multiple folders and infinitely customizable user views. As the project goes on, the simple replacement for Outlook/Exchange grows more and more complicated.

No decision is ever final. Time and again, the Chandler team hashes out compromises on complex issues, only to hit reset when someone new joins the project with new ideas or when it turns out that someone wasn't really satisfied with the compromise. They revisit their choice of database layer, whether to use Mozilla's UI primitives or wxWidgets, and the whole design of their user interface. Eventually, the peer-to-peer architecture is abandoned in favor of a client-server architecture. Three years into the project, the team is still debating whether to turn Chandler into a web-based application like Google Docs & Spreadsheets.

Thursday, November 22, 2007

Jumpbox - simple virtual servers

I've been investigating jumpbox, who give you downloadable virtual servers that do one thing well - e.g. wiki, bug tracking, Wordpress, Joomla. It seems a great idea. Normally I don't blog about things unless I'm using them in earnest, but I thought I'd share some details here in case you can't find out how the pricing works.

I couldn't find much on the site about what you get for free and what you pay for, until I'd downloaded a virtual machine and ran it. When I got to the register page there was an iframe pointing to this product overview which gives you the overview of what you get for free and what you get for registering (which costs).

Basically if you pay you get backup, customisation and support.

Ding! Procedures need skills

I was just doing some training on a procedure that I've written.

One of the things I've struggled with is what level to write them at. Which do you say?
refresh the spreadsheet
right click and choose "refresh data"
push the right hand button on your mouse. A menu will pop up. Move the mouse down until the line "refresh data" is highlighted and then push the left hand button on your mouse

What I just realised in a flash of inspiration, was that things like right clicking and choosing an option, or refreshing spreadsheets are skills that apply to more than one procedure. You don't need to give instruction on the skills in the procedure, but it would be worthwhile (even though a lot of work) to list the skills required to do the procedure. Then when teaching someone how to follow the procedure, you don't really teach them the procedure, you make sure they have all the skills to do it, and leave them to get on with it. A well written procedure will not need teaching if someone has all the required skills.

This is probably all in the standard textbook on procedure writing, but I don't have such a book.

Monday, November 19, 2007

"Jesus in my language" launches

A new part of one of our websites has launched - Jesus in my language. It has a selection of verses from Mark's gospel in various languages. I've had a small involvement in this at the start, sorting out some of the Unicode issues.

Although Unicode is the way forward when it comes to working in the languages of the world, a lot of the stuff in the archives isn't in Unicode, as it was worked on before Unicode was available, or the appropriate tools were available in Unicode. Instead custom fonts were created. Sometimes the archives contained these fonts, and sometimes they didn't so that was more of a challenge. Ventura Publisher was the favoured tool for typesetting the Bible in those days, and so sometimes the clues as to what the characters are is in Ventura format files.

In precomputer days sometimes custom fonts were obtained by filing off parts of some of the letters to get the character required!

Thursday, November 08, 2007

So many systems

I've just drawn a diagram of our systems that are to do with Finance. We have:
  • Sage MMS
  • Sage Payroll
  • Raiser's Edge for donations
  • A system used by hotels for our conference business.
  • Three (3) bits of software for interfacing with our bank.
  • A custom system for interfacing with the rest of the organisation outside this country.
  • Various spreadsheets for:
  • Reporting
  • Data entry
  • Bank reconciliation
No wonder we're so busy here in IT!

"The cell phone is the single most transformative technology for development."

A fascinating article on the
Called to Uganda blog about the cellphone in rural Africa.

One line that stood out was:
"some say has allowed the third world to skip over the use of the PC as a development aid"

I've been watching the One Laptop Per Child programme. Maybe it should be "One Phone Per Child".

Monday, November 05, 2007

Social software interesting times

panzerjohn is involved in the exciting stuff from Google about OpenSocial. I commented

"You know, I never thought this would happen. I've seen discussion about the Facebook walled garden, but I thought to have a social software equivalent which is like internet email as opposed to old-fashioned closed email systems just wouldn't fly. I thought that if Facebook added a thingy to their site which did a certain social software function, then everyone involved in the open standards would have to run around working out how to implement the thingy in the standards. But maybe although there are a rich number of things you can do (poke people, send gifts, write on walls etc.) the underlying functions, and most things that haven't been thought of yet, can be described in an API. Interesting times, in the good sense."

Friday, November 02, 2007

Clunky Oracle Discover reports

I've been using Oracle's Discoverer reports for most of the morning and they are very clunky.

I always thought it looked like a desktop app that's been converted to the web and as I was searching for some sort of tutorial I got a list of the options, one of which is a desktop version so I was correct.

My gripes are:
1. If you want to fill in a value that has to come from a list you get given what looks like a free text field and a torch/flashlight (depending on which side of the Atlantic or Pacific you are).
Rather than having a dropdown arrow if you want to see which values are allowed you click on the torch/flashlight. You then get a new browser window with a list of 25 values. You then have to click "next 25" repeatedly until you find the one you want.

2. You can't delete columns from the resulting report! You can add, but not delete. The workaround I found was to restrict the number of columns on the display to 5 say, and make sure that the ones you want are the first 5 going from left to right.

3. Bloat. It seems that in order to allow some clever stuff, like being able to highlight a column and make it bold, there is a lot of HTML bloat. Here is one single cell in a report:

<td id="dv_c176_0" class="x62" style="font-family:sans-serif,Arial,Helvetica,Geneva,sans-serif;font-size:11pt;font-style:normal;font-weight:normal;text-align:left;color:#000000;background-color:#ffffff;vertical-align:top" onmousedown="_bi_handleMouseDown(event,dv_smodel,-1,0);return false;" onmouseover="_bi_handleMouseDrag(event,dv_smodel,-1,0);return true;" headers="dvc0 dvr176" nowrap><div class="x5f" style="border-top:none;border-bottom:none 1px;border-left:none;border-right:none"><span style="vertical-align:top">cell contents</span></div></td>