Oldskooler Ramblings

the unlikely child born of the home computer wars

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).

3 Responses to “The Zen of Programming”

  1. 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

    org 0x7c00

    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

    times 510-($-$$) db 0
    dw 0xaa55

  2. ITjobfeed said

    Zen programming is all about internalising the structures

  3. 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.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: