On Fri, Feb 20, 2015 at 7:22 AM, Shiresoft <ggs at shiresoft.com> wrote:
On Feb 19, 2015, at 11:35 PM, Chuck Guzis
<cclist at sydex.com> wrote:
On 02/19/2015 08:23 PM, Guy Sotomayor wrote:
Nope. It was (and still is) how I write code (sit down and compose at
the keyboard). One of my old bosses at IBM once said "Yea, Guy just
waves his hands over the keyboard and programs come out".
That would have been impossible in my case, unless I had the most
prodigious
eidetic memory in history.
Writing code almost always involved using an on-disk or -tape source
code library.
Even if it was new code, there were significant advantages
to creating a library then modifying it as one progressed.
One would typically work with a bound listing or listings and work out
the control
system directives to update the existing code base. Remember,
this was in the day of batch processing with almost no access to
terminals. Everything happened on the keypunch.
So for one to remember all of the correction set IDs and sequence
numbers for a
group of programs or system programs would be more than
impressive--it'd probably merit a vivisection.
;-)
I never said that I didn't / don't use references while I write code.
It's just that I don't write my code down first. Of course most of what I
do is new (from scratch) rather than modifying existing code.
When I first started at IBM because build time for our software was about
a week, we'd fix bugs and such with patches. Folks in the lab would stop
looking up the instruction encodings and would just ask me...I could do the
assembly in my head...I'm sorely out of practice now. :-/
My first (paid) programming job was in 6800 assembler, using the Motorola
EXORCISER system. It took hours (as in a major part of a day, longer than
the work day) to reassemble the entire code base, so we would patch the
program in the PROM programmer. We would, of course, back port the changes
in symbolic assembler to the source, and every few days just take the
downtime hit to rebuild the code base. Keep in mind that this was natively
hosted on a 6800 system.
Another interesting tidbit: its simple filesystem did not segment files and
reuse blocks, so you had to purge old versions of files, preferably before
a dozen or so files were lined up after it. In that case, it would tie up
the system for way too long while an old file was purged and all the new
files were packed into the recovered space, block by block. It was barely
a step above magtape.
One other note: there was a bug in certain mask sets that required a NOP
before you could set the interrupt mask. Since the ENTIRE memory/IO space
was 64k bytes, every byte was sacred, every byte was great, and if a byte
was wasted?.
--
Ian S. King, MSIS, MSCS
Ph.D. Candidate
The Information School
University of Washington
There is an old Vulcan saying: "Only Nixon could go to China."