I am of the opinion that publishing a computational method requires a beautiful, or at least usable, web-site. How many times have you found an abstract for a fascinating piece of software or data, only to find that the link is broken, the site is ugly as sin, or explodes into an indeciphirable spaghetti of incomprehensible links?

There is no excuse for this today. There has been plenty written by web designers about what makes a website effective. You only have to make an effort to find it. But for the purpose of convenience, I hereby present my list of things that a scientific software website should have:

  1. You need a clear title, rendered in a visually compelling way (big font, lots of white space, prominent at the top of the page). Names give solidity to a website. Suprisingly, some websites bury the name of the program with very poor choice of font.
  2. You need a short description of the method. This is a sanity check for people who’ve just landed on your page from god-knows-where. Give them something to grab hold on to. Unfortunately, this will be a real test of your writing skills as you try to distil a description into a 140 words, or a tweet.
  3. On your front page, you should have one compelling example. You can’t assume that people who land on your website are all that interested. The job of the example is to convert the curious to someone who will actually download your software. You need compelling evidence that they will not be wasting their time for crappy output.
  4. You need a big download button. It’s surprisingly hard to find out which link leads to software on many websites. I am talking to you, PyPI.
  5. You need to lay out every step of installation (for instance CONCOORD requires you to change the MAXLIMIT of the shell environment – which is buried in the FAQ). Either that or people will pester you with trivial questions by email, or more likely, just give up.
  6. You need detailed worked examples that gives every single command, and EXPLAINS every single parameter. I always learn how to use new software by following examples, and then tweaking parameters before I get it.
  7. Navigation on every page to at least get you back to the home page.
  8. Single columns of about 60 characters. You are not Amazon com, you do not have that much to sell, so keep to the straight and narrow. I can assure you, as a voracious reader of books, reading speed suffers if text is wider than that.
  9. Learn about whitespace.

And to show you that I put my money where my mouth is, check out one of my sites.

( comments )
 baoilleach   07/15

All good points. I would add another: keep the ‘front page’ short enough to fit into a regular screen without needing to scroll.

If you have time, I’d appreciate a critique of openbabel.org. We will follow up any comments. A big download button is on the way.

 Igor   07/15

Interestingly enough the first thing
I see when clicking on the last link, “check out one of my sites”, is a message “Additional plugins are required to display all the media on this page”. Perhaps one more point should be – no plugin installation should be necessary to view the front page?
I really don’t want to be bothered to install plugins just to check out one more site.
And yes – java and flash are already installed.

 Bosco   07/15

@Igor, concerning the plugins, what I had done was embed an .mp4 file in the webpage. Unfortunately, as a one man operation, I can’t test my page across platforms and browsers. I use Macs and browsers there automatically have a hook-in to play .mp4 files. I had thought most browsers can play .mp4 files on Linux. Anyway, if HTML5 ever gets off the ground, this problem will be solved.

@baoilleach, thanks for the comment! I’d love to have at look at openbabel.org, especially since I’ve used it to do some tricky file processing for simulating ligands in AMBER. Openbabel does better for AMBER than the programs AMBER provides for itself. Didn’t realize that you worked on such an important program.

However, I have to disagree with the short front page. It definitely used to be a problem but the research shows that short front pages are not necessary any more:

http://blog.clicktale.com/2006/12/23/unfolding-the-fold/

http://www.useit.com/alertbox/9712a.html

In that case, the constraints involved in doing a short page shows reduces usability.

My first impressions of the openbabel.org front page is not prioritizing tasks. You need to whittle down to 3 or 4 main tasks.

 Marcin Cieslik   07/15

- choice of font: USE a BCI hinted font as the first choice, the non-BCI font on this blog looks terrible if the display is not anti-aliased (i.e. the way it should be;) – MP4: just try to get it on Fedora;)