[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Why I suck.
From: |
Alan Grimes |
Subject: |
Why I suck. |
Date: |
Sun, 20 Sep 2009 13:21:51 -0400 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.22) Gecko/20090825 SeaMonkey/1.1.17 |
Instead of writing a message about why linux sucks, or why you suck, or
why the hurd project sucks, or even why l4.sec sucks, I've decided to
write a message about why I, myself suck.
I suck because I had such trouble in English 110 in college, and could
barely manage a minimal course load that I might just barely get my
BS/CS in time for my 32nd birthday(future tense). I suck because I
didn't realize how vital it was to select a school that can, among many
other things, process an application for graduation in less than six
months.
I suck because my social skills are so poor that I, somehow, inspired
the moderator of #osdev on efnet, I think, to ban me for ten years. He
was so spiteful towards me that he decided to kill my OS project by
keeping me away from other OS developers where I might have gotten (and
even shared!) useful information. Since I suck, he succeeded. =(
I suck again because of my social skills because, at the time at least,
the vast majority of the knowledge and skills you needed to write an OS
were not written down anywhere. Instead it was part of an oral tradition
that must be passed along in good (but not bad) colleges, and
institutions where you can work only after you get a degree.
I suck because I can't use the unix utility "find" at all without a
textbook open in front of me. I suck because I can't use vi even with a
textbook open in front of me (not that I'd want to).
I suck because I spent hundreds of dollars at Kinkos thinking that if I
printed out and read the manuals to things like GCC, LD and other
utilities, I might actually know how to use them to produce (and use!) a
new kernel. (I later learned that the best information is actually from
the ELF specification itself and from a book that was published later
called "linkers and loaders".)
I suck because I spent hundreds of hours reading books about operating
systems thinking I'd actually know how to develop one afterwards. In
truth such books only cover a few of the trickier topics that might be
important to more advanced systems. Essential details such as program
loading and the interface between language and API calls was barely even
mentioned.
I suck because I was too lazy to read the source code and reverse
engineer key details such as how libc interacted with the kernel API. I
suck because I'm merely a human being and can't even read much less keep
up with the (linux) kernel developer's mailing list where they seem to
be in a race to keep the API as fluid as possible so that they can
maintain an excuse not to document anything.
I suck because I didn't work enough to get access to university
libraries with books on how to allocate and manage heap memory. (search
"memory management" at a local library and you get nothing but DOS howtos.)
I suck because I'm a perfectionist who always codes to the best
standards he knows how. Case in point, the book "the undocumented PC",
That book is the best publicly available documentation (second only to
the purple book, which I should have stolen from the closet at my high
school), on how the legacy PC actually works. It is valid for all
machines up to the 486DX33. However, the PCI architecture completely
changed how computers were made and how drivers should be programmed.
When I tried to obtain the spec, I was asked for $300. Similarly, the
8042 is a microcontroller. To properly understand how it works and
should be programmed, you need the manual. I found one such manual --
for $200. You can get little crib sheets on-line but they only tell you
what the code on it does, not how it actually works.
I suck because I've been in a tight spot where there's the PC where
everything's a mess and programmer's manuals are scarce, and the RISC
world where everything costs ten times more than it should. I wanted a
DEC Alpha ($11,000) I wanted a MIPS machine $5,000/motherboard. Or a
Sparc? $5,000 -- All well out of a perpetual undergrad's income-bracket.
I suck because I'm an AMD fanboi and Intel is the only vendor I know of
which provides an actual manual with some of its motherborads.
(Actually, my biggest fear is Intel becoming a total monopoly and
slowing progress while charging monopoly rents...)
I suck because I failed to find a solution to enough of my problems, at
the same time, while I still had energy, to get *enough* done such that
it might become a successful open source project. This is not to say
that I didn't make pathetic attempts to start websites and mailing
lists. But since I suck, none of these efforts passed muster without
some real working software as a draw.
I suck because I didn't realize soon enough that most of the "features"
in an x86 CPU should be turned off in any given operating system design.
I suck because when someone actually did explain something to me, say
about C calling conventions. I should have taken notes because actual
certified standards and reference data are unobtainable.
Anyway, that's enough self-flagellation for today. =\
[don't forget to change the subject line if you decide to respond. ;)]
--
New president: Here we go again...
Chemistry.com: A total rip-off.
Powers are not rights.
- Why I suck.,
Alan Grimes <=