Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!amdcad!sun!pitstop!sundc!seismo!uunet!mcvax!hafro!krafla!kopasker!ragnar From: ragnar@kopasker.is (G. Ragnar Gudmundsson) Newsgroups: comp.sys.next Subject: Development Keywords: Developers info package /source code Message-ID: <67@kopasker.is> Date: 9 Feb 89 14:43:25 GMT Organization: Primary School of Kopasker, Iceland Lines: 83 Dear NeXT, Could someone at NeXT please send me the "Developers info package" Thank you. And concerning source code availability. I have been working with computers for a few years. My first experience was as an operator of an IBM S/34. I was then taught to "program" the thing, which involved writing code in RPG 2, using the command language and some pretty powerful utilities e.g. for file sorting and data entry. It was a small microcosmos for manipulating files of records of fields. We had good documentation and all told it was not bad for what we were doing. Occasional bugs had usually been encountered by someone else before and the next release of the software had it fixed. I would like to focus on two relevant points. 1. We had no source code access. The documentation was very good and we weren't really doing anything "new", just shuffling records. So we did not need source code. 2. The people at IBM were constantly improving the system, adding new features and fixing bugs. There is NEVER a final version of system software. My next project was absolutely different. I adapted the Acorn/BBC computer for use with the national languages of Iceland, Denmark, Norway and Sweden. This was a totally different story. Here I had to dig into the operating system and (with help) managed to change the keyboard layout, screen font and printer driver. Due to lack of documentation for the parts of the OS that I was working on, I actually had to go to Acorn in Cambridge, England. The Acorn OS for the BBC computer is very brilliant. There are hooks in the OS to intercept almost anything and you can direct it to access extra facilities in auxiliary ROMs. I really did not have to do to much work. I had to: Get access to the documentation (what can I do and how should I do it), Get relevant source code (rewrite the keyboard driver), Get help from someone who knew 6502 assembly language (I got a lot of help with the coding). So what happens? There is a minor problem in then OS, one that someone not doing an Icelandic keyboard driver will never notice. I look at the source and there is a comment "If we can spare a few bytes in the ROM and some cycles in the interrupt we will do this differently". They never did and over the years it has cost us months of work to write around. To restate the relevant points as in the previous example. 1. At the time Acorn had not released documentation on the parts of the OS that I was working on. I was doing something that had not been done on their machine before. Access to the source code was thus essential to the completion of this project. 2. Operating systems should constantly be improved by adding new features and removing bugs. There will always be developers, who for some obscure reason run into bugs or are doing things that are incompatible with the way your operating system is written. They must be able to modify your system to test the validity of potential fixes. THEY are better off fixing your code than having to write around it. It is very much a question of productivity. If you supply source code, then the users of your system that are developing truly innovative applications will excel. They will be able to build on the advanced technology of your system. They will be able to compete favorably with developers doing similar work on other systems. Some developers are constantly trying to optimize the use of human and computer resources. They are debugging systems at various levels. I would like to say that for these people management problems are just like any other bugs. So they ask you to supply the source code of your system. If you don't, they will have to revaluate their options. You are running a race. If developers can do new things in a more productive way on your system, they will help you win that race. Gudmundur Ragnar Gudmundsson P.O.Box 156 121 Reykjavik Iceland ragnar@kopasker.is