First a disclaimer: What I'm writing here now is related to events that happened a long time ago, at a period of time when it was relatively safe to do it, the worse that could happen would have been the expulsion from the school. If you try to do this kind of thing now, you may very well do some jail time and have heavy fines to pay as well.
Self made manI'm one of these people who learnt by themselves most of what they knew about programming before working as a professional programmer. Sure I learnt a lot after I started work, but before that I did university mostly to get a diploma: Except methodology, and formal methods, I can't say I learnt much.
When you learn by yourself, you don't have a clear plan to follow: You pick-up information where you can, you explore things that seem interesting, you investigate domains that are not covered by normal computer science studies like hacking and cracking.
Personally, I did not invest much time in cracking, and except a small copy program I wrote for the Oric Atmos and tracing the protection of some Atari ST demos, I can't say I've done any cracking. On the other hand, I did a number of things that today would probably have gotten me in serious harm. That's what I'm about to confess here.
Longer weekendsI guess my first misdemeanour with consequences for other people was in high school. The results of what I did probably can be classed as hacking, but the way I did it was pretty lame, and really did not involve any particular talent. Let's say I exploited a (lame) bug in the computer system we had.
The year was 1988, and I was wasting my time in high school learning accounting. On the saturday mornings from 10 to 12 we had computer science.
Well, kind of: They called computer science the fact of having a teacher who learned BASIC during his summer holidays teach us BASIC on Thomson MO51 computers.
Oh wait, that was not just Thomson MO5 computers, that was Thomson MO5 computers connected to a Nanoréseau2. Networked environment! Yeah, now that's interesting!
The thing is, the teacher had absolutely no clue, had no idea what the network could be used for, we didn't have access to any disk or tape device, so basically all we had to do was type in BASIC programs and then switch off the machines. Great motivation huh?
I had a real computer at home3, so the prospect of doing BASIC on a Mo5 was really a waste of my time. The solution was simple: Go home earlier and do real stuff myself.
That's the part I'm not very proud of: I found out that you could crash the server machine from the client machines, just by poking the wrong value at the wrong location. Something like this program would crash it:
10 FOR I=0 TO 65535:POKE I,RND(1)*255:NEXT I:GOTO 10
The interesting thing is that the crash of the server machine would also make every single connected client freeze, and it would take about 45 minutes to one hour to reboot the server.
So basically what I was doing was to be wait until after the 11am break, wait 5 minutes, and then bring down the system. A few minutes later we were told we could go home because the system would not be restarted before the end of the lesson.
The sad thing is that there was actually some real students in the building, working on their BTS Informatique de gestion4, and they could not work on saturday mornings because I crashed the system.
So, if you were doing your studies at the Lycée Chevrollier in Angers, in 1988 and suffered from the computer crashes, please accept my apologies for your suffering (and if you are one of my classmates who hated computer science and were glad to have a longer weekend, you're welcome).
That's the end for today, part two will be about root password access, processing power sharing, and hiding software on public machines.
1. The French equivalent of the BBC micro computers, mostly used in schools. They were expensive and most software was written in BASIC due to the lack of programmers knowing the 6809 processor.↩
2. A client-server network system designed by the University of Lille in 1982, able to support up to 31 slave machines.↩
3. An Atari 520 ST, with two floppy drive, 2.5 megs of memory, compiled GFA Basic if I wanted to do basic, and 68000 assemblers if I wanted to code in assembler↩
4. Associates Degree in Computing Applied To Business↩