Alan Kay (VPRI Co-founder) – Joe Armstrong Interviews Alan Kay (Nov 2016)
Chapters
00:00:08 Reminiscing about the History of Computing
Introduction: Alan Kay begins his presentation by acknowledging Joe’s and Alan’s desire to be introduced as “two old guys who’ve been around for a while” and contributing to the “mess” in computing. He emphasizes the importance of learning from those who helped shape the field to gain insights into the present and future.
The Past vs. the Future: Kay highlights the difficulty of discussing the past due to its intricate details, in contrast to the simplicity of envisioning the future. He mentions the fortune teller from Thornton Wilder’s play as an example of how predicting the future is easier than understanding the past.
Goethe’s Quote on Discovery: Kay shares Bob Barton’s favorite quote from Goethe, which emphasizes the excitement of discovery without focusing on claiming priority. He notes that this is particularly relevant in engineering fields with scientific influences, where there are numerous contributors to ideas.
Derivativeness of Ideas: Kay acknowledges that many of his ideas were derivative, stemming from reactions to existing concepts. He believes that no one knows more about their research community than he does, indicating the collaborative nature of idea generation.
Leaving Molecular Biology for Computing: Kay recalls leaving molecular biology and pure math 50 years ago to pursue a master’s degree in computing. He recounts accidentally arriving at the University of Utah, a renowned ARPA research center, and receiving a copy of the Sketchpad thesis from the department head, Dave Evans.
Sketchpad Thesis: The Sketchpad thesis, written by Ivan Sutherland, introduced a groundbreaking interactive graphical user interface (GUI) in 1963. It allowed users to create and manipulate drawings on a computer screen using a light pen. Kay emphasizes the significance of this thesis, describing it as a “bombshell” that changed the way people thought about computing.
00:05:31 The Interconnectedness of Computer Systems, Biology, and the Internet
Learning Sketchpad and Simula: Alan Kay encountered Sketchpad, an interactive computer graphics system, and Simula, an early object-oriented programming language, as a graduate student. Sketchpad’s relational constraint-based programming impressed Kay, while Simula’s concept of classes and instances intrigued him.
Simula’s Influence on Object-Oriented Thinking: Simula’s focus on the ALGOL block as a computational entity led to the idea of classes and instances. Kay recognized the potential of hiding complexity inside objects, presenting a clean interface to the outside world.
Inspiration from Biology and Computing: Kay’s background in molecular biology and pure math influenced his thinking about objects as independent entities in process, similar to cells. Time-shared virtual machine processes and the ARPANET’s interconnected computers reinforced the concept of nodes communicating over a bus.
Understanding Computational Limits: Kay realized the futility of going lower than a computer in terms of data structures or procedures. The overhead of processes, especially in Unix, limited the feasibility of simulating even simple concepts like the number three.
Scaling and Messaging: Inspired by biological systems, Kay recognized the need for scaling beyond the traditional gear-like meshing of procedure calls. Messaging emerged as a suitable communication mechanism for large-scale distributed systems like the internet.
Common DNA in Tissues: Kay observed that the different tissues in the human body share the same DNA, analogous to a class object in object-oriented programming.
00:12:11 Programming Languages and AI in the 1950s
Early Influences on Alan Kay’s Thinking: Alan Kay’s interest in vector spaces in mathematics led him to consider the power of emphasizing similarities over differences to derive generic principles. Kay’s encounter with Marvin Minsky’s book on old-style computing, particularly the chapter on Girdle, introduced him to Lisp and sparked his fascination with its elegance.
Common Sense Interfaces and Relational Advising: Kay recognized the need for common sense interfaces to make computing accessible to everyone. He saw relational advising as a promising approach to building systems that could reason and learn from new knowledge.
McCarthy’s Work on Situations, Actions, and Causal Laws: McCarthy’s paper on situations, actions, and causal laws introduced the idea of labeled states, where each fact is associated with a timestamp. This concept enables purely functional means of advancing from one state to another, avoiding the need for monads or other complex mechanisms.
Dynamic Meanings and Pattern Matching: Kay emphasized the importance of dynamic meanings, which can be negotiated, rather than static meanings in programming. He highlighted the significance of pattern matching and transitions in making things happen.
NGVI and Comet: Early Examples of Pattern Matching: NGVI and Comet were early systems that used pattern matching for natural language parsing. These systems demonstrated the power of pattern matching and programmable grammars.
Conclusion: Alan Kay’s exploration of various books and papers in the early stages of his career significantly influenced his thinking and shaped his approach to computing. He recognized the potential of common sense interfaces, relational advising, and dynamic meanings, laying the foundation for his later work on graphical user interfaces (GUIs) and object-oriented programming.
Moore’s Law: Moore’s original public paper in Electronics 1965 is discussed.
IMP: IMP is introduced as a notable concept to consider, particularly the work of Irons in 1970. Irons’ focus was on developing languages where procedural headers served as the grammar syntax for procedures.
Syntax-Directed Compiler: Irons’ invention of the syntax-directed compiler is highlighted. This work allowed programmers to decide between standard methods or extending the language when writing procedures. It also enabled the addition of new control structures.
Planner Language: The Planner language is described as a significant achievement, particularly in the context of affected prologue. Its matching capabilities and negotiation aspects are emphasized. Kay’s interest in Planner stems from its potential for handling the vast scale of the internet and the need for loose binding and meaning negotiation.
Messages and Parsing: The ability to parse messages on the fly is presented as a key advantage. This concept is illustrated using the example of the Planner language.
00:26:55 Evolution of Programming Languages: From Assembly to Objects and Beyond
Historical Advancements in Technology: The advent of integrated circuits and electronic devices like wristwatches.
The Dynabook Concept: Alan Kay’s vision of a personal computer with a tablet, windows, and an object-oriented operating system. Inspired by Seymour Papert’s work with children and the desire to break free from desk-bound computing. Moore’s Law enabled the realization of this concept by 1998.
Challenges in Operating System Design: Limited memory and computational power of early computers. The need for a complete Macintosh-like interface with only 64k bytes for computation. Smalltalk 72’s limitations compared to modern languages like Erlang and actor languages.
Language Evolution and Design: The constant need for language expressiveness and performance improvements. The challenge of making a good language run fast enough for general use. The role of assembly code as the foundation for future languages.
Programming Languages and Their Impact: Sketchpad’s revolutionary approach to programming based on requirements rather than coding. Lisp, Fortran, and Simula as influential high-level languages. C++ as a language inspired by Simula’s extension of ALGOL. Smalltalk, Planner, Actors, Prolog, and Linda as significant languages in the programming landscape.
The Importance of Fault Tolerance and Independent Objects: Erlang’s success in addressing the need for fault tolerance and independent objects in distributed systems.
Linda’s Influence: Linda’s similarities to Meta 2 and its potential for creating transaction systems and second-order Prolog-like systems.
00:36:31 Pithy Quotes and Their Role in Influential Conversations
Interview Misnomer: Joe Armstrong corrects the term “interview” to “conversation,” emphasizing a desire for a more natural and engaging exchange of ideas.
Smalltalk and Prolog: Armstrong describes his initial struggles with Smalltalk’s class structure and his subsequent discovery of Prolog, which sparked his interest in message-passing object models.
CSP, Actors, and Meta 2: Armstrong’s exploration of CSP (Communicating Sequential Processes) and his encounter with Carl Hewitt’s concept of actors led to his realization that he and Hewitt shared similar ideas. He mentions Meta 2 and Ometa as topics he intended to discuss but ultimately decides to save for later.
Inspiration from Strange Loop: Armstrong explains his motivation for wanting to have a conversation with Alan Kay at Strange Loop, citing the unique atmosphere of the conference and the potential for a large audience.
Jules Holland and Elton John: Armstrong draws inspiration from an interview between Jules Holland and Elton John, emphasizing the value of asking insightful questions that lead to meaningful conversations.
Balthasar Chrastien and Aphorisms: Armstrong compares Alan Kay to Balthasar Chrastien, a 17th-century Jesuit monk known for his mastery of aphorisms. He highlights the power of short, pithy quotes in capturing the essence of an idea.
Alan Kay’s Paragraph and Page Style: Kay contrasts his preference for paragraphs and pages over short quotes, acknowledging the challenges of compressed communication. He recalls his experiences with Xerox executives and the need to adopt slogans to convey complex concepts effectively.
“The Best Way to Predict the Future is to Invent It”: Kay shares his famous quote, “The best way to predict the future is to invent it,” which he used to challenge Xerox’s focus on trends and emphasize the importance of innovation.
“If You Don’t Fail at Least 90% of the Time, You’re Not Aiming High Enough”: Armstrong introduces another memorable quote, “If you don’t fail at least 90% of the time, you’re not aiming high enough,” and discusses its significance in encouraging ambitious goals.
Slogans, Gestures, and Theater: Kay emphasizes the theatrical nature of slogans, comparing them to gestures and fiction. He highlights the importance of capturing attention and creating memorable phrases that resonate with audiences.
Neil Postman and McLuhan’s Zen Koans: Kay recounts his friendship with Neil Postman, author of “Amusing Ourselves to Death” and “The Disappearance of Childhood.” He shares an anecdote about Marshall McLuhan’s stage presence and his use of paradoxical statements to stimulate thought and attention.
00:46:48 Provocative Ideas and the Power of Simple Concepts
Overcoming Mediocrity: Alan Kay criticizes the notion of accepting a 90% success rate, emphasizing that it lacks impact and fails to drive progress.
Embracing Failure: Joe Armstrong suggests shifting the focus from guaranteed success to embracing projects that are likely to fail, encouraging experimentation and innovation.
Resistance to Change: Armstrong introduces the aphorism “everybody loves change except for the change part,” highlighting the common human tendency to resist actual change despite acknowledging its necessity.
Provocative Titles: Armstrong’s talk title, “The Computer Revolution Hasn’t Happened,” challenges the prevailing belief that the computer revolution has already occurred, sparking discussion and reflection.
Every Object Should Have a URL: Kay emphasizes the transformative potential of assigning URLs to objects, allowing them to be addressable and introspective, facilitating communication and interoperability.
Learning from Biology: Kay acknowledges the inspiration he draws from biology, recognizing the power of natural systems and applying those principles to technology.
Enthusiastic Response vs. Lack of Action: Kay expresses surprise and disappointment at the lack of enthusiastic response to his proposal for making every ailing process addressable and introspective, despite its potential to simplify implementation.
Personal Computing and the Internet: Kay reveals the precarious history of personal computing and the internet, highlighting the potential impact of the Mansfield Amendment on shutting down ARPA and the significance of Taylor’s efforts in establishing Xerox PARC.
00:50:12 Scaling the Internet: Challenges and Opportunities
Introduction: In this discussion, Alan Kay and Joe Armstrong share their perspectives on learning, scaling, and the future of computing. Kay emphasizes the importance of learning beyond traditional programming courses and the need for computer scientists to think like scientists rather than engineers. Armstrong stresses the significance of considering scaling aspects early on in problem-solving and the challenges of dealing with vast numbers of entities in computing.
Beyond Traditional Programming Courses: Alan Kay criticizes the focus on algorithms and data structures in introductory programming courses, arguing that these ideas do not scale well. He encourages students to explore broader concepts and theories that can handle more complex systems.
Thinking Like Scientists: Joe Armstrong advocates for a more scientific approach to computer science, urging practitioners to think in terms of large numbers and dimensions. He suggests considering the scale of the universe and using that as a reference point for designing systems that can handle vast quantities of data and entities.
Scaling and Problem-Solving: Kay emphasizes the need to consider scaling aspects early on in problem-solving. He warns against starting with a small-scale solution and trying to scale it up, as this often leads to problems. Instead, he suggests starting with a large-scale perspective and scaling down if necessary.
The Importance of Learning: Kay challenges university students to be proactive in their learning, urging them to explore beyond their coursework and seek out new knowledge. He highlights the revolutionary ideas presented in Ivan Sutherland’s Sketchpad thesis as an example of the potential for groundbreaking innovations in the field.
Conclusion: Kay and Armstrong’s insights shed light on the challenges and opportunities in computer science. They emphasize the importance of learning, thinking like scientists, considering scaling aspects, and embracing the potential for groundbreaking ideas.
Major Unsolved Problems in Computing: Joe Armstrong emphasizes the need to address unsolved problems in computing rather than focusing on easily solvable issues. Alan Kay suggests identifying the top 50 beliefs in computing and negating them to gain new perspectives.
The Problem of Big Data: Alan Kay criticizes the obsession with big data and argues that the focus should be on “big meaning” instead. He warns against confusing the means to an end (big data) as the end itself.
The Importance of Safe State Advancement: Alan Kay highlights the significance of being able to advance state safely and perfectly in computing systems. He advocates for organizing systems to achieve the best balance between safety and efficiency.
The Dangers of “Inverse Vandalism”: Joe Armstrong expresses concern about the practice of creating things simply because they are possible, without considering the need or consequences. He refers to this as “inverse vandalism” and warns of its unpredictable side effects.
The Perils of the Cloud and History Loss: Joe Armstrong raises the alarm about the potential loss of history due to the reliance on cloud storage. He emphasizes the importance of preserving historical data and expresses concern about the long-term consequences of data loss.
Ranking Concerns and Addressing the Most Dangerous Issues: Joe Armstrong proposes ranking the identified concerns in order of severity to prioritize addressing the most dangerous ones first. He suggests inviting experts like Vint Cerf to discuss the issue of history loss and attention hijacking.
The Significance of Francis Bacon’s “Four Idols”: Alan Kay highlights the relevance of Francis Bacon’s “Four Idols” from his book “Novum Organum” in understanding the foundations of science. He emphasizes the need for a social system to debug ideas and the importance of science being grounded in reality rather than abstract symbols.
Our Bad Brains: Humans are born with bad brains due to genetics, culture, and poor language representation of ideas. Academia often perpetuates bad thinking by recycling these ideas.
Science as a Set of Heuristics: Sir Francis Bacon defined science as a set of methods for thinking more clearly and effectively. The focus should be on finding ways to overcome our cognitive limitations, not just accumulating knowledge.
The Importance of Heuristics in Technology: The Industrial Revolution enabled the mass production and distribution of technologies, which can have a significant impact on our environment and behavior. However, many people in the computing field lack an understanding of cognitive psychology and user interface design, leading to poorly designed technologies that overwhelm our nervous systems.
The Need for a Knowledgeable Culture: Kay laments the lack of knowledge and awareness among those working with computers, particularly regarding cognitive psychology and user interface design. This leads to ad hoc and ineffective approaches to technology development.
The Beauty of Computers: Kay expresses his admiration for computers as one of humanity’s greatest creations.
The Contrast Between Computers and the Middle Ages: Kay draws a parallel between the state of computing today and the state of physics in the Middle Ages, where knowledge was limited and qualifications were superficial.
Douglas Adams and the Babel Fish: Douglas Adams, known for his humorous science fiction works like The Hitchhiker’s Guide to the Galaxy, had a fascination with the idea of a Babel fish, a device that allows individuals to understand different languages. Adams and Alan Kay had a mutual interest in the potential of technology to bridge communication barriers.
Adams’ Inspiration for the Hitchhiker’s Guide: Adams came up with the concept of the Hitchhiker’s Guide to the Galaxy during a drunken stupor in Cambridge. He woke up in the middle of the night, looked up at the stars, and the phrase “Hitchhiker’s Guide to the Galaxy” popped into his head.
Adams’ Personal Life and Friendship with Alan Kay: Adams and Kay had a close friendship and often stayed at each other’s homes. Adams and his daughter had dinner with Kay and his wife just two weeks before Adams’ sudden death.
Adams’ Tragic Death: Adams died at the age of 49 due to a heart attack. He had been playing basketball and didn’t feel well, but a doctor dismissed his symptoms. The next day, he was found dead.
Marshall McLuhan’s Quote on Reality: McLuhan said that most people think they live in reality, but they are actually living in their own version of reality.
01:09:31 Uncovering the Construction of Reality through Art, Humor, and Discovery
How People are Conditioned by their Beliefs: People are unaware that their actions and beliefs are influenced by their perception of the world. Buddhism emphasizes the distinction between efficiency and reality, highlighting the importance of recognizing the present as a construction rather than an absolute truth.
The Rearview Mirror Syndrome: McLuhan’s observation that people are “driving faster and faster into the future, but steering only by looking in the rearview mirror” illustrates the tendency to rely on past experiences and assumptions to shape the present and future.
Artists’ Ability to See the Present as a Construction: Great artists can perceive the present as a construction, allowing them to express their reactions to what is actually happening through their art. Their pain and sensitivity to reality inspire them to create art that reveals the constructed nature of the present.
Ideas, Jokes, and Discoveries as Escapes from Context: Ideas are not incremental; they represent escapes from the current context and offer new possibilities. Jokes, scientific discoveries, and art all share the common element of revealing a different context, triggering emotional reactions like laughter (ha-ha), understanding (ah-ha), and awe (ah-ha).
Humor as a Tool for Communication: Douglas Adams believed in using humor to communicate effectively. Even in his polemical writings, such as “The Last Chance to See,” he employed humor to engage readers and convey his message.
Kurt Vonnegut’s Writing as a Response to Trauma: Vonnegut’s experiences as a prisoner of war during the firebombing of Dresden deeply affected him. His books reflect his attempts to grapple with the horrors he witnessed and the destructive nature of war.
Questioning the Use of Computers: Despite the advancements in computing, Alan Kay expresses concern about the ways in which computers are being used. He suggests that we may not be utilizing them in the most beneficial or meaningful manner.
Environmental Concerns and Technology: There are severe environmental problems that require planning and responsible resource usage. Positive news stories highlight innovations like self-stabilizing spoons for individuals with Parkinson’s disease, demonstrating the potential for technology to address challenges.
Biology, Destiny, and Education: Biology is not destiny, and humans have the ability to shape their destiny through education and technology. Engelbart’s dedication to improving humanity led him to envision the computer as a tool for collaboration and coordination.
Impact of Computers on Society: The ideals of the 1960s, including Engelbart’s vision, have come to fruition in the scientific and engineering communities. Computers have transformed science and engineering, enabling complex simulations, modeling, and engineering feats that were previously impossible.
Engineering Advancements: The Tacoma Narrows Bridge collapse highlighted the need for advanced engineering techniques. Computers have revolutionized engineering, leading to safer and more efficient structures.
Conclusion: The presentation concludes with a thank you to the audience and an acknowledgment of a dinner party the speaker must attend.
Abstract
Exploring the Evolution of Computing: Insights from Alan Kay, Joe Armstrong, and Beyond
Introduction
In the rapidly evolving world of computing, understanding the past is crucial to navigating the future. This article delves into the insights of prominent figures like Alan Kay and Joe Armstrong, exploring the development of programming languages, the impact of computing on society, and the ongoing challenges faced by the field. The article, adhering to the inverted pyramid style, will first present the most significant points, followed by detailed discussions and background information.
The Significance of Historical Context in Computing
Computing, often perceived through a pop culture lens, tends to overlook its rich historical context. This oversight hinders a comprehensive understanding of the field’s evolution. Alan Kay’s journey into computing, sparked by his encounter with the University of Utah and the Sketchpad thesis, illustrates the serendipitous nature of discovery in this domain. Similarly, Bob Barton’s emphasis on shared excitement in discovery highlights the collaborative nature of innovation in computing.
The Birth of Modern Computing Concepts
Ivan Sutherland’s Sketchpad, a pioneering project from 1963, introduced interactive computer graphics, modern user interfaces, and foundational concepts like masters and instances. Following this, Simula emerged as the first object-oriented programming language, influencing subsequent languages and shaping modern computing paradigms.
Alan Kay’s Derivative Ideas and Inspirations
Early Influences on Object-Oriented Programming:
As a graduate student, Alan Kay encountered Sketchpad, an interactive computer graphics system, and Simula, an early object-oriented programming language. Sketchpad’s relational constraint-based programming impressed Kay, while Simula’s concept of classes and instances intrigued him.
Inspiration from Biology and Computing:
Kay’s background in molecular biology and pure math influenced his thinking about objects as independent entities in process, similar to cells. Time-shared virtual machine processes and the ARPANET’s interconnected computers reinforced the concept of nodes communicating over a bus.
Understanding Computational Limits:
Kay realized the futility of going lower than a computer in terms of data structures or procedures. The overhead of processes, especially in Unix, limited the feasibility of simulating even simple concepts like the number three.
Scaling and Messaging:
Inspired by biological systems, Kay recognized the need for scaling beyond the traditional gear-like meshing of procedure calls. Messaging emerged as a suitable communication mechanism for large-scale distributed systems like the internet.
Common DNA in Tissues:
Kay observed that the different tissues in the human body share the same DNA, analogous to a class object in object-oriented programming.
Moore’s Law and the IMP:
Gordon Moore’s 1965 paper on Electronics, introducing Moore’s Law, is a notable concept to consider. Irons’ work in 1970 on the IMP and his focus on developing languages where procedural headers served as the grammar syntax for procedures are also significant. Irons’ invention of the syntax-directed compiler allowed programmers to choose between standard methods or extending the language when writing procedures and enabled the addition of new control structures.
Alan Kay’s Intellectual Journey and Key Innovations
Early Influences on Alan Kay’s Thinking:
Alan Kay’s interest in vector spaces in mathematics led him to consider the power of emphasizing similarities over differences to derive generic principles. Kay’s encounter with Marvin Minsky’s book on old-style computing, particularly the chapter on Girdle, introduced him to Lisp and sparked his fascination with its elegance.
Common Sense Interfaces and Relational Advising:
Kay recognized the need for common sense interfaces to make computing accessible to everyone. He saw relational advising as a promising approach to building systems that could reason and learn from new knowledge.
McCarthy’s Work on Situations, Actions, and Causal Laws:
McCarthy’s paper on situations, actions, and causal laws introduced the idea of labeled states, where each fact is associated with a timestamp. This concept enables purely functional means of advancing from one state to another, avoiding the need for monads or other complex mechanisms.
Dynamic Meanings and Pattern Matching:
Kay emphasized the importance of dynamic meanings, which can be negotiated, rather than static meanings in programming. He highlighted the significance of pattern matching and transitions in making things happen.
NGVI and Comet: Early Examples of Pattern Matching:
NGVI and Comet were early systems that used pattern matching for natural language parsing. These systems demonstrated the power of pattern matching and programmable grammars.
The Dynabook Concept:
Alan Kay’s vision of a personal computer with a tablet, windows, and an object-oriented operating system, inspired by Seymour Papert’s work with children and the desire to break free from desk-bound computing, became a reality in 1998, thanks to Moore’s Law.
Challenges in Operating System Design:
The limited memory and computational power of early computers posed challenges in operating system design. The need for a complete Macintosh-like interface with only 64k bytes for computation and the limitations of Smalltalk 72 compared to modern languages like Erlang and actor languages are notable examples.
Language Evolution and Design:
The constant need for language expressiveness and performance improvements, the challenge of making a good language run fast enough for general use, and the role of assembly code as the foundation for future languages are key factors in language evolution and design.
Programming Languages and Their Impact:
Sketchpad’s revolutionary approach to programming based on requirements rather than coding, the influence of high-level languages like Lisp, Fortran, and Simula, the inspiration of Simula’s extension of ALGOL in the development of C++, and the significance of Smalltalk, Planner, Actors, Prolog, and Linda in the programming landscape are noteworthy.
Joe Armstrong and Alan Kay’s Unconventional Conversation at Strange Loop
Interview Misnomer:
Joe Armstrong clarifies that the discussion with Alan Kay at Strange Loop was more of a “conversation” rather than an “interview,” emphasizing a desire for a more natural and engaging exchange of ideas.
Smalltalk and Prolog:
Armstrong describes his initial struggles with Smalltalk’s class structure and his subsequent discovery of Prolog, which sparked his interest in message-passing object models.
CSP, Actors, and Meta 2:
Armstrong’s exploration of CSP (Communicating Sequential Processes) and his encounter with Carl Hewitt’s concept of actors led him to realize that he and Hewitt shared similar ideas. He mentions Meta 2 and Ometa as topics he intended to discuss but ultimately decides to save for later.
Inspiration from Strange Loop:
Armstrong explains his motivation for wanting to have a conversation with Alan Kay at Strange Loop, citing the unique atmosphere of the conference and the potential for a large audience.
Jules Holland and Elton John:
Armstrong draws inspiration from an interview between Jules Holland and Elton John, emphasizing the value of asking insightful questions that lead to meaningful conversations.
Balthasar Chrastien and Aphorisms:
Armstrong compares Alan Kay to Balthasar Chrastien, a 17th-century Jesuit monk known for his mastery of aphorisms. He highlights the power of short, pithy quotes in capturing the essence of an idea.
Alan Kay’s Paragraph and Page Style:
Kay contrasts his preference for paragraphs and pages over short quotes, acknowledging the challenges of compressed communication. He recalls his experiences with Xerox executives and the need to adopt slogans to convey complex concepts effectively.
“The Best Way to Predict the Future is to Invent It”:
Kay shares his famous quote, “The best way to predict the future is to invent it,” which he used to challenge Xerox’s focus on trends and emphasize the importance of innovation.
“If You Don’t Fail at Least 90% of the Time, You’re Not Aiming High Enough”:
Armstrong introduces another memorable quote, “If you don’t fail at least 90% of the time, you’re not aiming high enough,” and discusses its significance in encouraging ambitious goals.
Slogans, Gestures, and Theater:
Kay emphasizes the theatrical nature of slogans, comparing them to gestures and fiction. He highlights the importance of capturing attention and creating memorable phrases that resonate with audiences.
Neil Postman and McLuhan’s Zen Koans:
Kay recounts his friendship with Neil Postman, author of “Amusing Ourselves to Death” and “The Disappearance of Childhood.” He shares an anecdote about Marshall McLuhan’s stage presence and his use of paradoxical statements to stimulate thought and attention.
Overcoming Mediocrity, Failing Boldly, and Transforming Vision into Reality:
Refusing Mediocrity:
Alan Kay criticizes the notion of accepting a 90% success rate, emphasizing that it lacks impact and fails to drive progress.
Embracing Failure:
Joe Armstrong suggests shifting the focus from guaranteed success to embracing projects that are likely to fail, encouraging experimentation and innovation.
Resistance to Change:
Armstrong introduces the aphorism “everybody loves change except for the change part,” highlighting the common human tendency to resist actual change despite acknowledging its necessity.
Provocative Titles:
Armstrong’s talk title, “The Computer Revolution Hasn’t Happened,” challenges the prevailing belief that the computer revolution has already occurred, sparking discussion and reflection.
Every Object Should Have a URL:
Kay emphasizes the transformative potential of assigning URLs to objects, allowing them to be addressable and introspective, facilitating communication and interoperability.
Learning from Biology:
Kay acknowledges the inspiration he draws from biology, recognizing the power of natural systems and applying those principles to technology.
Enthusiastic Response vs. Lack of Action:
Kay expresses surprise and disappointment at the lack of enthusiastic response to his proposal for making every ailing process addressable and introspective, despite its potential to simplify implementation.
Personal Computing and the Internet:
Kay reveals the precarious history of personal computing and the internet, highlighting the potential impact of the Mansfield Amendment on shutting down ARPA and the significance of Taylor’s efforts in establishing Xerox PARC.
Alan Kay and Joe Armstrong on Learning, Scaling, and the Future of Computing:
Introduction:
In this discussion, Alan Kay and Joe Armstrong share their perspectives on learning, scaling, and the future of computing. Kay emphasizes the importance of learning beyond traditional programming courses and the need for computer scientists to think like scientists rather than engineers. Armstrong stresses the significance of considering scaling aspects early on in problem-solving and the challenges of dealing with vast numbers of entities in computing.
Beyond Traditional Programming Courses:
Alan Kay criticizes the focus on algorithms and data structures in introductory programming courses, arguing that these ideas do not scale well. He encourages students to explore broader concepts and theories that can handle more complex systems.
Thinking Like Scientists:
Joe Armstrong advocates for a more scientific approach to computer science, urging practitioners to think in terms of large numbers and dimensions. He suggests considering the scale of the universe and using that as a reference point for designing systems that can handle vast quantities of data and entities.
Scaling and Problem-Solving:
Kay emphasizes the need to consider scaling aspects early on in problem-solving. He warns against starting with a small-scale solution and trying to scale it up, as this often leads to problems. Instead, he suggests starting with a large-scale perspective and scaling down if necessary.
The Importance of Learning:
Kay challenges university students to be proactive in their learning, urging them to explore beyond their coursework and seek out new knowledge. He highlights the revolutionary ideas presented in Ivan Sutherland’s Sketchpad thesis as an example of the potential for groundbreaking innovations in the field.
Unsolved Problems in Computing and the Dangers of “Inverse Vandalism”:
Major Unsolved Problems in Computing:
Joe Armstrong emphasizes the need to address unsolved problems in computing rather than focusing on easily solvable issues.
Alan Kay suggests identifying the top 50 beliefs in computing and negating them to gain new perspectives.
The Problem of Big Data:
Alan Kay criticizes the obsession with big data and argues that the focus should be on “big meaning” instead.
He warns against confusing the means to an end (big data) as the end itself.
The Importance of Safe State Advancement:
Alan Kay highlights the significance of being able to advance state safely and perfectly in computing systems.
He advocates for organizing systems to achieve the best balance between safety and efficiency.
The Dangers of “Inverse Vandalism”:
Joe Armstrong expresses concern about the practice of creating things simply because they are possible, without considering the need or consequences.
He refers to this as “inverse vandalism” and warns of its unpredictable side effects.
The Perils of the Cloud and History Loss:
Joe Armstrong raises the alarm about the potential loss of history due to the reliance on cloud storage.
He emphasizes the importance of preserving historical data and expresses concern about the long-term consequences of data loss.
Ranking Concerns and Addressing the Most Dangerous Issues:
Joe Armstrong proposes ranking the identified concerns in order of severity to prioritize addressing the most dangerous ones first.
He suggests inviting experts like Vint Cerf to discuss the issue of history loss and attention hijacking.
The Significance of Francis Bacon’s “Four Idols”:
Alan Kay highlights the relevance of Francis Bacon’s “Four Idols” from his book “Novum Organum” in understanding the foundations of science.
He emphasizes the need for a social system to debug ideas and the importance of science being grounded in reality rather than abstract symbols.
This updated article enriches our understanding of the history and ongoing evolution of computing, incorporating crucial insights from prominent figures like Alan Kay and Joe Armstrong. It further illuminates the challenges facing the field and emphasizes the significance of continuous learning and innovation in shaping the future of computing.
Alan Kay's vision for personal workstations emphasized powerful tools for creativity and learning, leading to milestones like Smalltalk and the graphical user interface. His Dynabook concept aimed to provide information access anywhere, inspiring the development of modern portable devices....
Alan Kay, a pioneer in object-oriented programming, emphasized the significance of holistic approaches, creativity, architectural integrity, and continuous innovation in programming. Smalltalk's influence extends beyond syntax and libraries, embodying architectural principles and structural integrity, akin to the construction of the Chartres Cathedral....
Alan Kay critiques modern computer science for emphasizing form over content and calls for a paradigm shift towards innovation and user-centric design. He advocates for a holistic approach to education that fosters creativity, perspective, and epistemological frameworks to drive the future of computing....
Alan Kay emphasized strategic thinking in software engineering with a focus on domain-specific languages, criticized current computing systems, and envisioned dynamic and efficient computing in the future. Kay highlighted the need for strategic thinking in software engineering with a focus on domain-specific languages, criticized current computing systems, and envisioned dynamic...
Alan Kay's revolutionary concepts, such as the Dynabook and Smalltalk, shaped modern computing and inspired future innovations, while his emphasis on open knowledge and transformative teaching fostered creativity and critical thinking in his students. His insights into early computers and programming languages laid the groundwork for modern object-oriented programming and...
Alan Kay, a Turing Award laureate, advocates for a practical, hands-on approach to computer science education, emphasizing simplicity, systems thinking, and a beginner's mindset. He calls for a shift from theoretical rigor to practical problem-solving, preparing students to contribute to the advancement of computing....
Alan Kay emphasized simplicity in computing, and advocated for a transformative approach to education that engages students with immersive and explorative experiences. Kay's insights highlight the need for a new mathematics to describe computing, and the importance of captivating children's interest in the field....