Slashdot Mirror


Entertaining Bits From The Ancient Kernel Tree

option8 writes "I have added a page of some of the miscellaneous comments that appear in the Linux Kernel, version 0.01 (ca. August, 1991). Linus turns out to be quite the jokester, leaving all kinds of non-sequiturs and irreverent one-liners in the code, many of which survive today in the latest developmental releases. I thought to archive these and share with those people who aren't the types who go diving through ten year (gasp!) old code for kicks. Enjoy."

171 comments

  1. Pope hating by jidar · · Score: 3

    /*
    * PS. I hate whoever though up the year 1970 - couldn't they have gotten
    * a leap-year instead? I also hate Gregorius, pope or no. I'm grumpy.
    */

    This cracks me up. He even hates the Pope, :)

    seriously, this is probably going to end up in some news article some day;

    This just in...
    "Linux created by Pope hater! OS of Satan!"

    Of coarse I guess we would have to fight with Microsoft for the "OS of Satan" title...

    --
    Sigs are awesome huh?
  2. Colorful Comments by artdodge · · Score: 3
    DaveM is notorious for his comments in the TCP/IP stack. Look especially through the 1.3.X and 2.1.X patches for some tasty examples. "Fscking Sun blows goats" has shown up a few times, if I remember correctly.

    You can also search the linux-kernel mailing list archives for some lively debates about "cleaning up the language in the kernel source"...

    1. Re:Colorful Comments by jasomill · · Score: 1
      Hey, we can do it in BSD too. From the kernel sources on my FreeBSD 3.4-STABLE machine:

      fgrep -ir fuck *
      alpha/tc/esp.c: * Things are seriously fucked up.
      boot/alpha/libalpha/elf_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      boot/i386/libi386/aout_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      boot/i386/libi386/elf_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      i386/isa/aic6360.c: /* Things are seriously fucked up.
      modules/pcic/@/alpha/tc/esp.c: * Things are seriously fucked up.
      modules/pcic/@/boot/alpha/libalpha/elf_freebsd.c : return(EFTYPE); /* XXX actually EFUCKUP */
      modules/pcic/@/boot/i386/libi386/aout_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      modules/pcic/@/boot/i386/libi386/elf_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      modules/pcic/@/i386/isa/aic6360.c: /* Things are seriously fucked up.
      modules/svr4/@/alpha/tc/esp.c: * Things are seriously fucked up.
      modules/svr4/@/boot/alpha/libalpha/elf_freebsd.c : return(EFTYPE); /* XXX actually EFUCKUP */
      modules/svr4/@/boot/i386/libi386/aout_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      modules/svr4/@/boot/i386/libi386/elf_freebsd.c: return(EFTYPE); /* XXX actually EFUCKUP */
      modules/svr4/@/i386/isa/aic6360.c: /* Things are seriously fucked up.

      fgrep -ir shit *
      Binary file compile/ROSENCRANTZ/vfs_cache.o matches
      Binary file compile/ROSENCRANTZ/kernel matches
      dev/sym/sym_hipd.c: * brain-deaded stuff that makes shit.
      i386/i386/math_emu.h: * structure to 12 bytes which breaks things in math_emulate.c. Shit. I
      kern/vfs_cache.c:static u_long numposhits; STATNODE(CTLFLAG_RD, numposhits, &numposhits);
      kern/vfs_cache.c: numposhits++;
      Binary file modules/pcic/@/compile/ROSENCRANTZ/vfs_cache.o matches
      Binary file modules/pcic/@/compile/ROSENCRANTZ/kernel matches
      modules/pcic/@/dev/sym/sym_hipd.c: * brain-deaded stuff that makes shit.
      modules/pcic/@/i386/i386/math_emu.h: * structure to 12 bytes which breaks things in math_emulate.c. Shit. I
      modules/pcic/@/kern/vfs_cache.c:static u_long numposhits; STATNODE(CTLFLAG_RD, numposhits, &numposhits);
      modules/pcic/@/kern/vfs_cache.c: numposhits++;
      Binary file modules/svr4/@/compile/ROSENCRANTZ/vfs_cache.o matches
      Binary file modules/svr4/@/compile/ROSENCRANTZ/kernel matches
      modules/svr4/@/dev/sym/sym_hipd.c: * brain-deaded stuff that makes shit.
      modules/svr4/@/i386/i386/math_emu.h: * structure to 12 bytes which breaks things in math_emulate.c. Shit. I
      modules/svr4/@/kern/vfs_cache.c:static u_long numposhits; STATNODE(CTLFLAG_RD, numposhits, &numposhits);
      modules/svr4/@/kern/vfs_cache.c: numposhits++;

      For brevity, all references to "Matsushita" have been surgically removed. Even my kernel binary is full of shit (yes, I know that "numposhits" is "number of positive hits").

      Also, on an unrelated note, the XOR-exchange of variables is quite a bit slower than using a temp, at least on the x86.

      -jtm

    2. Re:Colorful Comments by Cedric+C.+Girouard · · Score: 1

      At the risk of starting yet another flamewar, I'll have to say that I dare anyone to remove my more "lively" comments from the code I write.


      If I'm to be hacking away for hours on some difficult bit of code, you can bet that this code wont be legal anywhere in australia.

      It's a know fact of life that anyone coding will stick a fuck()function somewhere in it. And my employer at the time just had to live with it, or run a find & replace.




      Note: My employer does not share any opinion with me on this. They just make sure I'm well fed, well dressed and well paid. It ends there.

      --

      Marriage is considered capital punishment for the theft of a goat in some third world countries...

    3. Re:Colorful Comments by Zurion · · Score: 2
      Just an FYI for those interested in the "colorful" comments in the linux source (2.2.14..yeah, yeah, I'm not up to date):

      # grep " shit " --recursive * 2>/dev/null
      arch/sparc/mm/srmmu.c: * else we eat shit later big time.
      arch/mips/kernel/sysirix.c:/* 2,526 lines of complete and utter shit coming up... */
      drivers/net/sunhme.c: /* Remember: "Different name, same old buggy as shit hardware." */
      drivers/scsi/esp.c: /* shit */
      drivers/scsi/esp.c: /* shit */
      drivers/scsi/esp.h: /* The HME is the biggest piece of shit I have ever seen. */
      drivers/scsi/NCR53C9x.c: /* shit */
      drivers/scsi/NCR53C9x.c: /* shit */
      drivers/scsi/NCR53C9x.h: /* The HME is the biggest piece of shit I have ever seen. */

      # grep " fuck" --recursive * 2>/dev/null
      arch/i386/kernel/mtrr.c:/* Some BIOS's are fucked and don't set all MTRRs the same! */
      arch/sparc/kernel/process.c: /* fuck me plenty */
      arch/sparc/kernel/sunos_ioctl.c: /* Binary compatibility is good American knowhow fuckin' up. */
      arch/mips/kernel/irixelf.c:#if 0 /* XXX No fucking way dude... */
      arch/mips/kernel/irixioctl.c: * irixioctl.c: A fucking mess...
      arch/mips/sgi/kernel/setup.c: * fucking with the memory controller because it needs to know the
      arch/sparc64/kernel/process.c: /* fuck me plenty */
      drivers/net/sunhme.c:/* Only Sun can take such nice parts and fuck up the programming interface
      drivers/block/cmd640.c: * These chips are basically fucked by design, and getting this driver
      drivers/scsi/esp.c: * how bad the target and/or ESP fucks things up.
      drivers/scsi/esp.c: * phase things. We don't want to fuck directly with
      drivers/scsi/esp.c: /* Be careful, we could really get fucked during synchronous
      drivers/scsi/qlogicpti.h:/* Am I fucking pedantic or what? */
      drivers/scsi/NCR53C9x.c: * how bad the target and/or ESP fucks things up.
      drivers/scsi/NCR53C9x.c: * phase things. We don't want to fuck directly with
      drivers/scsi/NCR53C9x.c: /* Be careful, we could really get fucked during synchronous
      drivers/cdrom/sbpcd.c: CURRENT=req->next; /* task can fuck it up GTL */
      drivers/video/tgafb.c: /* XXX Why the fuck is it called modename if it identifies the board? */
      include/asm-sparc64/system.h: /* If you fuck with this, update ret_from_syscall code too. */ \
      lib/vsprintf.c: * Wirzenius wrote this portably, Torvalds fucked it up :-)

      I think this is kinda cool, and it shows the real people behind a very useful and neat piece of software. And who can't resist putting something like GetHead() in code for a linked list. I did that a couple of times in college assignments, and the professors never said anything.

  3. Re:Try again by Klaus+von+Altdorf · · Score: 1

    It was the person from Intel who invented the 1MB limit for the i8086/88 processor.

  4. Enlightenment build by Tuck · · Score: 1
    It's not a comment as such but I'm building Enlightement in another window and caught sight of the following (from configure):

    checking for XF86VidModeQueryExtension in -lXxf86vm... yes
    checking for mass_quantities_of_bass_ale in -lFridge... no
    checking for mass_quantities_of_any_ale in -lFridge... no
    Warning: No ales were found in your refrigerator.
    We highly suggest that you rectify this situation immediately.
    updating cache ./config.cache

    Obviously I should have used "configure --without-ads".......

    --
    $ find /pub -beer "James Squire Amber Ale" -drink
    1. Re:Enlightenment build by brank · · Score: 1

      I've also noticed checks for "buttox" and "buckets_of_erogenous_yum" in e and imlib. I think they're just checking to see if we're paying attention.

      --
      it's green.
  5. Re:The value of a manual by rgmoore · · Score: 1
    Ahh. My CoCo. I truly loved that machine. Anyone else here a former CoCo addict?

    Absolutely. I actually started using the thing back when it was new, and I was so much cooler than any of the other second graders because I knew how to use a computer and they didn't. It wasn't a CoCo1, because nobody had thought that there was going to be a CoCo2 yet. I remember how exciting it was when we upgraded from 4 kB and Color Basic to 16 kB and Extended Color Basic.

    The old CoCo tape "drive" also taught me the importance of backing up vital data. For those who don't know, the CoCo had a very cheesy interface that let you use your regular home tape player and audio casettes as a storage medium. Unfortunately, the results were (as you'd expect) really poor. Whenever you wrote a program that you wanted to keep, you always had to make at least 10 copies onto the damn tape because you knew that they were going to degrade like anyting and that way you had a chance to recover one copy and make 10 more.

    --

    There's no point in questioning authority if you aren't going to listen to the answers.

  6. Re:Post your own comments by rgmoore · · Score: 1

    I don't know. I find that real comments from real code can be tremendously amusing. One of my all time favorites was:

    # i don't understand what that does, so i'm replacing it. -cmw, of the Coalition for Reinvention of the Wheel

    What person that's worked to modify someone else's code hasn't felt that way at one time or another?

    --

    There's no point in questioning authority if you aren't going to listen to the answers.

  7. Re:this is a dumb comment i knew someone would mak by kernelistic · · Score: 1

    ACs are on the loose!

    Who dunnit?

    It must have been Emmett... :-)

  8. Re:Wrote this one just yesterday by Squid · · Score: 2

    My last job I had to maintain someone else's downright weird Perl - not ordinary obfuscated Perl, mind you, this was Perl written by someone who obviously grew up in Visual Basic. His comments were few and far between, and when he DID comment, it was not much more understandable than the code it accompanied.

    At one point I left a comment something like this:

    # Todd, please don't comment if the code is clearer without it.

    Too bad he'll never see it. :-)

  9. Re:The value of a manual by Spirilis · · Score: 1

    Yeah, my first CoCo 1 had a problem with the SAM chip overheating (memory control chip; kinda like the chipset I suppose?), but then I discovered running it with the case off and that nasty silver shielding taken off exposed it to the open air, so it ran without screwing up. What was really wicked was when it did overheat. The machine rarely locked up; instead, random locations of memory would be overwritten by random values. Well, it did lock up sometimes; when a critical ROM BASIC data value was overwritten. It was neat fooling with the computer and then 20 minutes later, watching the screen go slowly berzerk and realize that there were only minutes left until I had to restart it... and lose all my program =(. Opening the case solved that and I was happy. However I fucked the thing up when I started poking at the circuits with a screwdriver, short-circuiting pins on a chip, and eventually I did it to the CPU and it went. Made me SO sad for like a couple weeks until I got a CoCo 2... whee!

    --
    the real at&t mix
  10. Re:Post your own comments by Squid · · Score: 2

    Slightly amusing comments I've found in my own code:

    # They painted the office today and the fumes are getting to
    # me. Don't be surprised at anything you find in the code
    # from here down.

    In code claiming to be a "complete rewrite" from the previous version:
    # This section stolen from the previous version

    # I have a feeling this is very wrong.

    # This code would require about eight seconds to optimize, I just haven't
    # done it yet.
    (I've had plenty of chances in the last 2 years to optimize that code.)

    # No. I refuse to document this.

    # This actually subverts some optimizations later on, but maybe it'll add up okay
    # in the end.

    if ($notready)
    {
    # Kosh: "You are not ready for immortality."
    ...

    # Done parsing silliness.

    # Let's be even bruter with the brute force.

    # Stupid design? Well, that or read the main list twice.

    # Yowza.

    # It's a dumb idea. I will fix it. When I figure out how.

    # That's poorly named.

    In code that was later commented out:
    # is this smart or stupid?
    I must have decided later it wasn't smart...

    # Now to run through the loop again. I smell an optimization coming.

    # Augh! A reference!

    # Let's just use the 32-bit numbers. To hell with Y2K bugs, let's go to S2B - the
    # 2 billion second bug.

    # There's only one universe, so no args (yet)...

    # Got 'im.

    # Just pretend for the moment it works.

    # Nasty mean vicious nested foreach

    # Whew! Several trips through the datafile later...

    # This next part makes me wish I'd commented it the first time.
    (Followed by uncommented code, apparently written in a hurry.)

    # silliness!

    # Let's GET IT ON!

    # cheap-ass code to calculate days between two dates

    Some code that did weird (and probably unnecessary) date calculations contained these cryptic comments:
    # now has a Y1K9 bug and thus cannot be used in years before 1900.
    # It also now has a year 11734883 bug - that's when (yr*366) > 2^32.

    In some particularly weird code we converted to Y2K ready in 1997:
    # If you need this to work past 2100, come thaw me out.

  11. Re:POSIX wanted money for a *standard* by tcs · · Score: 1

    Then I'd say it's more like a specification, not a standard. :)

    --
    /. peeve #274: The word is neither "walla" nor "whala", it's voila. Phonics is a tool of the devil.
  12. Re:As far as finding the Rainbow series online.... by Kronovohr · · Score: 1

    The whole damn thing is [AFAIK] available on the COTSE website. I saw it there the one time I browsed through it; entirely HTML, tho...no plain text

  13. Comments... by rutger21 · · Score: 1


    have become the core business of certain websites! :-)

    Comments on this?

  14. Re:Post your own comments by Kronovohr · · Score: 2

    ; What the fuck! This was a typo,
    ; but if I change it to the correct
    ; syntax it breaks!

    /* Supposed to be an infinite loop. Dies in 65536 cycles under DOS. */

    /* If this doesn't work, I'm shooting someone. */

    /* Uncomment this line to make it mangle the filesystem */

    /* fork() you! */

    /* Just when I thought it couldn't get any worse... here's: */

    /* Why, oh why, does this have to be in here? */

  15. Re:There is no substance here. Who modded this up? by inburito · · Score: 1
    I had an Amiga 500 so I guess I'm qualified to say something.. Atari ST and Amiga 500 did compete against eachother. This was late 80's(My amiga had an 87 or 88 rom - kickstart 1.2) and early 90's. Early 90's the later versions of Amiga pretty much wiped the floor with Atari and Amiga begun to die too.. Atari was always a more serious computer and popular with musicians due to its midi-ports.

    Definetly by 94 Atari was pretty much dead and Amiga was on it's way out. I remember using my Amiga 500 from about 89 until 94 and few years later I gave it away. This would have been about from 3rd grade until 8th grade. By the time I got to high school it was pretty much obsolete..

  16. NOT a troll! by Anonymous Coward · · Score: 1

    I fully agree. The last 10 years have been spent rewriting the kernel to make it more modern. Many of these improvements (SMP support, modularity, spinlocks, ..) have been available in Mach way back in 1986. Tanenbaum was right, Linux was obsolete from the moment of its inception.

    1. Re:NOT a troll! by Atomic+Frog · · Score: 1

      Hmm...yeah, I like that bit on the page about Linux being a "revolutionary" OS.

      I'm not saying if it was good or bad, but Linux certainly wasn't revolutionary. How can it be when it is supposed to be a cheap clone for i386 machines of the already existing UNIX?
      Of more interest was the development _method_ used for Linux, but even that wasn't new as the GNU guys had been doing the same thing already.

  17. As far as finding the Rainbow series online.... by Malk-a-mite · · Score: 1
    http://csrc.ncsl.nist.gov/secpubs/rainbo w/

    "Department Of Defense Trusted Computer System Evaluation Criteria" ("Orange Book"), 12/85
    I knew the Orange book was online... if I ever find the others I'll let you know.

    Malk-a-mite

    1. Re:As far as finding the Rainbow series online.... by Malk-a-mite · · Score: 1
      http://www.radium.ncsc.mil/tpep/li brary/rainbow/

      Sorry for the double post, found the other site with the magic books.
      Trusted Network Interpretation Environments Guideline - Guidance for Applying the TNI, 1 August 1990. (Red Book)
      DoD Password Management Guideline, 12 April 1985. (Green Book)

      That's Orange, Red, Green. Enjoy all.

      Malk-a-mite

    2. Re:As far as finding the Rainbow series online.... by jpatokal · · Score: 3
      "Department Of Defense Trusted Computer System Evaluation Criteria" ("Orange Book"), 12/85 I knew the Orange book was online... if I ever find the others I'll let you know.

      There are many Color X Books out there, the original poster was referring to the particular Orange Book that defines (one of) the standards for CD(-ROM?) encoding.

      Cheers,

      -j.

    3. Re:As far as finding the Rainbow series online.... by Crazy+Diamond · · Score: 1

      The Orange, Green, Red books Pieter-Bas was talking about are the CD (as in Compact Disc) standards... not the security standards from the DoD.

    4. Re:As far as finding the Rainbow series online.... by Cramer · · Score: 1

      Those aren't the CD standards...

  18. What else do you all put into your code? by Tony+Shepps · · Score: 2
    What else do you all put into your code? My comments tend to be apologies more than anything else:

    // This is brute force, but I didn't have time
    // to do it right. Sorry. Someone else fix.

    // I'm not checking the return value because
    // I'm lazy, not because it doesn't need checked

    Or sometimes I just get wacky:

    // I got two turntables and a microphone

    The other approach is creative "self-documenting code":

    $ridiculous_index =

    ...and of course the inevitable, incorrect:

    while ($LoopUntilWeDie)

    --

    1. Re:What else do you all put into your code? by llywrch · · Score: 2

      Heh. One of my favorite comments comes from the Lynx source:

      /*
      * here's where we do all the work
      * mainloop is basically just a big switch dependent on the users input
      * I have tried to offload most of the work done here to procedures to
      * make it more modular, but this procedure still does alot of variable
      * manipulation. This need some work to make it neater.
      */

      Lou Montoulli wrote that back in 1994 -- if not earlier. It explains -- in 25 words or less how every browser works. It has been in LYmain.c ever since. And prolly in the source code to both Netscape & IE (well, next to ``Netscape coders are weenies.")

      Food for thought, huh?

      (And I'm ignoring the chance to comment on how he ended up marrying the bosses daughter.)

      Geoff

      --
      I think I see a trend here. Maybe for them it really would be easier to muzzle the entire internet than to produce p
    2. Re:What else do you all put into your code? by On+Lawn · · Score: 1

      HA!

      I remember getting ticked at the TA once and writing a comment about how they grade comments. I meant to remove it, but forgot.

      #include string.h /* Look Punk Grader, if you can't figure out why I'm including this you have no right to judge my work */

      I got a nasty email back, and I appologized. However, it is interesting to note that my poorly documented code that outperformed every other students code in every area got worse grades than code that didn't even work. I remember not even implementing a function, and commenting that it didn't work, and getting a 100% on the assignment still.

      I don't know why they were more concerned about the comments than the code.

      ^~~^~^^~~^~^~^~^^~^^~^~^~~^

    3. Re:What else do you all put into your code? by Nagash · · Score: 5

      I put this in an assignment for an Artificial Intelligence course. It was a Java applet that implemented the A-star search algorithm that we had to modify. The code was pure garbage, and the teaching assistant that marked it was also the one who picked it off the web in order for us to modify it. I was not amused. So, I stated my position in a rather forward manner...


      // what the hell is with this magic number crap?
      // /me slaps original programmer around with a hammer.

      ...

      // This is a butt ugly hack, but given the utterly shit
      // code that surrounds it, it should feel right at home.

      ...

      // I don't know why I had to set a number to tell me what
      // finishCell to use, but I did. I simply do not have the
      // time to wade my way through this crap program to figure it
      // out. I got better things to do, like pull my fingernails
      // out and then bathe my hand in lye.

      ...

      // I added this awful, awful hack. I am ashamed to have written code like this.


      I also wrote a letter to the prof and TA on behalf of the other multitudes of students who thought the same thing I did. Needless to say, I got a bad mark (didn't care anyway) and the TA hates me now. Turns out they really do read the comments! =)

      Woz

    4. Re:What else do you all put into your code? by Anonymous Coward · · Score: 1

      /*
      [x] Start using comments like this
      [/] Write a script to grep checkboxed ttd list
      [ ] Make script options for [x]done, [/]started, [ ] not yet started, [.]abandoned
      */

  19. OS of Satan by Kryptonomic · · Score: 2
    Of coarse I guess we would have to fight with Microsoft for the "OS of Satan" title...

    It depends on whether the "OS of Satan" refers to the OS on which Satan is able to run his database system of lost souls in the most efficient manner, or if it refers to an OS which is an instrument of torture in the Hell.

  20. Re:That's a classic by Felinoid · · Score: 1

    Bill Gates....
    Linus knows you'll need more... He just didn't care about doing it in an alpha release

    --
    I don't actually exist.
  21. Re:That's a classic by Felinoid · · Score: 1

    You win the prize :)
    Someone else points out that Bill Gates didn't say it (urben legend)
    and Linus knew you needed more...

    Also when Bill Gates made his comment programs were packed in 64k..

    The 640k memory Limit on Dos was a hardware issue...
    The Intel processor only addresses 1 meg in "native" mode... the 8088/86 only addressed 640k...
    While a 286 can have much more ram than 640k it can only be accessed in protected mode...
    So it is out of the reach of DOS.
    And thats why MsDos can only access 640k of ram.. that and if it trys to access the full meg programs crash...

    However.... during the same time period programmers were saying "I need 4 meg of ram all to myself" for mainframes... it was only a matter of time before they'd start demanding it on home computers....
    But... no... we need 16 meg of VIDEO ram... and 512meg of system ram... 10 gig HD... 100 meg removable disk... and 128k BPS feed...

    I mean... IBM expected us to dump the PC a long time ago...
    Who knows...
    Anyway at time it was rummored to have been said... it was true....

    --
    I don't actually exist.
  22. Amusing build comments by Anonymous Coward · · Score: 1

    Something I've built recently (a game off Freshmeat, can't remember which one because it wouldn't run anyway cam up with :
    Checking for plesiosaurs in Loch Ness - ok
    (been passed it a couple of times a week and haven't seen _one_ yet)
    Cheers,
    Gordonjcp
    me@gordonjcp.co.uk

  23. Re:There is no substance here. Who modded this up? by Alan · · Score: 1

    and IBM didn't know MS were going to screw them over with OS/2.


    It was pretty clear with the release of Windows 3.0 that Microsoft was a whore.



    I don't know about that... win 3.0 was my first exposure to windows, and I don't know about you guys, but 3.0 SUCKED. I mean, all windows suck, but 3.0 really sucked. Compared to 3.0, 3.1 was a dream to work with. I personally think that it was with 3.1 that (publically anyway) MS became the leader.


    Now that said, there wasn't really another company doing the sort of thing that windows was (at least with the advertising clout that MS had).

  24. Re:This isn't terribly funny by Sir+Robin · · Score: 1

    *laugh* No, only that their sense of humor differs from yours. As does mine, for example, 'cause I laughed out loud at some of Linus's comments.

    --
    My /. ID is only 5,210 away from Bruce Perens's.
  25. Re:I don't know... by anonymous+cowerd · · Score: 2

    In a film can in my desk I've got a thirty year old one that's on punched paper teletype tape. Feed it into the tape reader and it prints out a full-length standing nude at about 0.7 scale that you can hang on the wall.

    Yours WD "old old old" K - WKiernan@concentric.net

  26. Too damn many smiley faces. by gfxguy · · Score: 1
    Too many smiley faces, but since it was written before they were passé, I guess I can forgive him :-)


    ----------

    --
    Stupid sexy Flanders.
    1. Re:Too damn many smiley faces. by Tony-A · · Score: 1

      Untrained baboon fails to see the humor. :(

    2. Re:Too damn many smiley faces. by KilobyteKnight · · Score: 2

      Smiley rule #1: Don't use a smiley wherer even an untrained baboon could see it's humour.

      :)

      --
      When will Windows be ready for the desktop?
    3. Re:Too damn many smiley faces. by QuMa · · Score: 1

      Oh, sorry:

      :-)

      Get it now?

    4. Re:Too damn many smiley faces. by QuMa · · Score: 1

      Oh, we have an untrained baboon in the audience! Thank you.

    5. Re:Too damn many smiley faces. by QuMa · · Score: 1

      Smileys are not fashion objects. They are useful ways to express oneself better in an ascii text.

      Yes, they have been and are being incredibly abused by overdoing it (in this code too imho), but they will never be passe, where used functionally.

      Smiley rule #1: Don't use a smiley wherer even an untrained baboon could see it's humour.

  27. I see you by anonymous+cowerd · · Score: 2

    There you go again. I know what you're up to.

    Your fan WDK - WKiernan@concentric.net

    ps: send me to Europe!

  28. Slightly offtopic but... by seizer · · Score: 5

    Did anyone see that someone posted the incomplete source to COMMAND.COM way back?

    http://slashdot.org/co mments.pl?sid=00/06/08/0647212&cid=574.

    Have to love this bit:

    ; REV 1.50
    ; Some code for new 2.0 DOS, sort of HACKey. Not enough time to
    ; do it right.


    --Remove SPAM from my address to mail me

    1. Re:Slightly offtopic but... by Vanders · · Score: 2

      Heh, how about:

      ; Speed not high priority here.

      Seems so...fitting, in an M$ product ;)

  29. Re:There is no substance here. Who modded this up? by Sri+Lumpa · · Score: 1
    See, the way I heard it, Gates was using his newfound wealth from DOS & Windows 3 to steal treasures of the ancient world. He had managed to locate the exact position of the fabled Pandora's box, and after a hefty struggle, he managed to get his hands on it. Of course he couldnt resist opening it and upon doing so an evil demon was released and cast a shadow over Redmond, and thus, Win32 was born.

    Shouldn't it be:

    Bill Gates opened the Pandora box and then Win32 was released ;).

    --
    "The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers." Bill Gates,
  30. not flame, no never never flame by anonymous+cowerd · · Score: 2

    No, it will not "get you burned at the stake." We care to much about our brethren to do such a cruel thing to them. No matter how foul their sins, no matter how widely they offend us. Even if they go so far as to spit upon the holy primary source code, we love them too much, though they are sore misguided, to be so merciless.

    We do not shrink from physical torture. For indeed, it is the curse of mortality and the payment for our forefathers's sins that we shall endure pain all our days - cf. configuring X the first time on a new computer. But pain does not endure, nothing that is based in the flesh endures, for flesh is dust. Before and above all other issues one has to consider the fate of the immortal soul.

    Would we burn an unrepentant, inconverted heretic? Would we commit him to an eternity in the blue screen of Hell? No.

    No, first we will bring him back into a state of blessedness, which he can attain by simply admitting and repenting his errors, his blindness, his hamartia. We start by gently counseling our prisoner. If, as sometimes happens, verbal persuasion doesn't work, then at our command are the various goads of isolation, starvation, exposure, sleep deprivation, restraint, heat or cold therapy, infusion with hypnotic or hallucinogenic narcotics, electroshock; then if these fail, though they seldom do except for the most obdurate sinners, we (for as I said before, we to not shrink from torture) apply the harsh but necessary techniques of
    **********************************************
    **********************************************
    **********************************************
    **********************************************
    *********************************************.

    Eventually even the most stubborn of our heretics comes around, sees and admits his fatal error and repents. And as Linus is endlessly forgiving, thus the Holy Penguin again accepts our brother, once a heretic but now one no more, back into his loving and eternal embrace.

    Only then do we burn him.

    Yours Fr. WDK - WKiernan@concentric.net

  31. Comments in VB by porlw · · Score: 2

    I used to work for a company that had a product
    developed in VB. Having a small (around 200)
    client base, the developers knew the customers pretty well.

    Quite often comments in the source code mentioned
    a specific customer. They could get quite disparaging, e.g.

    REM Hack the tab order YET AGAIN for customer X.
    REM They really don't seem to have a clue.

    One day a customer complained. Apparently early
    versions of VB actually COMPILED THE COMMENTS INTO THE BINARY. How lame is that? Someone had to go through and clean up the source. With so few customers we couldn't afford to upset them too much!

  32. Sort of eerie by Red+Moose · · Score: 5
    It's a bit eerie reading that (c) 1991 Linus Torvalds, almost a decade ago.

    Think about, Win32 didn't exist, and IBM didn't know MS were going to screw them over with OS/2. Amiga were fighting with Atari.

    The Gulf War was on...threats of bombing and the stealth plane made it's debut.

    Slashdot didn't exist. Heck, Tim Lee was thinking maybe Hypertext mught be a cool way to store his university notes, thus was born the web.

    Usenet didn't contain thousands of porn pictures, BBS systems were alive and well.

    Sort of wierd, that unknown to all the mainstream and even tech groups Linus + some people were working on the only OS that would ever threaten Microsoft.....that Microsoft would even *need* threatening.

    And still 10 years later, MacOS still is cludgy and can't multitask....I suppose some things just don't change.

    --

    Acting stupid isn't much fun when there's someone around who knows better

    1. Re:Sort of eerie by Legolas-Greenleaf · · Score: 1
      I have windows 1.something lying around (seriously), but it just won't load. =^)
      -legolas

      i've looked at love from both sides now. from win and lose, and still somehow...

    2. Re:Sort of eerie by Halloween+Jack · · Score: 1
      ...and N*t*l** P*rtm*n was only ten or so.

      Kinda like talking about what went on before the Big Bang, yes?

      --
      I looked into the abyss, and the abyss looked into me--and we both winked.
    3. Re:Sort of eerie by niccodicco · · Score: 1

      ... too bad Win3.1 (probably the worst software package ever)

      You should try Win2.0

    4. Re:Sort of eerie by jeremy+f · · Score: 1
      I _hated_ Geoworks. It came with my first ever cdrom drive. The thing didn't have anything really useful, was slow, and worst of all, was UGLY as sin. (This was back in the day when the only use for Windows 3.1 I had was for launching up the occasional Solitare game, or to connect to AOL).

      But even Win 3.1 made Geoworks look like complete caca.

      ___

    5. Re:Sort of eerie by Anonymous Coward · · Score: 1

      > Usenet didn't contain thousands of porn pictures

      ROTFL. Usenet was full of porn. Anonymous ftp was full of porn too. Archie ruled.

    6. Re:Sort of eerie by phutureboy · · Score: 1

      Usenet didn't contain thousands of porn pictures, BBS systems were alive and well.



      Usenet has had thousands of porn pictures for many, many years.



      Er, um, at least so I've been told...

    7. Re:Sort of eerie by iMacGuy · · Score: 1

      MacOS can do preemptive multitasking, but nobody knows about it.

      call
      MPCreateTask() and MPTaskIsPreemptive().

      --
      Why won't slashdot let me change my terrible username :(
    8. Re:Sort of eerie by Legolas-Greenleaf · · Score: 1
      And still 10 years later, MacOS still is cludgy and can't multitask....I suppose some things just don't change.

      And how. =^)

      i got my leeto burrito i386sx/16 in 1991. It lasted me a good many years (and is still alive today). *sigh*... does anybody remember Geoworks? That was a cool piece of software... too bad Win3.1 (probably the worst software package ever) squashed it. =^)
      -legolas

      i've looked at love from both sides now. from win and lose, and still somehow...

    9. Re:Sort of eerie by Booker · · Score: 1

      But weren't they all ascii-art? :-)

      ---

  33. That's a classic by bandicoot · · Score: 3

    "For those with more memory than 8 Mb - tough luck. I've not got it, why should you."
    -- Linus Torvalds, 1991

    "Nobody will ever need more than 640k RAM!"
    -- Bill Gates, 1981

    So who's the bigger idiot?

    1. Re:That's a classic by penguinboy · · Score: 1

      Well, the limit in Linux has gone away, but DOS never did away with the 640K conventional memory limit.

    2. Re:That's a classic by torpor · · Score: 1

      Yeah, but you're taking it out of context. Linus then goes on to say - "Here's the source, fix it if you've got >8mb".

      Gates never said that.

      So fuck you, asshole! :)

      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    3. Re:That's a classic by Anonymous Coward · · Score: 1

      You are, because Gates never said that. It's an urban legend.

  34. POSIX wanted money for a *standard* by Black+Perl · · Score: 3
    From Linus' comments:

    * Hopefully these are posix or something. I wouldn't know (and posix
    * isn't telling me - they want $$$ for their f***ing standard).

    POSIX wanted money for a standard. That's fascinating. How did they think a standard was going to catch on if they charged people to just *see* it?

    I guess it's a telltale sign of the mindset of the Unix community in the early 90's. Charge an arm and a leg for everything. Some of the stragglers are still just breaking free of that mindset (Motif comes to mind).

    --
    bp
    1. Re:POSIX wanted money for a *standard* by kinnunen · · Score: 1
      POSIX wanted money for a standard. That's fascinating. How did they think a standard was going to catch on if they charged people to just *see* it?

      That's common practice. Go look for a free download of ANSI C or ANSI C++ standard. You won't find one.

    2. Re:POSIX wanted money for a *standard* by mindstrm · · Score: 2

      Uhh.. that's how MOST ansi standards work.

      802.3? Pay up. 802.11? pay up.

      rs232? pay up. v.32bis, pay up....
      You don't have to pay to use them necessarily, but you may not reproduce the standards documents, and they cost $$$$$

    3. Re:POSIX wanted money for a *standard* by Pieter-Bas · · Score: 4
      Most standards are confidential. Licenses are being sold. Many of them have no problem catching on at all. Examples:

      • CD (Orange, Green, Red book) are all still secret. You can not find them on internet
      • DVD + Next.Gen. DVD (Confidential standards. Kept a (trade) secret by the DVD Forum!)
      • Dolby AC3 Digital Audio [And with it all Dolby sandards]
      • ISO9660 (for some time, it's ECMA119 now and downloadable for free, but ISO charge[sd] about $1000 for it)
      • MacroVision (though I don't think it would have caught on in the Open Source world :) )
      • FAT32 and NTFS (eeeh... well...)
      By the way, compact casette was also a confidential standard until Philips decided to give it away for free to gain more market...

      And these are just the standards I could think of in a second. I think more 'standards' are secret and have to be paid for than one would think.

      --
      Common sense is not so common - Voltaire
  35. This isn't terribly funny by Fervent · · Score: 1

    This just proves that most programmers, particularly those with huge glasses and bad fashion sense (*cough, cough, Torvalds, Gates, cough*) have absolutely no sense of humor whatsoever.

    --

    - I don't care if they globalize against free speech. All my best free thoughts are done in my head.

  36. He may be a good hacker... by Anonymous Coward · · Score: 1

    but I hope he doesn't switch to doing stand-up.

  37. The Dark Side of Open Source by SPrintF · · Score: 2
    Here's one of the potential problems with open-sourcing software: how many programmers write comments with an eye towards eventual publication?

    While IANAL, I am a little anal, so today my comments are OK. But, in my early days, I left a few remarks in my programs that were never intended for eyes other than my own. Ie:

    /* Yeah, yeah, I know this would be easier to code recursively, but none of the blockheads in IT understand the concept. */
    Today, I wonder if I could get corporate sponsorship for my comments.
    /* The following garbage collection routine is powered by *Starbucks*, purveyors of fine caffeinated beverages .*/
    --

    Honesty. Loyalty. Kindness. Laughter. Generosity. Magic!

    1. Re:The Dark Side of Open Source by renehollan · · Score: 1
      I once got severely repremanded for some comments in code I had written... they weren't intended for anyone but me, but management thought it would be a good idea to snarf a pre-release copy of code from my PC. Somehow the resulting bru-ha-ha was my fault.

      I have been known to include

      var sbv: boolean; { note: spurrious boolean variable, not sexy blonde virgin } in old PASCAL code.

      -rsh

      --
      You could've hired me.
    2. Re:The Dark Side of Open Source by brank · · Score: 1
      When I write comments like that, I leave them in for other people to find. My boss told me that anything I would say to someone's face, I'm allowed to say in a comment.

      Luckily, I'm a very rude person.

      --
      it's green.
  38. My personnal fav by blanalex · · Score: 2

    But maybe not from Linus:

    linux/drivers/scsi/aha1542.c:657
    panic("Foooooooood fight!");

    when the drivers detects a bad segment list

    --
    #DEFINE QUESTION (2b)||(!2b) -- William Shakespeare
  39. Re:I don't see genius by Animol · · Score: 1

    While many of the comments are just off-color expressions of Linus's feelings at the time, some of them are at least a *BIT* witty. As to why anyone would want to preserve it - if not for the humor value, at least for a little insight into the mind of the programmer. Maybe some of the comments, strange as they were, provide some insight as to why or how, and the consequences thereof. Even the not-at-all funny ones provide a nice historical record of the intent of much of the code.

    --

    "I'm not even supposed to BE here today!"
  40. Swapping 2 without 3rd if both positive numbers by bob_jordan · · Score: 1

    a=a+b
    b=a-b
    a=a-b

    Bob.

  41. Re:Another GeoWorks fan! by Fesh · · Score: 1
    Heh, and I remember my GEOS disks eating themselves within days... Of course, everyone else I've talked to says that they never had any problems, so it probably means that our floppy drive was hopelessly out of alignment... I guess. Or were they running one of those funky copy protection schemes? I remember clearly the fact that they encouraged making backup disks...


    --Fesh

    --
    --Fesh
    Kill -9 'em all, let root@localhost sort 'em out.
  42. how insightful and important to life by theseum · · Score: 1

    man, people find these comments funny? i mean, with jokes like "i don't have 8mb of ram, neither should you", linus is a regular comedian, isn't he? He can code operating systems, but he can't make a joke. no flamebait, but this stuff isn't exactly hilarious (i'm not blaming him, either: this stuff is in the linux source code, for god's sake. it's doesn't _need_ to be funny, and its not).

  43. my favorite comment to put in code by Sublimed · · Score: 1

    my favorite comment is /* ??? */

  44. Re:Post your own comments by shren · · Score: 1

    Straight from my current project:

    int j; // once a control variable/now a counter/life is like that

    --
    Maybe the state's highest function is to grind out insoluble problems. (Zelazny, Hall of Mirrors)
  45. Re:The value of a manual by Mathetes · · Score: 1

    Yeah, I had a CoCo 3, with 512K ram, and a 40MB HD hooked up with a Burke & Burke XT interface. I learned operating systems running OS-9 Level II.

    I had to downgrade to MS-DOS...then Windows...and now I'm actually back up to a real multitasking OS with Linux!

    In some ways, Linux fulfills a lot of the dreams that CoCo/OS-9 users had.

  46. Re:Post your own comments by morzel · · Score: 2
    For those who don't do assembler, here's some pseudocode :

    A = A XOR B // store A XOR B in A
    /* The value of A XOR B is stored in A */

    B = B XOR A // store B XOR (A XOR B) in B
    /* B XOR (A XOR B) = B XOR B XOR A = 0 XOR A = A
    The original value of A is now stored in B */

    A = A XOR B // store (A XOR B) XOR (B XOR (A XOR B)) in A
    /* (A XOR B) XOR (B XOR (A XOR B)) =
    A XOR B XOR B XOR A XOR B =
    A XOR 0 XOR A XOR B =
    A XOR A XOR B =
    0 XOR B = B
    Store the original value of B in A
    */


    Okay... I'll do the stupid things first, then you shy people follow.

    --
    Okay... I'll do the stupid things first, then you shy people follow.
    [Zappa]
  47. Re:The value of a manual by spudnic · · Score: 1

    > The manual might as well be a single sheet with the words "Magic Happens. Send it back if it's broke."

    This is all most people want to know. I'm sure it costs money to create decent end-user documentation. If 99.9% of the people buying your product get scared by the 400 page manual complete with fold out schematics in the back, why would they spend the money (even if they weren't concerned about clones)?

    With the cost of producing a printer (or other HW) these days, yeah, bring the thing back and they'll give you a new one.

    Now, back when I paid $1000 for the Lt. Kernel hard drive for my C=64, that was a differnet story.

    (One of the best I got was a black book that came with a $700 modem. Incredible.)

    --
    load "linux",8,1
  48. Another funny comment by Jimmy_B · · Score: 2

    '&nbsp&nbsp&nbsp_______&nbsp&nbsp&nbsp&nbsp_______ __Elegance
    '&nbsp&nbsp|_______|&nbsp&nbsp|
    '&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp-=&nbsp|&nbsp&nbsp \/
    '&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp&nbsp&nbsp|_______
    '&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp&nbsp&nbsp|------- |
    '&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp&nbsp&nbsp|&nbsp&n bsp&nbsp&nbsp&nbsp&nbsp&nbsp/
    '&nbsp&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp&nbsp|&nbsp&n bsp&nbsp&nbsp&nbsp&nbsp/
    '&nbsp&nbsp&nbsp&nbsp|____|___&nbsp/

    This comment was in a VB program I wrote. I rewrote that section to work a lot better, but left the toilet in for coolness, with a note explaining what it was.

  49. Re:Another one... by Tycho · · Score: 1

    Well I have the entire 1988 World Book Encyclopedia and guess what there are pictures of MICR characters at the beginning of each volume.

    --
    Impersonating Tycho from Penny Arcade since before there was a PA.
  50. Post your own comments by gunner800 · · Score: 2
    OK, OK, enough of everybody quoting their favorite comment. Post your own smartass comments here...

    //No comment

    //This crashes the system. Fix it.

    //Somebody put a useful comment here.

    //This progressive test should take about nine hours to complete. I assume it will terminate.

    //I'm not sure what this does, but it's probably important.

    (Paraphrased, originally from a CS professor:)
    # This switches the value in two registers without using a third. Technically, this is impossible. It works. Don't try to change it. If you feel the need to change it, call me at (home phone number).

    (And yes, you can exchange two variable's values without a third variable)


    Dammit, my mom is not a Karma whore!

    1. Re:Post your own comments by lpontiac · · Score: 1
      Something really sad..

      One of my professors expects all assembly coding to be done through direct translation from a HLL, and if you don't follow his guidelines on how to lay out and comment translated control structures, you lose marks. So if I stripped out all the comments like this (eg BIPUSH 1; IADD //increment i) from the last piece of crud I handed up, I'd probably lose marks.

    2. Re:Post your own comments by DanaL · · Score: 3

      A friend of mine, while trying to update some ancient (truly ancient) Cobol code, ran across a comment that went something like...

      "I don't know what this block of code does. It seems to serve no purpose, but if I remove it, the program stops working."

      I've been waiting for my chance to borrow it :)

    3. Re:Post your own comments by DanMcS · · Score: 2

      I used to grade for my compsci department, and the students put the most amazing comments in their code. Stuff like:
      i++; //increment i
      /* Dan, I don't know why this doesn't work, don't mark me off too much. */
      /* I really hate this class */
      /* yeah, I know we were supposed to do it recursively...*/

      Heh, sometimes they got an extra point for making me laugh. Shh, don't tell them that.

      --
      Communication is only possible between equals
    4. Re:Post your own comments by brank · · Score: 1
      I saw this somewhere:

      /* DRUNK -- fix later */

      But I have a tendency to put comments in that are more along the lines of:

      • Yeah, yeah, yeah
      • life goes on
      • Do you know what this does?
      • Work! Work! Work! Aarrgh!
      And others that are not fit for posting in a public forum :-).
      --
      it's green.
    5. Re:Post your own comments by brank · · Score: 1
      Going through the comments on our server is entertaining. We have an assortment of shel scripts, perl, C, and misc. programs to keep the thing running, maintained on a "when I feel like it" basis by my collegues and myself.

      Needless to say, they are filled with stupid things like

      /*a- do this 10 times*/
      /*d- i like 3 times better*/

      and

      /* l - who uses if statements? */

      (These are copied out of the code. The letters id the programmer who wrote that section.)

      --
      it's green.
    6. Re:Post your own comments by renehollan · · Score: 1
      Sure, in C: x ^= y; y ^= x;

      The assembler is similar (and without all that wimpy type checking).

      -RSH

      --
      You could've hired me.
    7. Re:Post your own comments by caliban · · Score: 1
      Somehow this got inserted into some vba code i was writing late at work last night...

      'YES I want to delete 12,372 records, quit bugging me...
      DoCmd.ShowWarnings False

    8. Re:Post your own comments by tamarik · · Score: 2

      in 360bal:

      xc a,b
      xc b,a
      xc a,b

      all have to exec or there is garbage in one or the other. This was an extra credit question on my assembler final in college in '85. (Yes, I got it :-)

    9. Re:Post your own comments by renehollan · · Score: 1
      Er, can't overflow fsck this up?

      - RSH

      --
      You could've hired me.
    10. Re:Post your own comments by cotopaxi · · Score: 2

      My favorite comment was in some webobjects objective c code i had to look through. The snippet was inherited from a guy who just took off and went to germany one day.

      There was this awful loop that was nested about 5 levels deep, completely obfuscating variable names, seemed to serve no purpose, etc.

      The only comment in sight was a one-liner before the loop that said in German "I need to get some more cigarettes".

      We never did figure out what the loop did, and weeded it out of the next build.

    11. Re:Post your own comments by gunner800 · · Score: 2
      How do you post your own comments? Well, it's sort like posting anything else, except you stick a // or a /* or a # in front, depending on your native language.

      Or how do you exchange two value without a third variable? Someone posted an assembly snippit that looks like it would do it (my assembly is very rusty), but here's an algorithm:

      You have two variables of the same size, V1 and V2, which are not in the same location in memory.

      1. Set V1 = (V1 XOR V2)
      2. Set V2 = (V1 XOR V2)
      3. Set V1 = (V1 XOR V2)
      The XOR is a bitwise XOR, i.e. 1010 XOR 1100 = 0110

      This is generally not as fast as doing it the old fashioned way, but it can be good if storage is very scarce (usually registers).


      Dammit, my mom is not a Karma whore!

  51. Re:My how time flies by DoctorPepper · · Score: 1

    Nice sig, why don't you give credit to the person who actually thought it up, Abraham Lincoln.

    --

    No matter where you go... there you are.
  52. If you think this is funny.. by Destacona · · Score: 1
    may I recommend to you the "Wacky Fun Computar Comic Jokes" on Jeff K.'s site.

    These comics contain humor the likes of which the world has not yet seen. "I INSTALLED LUNIX AND FPROTTED THIER TARBALL!!!!!@#"

  53. Re:Another one... by Booker · · Score: 1

    Or I could post the URL, and land in jail... :/

    It's the _information_ I found, not the copyrighed document. Relax. :)

    ---

  54. Re:The value of a manual by Enahs · · Score: 3

    Ahhh...no, don't have a CoCo, but I *do* have an old 1000 EX (cruddy, not as open...and my old DOS 2.11 disk still works. No one should need more than 360k to store their data. :^)

    Along with the old 1000 EX I have an old DMP 130 printer (don't ya love how Tandy turns acronyms into model numbers?) The manual for the printer had nearly EVERYTHING you ever needed to know about the printer. My current HP? The manual might as well be a single sheet with the words "Magic Happens. Send it back if it's broke." :^( If it weren't for companies so busy trying to protect trade secrets, we wouldn't have this problem. I suppose companies like IBM can't be blamed too severely for this attitude; my old DMP 130 rarely got switched to native mode, instead staying in ProPrinter mode. Most folks using ProPrinter drivers on their PCs, I daresay, didn't have an IBM ProPrinter. :^)

    I just wonder what would have happened if we had had the distribution power of a deregulated Internet just, say, five years earlier when computer components were more thoroughly (or at least openly) documented. We might have had a GPLed OS, freely available, a lot sooner.

    A lot of folks credit Microsoft for taking away the need for hacking your own drivers, your own interfaces for hardware. IMHO, that's just a spin of the opinion that Microsoft has pushed hardware manufacturers to produce drivers for hardware rather than documenting interfaces. Yeah, the pre-Windows DOS world was a mess. But for folks who want to use OSs like Linux, and run head-first into undocumented hardware, it's a pain.

    --
    Stating on Slashdot that I like cheese since 1997.
  55. Out of context by brank · · Score: 2
    In linux/init/main.c:

    /*
    * Tell the world that we're going to be the grim
    * reaper of innocent orphaned children
    ...
    */
    child_reaper = current;

    In context this makes sense, but by itself it's funny.

    --
    it's green.
  56. My favorite comment by Robin+Hood · · Score: 3
    I don't know about anyone else, but the comment from sys.c was my favorite:

    /*
    * This needs some heave [sic] checking ...
    * I just haven't get the stomach for it. I also don't fully
    * understand sessions/pgrp etc. Let somebody who does explain it.
    */

    For some reason, as I was reading that comment, I saw the "I haven't got the stomach for it" part first, then I saw the "heave" checking line. In that context...

    Linus, 3 AM: Whew, that's done. I'll check it in the morning, I'm going to bed.
    Linus, 10 AM: Ugh, where's my coffee?
    Linus, 11 AM: Ahh, that's better. Now let's take a look at what I wrote last night. Yikes, that's ugly. Shouldn't have looked at that on an empty stomach... I think I'm going to be sick...
    Linus runs to the bathroom to do a little "heave" checking..
    Linus, 11:15 AM: Better write a comment to remind myself not to do that again...

    Well, that's how I pictured it anyway. :-)
    -----
    The real meaning of the GNU GPL:

    --
    The real meaning of the GNU GPL:
    "The Source will be with you... Always."
  57. Another GeoWorks fan! by DragonHawk · · Score: 2

    ... does anybody remember Geoworks? That was a cool piece of software...

    GeoWorks Ensemble! AKA PC/GEOS! Now NewDeal. That program has had more names then Prince, but it was still cool. I still miss GeoWrite. Still the best WYSIWYG word processor I've used, to this day.

    For those who don't know, PC/GEOS was a multi-tasking, multi-threading, object-oriented GUI operating environment that ran on a PC/XT with 640KB of RAM and 10 MB of hard disk. And it was pretty fast, too. A company is trying to resurrect it as NewDeal Office, but I don't put high hopes on it.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
    1. Re:Another GeoWorks fan! by workingman · · Score: 1

      Heh, i remember geowrite and geopaint for my c-64, i used that computer until i got my brand new pentium pro 180 which i'm still using, yeah i know, i used both for far too long, but i've never had any of this thing called money, so i use what i can get.

  58. Are comments legal material? by lpontiac · · Score: 1

    I've been known to throw in some kludgy, unreliable hack and prefix it with // so sue me ... probably not a good idea these days :oP

  59. I disagree with your feelings about GeoWorks by DragonHawk · · Score: 2

    I _hated_ Geoworks.

    Well, you're entitled to your opinion.

    The thing didn't have anything really useful...

    I suppose that depends on your definition of "really useful". Me, I was still using it for my word processor until 1997.

    ... was slow ...

    Slow? Slow?!? GeoWorks ran well on my Tandy 1000 SL with 640 KB of RAM, 40 MB HDD, and an 8 MHz Intel 8088 microprocessor! Ony my friends brand new, lightning fast 80286, screaming at 12 MHz, with a whopping 2 MB of RAM, it darn near flew!

    Any computer capable of running MS Windows 3.1 well would have made GeoWorks look like FTL travel. I can only conclude you were using a different product, had broken hardware, or were running it under MS-Windows or some such thing.

    ... was UGLY as sin.

    I didn't think so, but beauty is in the eye of the beholder.

    This was back in the day when the only use for Windows 3.1 I had was for launching up the occasional Solitare game, or to connect to AOL.

    That is interesting, because PC/GEOS included both a solitaire game, and the original version of America Online. AOL got started on PC/GEOS, because it was the only GUI worth a damn that could run on PCs way back then.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  60. Re:I don't know... by ucblockhead · · Score: 2

    You think that's sad...I've got one of those from a junior high typing class, circa 1978.

    Produced on a manual typewriter...

    --
    The cake is a pie
  61. Smilies? What's up with that? by ktakki · · Score: 1

    /* This is the default interrupt "handler" :-) */

    Those cutesy little emoticons remind me of teenage girls who dot their Is with hearts or smiley faces.

    Linux, the operating system of choice for alt.cuddle.

    >>>

    k.


    --
    "In spite of everything, I still believe that people
    are really good at heart." - Anne Frank

    --
    "In spite of everything, I still believe that people are really good at heart." - Anne Frank
  62. Moral of the story.. by lpontiac · · Score: 1
    (and something I think people lose track of sometimes...)

    Coding is meant to be fun :)

  63. Re:Pity... by Enahs · · Score: 1

    What I find revolutionary behind the thinking of Linux is that one doesn't have to reinvent the wheel to implement new ideas.

    During the 80's, nearly every new piece of hardware had a new OS (well, not the Atari ST...it had a kinda-sorta DOS on the M68K, which is weird, with GEM running on top of it.) The same seems to be true even today.

    Some folks used to complain about the then monolithic nature of the Linux kernel. My big complaint about most *desktop* OSs is that they *act* as if they're monolithic. Even BeOS commits this unpardonable sin. Gee, did something cause an overflow in the GUI code? Gee, that's too bad; that took down the whole system. Contrast that with my setup of running Linux Mandrake 7.0, running Window Maker and a slew of tools on X11R6. Gee, did something lock up X? X has gotten stable enough (with my graphics card, at least) that usually a Ctrl-Alt-Backspace restarts X.

    A number of other services on my Linux system are user space. Some folks think this an antiquated idea from the past. I think it to be a necessary step toward stability. Hrm, did something happen to Samba? Guess I'll restart it (made all the easier with Sys V-style init) and see what's going on. Some other service crash? Oh good; it didn't take the system down. On my Win98 machine, for some reason, the print spooler randomly causes a GPF when the printer abstraction layer interfaces with the printer (is that how it works? Lemme know if not...). WHY does the printer driver take down the entire system??? I have found the same to be true in MacOS and BeOS, too...anyone with other OSs care to comment?

    --
    Stating on Slashdot that I like cheese since 1997.
  64. I don't comment my code by goingware · · Score: 3
    I don't commend my code hardly at all, believing that if it needs comments, I haven't done my job well enough of making the code clear.

    Note that this is a distinctly different attitude than figuring you must be incompetent if you need comments in the code you're maintaining.

    Part of the reason I got to be this way is that a boss pointed out that comments are often not maintained as well as the code, and over time can actually come to be misleading. For that reason, it is best to code clearly (ie, use meaningful variable names and such).

    While this does tend to reduce the opportunity to put jokes in the source, I heard the following appeared in some pascal source written by an Apple employee:

    procedure GetDown( AndBoogie: OneMoreTime );

    Mike

    Tilting at Windmills for a Better Tomorrow
    --
    -- Could you use my software consulting serv
    1. Re:I don't comment my code by renehollan · · Score: 1
      Ah, but my favorite is the COBOL:

      perform intercourse until tired.

      The above line WAS in all caps (as it should be for COBOL), but it set off the lameness detector. Feh.

      -RSH

      --
      You could've hired me.
    2. Re:I don't comment my code by Drone-X · · Score: 1

      I don't commend my code hardly at all, believing that if it needs comments, I haven't done my job well enough of making the code clear.

      I always comment my classes, fields in methods using JavaDocs. This way I can compile an easy reference as HTML documents (example).

      I think documenting the behaviour and use of classes, fields and methods is important, not so much documenting the code that's inside a method (though I often document that too).

      Another advantage of JavaDocs (There's a similar thing for C(++)) is that the HTML documents can be used as a specification (if done well, of course).

      You make a valid point about updating the code though.


      Donate Food for Free - http://www.thehungersite.com
    3. Re:I don't comment my code by RMHJ · · Score: 1

      > I don't commend my code hardly at all, > believing that if it needs comments, > I haven't done my job well enough of > making the code clear. If the quality of this English matches the quality of your comments, urk! Sometimes, nothing but a comment will do. Particularly mathematical transformations that don't bear any obvious relationship to the algorithm. Lots of code doesn't need this, but there's plenty that does. Especially some of the best code -- these sorts of transformations will sometimes turn pages of complicated code into something simple, elegant, and straight-line. And even a comment to the effect: /* * Nothing fancy going on here. */ Tells you so...

  65. Re:My how time flies by jo-meder · · Score: 1

    >Nice sig, why don't you give credit to the person
    >who actually thought it up, Abraham Lincoln.

    No, he didn't. This is a free translation of an ancient Latin proverb ("Si tacuisses, philosophus mansisses").

  66. the strangest comments i have ever seen.... by drew · · Score: 4

    a friend of mine was writing a simple assembler in Perl for a class project he was working on. the assembler consisted of two parts, the first being the preprocessor that would strip out comments and replace labels with addresses and such, and th second part being the actual assembler.

    each part worked perfectly fine by itself, but for some reason the assembler as a whole was not working. finally he was fed up enough that in the middle of the program he wrote the preprocessed assembly out to a file and then read it all back in before continuing on with the program. it worked!!! this of course made no sense whatsoever, since he was merely writing the contents of an array to a fil and reading the exact same data back in. but for some reason that made the difference in whether or not the program would run successfully.

    being rather confused at this point, he commented out the lines that he had just added to the program and ran it again. lo and behold, it still worked. but when he rmoved those lines entirely, it stopped working.

    in the end, he turned in the project with the code in the middle still in place, commented out, preceded with a comment about how utterly strange it was and a warning that the commented code should not be removed for any reason...

    only time i've ever seen comments affect the actuall execution of a program.....

    --
    If I don't put anything here, will anyone recognize me anymore?
    1. Re:the strangest comments i have ever seen.... by Anonymous Coward · · Score: 2

      IBM's BASIC compiler, version 1.00 for the PC, circa 1982, had a size limit in it somewhere. Once my program broke 1000 lines or so, the only way I could get it to compile was to sprinkle lots of comment (REM) lines in the code. Sometimes adding them at the bottom would make something at the top work. I forgot how I discovered this, but I was just grateful that something worked, since I depended on the floating point format found in that compiler. God, that was a long time ago.

  67. Re:Pity... by TwP · · Score: 2
    Blah, Blah, Blah, Blah, Blah

    Sorry, I did not mean for this to be a flame, but your comment was a little offtopic (had nothing to do with comments in the Linux kernel) and it was way too long (I am a product of pop culture and need everything in sound-bites).

    Similar to humorus comments in code are humorus variables in mathematical equations. Doing graduate studies in physics means that you often times stay up very late trying to finish homework and generally keep from going crazy (friends and Unreal Tournament help with the crazy part). One very late night my friend came up with the "coffee cup" and "smiley face" notation. This prompted me to implement the star wars notation. At the end of two pages of work I was left with the equation
    "Death Star" + "Tie Fighter" = "Light Saber"
    where "X-Wing" and "Droid" had cancelled out about half-a-page before. This is made more funny by the fact that each figure was drawn out in painstaking detail.

    I have no idea what I was trying to solve for, but it was funny as hell when I got the paper back and the solution was correct!


    ------------------------------------------------ ----------------

  68. There is no substance here. Who modded this up? by howardjp · · Score: 1

    Think about, Win32 didn't exist,
    Yeah it did. Microsoft just hadn't publically released it yet.

    and IBM didn't know MS were going to screw them over with OS/2.

    It was pretty clear with the release of Windows 3.0 that Microsoft was a whore.

    Amiga were fighting with Atari.

    Atari had been dead for five years at this point.

    Heck, Tim Lee was thinking maybe Hypertext mught be a cool way to store his university notes, thus was born the web.

    The web already two years old.

    Usenet didn't contain thousands of porn pictures

    The only thing ever posted to Usenet in the past was porn. Nothing has changed.

    And still 10 years later, MacOS still is cludgy and can't multitask....I suppose some things just don't change.

    You have not used OSX, have you?

    1. Re:There is no substance here. Who modded this up? by Nick+Ives · · Score: 1

      Think about, Win32 didn't exist,
      Yeah it did. Microsoft just hadn't publically released it yet.

      Really? That would imply some sort of long term design. I always thought that Windows was some terrible ancient curse.
      See, the way I heard it, Gates was using his newfound wealth from DOS & Windows 3 to steal treasures of the ancient world. He had managed to locate the exact position of the fabled Pandora's box, and after a hefty struggle, he managed to get his hands on it. Of course he couldnt resist opening it and upon doing so an evil demon was released and cast a shadow over Redmond, and thus, Win32 was born.

      Amiga were fighting with Atari.
      Atari had been dead for five years at this point.

      I'm sure Atari the company didnt die until the early 90's. I have fond memories of regularly using my ST all the way upto 92, then I got my hands on my first PC and, well......

      You have not used OSX, have you?
      And neither have the majority of actual Mac owners, I suspect.

      Nick

      --
      Nick
    2. Re:There is no substance here. Who modded this up? by Carnage4Life · · Score: 2

      >>Amiga were fighting with Atari.
      >Atari had been dead for five years at this point.

      Whatever, I seem to remember my friends having an Atari ST which competed directly with the Amiga 500 when I was in high school. I graduated high school in '94 which is 8 years after which you claim Atari had died. It is obvious that you are the one that doesn't know that of which he speaks.

    3. Re:There is no substance here. Who modded this up? by ghostdancer · · Score: 1

      Yap! I remember that little software as well.

      I did some X11 programming using Desqview/X. Which work fine (with little change in the soure code) to run on my U' Unix Workstation.

      (I think I still have the old program somewhere...)

      Ghost Dancer

      --
      I rather be free in hell than a slave in heaven.
    4. Re:There is no substance here. Who modded this up? by Art+Tatum · · Score: 1
      Atari was always a more serious computer and popular with musicians due to its midi-ports.

      Heh. Do you realize how many musicians are *still* using Atari STs? A lot.

    5. Re:There is no substance here. Who modded this up? by spacey · · Score: 1

      You man OSX, which still doesn't seem very good at pre-empting the display? Watching ie crash on macosx is pretty funny. The app crashes, and the dialogue's frame comes up, but you the user have to switch to the finder to tell the OS that it's OK, you figured out it crashed when the main window dissapeared.

      -Peter

      --
      == Just my opinion(s)
  69. You're misreading... by slothbait · · Score: 3

    I'm pretty sure that Linus isn't implying that this code will *never* need to be changed in subsequent versions. Rather, these are comments intended for the original small circle of people who downloaded Linux v0.1 (the first public release).

    Those guys were all hard-core hackers too. They didn't just download, untar and make, they got into the guts and tweaked, often to customize the kernel for *their* hardware. Remember the comment about > 8 MB of memory? Linux 0.1 was written for *Linus's* 386. Not i386. He was hacking on the only box he had, and he expected that others would have to tweak the kernel to get it to work well on their boxes.

    With this on everyone's minds, Linus put in this comment saying that he felt this portion of code was better tuned and more scalable than most of the kernel, and so users of v0.1 probably wouldn't need to get their hands dirty in it.

    Recall back then this stuff was all for the personal use of a few hackers. When they tweaked the kernel for their particular hardware, they would submit those tweaks to be folded into Linus's code and only *then* did Linux start to expand from "only running on Linus's PC".

    --Lenny

    1. Re:You're misreading... by Carnage4Life · · Score: 2

      *sigh*
      You talk like you haven't written code before. Many times I have written code and declared "that's it", "I'm finished", "This is code is perfect" just to have a fellow developer suggest a test which the program fails or even worse have the code fail in production because you never thought of it. This is a natural occurence that all programmers deal with whether they are hard-core Linux kernel hackers or MCSEs using Visual Basic. I was merely commenting on this humorously and not trying to besmirch almighty Linus.

      PS: If I was a hard-core hacker(who says I'm not) and I saw a piece of code that said DON'T CHANGE ME while looking through some source code which was specific to 1 person's machine chances are that I would change the code to be more general. Especially if I had access to a different kind of machine from the original developer. Methinks a redefinition of your idea of hard-core hacker is needed.

    2. Re:You're misreading... by slothbait · · Score: 2

      You talk like you haven't written code before

      Why? Because I was trying to remind everyone of the intended audience of Linus's comments and code? That's just a historical consideration that I don't want lost in the noise.

      Of course I program...lately it's been all ASM test code for 8051 microcontrollers. "Bare metal" stuff, I guess. You seem to be a programmer, but if your sig is true, then you can't possibly be a "real programmer". Ah...debating sigs on Slashdot on Saturday morning. I guess I'm not a "real programmer", either...

      Look, I understand your point just fine, and I've certainly felt it myself. However, I don't think Linus's comment supports your case. This wasn't "production quality" code ... it was very much a work in progress. And I know you weren't trying to besmirch Linus. Hell, Linus doesn't need defending. It's RMS that needs defending, and I find myself doing it regularly...

      I really just think it's important to keep in mind who the intended audience of the original code really was. I feel it's an important historical consideration for the Free Software movement.

      I realize fully that hard core hackers tinker. I don't claim to be hardcore, but one of the things about my job that I love the most is replacing crappy, poorly done code that I've inherited from other engineers...most of whom don't like to code as much as I. But there was probably a hell of a lot to tinker with in the kernel just to get it to run on new systems back then. Getting it to run was the most important -- then the programmer can dive in and make it better.

      --Lenny

  70. Re:The oldies are the best by brank · · Score: 1
    You can get info on this comment at Dennis Ritchie's Website under "Insider Secrets" (its a little ways down the page).

    If you don't have the URL memorized, just click this.

    --
    it's green.
  71. Re:I don't know... by renehollan · · Score: 1
    Heh, that looks similar to part of a full-length female nude line-printer image that was floating around when I was in college (circa 1982). We got some dot-matrix graphic printers, and I wrote a program to estimate the grew level of the character image and produce a dithered higher-resolution image for the dot-matrix printer. It worked better than expected.

    I actually got to submit that program as part of an assignment (with different images).

    -RSH

    --
    You could've hired me.
  72. AC3 standard is here: by Jeremy+Erwin · · Score: 1
    AC3 Audio Standard. I'm not sure why the ATSC calls it A52...

    A partial software implementation is available at LiVid

  73. Re:The value of a manual by brank · · Score: 1

    How about computer manufactuarers who made two books? (The manual for mortal users and then the "technical reference") I remember getting my C64. The Tech book was twice as big as the manual. (Think it came seperatly, though. The manual did have some info in it, just not the assembly programming tutorial and such.)

    --
    it's green.
  74. The oldies are the best by sconeu · · Score: 1

    I blew my chance to moderate this topic with this post, but who cares...

    There is the classic comment in the Unix V6 process switching code: "You are not expected to understand this".

    Sometimes the oldies are the best.

    You can get your very own copy of old Unix sources from SCO at their Ancient Unix Page. Yeah, it's a click-thru license. But let's not go there now.

    --
    General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
  75. Get off it. by slothbait · · Score: 2

    Man, this was 1991. Smileys weren't cliche then, and teenage girls certainly didn't hang out on alt.cuddle back then.

    You know what? Bell bottoms look dumb today, too.

    Alright, alright...so they looked dumb *back then* too. /me should have picked a better example.

    --Lenny

  76. Re:The value of a manual by Spirilis · · Score: 1

    Oh man, if it weren't for the CoCo manuals and their little green stick figures and language that a 7-year-old could understand, I wouldn't be interested in computers right now. I had a CoCo 1, 2 and 3, but I didn't get any of them in the 80's; I got my first CoCo 1 at a flea market when I was about 12-13 years old. (I'm 18 now). The very simplistic BASIC programming book had me uber-hooked on programming after I figured it all out. A local guru that I met in Radio Shack helped me understand the basics of the hardware and stuff. Even today one of those CoCo 3's could be a great starting point for a prospective young computer nerd =)

    --
    the real at&t mix
  77. Not so ancient.. but still funny by Panaflex · · Score: 2

    +#if defined(__alpha__) && defined(CONFIG_PCI)
    + /*
    + * The meaning of life, the universe, and everything. Plus
    + * this makes the year come out right.
    + */
    + year -= 42;
    +#endif
    (From the patch for 1.3.2: (kernel/time.c), submitted by Marcus Meissner)

    Linux is obsolete
    (Andrew Tanenbaum)

    lp1 on fire
    (One of the more obfuscated kernel messages)

    /*
    * Oops. The kernel tried to access some bad page. We'll have to
    * terminate things with extreme prejudice.
    */
    die_if_kernel("Oops", regs, error_code);
    (From linux/arch/i386/mm/fault.c)

    /*
    * [...] Note that 120 sec is defined in the protocol as the maximum
    * possible RTT. I guess we'll have to use something other than TCP
    * to talk to the University of Mars.
    * PAWS allows us longer timeouts and large windows, so once implemented
    * ftp to mars will work nicely.
    */
    (from /usr/src/linux/net/inet/tcp.c, concerning RTT [retransmission timeout])

    Yanked from fortune...
    Pan

    --
    I said no... but I missed and it came out yes.
  78. My favorite by KillBot · · Score: 2

    arch/sparc/kernel/ptrace.c:/* Fuck me gently with a chainsaw... */

    Copyright (C) 1996 David S. Miller (davem@caipfs.rutgers.edu)

    1. Re:My favorite by zzendpad · · Score: 1

      Actually, that line is (C) 1989, Cinemarq/New World Entertainment.

  79. "magic happens" by Malk-a-mite · · Score: 3
    " /* I know - shouldn't do this, but .. */ "

    I feel better now, these words have gotten me in more trouble than anything else.

    Malk-a-mite

  80. Comments are a time capsule. by Mija+Cat · · Score: 4

    Comments in code are like a time capsule, from one programmer to another. They communicate what the code does, but also the mood of the author.

    My first coding job was cleaning and adding "improvements" to some anchient and nasty C code.
    Some of the comments described the previous programmers' marital problems, opinions on co-workers, etc.
    It made a sucky job more bearable.

    Meow!

    --
    Yes, that's really my e-mail. Don't change a thing.
  81. My how time flies by Gandalf_007 · · Score: 1
    Let's see... in 1991, I was in elementary school, most of the computers were either Apple ][ or Commodore or IBM PS/2's (the only one of those that I still use...'cause it runs Linux!), and the question "Do you have an Apple or an IBM?" made perfect sense. Just think, Windows 3.1 wasn't even out yet, and Linux had been started!
    I'm sure the next thing I'll find out is that Slashdot had been secretly going on since 1993 or so...

    --

    "It's better to keep your mouth shut and be thought a fool than to open it and remove all doubt."
    1. Re:My how time flies by brank · · Score: 1
      Hmmm.... With some work, NetBSD might run on a Commodore, I think it supports a variation of that processor... But the problem would be fitting it into enough space to use on a C64/128. That number is Kbytes, remember.

      You can buy 1-2GB HDs from CMD, maybe some creative swapping routines or something.

      Workable. But in the end, very difficult. Easier to just create a Bourne-type shell (you could do that in BASIC) that translated commands into the equivilents for use on the Commodore. Then create a C-to-BASIC (Or maybe Pascal-to-BASIC, sounds easier, and there are C-to-Pascal thingies.) that would figure out how to make something that depended on Unix stuff work with nothing but a BASIC interpreter.

      Yeah, it might be possible. You would probably end up rewriting more than porting, but still... (for instance, XF86 would need to be replaced by a different X server)

      --
      it's green.
  82. this is a dumb comment i knew someone would make by Hollins · · Score: 5

    Why didn't you post Linus' entire comment?

    For those with more memory than 8 Mb - tough luck. I've
    * not got it, why should you :-) The source is here. Change
    * it. (Seriously - it shouldn't be too difficult. Mostly
    * change some constants etc. I left it at 8Mb, as my machine
    * even cannot be extended past that (ok, but it was cheap :-)
    * I've tried to show which constants to change by having
    * some kind of marker at them (search for "8Mb"), but I
    * won't guarantee that's all :-( )

    Bill Gates didn't include source code and encourage others to change it. He wasn't saying it in jest, and he was not referring to an Alpha release.

    All this making you the bigger idiot.

  83. My personal fav... by Anonymous Coward · · Score: 1

    /* Dijkstra probably hates me.... */

    Which used to be in kernel/sched.c

  84. Re:Post your own comments oops by renehollan · · Score: 1
    er, that needs another x ^=y;

    -RSH

    --
    You could've hired me.
  85. Can Someone Answer This.... by Carnage4Life · · Score: 5

    from sched.c:

    /*
    * 'schedule()' is the scheduler function. This is GOOD CODE! There
    * probably won't be any reason to change this, as it should work well
    * in all circumstances (ie gives IO-bound processes good response etc).

    Okay can anyone tell me how many times they have thought the exact same thing about their only for somebody else to suggest a scenario or even worse use it "improperly" and find a bug. I think I'm up to several dozen times... :-)


  86. Some of the comments have made it to this day. by tie_guy_matt · · Score: 1

    I hope that comment about noone needing more than
    8 megs of memory isn't one of the comments that
    survives.

    Seriously though, you stay up all night writing
    and OS you gotta let it out. I am sure most people
    would have been at least a bit sarcastic in the
    comments as well.

  87. My favorites by DragonHawk · · Score: 2

    Somebody already posted the start of the cmd640.c file, but I haven't seen any quotes from srmmu.c, which had me ROTFL when I first read them.

    #if 0 /* I think this is bad news... -DaveM *

    /* And one more, for our good neighbor, Mr. Broken Cypress. */

    /* Gee george, I wonder why Sun is so hush hush about this hardware bug... really braindamage stuff going on here. However I think we can find a way to avoid all of the workaround overhead under Linux. Basically, any page fault can cause kernel pages to become user accessible (the mmu gets confused and clears some of the ACC bits in kernel ptes). Aha, sounds pretty horrible eh? But wait, after extensive testing it appears that if you use pgd_t level large kernel pte's (like the 4MB pages on the Pentium) the bug does not get tripped at all. This avoids almost all of the major overhead. Welcome to a world where your vendor tells you to, "apply this kernel patch" instead of "sorry for the broken hardware, send it back and we'll give you properly functioning parts" */

    /* You see Sun allude to this hardware bug but never admit things directly, they'll say things like, "the Swift chip cache problems" or similar. */

    /* Are you now convinced that the Swift is one of the biggest VLSI abortions of all time? Bravo Fujitsu! Fujitsu, the !#?!%$'d up processor people. I bet if you examined the microcode of the Swift you'd find XXX's all over the place. */

    /* TurboSparc is copy-back, if we turn it on, but this does not work. */

    /* Emulate VLSI abortion number three, not number one */

    /* Tsunami's pretty sane, Sun and TI actually got it somewhat right this time. Fujitsu should have taken some lessons from them. */

    /* Ahhh, the viking. SRMMU VLSI abortion number two... */

    /* Oh well */
    srmmu_is_bad();

    /* El switcheroo... */

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  88. The value of a manual by Woodmeister · · Score: 3
    ...snip...

    /*Don't know why, and I haven't tested it on a drive with
    * more than 8 heads, but that is what the bios-listings seem to imply. I
    * just love not having a manual.

    */

    Tell me about it. One of the things I used to love about purchasing computer parts years ago were the schematics, programming info, etc.....

    I used to own a Tandy Color Computer 3 years ago, and it was quite the little workhorse. Small, very modular (tho this was problem if you had floppy,HD,RS-232,controllers,etc... -- thing got messy), and was remarkably easy to program. It had fairly advanced HW for the time (decent MMU; better graphics than CGA and on par with EGA), and was much cheaper than an full 'IBM PC' (remember when?).

    One of the killers of this little jewel was the PC/MSDOS hedgemony (later to become Intel/Windows) of software. Many users such as myself were interested in electronics and interfacing, and we loved to use our CoCo's for neat'n'easy projects. This required us to write our own software, interface with hardware at the driver level, and do other hacks to get things to our satisfaction. When we needed to use available hardware for whatever reason, nothing beat a useful manual to help make life much easier. Nothing worse than stabbing in the dark.

    Ahh. My CoCo. I truly loved that machine. Anyone else here a former CoCo addict?
    --
    You're still using Windows?

    --

    Quando Omni Flunkus Moritati
    -Possum Lodge Motto
    1. Re:The value of a manual by wass · · Score: 1
      I was in a very similary boat. I picked up my first CoCo at a flea market back in '86 (I was 11). It was sold "as is" for $20, but me and my father figured what the hell?

      Broght it home and it worked great for a few months. One day it just died. There were some wires hanging out of it where the original ownder soldered into the circuitry for some project. We think we may have shorted something out and blown a component. Oh well, it was much fun while it lasted. Helped my basic skills (and my math too, as I had to figure out how sines and cosines work to draw a circle, etc).

      of course, my first computer experience was with the trs-80 several years earlier. but i was just itching for a 'color' computer.

      --

      make world, not war

    2. Re:The value of a manual by wass · · Score: 1
      long with the old 1000 EX I have an old DMP 130 printer (don't ya love how Tandy turns acronyms into model numbers?) The manual for the printer had nearly EVERYTHING you ever needed to know about the printer. My current HP? The manual might as well be a single sheet with the words "Magic Happens. Send it back if it's broke

      Yeah, i love the old hardware mentality. I remember my first printer, the classic Epson MX-80, 9 pin (or was it 8?) dot matrix printer. Not only did it come with a very in-depth programming manual, but also came with a full set of schematics! It was great. I still remember some funny one-liners from the manual. After showing you how to do simple 1-bit depth raster graphics they said something like "Now wait a minute before you rush off to forge the Mona Lisa, there's still much more to learn". it was awesome! Nowadays you rarely see personality in a product book.

      What these companies realized (and most companies today still don't) is that merely having access to schematics, or even the source code to hardware drivers, still doesn't put you in the position to make a clone. Ie, having the full schematics for the printer, if I wanted to build one, I'd still have to re-do the schematic captuer and fab/stuff the boards. Okay, so that part gets easier. But I'd still need to do all the hardware layout, build the moving print-head and the 9-pin dot-matrix pin stamper, and the moving ink ribbon, and all that other stuff. This takes time, and certainly isn't instantaneous! by the time a clone company would get a product done, the original company could have improved the original product greatly, leaving the clone company in the dust. And of course, the hardware hackers (and software hackers too) have full information. But nowadays this never happens anymore.

      --

      make world, not war

    3. Re:The value of a manual by ncc74656 · · Score: 1
      Ahh. My CoCo. I truly loved that machine. Anyone else here a former CoCo addict?

      It was the first machine I ever did any remotely serious coding on...way back in '81 or so. I had used a TRS-80 Model I and an Apple II+ before that, but had done little more with those machines than play a game or two. My grandfather had (probably still has) a CoCo that got upgraded over the years to 64K and a pair of double-sided floppy drives...learned BASIC on it and started to learn 6809 assembly language on it. The first computer I had at home was a TI-99/4A in '83 (right as TI was getting out of the computer business)...it could do a few things the CoCo didn't, but wasn't nearly as flexible overall (could only code for it in a really crappy double-interpreted BASIC). When the home machine was upgraded to an Apple IIe in '85 (with 128K, a DuoDisk, and an Imagewriter), it was amazing how much what I had learned on the CoCo could be transferred over. (I was coding in 6502 assembly within a week or so of getting the machine.)

      While I'd identify myself mainly as an Apple II geek (still have that IIe, though it's been heavily upgraded over the years (including a motherboard swap to make it into a IIGS), and it sits right next to my 450-MHz K6-III...and my Usenet sig has the same ASCII-art Apple logo that it had ten years ago), the CoCo is the machine on which I made my first real foray into this wild and crazy world of computers.

      _/_
      / v \
      (IIGS(Scott Alfter
      \_^_/

      (Wow...now that I've finally figured out how to get /. to render my sig, maybe I'll start using it. When <pre> isn't available to you, &nbsp; is your friend. :-) )

      _/_
      / v \
      (IIGS( Scott Alfter (remove Voyager's hull # to send mail)
      \_^_/

      --
      20 January 2017: the End of an Error.
  89. ANSI compliance by Old+Wolf · · Score: 1

    void main(void) /* This really IS void, no error here. */

    This is not ANSI-compliant. With this sort of thing around, no wonder GCC is the only compiler that will compile Linux. And people complain when MS don't adhere to standards....

  90. DieYouGravySuckingPigDog() by superid · · Score: 1
    I *swear* that once while browsing kernel source I saw a function with that name....

    But I've never been able to find it again :(

    1. Re:DieYouGravySuckingPigDog() by rgmoore · · Score: 1
      I *swear* that once while browsing kernel source I saw a function with that name....

      And that, my friend, is what grep(1) is for.

      --

      There's no point in questioning authority if you aren't going to listen to the answers.

  91. Wrote this one just yesterday by xant · · Score: 2
    I like to comment other peoples' code. For example:

    // And what exactly does THIS do? Comments sure can be helpful.

    --
    It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
  92. I like this linux source comment by tap · · Score: 5

    It's from the driver for the cmd640 IDE chipset.

    * This file provides support for the advanced features and bugs
    * of IDE interfaces using the CMD Technologies 0640 IDE interface chip.
    *
    * These chips are basically fucked by design, and getting this driver
    * to work on every motherboard design that uses this screwed chip seems
    * bloody well impossible. However, we're still trying.

  93. Re:Heh... by kevin805 · · Score: 1

    Ever read Vinge's Deepness in the Sky? It's set like, 20k years in the future, and there's a bit where one of the characters mentions the beginning of the second counter as being about the same time man first landed on the moon, but actually, a few months later.

    I wonder if any of Linus' original comments survive?

  94. Re:ASCII PORN by iMacGuy · · Score: 1

    Who moderated this informative?

    --
    Why won't slashdot let me change my terrible username :(
  95. Ever heard of ANSI? by Hollins · · Score: 2

    They charge out the wazoo for their standards. Even if you're just downloading a copy from their website.

  96. Heh... by Resident+Geek · · Score: 1

    My personal fave:

    PS. I hate whoever though up the year 1970 - couldn't they have gotten a leap-year instead? I also hate Gregorius, pope or no. I'm grumpy.

    --
    Fighting the War on the War on Drugs.
    http://smokedot.org/
  97. commenting forms community by griffjon · · Score: 4

    I wonder how much this early commenting helped form the Linux programmer community and shape it's atmmosphere early on? Getting the self abasing and also highly informative comments delivered to an audience of peers (...even if you weren't a peer, it made you feel like one to read those comments)

    --
    Returned Peace Corps IT Volunteer
  98. VB 3.0 took time to execute comments by divec · · Score: 3

    While we're at it, I thought I'd point the above out. I remember calibrating delay loops by putting things like REM : REM : REM : REM : REM in. I mean, y'd expect it to cause a delay when running interpreted, but not in the compiled version. I suspect that VB "executable" files probably just had a stub at the beginning that loaded a DLL to interpret the (obfuscated?) code within the rest of the "executable".

    --

    perl -e 'fork||print for split//,"hahahaha"'

  99. Re:Try again by divec · · Score: 1
    Bill Gates was also quoted out of context.

    Ok, care to fill us in on the full quote then? It's clear Linus was joking. Let's here what Bill had to say. And preferably also the person from IBM who invented the 1MB limit which is still a problem to some people today.
    --

    perl -e 'fork||print for split//,"hahahaha"'

  100. Re:Linux walks on water by VaporX · · Score: 1

    Who the hell is Linux?

  101. Re:So opinion is now flambait??? by VaporX · · Score: 1

    You're forgetting that to the Linux-zealot, any criticism of Linus Torvalds is heresy and will get you burned at the stake. Welcome to the religion of the future.

  102. Re:this is a dumb comment i knew someone would mak by AndyL · · Score: 1

    Not really. Since the gates quote is apocryphal.

  103. Another one... by Booker · · Score: 2

    I wanted to make my own MICR font so I could try writing a free check-printing program... big bucks for all that stuff, too (MICR character definitions, character placement, check dimensions, etc...)

    I finally found some of it on a canadian bank org's website - probably not supposed to be there. :)

    ---

  104. Pity... by SigILL · · Score: 1

    It's just a pity it was based on an operating system design of (then) 20 years old, which should have been obsoleted by then.

    If anything, Linux is a pretty ugly UN*X implementation.
    --

    --
    Error: password can't contain reverse spelling of ancient Chinese emperor
  105. Moderated to Funny? by seizer · · Score: 1

    Who moderated this to funny? It's for real! doh :-)

    --Remove SPAM from my address to mail me

  106. ASCII PORN by Anonymous Coward · · Score: 2

    &nbsp&nbsp&nbsp&nbsp&nbsp±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp±±±±±±
    &nbsp&nbsp&nbsp&nbsp±±±±±
    &nbsp&nbsp&nbsp&nbsp±±±±±
    &nbsp&nbsp&nbsp&nbsp±±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp±±±±±±
    &nbsp&nbsp&nbsp&nbsp±±ÛÛ±±
    &nbsp&nbsp&nbsp&nbsp±±±±ÛÛ±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±±±ÛÛ
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±±± ÛÛ
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±± ± ±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp±±±±± ±±±± ±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp &nbsp±±±±±±±±± ±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp &nbsp±±±±±±±±±±±±±±±±± ±±±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp &nbsp&nbsp±±±±±±±±± ±±±±±±±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp &nbsp&nbsp±± ±±±±±±
    &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp &nbsp&nbsp&nbsp±± ±±±±