What has become ``simpler''?
Interfaces with humans, especially interfaces that become simpler to reach a broader audience. Underneath each simpler interface, a more complex mechanism is often required.
- Programming language as interface between programmers and machines: from Assembly used by skillful hackers/graduate students to Python used by amateur developers and high-school graduates
- User interface of computers: from command line (keyboard) used by experts to graphical user interface (keyboard+mouse) to touch-based graphical user interface (touchscreen) used by everybody
- Music as a medium between composer (producer) and audience (consumer): from sophisticated Classical to arguably simpler Pop.
- The audience expanded from aristocrats to bourgeoisie to everybody. Popular music, by definition, is music enjoyed by a large audience. It has to be more accessible than the Classical music.
- Technology made it possible for a consumer to enjoy music many more hours a day: need for a lot of ``simpler'' music.
- Representation as interface between human reasoning, communication, and knowledge: complicated representation got replaced by simpler one as the later was invented/adopted. For example, Leibniz and Newton created different notations for Calculus about the same time. English mathematicians for obvious reasons opted for the more clumsy notations by Newton for over one hundre years before switching to the much simpler ones by Leibniz, which arguably distavantaged the English mathematical development. For another example, the Hindu-Arabic numeral system replaced the Roman numeral system in the west, which faciliated the development of western mathematics.
Math, Science and Engineering
- Mathematicians often discover ``simpler'' (more accessible) proofs of important theorems.
- Scientific breakthroughs, e.g., Newton's laws of motion, Maxwell's equation, and Einstein's theory of relativity, often systematize the empirical knowledge available at their time, in a way ``simplify'' our understanding of the universe. At the same time, they often ``predict'' an even more complex universe.
- Algorithmic breakthroughs can reduce the complexity (measured by number of steps) of solving a problem. The resulting ``faster'' algorthms, however, are not necessarily easier to understand (or implement).
- Better design principles managing complexity: Focus of later part of this course
Complexity shifted from one place to another.
- Shifting complexity away from human: high-level programming language, user interface, analog circuit to digital circuit
- Shifting complexity from hardware to software: CISC vs. RISC architecture: RISC architecture allows simpler/more regular hardware but requires more complex compilation (software).
- Shifting complexity from mechanical parts to computational: mechanical parts are expensive, short-lived, imprecise.
- Shifting complexity from a product to its ecosystem: a modern seemingly simpler digital camera requires a much more complex ecosystem to fabircate than its mechanical ancestor.