[PREV - DIVISION]    [TOP]

GOTO_ALAN_KAY

                                                                        
                                                                             
                                                       April 7, 2022         
                                                                             
About a recent Alan Kay talk at the      A follow-up to some earlier         
2021 "goto;" conference with the         remarks from 2006:                  
assigned title: "Is Software                                                 
Engineering Still an Oxymoron":             [ref]
                                                                             
  [link] 
                                                                             
                                                                             
Here Alan Kay is talking my language, doing exactly the kind of              
talk that I've had in mind for a few years now-- and if you're               
paying more attention to me than Alan Kay, what's wrong with you?            
                                                                             
    But he goes in different directions than I would,                        
    which makes this one particularly interesting for me.                    
                                                                             
    My attitude is something like: "Kids these days,                         
    they just don't know anything, they always want                          
    to throw everything away and start over."                                
                                                                             
    Alan Kays attitude is more like "Kids these days,                        
    they just don't know anything, they don't understand                     
    we need to throw everything away and start over."                        
                                                                             
                                   some scattered notes:                     
                                                                             
                                             SYSTEMS
                                                                             
                                             SKETCHPAD
                                                                             
                                             SAFER_WORLD
                                                                             
In dicussing the poor state of the art                                       
of modern software engineering he                                            
leans on two examples: a facebook         In contrast, he praises the        
outage of 6 hours, and two crashes of     reliability of the internet itself,
Boeing aircraft--                         praising the foresight and the     
                                          design skills of Vint Cerf, et al. 
                                                                             
  This comparison is a bit forced,                                           
  because a half-day outage of           And notably, Kay                    
  Facebook isn't going to kill anyone.   also dismisses                      
                                         Facebook as a         So why would  
    Boeing however, evidently            "legal drug" they     you be upset  
    completely lost their                created accidently    about Facebook's
    marbles, going with sloppy,          but were happy to     unreliability?
    poorly tested avionics,              run with.                           
    which also, as Alan Kay                                    "The food here
    points out involved sloppy                                 is terrible!" 
    hardware, not *just* sloppy                                "Yes, and such
    software.                                                  small portions!"
                                                                             
                                                                             
    This trio of examples does not at all                                    
    back up the story Alan Kay wants to                                      
    tell with them: is the devil really                                      
    modern software engineering?                                             
                                                                             
                                                                             
    It would work better as an indictment                                    
    of incentive structure of capitalism:                                    
                                                                             
       Isn't Facebook just rationally                                        
       doing just what they need to                                          
       do to be Facebook?                                                    
                                                              [link]
       And isn't one of the reasons                                          
       the Internet could be the          Alan Kay himself, in 2006: "A      
       Internet was because it            lot of the success at PARC was     
       wasn't a commercial project?       because we didn't know what we     
                                          were doing-- specifically, we      
         It could be there are            weren't trying to make a           
         severe limits to what            product. The silliest thing you    
         we can expect from               can find at [a] research           
         commercial software and          university is today's laptop. We   
         commercial services....          invented the Alto and it allowed   
                                          us to do things that weren’t       
  But that I suspect that                 commercially viable until the 80's."
  would be a shallow                                                         
  judgment also: American                    (But then there's a common      
  Industry could probably                    criticism of Xerox: how did they
  do a better job than                       manage to invent all this stuff 
  we've been doing of                        and leave it to Apple to get rich
  late, and we know that                     off of it?  Maybe Alan Kay's    
  because it *used* to do                    interpretation of his job was a 
  a better job--                             little too narrow...)           
                                                                             
  So what is it that's                                                       
  really been messing us                                                     
  up?  What cultural shift                                                   
  has led to this abysmal                                                    
  drop in quality?                                                           
                                                                             
    He proposes a medical analogy, suggests software                         
    engineers need a "first do no harm" principle.                           
                                                                             
         It often seems to me that the modern corporate                      
         world *in general* could use a return to a                          
         sense of business ethics.                        GETTING_A_HANDLE
                                                                             
         A few generations post-Ayn Rand, there's no                         
         commitment to anything *except* "selfishness".                      
                                                                             
                                                                             
My typical critism of "move fast and                                         
break things" philosophy popularized    THE_TOY_WEB
by Zuckerberg is that it makes an                                            
implicit assumption that what you're         Some ambition besides (or in    
working on doesn't matter very much.         addition to) Getting Rich       
                                             would be toward the good.       
                                                                             
                                                                             
Alan Kay sees                                                                
Facebook's "move fast                                                        
and break things" as        He tosses in a shot                              
an expression of the        about how moving fast                            
"hackers" disease--         and breaking things        Iteration and experiment,
                            appeals to teenagers,      rather than top-down  
So, Alan Kay is clearly     delinquents, and           planning based on theory.
on the side of Design,      criminals.                                       
putting emphasis on the                                      (Though I don't 
three stage cycle:              Though just to be            think Alan Kay is
                                clear: in these              consistently in 
   Design                       worlds "hacking"             favor of one or 
   Simulation                   is more like "hack           the other.)     
   Build/Deploy                 writing" than                                
                                "breaking in with                            
I think I tend to think in      a metaphorical                               
terms of "testing" rather       machete".                                    
than "simulation" where                                                      
the tests are intended to                                                    
be automated, so they can      Alan Kay, for many a                          
be run repeatedly during       decade, has chased his own                    
the entire process, which      vision of "objects" as       This approach has      
is likely to be interative:    small, independent           a reputation for       
there will be re-design        perfectly encapsulated       being "hard to         
and re-building after          pieces of code that work     debug" (e.g. the       
people see the finished        together by sending          Gnu Hurd kernel),      
product.                       "messages" to each other.    which may fuel         
                                                            Kay's interest in      
                                 The current fad for        "simulation".          
  But then, if you               "microsevices" is                                 
  *couldn't* do                  somewhat similar.                                
  something like                                             
  "simulation" it's                                                            
  likely you                                                                      
  couldn't write                                             
  tests either.                                                                
                                                             
        And if you really *are* working on                                
        something like aircraft avionics (not  
        just "the toy web") then you really do 
        need some way to do simulations-- you  
        don't just do iterative trial runs with                                 
        an actual aircraft.                                                      
                                                                                
                                                                                  
                                       
                                                          

Alan Kay talks about
optical illusions, making      He sounds a bit California woo-woo
the point that we don't        on occasion.  (I wonder... was he
perceive reality so much       one of the EST people?)              EST
as a flawed model of it we
build up, which he calls
"The Dream".                                  Consider the "Backfire
                                              Effect".  Does arguing
   I know what he means, but he overplays     the facts just make
   that story: it's a story that many         people dig-in?  But there
   people like quite a bit, they really       are facts that show
   don't want to let go of it.                otherwise.  So why did
                                              people dig-in and cling
                                              to the Backfire Effect?

                                                      DOUBLE_BACKFIRE

    He suggests that industry has a habit of ignoring
    much of what's known by the Computer Science field--
    myself, I'm more skeptical of what the CS people
    really know-- they (sometimes) embrace doctrine to
    the point where they feel no need to check what they
    know.  As Scientists go, they seem remarkably light        MODEST_PROPOSAL
    on Experiment, which may be why mere hackers can
    often kick their butts out in the field.




Alan Kay often makes points remarkably
similiar to what I would:

He trots out the old Pogo line:

   "'We have met the enemy and he is us'"

And adds the comment:

  "And we don't understand us.""

He remarks that one of the reasons many
people go into computing is because computers           TECHIES_FALLACY
are much less messy than human beings are.
                                                        BITWASTES_BEGINNINGS

Alan Kay is remarkably contemptuous
of the current state of the art of
everything (he puts my curmedgeon
skills to shame): e.g. C code is
just glorified punchcards.

He flashes a cartoon of painting                               Okay, so I'm a
yourself into a corner, where the                              horder/packrat,
paint is labeled with names of              Now myself, I'm    but I'm a *high
popular software including things           temperamentally    functioning*
like Linux.  He dimisses our                inclined toward    horder/packrat.
reluctance to throw it away and start       backwards
over as the cognitive bias of "loss         compatibility--
aversion", and compares it to a
monkey trap.                                Invoking the cognitive bias of
                                            "loss aversion" is a cute line of
                                            argument, but it's often observed
                                            that these standard cognitive
                                            biases frequently come in
                                            opposing pairs, and knowing which
                                            one applies is the real trick
                   (Am I suffering          
                   from Dunnig-Kruger           Starting over from scratch
                   syndrome this                and doing it *right* this
                   morning, or is               time (dammit) often has a
                   it Imposter                  certain appeal, but it can
                   Syndrome?).                  lead you into a well known
                                                trap: "Second System Syndrome".
             COGNITIVE_BIAS_BIASES
                                                You often know less than you
         And interestingly, it                  think: the "useless complexity"
         seems as though the                    you're trimming away may have a
         evidence for "loss                     hidden purpose.
         aversion" is weaker      
         than we've been led      
         to believe.            
                                
      This may turn out to be
      another case like "the
      backfire effect"...

         LOSING_LOSS_AVERSION


        Unlike Alan Kay, it seems to me that      I gather it was getting to
        far from being reluctant to start         the JS fans as well, so
        over, kids have a tendency to throw       they've backed off on the
        away existing languages and libraries     incessant "innovation".
        for the latest bright and shiney.

        Alan Kay-- quite rightly, I think--
        makes fun of Zuckerberg's slogan
        "move fast and break things"-- but
        the javascript-framework-of-the-week
        club always seemed to me like another
        manifestation of that madness.

        I'm almost always in favor of building
        on what we have, rather than starting
        over after every time a new graduating
        class hits the streets.




--------
[NEXT - SAFER_WORLD]