Imagine a computer harnessing the natural behavior of natural systems and utilizing their behaviors to solve equations.
- Candle Clocks: A candle set to burn a certain amount of hours, with nails pushed into it to fall at certain times when the flame would reach the height of each nail. They provided an effective way to tell time indoors, at night, or on a cloudy day.
Exploring what sort of computing can be done on paper.
A collection of notes on programming languages.
We use software because we have goals to achieve and things to do. The software we use is coded by programmers who have their own goals, sometimes these goals overlap with ours, over time these will diverge. The tools we depend on grow features we don't use or understand, introducing bugs that will prevent us from reaching our goals.
We have the choice of trying to understand the code and fix it, we have the choice of trying another program, and we have the choice of coding the software ourselves. All but the last path mean endless seeking, evaluating and further deviation from our goals.
code it yourself manifesto
- We implement it according to our own goals.
- We make mistakes and learn from them.
- We learn how the tools we depend on need to work.
- We gain a deep understanding of our problem domain.
- We still embrace sharing of ideas and code.
Software freedom is the freedom to run the program as you wish, for any purpose, to study how the program works, and change it, to redistribute copies and your modified versions so you can help others.
The concept that programming is something that you need special education to do is not right. It is something that is promoted by the priesthood.
Chuck Moore, Color Forth
A collection of experimental computing systems.
A VM is a program that acts like a computer. It simulates a CPU along with a few other hardware components, allowing it to perform arithmetic, read and write to memory, and interact with I/O devices, just like a physical computer. Most importantly, it can understand a machine language which you can use to program it. To see examples of this in action, see Orca or Uxn.
Fluidics is the construction of computing systems using fluids.
They employed water or air in plastic channels to implement logic gates; the gates were interconnected by standard, flexible plastic tubing. The advantage was their noise immunity, but their size and physical awkwardness was among their many negatives. A typical four-input AND or OR gate alone was about half the size of a deck of cards.