π Instadeq Reading List August 2021
Here is a list of content we found interesting this month.
π A Brief History of Human Computer Interaction Technology by Brad Myers
Great list of HCI technologies by Brad A. Myers organized in categories, sorted by year and with references to all of them.
π¦ Brad Myers
π Page: A Brief History of Human Computer Interaction Technology
π ACM Walled Article: A brief history of human-computer interaction technology
Make sure to also check Brad A. Myers' Youtube Channel for great HCI Content
π Design Principles Behind Smalltalk by Dan Ingalls
How many programming languages define themselves this way?
The purpose of the Smalltalk project is to provide computer support for the creative spirit in everyone. Our work flows from a vision that includes a creative individual and the best computing hardware available. We have chosen to concentrate on two principle areas of research: a language of description (programming language) that serves as an interface between the models in the human mind and those in computing hardware, and a language of interaction (user interface) that matches the human communication system to that of the computer.
Glamorous Toolkit vibes here:
Reactive Principle: Every component accessible to the user should be able to present itself in a meaningful way for observation and manipulation.
Interesting observation:
An operating system is a collection of things that don't fit into a language. There shouldn't be one.
π¦ Dan Ingalls
π§βπ¨ End-user computing by Adam Wiggins
Experts want choice; newbies want to be handed an integrated product where good choices have been made for them and they can dive straight into their task.
...
Too much focus on the technology (e.g., programming language) and too little focus on the userβs task.
...
Most laypeople don't care about computers; they care about what they can use a computer for
...
Most people will only care about computer programming when it offers them a clear way to accomplish specific goals that are relevant to their lives.
...
These tools all share the same two golden traits: no-fuss setup, and a programming language and development tools focused on the specific tasks their users want to achieve.
π¦ Adam Wiggins
π End-user computing
π± Collecting my thoughts about notation and user interfaces by Matt Webb
So Lynchβs five primitives comprise a notation.
Itβs composable. A small number of simple elements can be combined, according to their own grammar, for more complex descriptions. Thereβs no cap on complexity; this isnβt paint by numbers. The city map can be infinitely large.
Compositions are shareable. And whatβs more, theyβre degradable: a partial map still functions as a map; one re-drawn from memory on a whiteboard still carries the gist. So shareable, and pragmatically shareable.
Not only are maps in this notation functional for communication, but itβs possible to look at a sketched city map and deconstruct it into its primitive elements (without knowing Lynchβs system) and see how to use those elements to extend or correct the map, or create a whole new one. So the notation is learnable.
π¦ Matt Webb
π Collecting my thoughts about notation and user interfaces
π§° Computers are so easy that we've forgotten how to create
Not all jobs will require coding, at least not yet. Rather, what we are going to need β as a society β is a certain amount of computational thinking in this increasingly technological world.
And in this way, computer programming is indeed the future. Programming can teach you a structured way of thinking, but it can also provide a way of recognising what is possible in the technological realm.
...
Why should we have to rely on a priestly class of experts who are the sole inheritors of a permission to play?
...
My dad never intended to sell his games; they were for our family alone. He was a computer user, but he was also a creator.
π Get under the hood