NEW: For a prettier blog interface, see the Wordpress version!
| A1 | X | Draft ideas for a LedgerMode {{Tasks:113}} (LedgerMode) |
| A2 | X | Come up with a summary for CS21B {{Tasks:118}} (TeachingWork) |
| A3 | X | Prepare the CS21A website {{Tasks:105}} (TeachingWork) |
| A4 | X | Prepare the CS161 website {{Tasks:48}} (TeachingWork) |
| A5 | X | Prepare the CS21B website (TeachingWork) |
| A6 | X | Come up with a summary for CS161 {{Tasks:119}} (TeachingWork) |
| A7 | X | Come up with a summary for CS21A {{Tasks:117}} (TeachingWork) |
| A8 | X | Get emacs wiki pages to open in another buffer {{Tasks:116}} (PlannerModeCompletedTasks) |
| A9 | X | Remove angle brackets from Gnus links {{Tasks:114}} (PlannerModeCompletedTasks) |
| A10 | X | Repackage {{Tasks:108}} (../../notebook/emacs/planner/planner.el) |
12. LedgerMode : 23:25
| Date | {{Finance:GUID}} | Transaction name / notes | Account | Amount |
I want to be able to quickly cycle or complete accounts, and I think I'll be able to do that with hippie-expand or some way to choose accounts easily.
- I want to be able to see a summary of the balances of accounts. - I want to be able to view income/expense reports aggregated by month. - I want to be able to see expense reports per month. - I want to allow split transactions.
11. Text messaging for the blind : 23:20
accessible computing, deals with text abbreviations
10. Whew! Just reviewed the history of UNIX : 17:38
9. Story about pipes for CS161 : 17:23
Although stymied, McIlroy didn't drop the idea. "And over a period from 1970 to 1972, I'd from time to time say, 'How about making something like this?', and I'd put up another proposal, another proposal, another proposal. And one day I came up with a syntax for the shell that went along with the piping, and Ken said, 'I'm going to do it!'""He was tired of hearing this stuff," McIlroy explained. "He didn't do exactly what I had proposed for the pipe system call. He invented a slightly better one that finally got changed once more to what we have today. He did use my clumsy syntax."
"Thompson saw that file arguments weren't going to fit with this scheme of things and he went in and changed all those programs in the same night. I don't know how...and the next morning we had this orgy of one-liners." mcIlroy "He put pipes into UNIX, he put this notation into shell, all in one night," McElroy said in wonder.
8. Story ideas for CS161 : 17:23
- "And so, Ken Thompson started mailing magnetic tapes with the Unix source code and utilities to his friends, labeling them simply "Love, ken". And so, in the early 1970's, a culture of Unix hackers sprang up, working with the Bell Labs source code."
- "Around the mid 1970s, a professor by the name of John Lions at the University of New South Wales in Australia decided to use Unix to teach operating system architecture."
- "If you had taken Lions' class at the time, you would have bought two books (one red and one orange), they were the Source Code and Commentary on UNIX Level 6. The class became quite popular, and soon Bell Labs took notice. " Most photocopied books in computer history.
"Because we couldn't legally discuss the book in the University's operating systems class, several of us would meet at night in an empty classroom to discuss the book. It was the only time in my life that I was an active member of an underground." --Peter B. Reintjes, on the back of the 1996 reprinting of Lions' Commentary
Ooooh. anarchy. rebel spirit.
"The whole Unix culture was based upon sending C source code from person to person, adding features and fixing bugs as time went on."
UCB - virtual memory - networking - wildly different
- ATT Unix rights bounced around a lot and are now with SCO
- hideous tangle of lawsuits: BSD wars
MIT - ITS: Incompatible Timesharing System, optimized like heck, but not portable - death of LISP machine due to corporate interests - RMS, Unix way, GNU GPL, 1983: tools
Helsinki - "1991: GNU was complete OS, but lacked kernel. BSD locked in lawsuits" - Linus Torvalds! sick of inefficiencies of Tanenbaum's Minix, can't connect to uni's Unices (Linus and Lars, to learn C)
Sources: - The Ritchie paper - http://www.crackmonkey.org/unix.html - http://www.bell-labs.com/history/unix/firstport.html (incl image)
7. History from Dennis Ritchie for CS161 : 16:51
What we wanted to preserve was not just a good environment in which to do programming, but a system around which a fellowship could form. We knew from experience that the essence of communal computing, as supplied by remote-access, time-shared machines, is not just to type programs into a terminal instead of a keypunch, but to encourage close communication.— Dennis Ritchie
So it really did begin with Space Travel... then a file system (which had been previously designed with chalk), then user-level utilities (because a filesystem is wasted if you don't have stuff to do with it), then a shell, then an assembler.
How the old shell worked:
- The shell closed all its open files, then opened the terminal special file for standard input and output (file descriptors 0 and 1). - It read a command line from the terminal. - It linked to the file specifying the command, opened the file, and removed the link. Then it copied a small bootstrap program to the top of memory and jumped to it; this bootstrap program read in the file over the shell code, then jumped to the first location of the command (in effect an exec). - The command did its work, then terminated by calling exit. The exit call caused the system to read in a fresh copy of the shell over the terminated command, then to jump to its start (and thus in effect to go to step 1).
6. Recognizing coding systems in Emacs : 16:49
5. Tidbit for CS161 : 16:41
4. Funny UNIX history : 16:39
3. Jody Klymak's planner-mode stuff : 11:28
E-Mail from Jody Klymak
2. The Object of Java : 10:55
The outline looks like it makes sense as part of a syllabus.
1. Running word count in Emacs buffers : 10:51
I'd love to hear about any questions, comments, suggestions or links that you might have. Your comments will not be posted on this website immediately, but will be e-mailed to me first. You can use this form to get in touch with me, or e-mail me at sacha@sachachua.com .