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.
- 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
Jen came in to see what incredible things the engineers and artists had come up with. Everyone was staring at a television set hooked up to a development box for the Sony Playstation. There, on the screen, against a single-color background, was a black triangle. ~
I have a well-deserved reputation for being something of a gadget freak, and am rarely happier than when spending an entire day programming my computer to perform automatically a task that it would otherwise take me a good ten seconds to do by hand. Ten seconds, I tell myself, is ten seconds. Time is valuable and ten seconds' worth of it is well worth the investment of a day's happy activity working out a way of saving it. — Douglas Adams
Programming is a form of worldmaking, in which the coder defines how that world operates.~
14R11— Learning Forth
14Q11— Learning 6502 Assembly
14O03— Learning C
14H04— Learning Pascal
10W03— Learning Lisp
08J07— Learning Python
07S03— Learning PureData
07C04— Learning Objective-C
06N10— Learning Ruby
05Z03— Learning PHP
00I04— Learning HTML
Incoming: language assembly