Just a couple of days ago, I stumbled across some old CD-ROM, written in 1998-1999, with data from 1997-1999, judging by the timestamps. It was a most amazing trip down memory lane, which I am going to share parts of.
When I was 8-9, my dream was to build a storage device/hard drive able to write bits at an atomic level, for maximum density. From the glimpses of memory and from the retrieved data, the storage surface was built from a crystal – so that atoms would be well-aligned geometrically and “addressable” with either a strong laser beam (used for writing, which would move them out of place, creating a hole in the crystal network) or a weak laser beam (used for reading, which would just bounce off atoms without displacing them). This dream was inspired by my not having enough storage space on the hard drive from my first computer, by what I read in magazines (such as PC Magazin), by what I saw in sci-fi movies and by my father’s stories about computers and physics.
My first computer had 800+ KB of RAM, 40 MB hard drive and a x486 DX2 processor (which back then was totally kick-ass, because it had a built-in math co-processor, which meant that games would move really, really fast – 3-5 frames/second). No CD-ROM, no modem, no Internet. Just a 1.44MB floppy drive. Anyways …
For the purpose of building this super-atomic-level hard-drive, with help from my father, I created a few FORTRAN programs that would calculate the angles of the beams and impulse of the photos, so that they move an object with roughly atomic mass. I have no doubt that the science was wrong (such as assuming atoms and photons are billiards balls instead of fuzzy balls of quantum craziness), but it was an opportunity to be exposed to basic concepts of trigonometry, mechanics, optics and programming.
The version of FORTRAN for which this was written is somehow older than FORTRAN 95. So I up to now was unable to re-run them my machine, but fortunately I had save some print-outs.
UN FOTON VA MISCA ATOMUL LA O DISTANTA DE= .88076432815183080000E-21
NUMARUL DE FOTONI NECESARI ESTE= .10111870428622260000E+03
LUNGIMEA DE UNDA ESTE= 768.3000000000
MASA ATOMULUI ESTE= .4662796882E-26
DISTANTA LA CARE ATOMUL SA SE MISTE= .000033686941280
DURATA MISCARII ATOMULUI= .000000000004762
NUMARUL FOTONILOR NECESARI ESTE= .232062519291231800000E+26
LUNGIMEA DE UNDA ESTE= 768.300000000
PUTEREA TOTALA NECESARA ESTE= .0060000000
I also found a FORTRAN program written by my father (circa 1994), the purpose of which was to compute any power of two in any numeric base. I’m still not sure exactly how it works, but you can find the code below. The reason I kept this probably has to do with the fact that it fascinated me how a machine can be instructed to perform a task inaccessible to the human mind (or at least to my mind back then).
I also found a file (dated August 1997) describing the technical characteristics of the hard-drive. They’re written in Romanian (with old-fashion font-based diacritics; the font was TimeRomanR), but I guess you can still get the point. 12,000 TB capacity – based on the number of atoms I estimated on a 3 square-centimeter surface.
I cannot know for sure what sort of crystal I imagined I’d use, but I imagine it was something based on either carbon (graphite?) or silicon (quartz?), based on the pictures I found saved (December 1997) from Encyclopedia Britannica.
I didn’t want to stop with the hardware. I wanted to also to the software to go with it! A whole operating system: called Bocse Command Crystal. Now this seems to have been a mix of Norton Commander, Windows 3.1, my imagining the fact the system would use a crystal-based storage device and a huge sense of ego pushing me to put my name on it (I mean, if Norton did it, why wouldn’t I?). Considering I had no idea where to even start, I started from the mockups, which – you guessed it – I made in Windows 3.1/3.11 Paint.
You can admire the prehistoric relic of wireframing below (1997-1998).
My father went to a Visual Basic 4 training in 1998. And when he returned, he showed me how to use it. Of course, I had no concept of loops and conditionals, but I got the idea that when an event occurs on an object you can write some instructions (sub-routine) to change the attributes of that object or other objects.
So I started “implementing” the interfaces I had imagined for BCC with VB4’s drag&drop functionality. This contained very little code I actually wrote myself, but I did found a few snippets (February 1998)
Also, in 1998, I discovered my first Internet cafe. Other than looking up articles on hard drive vendors (Seagate, Maxtor, Western Digital), random geeky stuff (physics, maths) and random non-geeky stuff (MTV, ProTV and televisions seemed to be amongst the saved pages), I also wrote emails to them, very naturally demanding to be put in contact with their research and development departments. For instance, I found a file from September 1998 with the following contacts:
(for Quantum, WDC, Seagatea, Maxtor, Fujitsu)
My name is Bocse Bogdan. I want to contact the research laboratory from your company(by
phone, e-mail, mail or other kind of comunication).
It’s very important for me.
Please contact me at <email@example.com> on the e-mail. +44 (52) 313637 by phone.
My home address is 53, Decebal Street, Drobeta-Turnu-Severin, Romania, EUROPE.
Please, contact me soon.
I also found some more “realistic” message exchanges, regarding trigonometry
>My name is Bocse Bogdan. My e-mail is <firstname.lastname@example.org>.
>If I know sin, cos or tan how do I calculate the ungle?
>Please, answer me soon!
You use the inverse trig functions:
The inveres trig functions have the following useful property:
arcsin( sin(theta) ) = theta
arccos( cos(theta) ) = theta
arctan( tan(theta) ) = theta
Therefore, if you know the sin, cos, or tan of an angle, you just take the
corresponding inverse trig function of it to get the original angle.
sin(theta) = 0.7071
theta = arcsin(sin(theta)) = arcsin(0.7071)
A scientific calculator should have the inverse trig function buttons of it.
However, it often uses an alternate notation:
“arcsin” is equivalent to
So, all inverse trig functions are denoted on calculators as the name of the
function and a “-1” superscript. “-1” is a common notation that is tagged
on to a function to denote the inverse of that function.
So, theta = arcsin(0.7071) = 45 degrees. (or PI/4 radians)
That’s straightforward; however, it’s not always so simple as putting the
trig function result in your calculator and pressing the button for the
corresponding inverse trig function.
For example, if sin(theta) = 0.7071, then by the result above theta = 45
degress. However, consider these:
sin( 45 deg ) = 0.7071
sin( 135 deg ) = 0.7071
sin( 405 deg ) = 0.7071
sin( 495 deg ) = 0.7071
sin( -225 deg ) = 0.7071
There are actually an infinite number of angles that satisfy this
This shows that knowing the trig function does not uniquely determine the
angle. The inverse trig functions on your calculator only give *one* of the
many possible angles. However, there are only *two* angles that lie in a
360 degree range, and these are the only angles that are of any meaning to
us. In fact, if we know two angles on a 360 degree range (for example, in
this case 45 deg and 135 deg), then all other solutions are merely those
solutions plus some multiple of 360 deg. For example, these are all
45, 45+360, 45-360, 45+2*360, 45-2*260, 45+3*360, 45-3*360, … etc.
135, 135+360, 135-360, 135+2*360, 135-2*260, 135+3*360, 135-3*360,
It is possible, knowing one of the solutions given by the calculator, to
determine the other solution in the 360 degree range, and from there
determine all solutions by the above method. The easiest way to do this is
to use the concept of the “unit circle” and figure it out from that. Ask
you teacher about that, for it is difficult to describe that through e-mail.
ICQ Number: 7664967, AOL ScreenName: C6H10CH3
Dave’s Math Tables
I should look-up Mr. Manura and thank him for having taken the time to explain trigonometry to me. In an email. 18 years ago.
My obsession with the atomic-level hard drive seems to go on throughout primary school, until about 1999. I found about 65 MB of data from that time, over 1049 files.
There are many other gems in there, like my Paint-drawn plans for a sci-fi inspired prison or a remote-control, missing-and-laser-carrying toy helicopter.
Seeing how childish all of this was is amusing, slightly embarrassing and to some extent surprising. One unexpected thing is that I still remember the main lines of what I wanted to learn or build or achieve – and it makes sense for the level of understanding I had when I was 9 or 10. But the most overwhelming feeling I had when I was going through all this was gratitude. Gratitude for having understanding parents who guided me, helped me explore and maybe had an intuition that, at that age, imagination, freedom and play were more important than knowledge, memorization and copy-paste. Gratitude for having had the opportunity of learning how to learn from building something, even if that something was unrealistic and far away from reality. Gratitude for being able, to some extent, to still work with the concepts and imagination tools that fueled my mind when I was barely old enough to walk to and from school.