I was a child in the late 80’s and I was impressed by computers by then. They were big and very expensive, and they seemed very hard to use. I could imagine myself being a hacker typing with those keyboards looking at that huge monitor with green characters.
Besides the IBM PC, there were other kinds of computers. They were more compact and accessible, but also more limited: microcomputers. They were used mainly to play videogames. The operating system was not any version of DOS or Unix, it was a programming language! The first computer I saw in person when I was a child was my brother’s Sony MSX, which ran BASIC to load applications and, of course, videogames:
Later on, a friend’s parents bought him a compatible IBM 286 PC. It was amazing, I loved it, so I decided to learn more about it and went to an academy to learn programming with some friends. I started to learn Basic, but soon I noticed that I didn’t like it, so I left.
At 14 I had my first computer, an IBM PS/1 2133. It was an Intel 386SX running at 25 MHz, with 2 MB of RAM and 85 MB of hard-disk space! It came with MS-DOS 5.0 and Windows 3.1 I had fun losing myself in the different Windows applications and configuration screens. And finally I could play Wolfenstein 3D and Indiana Jones and the Fate of Atlantis!
But I had no idea how to really use that machine, so I came back to the academy to learn MS-DOS. There I was surrounded by those big machines with green and yellow screens. I could even smell them. Every time I sat down at one of those computers I felt privileged.
Since then I had fun hacking the system, playing with MS-DOS and its config.sys, taking advantage of every byte of memory to play the newest videogames!
My second computer, some years later, was a PC with an Intel Pentium CPU running at 90 MHz. It was blazingly fast! But the sound from the internal speaker felt still ancient. So the next improvement was a Sound Blaster Pro. How cool was that and how good sounded everything! It included two great games: Lemmings and Indianapolis 500. I also found a tacky video demo in some floppy disk.
At that time I started to learn programming. I chose Pascal as my first language, and it was exciting! Soon I heard of a more widespread language called C, so I started to learn it. I found it more difficult, I remember that I preferred Pascal all the way, so I leaved C and returned to it many times. I made some little text-based videogames with Pascal containing school stories that my classmates liked so much 🙂
I even tried to develop an application for the mechanic in my neighborhood. What I tried to develop from scratch was… a database! Yes, he wanted to have a system to manage his customers and print invoices. I worked hard and accomplished to store data in binary files. It was managed by a rudimentary (but hey, very complete) user interface, running on MS-DOS, developed in plain-old C. When it was almost ready the client told me he finally got tired waiting for my application and he bought a CRM by Bosch. I was 15 years old and it was my first computing failure. Ouch!
Then Windows 95 came out. Computing was turning easier and boring. I tried to get back the magic experimenting with Linux. I remember discovering many different distributions of that time. I tried RedHat because it was easier to install. I was pretty amazed when I started up the X Window, everything was faster than Windows.
I really enjoyed watching “demos” from the demoscene. Little applications showing visual effects synchronized with music, developed in a low level language with rigid size restrictions. That was art applied to programming. Despair by Iguana was my favorite one:
This was the part of computing that attracted me more, and so videogames development.
There was another underground movement: digital magazines. People were creating these to write about everything. It’s what today we know as blogs. I really liked a Paraguayan digital magazine named Microforce.
At 17 I started a project with some friends. I was very influenced by Microforce, so I created a digital magazine named NPI, where we wrote about our hobbies. I built it using a tool named NeoBook for MS-DOS. It was distributed in a CD included by a popular Spanish computing magazine named PCmanía, and people really liked it. For the third number I developed a tool using Borland Turbo C achieving a very small executable size! It had a custom UI, supporting graphics and buttons in menus, and pagination for the articles. In total, the program had 2000 lines of C code and some assembler.
At 18 I decided to study computing more seriously. The Spanish government created a 2-years alternative course to the university containing more practical subjects, so I went for it. I finally understood how databases work, learned more about programming, and discovered how networks work.
It was a fulfilling experience which I want to repeat with my online courses.
In 2001 I wanted to continue learning, so I started a B.S. in Computer Science at the University of Barcelona, which I completed in February 2005. There I learned the basis of computing: electronics, math, and software engineering. I even learned Java and Ruby!
Since then, I have worked on several projects in startups, first using PHP with the Symfony framework, and later Ruby on Rails, which is currently my tool of preference for medium and big web applications.
In conclusion, I like computing, but I think that much magic has been lost since computers are easier to use nowadays. Computing is not mystic anymore. On the other side, anyone can now learn easier and faster, and that’s certainly good 🙂