The Zen of Programming
Posted by Trixter on April 24, 2006
I ran across this quote from Peter Jennings (the programmer, not the newscaster) and thought it was worth republishing. It almost completely expresses my love for coding:
I love programming. It is almost impossible to explain the joy of writing software to someone who has not experienced it.
First and foremost, it is an act of creation. From a simple thought, and the arrangement of a few words and symbols, a reality is created that did not exist before.
No other activity can keep you in the moment the way that writing software can. At each step, one hundred percent of your concentration is applied to the solving of the current problem. Time disappears.
A well written program is a work of art. From conception to final presentation, the activity is that of an artist – the embodiment of a dream world expressed as an interactive experience for the user.
Peter was the author of the first commercial computer game, MicroChess, for the KIM-1 (yes, I'd never heard of it either until today). It's a chess program that runs in 1K of ram (variables and code).
Rod Pemberton said
Yes, that’s true. My most recent “in the moment” experience was with a program called install.asm for flopper. ;) It doesn’t work with my PC. I found that writing the following to grab my pre-DOS, BIOS vector table was easier…
; Rod Pemberton 06/06/2006 Public Domain
; alternative to Flopper’s Install.asm
; http://www.oldskool.org/pc/flopper
;
; boot into DOS
; fasm getvec.asm
; partcopy getvec.bin 0 200 -f0
; insert formatted disk into A:
; boot from A:
; upon reboot, eject disk in A:
; boot into DOS
; partcopy -f0 1400 400 vectable.dat
;
; fasm & partcopy can be downloaded together as
; 512devos-001.zip
; http://sourceforge.net/projects/bootsectoros
use16
org 0x7c00
cli
xor ax,ax
mov ss,ax
mov sp,0x7c00
xor ax,ax
mov es,ax
mov bx,ax
mov dx,ax
mov ax,0x0302
mov cx,0x000b
int 13h
jmp 0xffff:0x0000
sti
times 510-($-$$) db 0
dw 0xaa55
ITjobfeed said
Zen programming is all about internalising the structures
cheapsk8 said
Rod Pemberton’s getvec.asm source code above worked on my PC with FreeDOS. I could not get Flopper’s Install program to work and his alternative did the trick. Thanks!
The only (small) error is you have to insert the formatted disk into A: before you execute ‘partcopy getvec.bin 0 200 -f0’ at the DOS command prompt. Then, after you boot from A: and getvec.bin does it’s thing and the system reboots into DOS, you have to reinsert the disk back into A: in order to execute ‘partcopy -f0 1400 400 vectable.dat’ at the command prompt.