On Thu, Apr 10, 2008 at 3:23 PM, James G. Sack (jim) <[EMAIL PROTECTED]> wrote:
> The statement Humans are way easier to 'program' than computers.
> is interesting to interpret.

I had an "Aha!" moment re this.  A significant part of my work is
technical documentation.  In a sense, I program humans.  When I
document a procedure for doing something I have to consider what are
the essential steps, condense them for efficiency if possible, and
present them in a straightforward and unambiguous way that someone I
don't know can follow.

There are things I think I can take for granted, and things that I
explain just for completeness' sake or "just in case".  In other
words, I have to manage a set of primitives.  I can say "change the
password in PWM" and just assume that the target audience will know
how to do that.  If they won't know how I can either explain it in the
procedure or I can put that in another document or section, sort of
like calling a procedure in a library.

Thinking about it, if a person doesn't know how to do a thing that
I've assumed they do, what are they going to do?  They're going to go
looking for the procedure.  They're going to Google it, pull up a man
page, ask somebody, something like that.  Maybe that's something
missing from programming today: the ability to look up unknowns.  What
if you didn't have to explicitly import libraries?  Most languages now
let you call a function defined elsewhere in the code and you don't
have to tell the program what line it's on.  Why not the same with
libraries?  And what if you could say "do this" and if the computer
doesn't have a library for it it goes out and asks other computers
around it?  Package management systems kind of do this now.  In my
Kubuntu if I say 'kate', for example, it'll say "You don't have kate,
you have to install it using apt-get install kate".

I think if we're going to talk about programming humans we should
concentrate on technical documentation, and forget about the
simplistic "go pick up that ball" type statements.

Another issue is the level of statements you can give a computer
versus a human.  In this regard, I think everyone understands the
issue, and I think progress is being made in this regard.  From
machine language to assembly to C style "high level" to languages like
Java that do garbage collection without you having to tell it to and
languages like Perl that mimic human language syntaxes to a high
degree without me having to tell it what "until" means.  This is a
problem under control, if not licked.

-todd


-- 
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list

Reply via email to