Ben Langhinrichs

October, 2003
SMTWTFS
   01 02 03 04
05 06 07 08 09 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Search the weblog





























Genii Weblog


Civility in critiquing the ideas of others is no vice. Rudeness in defending your own ideas is no virtue.


Tue 28 Oct 2003, 08:20 AM
"You're taller than your e-mail" was the first thing Bill Buchan said to me at the UK Admin-Developer Conference after my session.  It seemed ironic from someone who I had pictured as Hagrid after reading and hearing about his exploits, but who is actually somewhat short and round robust and vertically challenged.  (Of course, I am 6' 6 1/2" (or two meters, to be even easier), so maybe he has a point.)

It seems to be human nature to think that others will be "like us".  It surprises us when people speak differently or look different or like different sorts of food.

What constantly surprises me is that people at these conferences do seem to have one thing in common, with each other at least, if not with me.  They all seem very happy with technology.  Oh, they may quibble about J2EE vs .NET or Mac vs. Windows or Domino vs. Websphere, but they all actually seem quite happy discussing it.

Why aren't they like me?  I hate technology.  I don't like PDAs or WIFI cards.  I certainly don't want a phone that is smarter than I am.  I would be more than happy if I could develop software without any mechanical device at all.

Because I do like to develop software.  Not because I like the technology, but because if people must use the horrid stuff, it should be easier than what I have to go through.  I once did a demo for a company with a simple table with seven rows and three columns and a bit of LotusScript code using Midas (10 lines in all probably) which sorted the table.  No loops, no fuss, with the guts of the code being something like:

Call rtitem.ConnectBackend(doc.Handle, "Body")
Set rtTable = rtitem.DefineChunk("Table 1")
Call rtTable.SortByRow(2, True, True, False)
rtitem.Save

It was short.  It was easy to read.  It was fairly clear what it did.  It ran practically instantaneously.  So why did I show them?  Because the kicker was, those four lines of code ran over eight and a half million lines of C code.  That's right, eight and a half million lines (obviously not all different lines, because there are only about 40 thousand lines of code in all of Midas).  So what's the point?

For those of you who have not tried to manipulate rich text with the C API, you'll simply have to take my word that it is horrible, wretched stuff.  That table might have nested tables and sections and graphics within it.  It  might have fifty columns instead of three.  The table cells might be empty or filled with pages of formatted text.  Midas has to handle all that, determine what to do, take the table apart and put it back together again, and it has to do it efficiently.  It has to handle LMBCS and hotspots and packed data records and so on and so on.

"So, why does he do this again?", you might reasonably ask yourself.  

Because, as I said,  I hate technology.  Nobody should have to go through the pain I go through.  Other, "normal" people, don't like to sit around and code, or program their wireless PDA Swiss army knife electronic smart gadgets either.  "Normal" people want to point at what they want and say "Sort yourself, table" and then go home and watch reality TV on the telly.  They don't find any joy in iterating through nested structures or building hierarchical multiple inheritance objects that wet their pants if the expected data is different than they expect.

So, I hereby dedicate Midas to the "normal" people, who don't like programming, and think it should take no more lines to do a task than it does to describe it.  And should you think that even that agent I have above is a bit too much, consider that in @Midas Formulas, the formula code to do the same thing would be:

@DbCommand("Midas":"NoCache"; @DocumentUniqueID; "Table 1"; "SortByRow"; 2; @Yes; @Yes; @No; "Save")

So go home, and enjoy the telly!  I'm going to go back and hang around with a whole bunch of people who look shorter than their e-mails, but have digital cameras which hold 850 pictures at 20 zillion by 20 zillion resolution, whatever that means.

Copyright © 2003 Genii Software Ltd.

Fri 24 Oct 2003, 11:37 PM
'Tis a fair wind for England
And a moon to light my way
Foes and glory await me
And I can only say, 

Farewell!

(Off to London for a conference.  I'm not sure how the blogging will go from there, but I'll try)

Copyright © 2003 Genii Software Ltd.

Thu 23 Oct 2003, 10:18 PM
Since A List Apart is posting again, I was reading a few older posts and happened on Mark Bernstein's 10 Tips on Writing the Living Web.  Inspirational reading for those of us bloggers trying to figure out the why as well as the how of this weblogging process.

Copyright © 2003 Genii Software Ltd.

Thu 23 Oct 2003, 10:07 AM
In the template for the Notes 6 Gold forum, which is available in the Sandbox, I happened to notice the following code:

<SELECT name="URLpick" onChange=
window.open('/forum/'+this.options[this.selectedIndex].value,'_top')>
                        <OPTION VALUE=""  SELECTED>Select view</OPTION>
<OPTION VALUE="/DateAllThreadedWeb?openView">Date (threaded)
<OPTION VALUE="/DateAllFlatweb?openView">Date (flat)
<OPTION VALUE="/DateAllwithExcerptWeb?Openview">With excerpt
<OPTION VALUE="/AuthorAllThreadedWeb?Openview">Author
<OPTION VALUE="/CategoryAllThreadedWeb?Openview">Category
<OPTION VALUE="/PlatformAllThreadedWeb?Openview">Platform
<OPTION VALUE="/ReleaseAllThreadedWeb?Openview">Release
</SELECT>


squished into a table cell along with lots of other passthru-HTML.  It took me a moment to realize that this was the solution the developer had found for a combo-box that automatically follows the link when a selection is made, as opposed to having to press a Go button after selecting.  Now, while Web UI designers may dislike this type of combo-link, companies who pay Web UI designers love it.

So, my question is, why would you write this in passthru HTML?  It is difficult to read, must be deciphered as opposed to recognized, and can be done in a more standard way with Notes constructs, which make the design a good deal more WYSIWYG (a fairly popular goal as far back as the 1980s).  All you have to do is create a dialog list field called URLpick with the following choices:

Select view|
Date (threaded)|DateAllThreadedWeb
Date (flat)|DateAllFlatweb
With excerpt|DateAllwithExcerptWeb
Author|AuthorAllThreadedWeb
Category|CategoryAllThreadedWeb
Platform|PlatformAllThreadedWeb
Release|ReleaseAllThreadedWeb


and then set the field's onChange event to:

window.open('/forum/'+this.options[this.selectedIndex].value+'?openView','_top')

You get the same effect, and even the exact same HTML generated, but what you have is recognizably a combo-box, it fits in the cell and the whole design is easier to see.

So, which do you think should be used?  The HTML, as this is a web design element and web developers will be looking at it?  The combo-box, for readability and WYSIWYG?  You decide.

By the way, if you came to my session at the UK Admin-Developer conference in London next Monday on Advanced Notes/Web Coexistence, you could see more of these tips, and hear a more detailed argument for using Notes constructs in this scenario.  You might also find out some interesting ways you could use these web tricks in the native Notes client.  There is still time to sign up for the conference (especially if you live near London and don't have to worry about airline tickets).

Copyright © 2003 Genii Software Ltd.

Wed 22 Oct 2003, 05:42 PM
AOL seems to have an unusual shortcoming with regards to passwords.  I can't quite decide how big a deal it is, but it is certainly odd to use the wrong password and still get in. Here's the situation.  I have an AOL account (please, I know, I know), and the password is something almost completely unlike '47fancy2' (because this is after all a public weblog, so I'm not going to reveal my password here).  What I have discovered is, if I enter '47fancy295' or '47fancy2thelastdance' or '47fancy24601', they all work just fine as passwords.

OK, this may seem stupid, but if I were using Lotus Notes and my password were 'abc', which sounds frightfully insecure and easy to break, I would still be OK if a hacking program tried all five character combinations under the mistaken assumption that I was using at least five characters.  AOL would let me in as soon as one of those combinations started with 'abc', so it is clearly less secure.

What's more, I am not sure what this reveals about the password algorithm utilized by AOL.  Do they just start comparing letters until they reach a valid password?  I should probably report this to someone, although chances are they won't change it.  The real question is, who would I even report it to?  Anybody know?

Copyright © 2003 Genii Software Ltd.

Wed 22 Oct 2003, 12:10 PM
I'm travelling to London on Saturday for the Groupware Magazine Admin-Developer 2003 conference, which starts Monday.  I'll be presenting a couple of sessions, one called Rich Text Tips, Tricks and Techniques and another called Advanced Notes/Web Coexistence.  In addition, I'll be meeting with a few people, and should have some material at the Penumbra booth.  I'd love to meet up with any clients, partners or even blog-devotees.  Let me know if you are attending or will be in the area and would like to meet up.

Other presenters include Rocky Oliver, Rich Schwartz, Andrew Pollack, Dieter Stalder and a bunch more.  It should be a great conference, and a bet you could still get in if you tried.  

I'll be connected and might blog while in London, but I will certainly post the session materials and demos after they happen.

Copyright © 2003 Genii Software Ltd.