41 votes

Share the contents of an old file you've got lying around

Share some digital clutter from one of your hard drives -- something from a LONG time ago. For example: a to-do list, poetry, a script you wrote, a PowerPoint presentation, etc.

Give us the date the file was created/modified.

And, if you so choose, give us context on the file (but if you'd rather let it speak for itself, feel free!).

36 comments

  1. [8]
    Boojum
    Link
    Oh, this led to some fun spelunking! Here's an old program of mine from my teens, TURB2.C. The date stamp must have gotten corrupted somewhere along the way (it shows as Dec 31 1979), but given...

    Oh, this led to some fun spelunking!

    Here's an old program of mine from my teens, TURB2.C. The date stamp must have gotten corrupted somewhere along the way (it shows as Dec 31 1979), but given that TURB.C is from Nov 30 1996, I probably wrote this some time in early December 1996.

    TURB2.C
    /*========================================================================*/
    #include <stdio.h>
    #include <dos.h>
    #include <stdlib.h>
    #include <mem.h>
    
    /*========================================================================*/
    void main(void);
    void SetVideoMode(void);
    void SetPalette(void);
    void InitNoise(void);
    void CalcTurbulence(float,float,float *,float *);
    void DrawDisplay(void);
    void OutputFile(int);
    void ClearScreen(void);
    void TweekNoise(void);
    void SetTextMode(void);
    
    /*========================================================================*/
    unsigned char tgapal[768];
    float noisex[33][33],noisey[33][33];
    
    /*========================================================================*/
    void main(void)
    {
    	int s;
    	int f,nf;
    
    	printf("Turbulence #2 - By [REDACTED/Boojum]\n");
    	printf("Enter a seed (integer).\n>>");
    	scanf("%u",&s);
    	printf("Enter the number of frames.\n>>");
    	scanf("%u",&nf);
    	srand(s);
    	SetVideoMode();
    	SetPalette();
    	InitNoise();
    	for (f=0;f<nf;f++)
    	{
    		DrawDisplay();
    		OutputFile(f);
    		ClearScreen();
    		TweekNoise();
    	}
    	SetTextMode();
    }
    
    /*========================================================================*/
    void SetVideoMode(void)
    {
    	_asm
    	{
    		mov ax,0x13
    		int 0x10
    	}
    }
    
    /*==========================================================================*/
    void SetPalette(void)
    {
    	short x,z;
    	unsigned pal[768],r,g,b;
    
    	z=0;
    	for (x=0;x<=255;x++)
    	{
    		r=x;
    		g=x>>1;
    		b=x>>2;
    		if (r>63) r=63;
    		if (g>63) g=63;
    		if (b>63) b=63;
    		tgapal[z]=b<<2;
    		pal[z++]=r;
    		tgapal[z]=g<<2;
    		pal[z++]=g;
    		tgapal[z]=r<<2;
    		pal[z++]=b;
    	}
    	outp(0x3c8,0);
    	for (z=0;z<768;z++) outp(0x3c9,pal[z]);
    }
    
    /*========================================================================*/
    void InitNoise(void)
    {
    	int x,y;
    
    	for (y=0;y<32;y++)
    		for (x=0;x<32;x++)
    		{
    			noisex[x][y]=((float)rand()/RAND_MAX)*12-6;
    			noisey[x][y]=((float)rand()/RAND_MAX)*12-6;
    		}
    	for (x=0;x<32;x++)
    	{
    		noisex[x][32]=noisex[x][0];
    		noisex[32][x]=noisex[0][x];
    		noisey[x][32]=noisey[x][0];
    		noisey[32][x]=noisey[0][x];
    	}
    }
    
    /*========================================================================*/
    void CalcTurbulence(float x,float y,float *rx,float *ry)
    {
    	int l,p,t;
    	float a,b;
    	int i,j;
    	float in1,in2;
    
    	*rx=0;
    	*ry=0;
    	t=0;
    	for (l=0;l<7;l++)
    	{
    		p=1<<l;
    		t+=p;
    		a=x/p;
    		b=y/p;
    		i=(int)a;
    		j=(int)b;
    		a-=i;
    		b-=j;
    		i&=31;
    		j&=31;
    		in1=noisex[i][j]*(1-a)+noisex[i+1][j]*a;
    		in2=noisex[i][j+1]*(1-a)+noisex[i+1][j+1]*a;
    		*rx+=(in1*(1-b)+in2*b)*p;
    		in1=noisey[i][j]*(1-a)+noisey[i+1][j]*a;
    		in2=noisey[i][j+1]*(1-a)+noisey[i+1][j+1]*a;
    		*ry+=(in1*(1-b)+in2*b)*p;
    	}
    	*rx/=t;
    	*ry/=t;
    }
    
    /*========================================================================*/
    void DrawDisplay(void)
    {
    	unsigned char *scrn,*p;
    	unsigned int j,sx,sy;
    	float x,y,dx,dy;
    
    	scrn=MK_FP(0xa000,0);
    	for (sy=4;sy<196;sy+=4)
    		for (sx=4;sx<316;sx+=4)
    		{
    			x=sx;
    			y=sy;
    			for (j=0;j<100;j++)
    			{
    				CalcTurbulence(x,y,&dx,&dy);
    				x+=dx;
    				y+=dy;
    				if (x<1||x>318||y<1||y>198) break;
    				p=scrn+((unsigned int)y<<8)+((unsigned int)y<<6)+(unsigned int)x;
    				if (*p<250) (*p)+=5;
    				if (*(p-320)<252) *(p-320)+=3;
    				if (*(p+320)<252) *(p+320)+=3;
    				if (*(p-1)<252) *(p-1)+=3;
    				if (*(p+1)<252) *(p+1)+=3;
    			}
    		}
    }
    
    /*========================================================================*/
    void OutputFile(int f)
    {
    	unsigned char head[]={0,1,1,0,0,0,1,24,0,0,0,0,64,1,200,0,8,32};
    	unsigned char *scrn;
    	char fname[20];
    	FILE *fp;
    
    	scrn=MK_FP(0xa000,0);
    	sprintf(fname,"FRAME%03u.TGA",f);
    	fp=fopen(fname,"wb");
    	fwrite(head,1,sizeof(head),fp);
    	fwrite(tgapal,1,768,fp);
    	fwrite(scrn,1,64000U,fp);
    	fclose(fp);
    }
    
    /*========================================================================*/
    void ClearScreen(void)
    {
    	unsigned char *scrn;
    
    	scrn=MK_FP(0xa000,0);
    	memset(scrn,0,64000U);
    }
    
    /*========================================================================*/
    void TweekNoise(void)
    {
    	int x,y;
    
    	for (y=0;y<32;y++)
    		for (x=0;x<32;x++)
    		{
    			noisex[x][y]+=(((float)rand()/RAND_MAX)-((float)rand()/RAND_MAX));
    			noisey[x][y]+=(((float)rand()/RAND_MAX)-((float)rand()/RAND_MAX));
    		}
    	for (x=0;x<32;x++)
    	{
    		noisex[x][32]=noisex[x][0];
    		noisex[32][x]=noisex[0][x];
    		noisey[x][32]=noisey[x][0];
    		noisey[32][x]=noisey[0][x];
    	}
    }
    
    /*========================================================================*/
    void SetTextMode(void)
    {
    	_asm
    	{
    		mov ax,0x3
    		int 0x10
    	}
    }
    

    Firing up DOSBOX to run the compiled executable, here's the kind of image that it generates.

    27 votes
    1. [2]
      Mendanbar
      Link Parent
      Super cool! I came across a lot of my old programs from college (late 90's/early 2000's) in my digging, but none of them were doing anything noteworthy.

      Super cool! I came across a lot of my old programs from college (late 90's/early 2000's) in my digging, but none of them were doing anything noteworthy.

      4 votes
      1. Boojum
        Link Parent
        Sometimes the non-noteworthy programs are fun to revisit too, just to see your frame of mind back then and how your style has evolved.

        Sometimes the non-noteworthy programs are fun to revisit too, just to see your frame of mind back then and how your style has evolved.

        1 vote
    2. [2]
      pete_the_paper_boat
      Link Parent
      C with inline assembly on old machines is satisfyingly simple and elegant. Oh the amount of work to get anything on a display nowadays... Thankfully we have raylib now..

      C with inline assembly on old machines is satisfyingly simple and elegant.

      Oh the amount of work to get anything on a display nowadays...

      Thankfully we have raylib now..

      3 votes
      1. Boojum
        Link Parent
        Yep, looking at my juvenalia here was a fun reminder of the days of unsigned char *scrn=MK_FP(0xa000,0); and scribbling directly into the video framebuffer memory. Despite doing GPU design for a...

        Yep, looking at my juvenalia here was a fun reminder of the days of unsigned char *scrn=MK_FP(0xa000,0); and scribbling directly into the video framebuffer memory.

        Despite doing GPU design for a living now, I've still been tempted to play around with doing gamedev using almost pure SW rendering, just uploading framebuffers to textures for scaling and presentation. Either SW sprite and map blitting, or old-school PSX-era rasterization. Maybe with wobbly fixed-point transforms and non-perspective correct textures, just for veracity.

        3 votes
    3. [3]
      kfwyre
      Link Parent
      This is very cool! Also, seeing this immediately reminded me of some game that I played back in the 90s that had a screen that looked like that but that I can't put my finger on. It had an almost...

      This is very cool!

      Also, seeing this immediately reminded me of some game that I played back in the 90s that had a screen that looked like that but that I can't put my finger on. It had an almost identical color scheme and similar wavy layout.

      My initial thought was that it was a SkyRoads background, but I found a list of those and none of them really match. Another part of me thinks maybe it was one of DOOM's interstitials, but no dice (it does admittedly look similar to one from Scythe, but I never played that game so it's not the one I'm thinking of).

      Anyone have a lead on this? Did it ping a memory for anyone else?

      2 votes
      1. [2]
        Boojum
        Link Parent
        Could you possibly have been thinking of the DOOM fire effect?

        Could you possibly have been thinking of the DOOM fire effect?

        2 votes
        1. kfwyre
          Link Parent
          Great guess! But no, I never played the console DOOM releases. Also that was an interesting read and a very cool effect.

          Great guess! But no, I never played the console DOOM releases.

          Also that was an interesting read and a very cool effect.

          2 votes
  2. [7]
    Mendanbar
    Link
    So this prompted me to do a little housecleaning, and I came across a file named deep_thoughts.txt. It's in an old folder that I've been copying from computer to computer for years. The file date...

    So this prompted me to do a little housecleaning, and I came across a file named deep_thoughts.txt. It's in an old folder that I've been copying from computer to computer for years. The file date is listed as 07/20/2003, but I suspect it might be older than that.

    The file is just a list of deep thoughts like the ones that used to appear in segments on SNL. I have no idea if all of them are actually from the show. I'll post the whole thing in a spoiler box below since:

    1. It's 179 lines long!
    2. I don't have time to read the whole thing and make sure there aren't any questionable/offensive ones. (apologies in advance if there are any)

    That being said, here are a few that made me chuckle:

    If you're a cowboy and you're dragging a guy behind your horse, I bet it would really make you mad if you looked back and the guy was reading a magazine.

    Broken promises don't upset me. I just think, why did they believe me?

    If you ever drop your keys into a river of molten lava, let'em go, because, man, they're gone.

    Here's the whole thing
    • I'd like to see a nature film where an eagle swoops down and pulls a fish out of a lake, and then maybe he's flying along, low to the ground, and the fish pulls a worm out of the ground. Now that's a documentary.

    • I wish outer space guys would conquer the Earth and make people their pets, because I'd like to have one of those little beds with my name on it.

    • Sometimes I think you have to march right in and demand your rights, even if you don't know what your rights are, or who the person is you're talking to. Then on the way out, slam the door.

    • If you're a cowboy and you're dragging a guy behind your horse, I bet it would really make you mad if you looked back and the guy was reading a magazine.

    • As a young boy, when you get splashed by a mud puddle on the way to school, you wonder if you should go home and change, but be late for school, or go to school the way you are; dirty and soaking wet. Well, while he tried to decide, I drove by and splashed him again.

    • If your friend is already dead, and being eaten by vultures, I think it's okay to feed some bits of your friend to one of the vultures, to teach him to do some tricks. But only if you're serious about adopting the vulture.

    • Broken promises don't upset me. I just think, why did they believe me?

    • I hope that someday we will be able to put away our fears and prejudices and just laugh at people.

    • If you ever crawl inside an old hollow log and go to sleep, and while you're in there some guys come and seal up both ends and then put it on a truck and take it to another city, boy, I don't know what to tell you.

    • One thing vampire children have to be taught early on is, don't run with a wooden stake.

    • If you go to a costume party at your boss's house, wouldn't you think a good costume would be to dress up like the boss's wife? Trust me, it's not.

    • There's nothing so tragic as seeing a family pulled apart by something as simple as a pack of wolves.

    • Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.

    • For mad scientists who keep brains in jars, here's a tip: why not add a slice of lemon to each jar, for freshness?

    • If I was the head of a country that lost a war, and I had to sign a peace treaty, just as I was signing, I'd glance over the treaty and then suddenly act surprised. "Wait a minute! I thought we won!"

    • Somebody told me how frightening it was how much topsoil we are losing each year, but I told that story around the campfire and nobody got scared.

    • I wish I had a dollar for every time I spent a dollar, because then, Yahoo!, I'd have all my money back.

    • I think people tend to forget that trees are living creatures. They're sort of like dogs. Huge, quiet, motionless dogs, with bark instead of fur.

    • Instead of studying for finals, what about just going to the Bahamas and catching some rays? Maybe you'll flunk, but you might have flunked anyway; that's my point.

    • I bet for an Indian, shooting an old fat pioneer woman in the back with an arrow, and she fires her shotgun into the ground as she falls over, is like the top thing you can do.

    • Perhaps, if I am very lucky, the feeble efforts of my lifetime will someday be noticed, and maybe, in some small way, they will be acknowledged as the greatest works of genius ever created by Man.

    • I have to laugh when I think of the first cigar, because it was probably just a bunch of rolled-up tobacco leaves.

    • If you're ever shipwrecked on a tropical island and you don't know how to speak the natives' language, just say "Poppy-oomy." I bet it means something.

    • Too bad Lassie didn't know how to ice skate, because then if she was in Holland on vacation in winter and someone said "Lassie, go skate for help," she could do it.

    • If you want to be the most popular person in your class, whenever the professor pauses in his lecture, just let out a big snort and say "How do you figger that!" real loud. Then lean back and sort of smirk.

    • I think my new thing will be to try to be a real happy guy. I'll just walk around being real happy until some jerk says something stupid to me.

    • I think college administrators should encourage students to urinate on walls and bushes, because then when students from another college come sniffing around, they'll know this is someone else's territory.

    • He was the kind of man who was not ashamed to show affection. I guess that's what I hated about him.

    • If they have moving sidewalks in the future, when you get on them, I think you should have to assume sort of a walking shape so as not to frighten the dogs.

    • Whenever I hear the sparrow chirping, watch the woodpecker chirp, catch a chirping trout, or listen to the sad howl of the chirp rat, I think: Oh boy! I'm going insane again.

    • It's fascinating to think that all around us there's an invisible world we can't even see. I'm speaking, of course, of the World of the Invisible Scary Skeletons.

    • The land that had nourished him and had borne him fruit now turned against him and called him a fruit. Man, I hate land like that.

    • I bet it was pretty hard to pick up girls if you had the Black Death.

    • Love can sweep you off your feet and carry you along in a way you've never known before. But the ride always ends, and you end up feeling lonely and bitter. Wait. It's not love I'm describing. I'm thinking of a monorail.

    • Sometimes life seems like a dream, especially when I look down and see that I forgot to put on my pants.

    • I think the monkeys at the zoo should have to wear sunglasses so they can't hypnotize you.

    • The difference between a man and a boy is, a boy wants to grow up to be a fireman, but a man wants to grow up to be a giant monster fireman.

    • I guess more bad things have been done in the name of progress than any other. I myself have been guilty of this. When I was a teenager, I stole a car and drove it out into the desert and set it on fire. When the police showed up, I just shrugged and said, "Hey, progress." Boy, did I have a lot to learn.

    • It's amazing to me that one of the world's most feared diseases would be carried by one of the world's smallest animals: the real tiny dog.

    • When the chairman introduced the guest speaker as a former illegal alien, I got up from my chair and yelled, "What's the matter, no jobs on Mars?" When no one laughed, I was real embarrassed. I don't think people should make you feel that way.

    • Marta was watching the football game with me when she said, "You know, most of these sports are based on the idea of one group protecting its territory from invasion by another group." "Yeah," I said, trying not to laugh. Girls are funny.

    • I hope, when they die, cartoon characters have to answer for their sins.

    • Here's a good trick: Get a job as a judge at the Olympics. Then, if some guy sets a world record, pretend that you didn't see it and go, "Okay, is everybody ready to start now?".

    • If you go to a party, and you want to be the popular one at the party, do this: Wait until no one is looking, then kick a burning log out of the fireplace onto the carpet. Then jump on top of it with your body and yell, "Log o' fire! Log o' fire!" I've never done this, but I think it'd work.

    • Any man, in the right situation, is capable of murder. But not any man is capable of being a good camper. So, murder and camping are not as similar as you might think.

    • Laugh, clown, laugh. This is what I tell myself whenever I dress up like Bozo.

    • In some places it's known as a tornado. In others, a cyclone. And in still others, the Idiot's Merry-go-round. But around here they'll always be known as screw-boys.

    • Folks still remember the day ole Bob Riley came bouncing down that dirt road in his pickup. Pretty soon, it was bouncing higher and higher. The tires popped, and the shocks broke, but that truck kept bouncing. Some say it bounced clean over the moon, but whoever says that is a goddamn liar.

    • Tonight, when we were eating dinner, Marta said something that really knocked me for a loop. She said, "I love carrots." "Good," I said as I gritted my teeth real hard. "Then maybe you and carrots would like to go into the bedroom and have sex!" They didn't, but maybe they will sometime, and I can watch.

    • I hate it when people say somebody has a "speech impediment", even if he does, because it could hurt his feelings. So instead, I call it a "speech improvement", and I go up to the guy and say, "Hey, Bob, I like your speech improvement." I think this makes him feel better.

    • Anybody who has an identity problem had better wise up and get with the program!

    • I think there should be something in science called the "reindeer effect." I don't know what it would be, but I think it'd be good to hear someone say, "Gentlemen, what we have here is a terrifying example of the reindeer effect."

    • If I had a mine shaft, I don't think I would just abandon it. There's got to be a better way.

    • If there was a terrible storm outside, but somehow this dog lived through the storm, and he showed up at your door when the storm was finally over, I think a good name for him would be Carl.

    • Of all the tall tales, I think my favorite is the one about Eli Whitney and the interchangeable parts.

    • If Alien was my friend, I'd like to be with him when he went to the dentist. When they started drilling, he'd probably go nuts and start eating everybody. That Alien!

    • I bet it's hard to break farmers of the old superstitions like "Tornado got Old Yeller, stay in the cellar."

    • If you ever drop your keys into a river of molten lava, let'em go, because, man, they're gone.

    • To me, it's a good idea to always carry two sacks of something when you walk around. That way, if anybody says, "Hey, can you give me a hand?" You can say, "Sorry, got these sacks."

    • If you lived in the Dark Ages and you were a catapult operator, I bet the most common question people would ask is, "Can't you make it shoot farther?" "No, I'm sorry. That's as far as it shoots."

    • Is there anything more beautiful than a beautiful, beautiful flamingo, flying across in front of a beautiful sunset? And he's carrying a beautiful rose in his beak, and also he's carrying a very beautiful painting with his feet. And also, you're drunk.

    • If life deals you lemons, why not go kill someone with the lemons (maybe by shoving them down his throat).

    • Instead of having "answers" on a math test, they should just call them "impressions," and if you got a different "impression," so what, can't we all be brothers?

    • I wish I would have a real tragic love affair and get so bummed out that I'd just quit my job and become a bum for a few years, because I was thinking about doing that anyway.

    • If you go flying back through time and you see somebody else flying forward into the future, it's probably best to avoid eye contact.

    • It's easy to sit there and say you'd like to have more money. And I guess that's what I like about it. It's easy. Just sitting there, rocking back and forth, wanting that money.

    • As the light changed from red to green to yellow and back to red again, I sat there thinking about life. Was it nothing more than a bunch of honking and yelling? Sometimes it seemed that way.

    • I can picture in my mind a world without war, a world without hate. And I can picture us attacking that world, because they'd never expect it.

    • I hope some animal never bores a hole in my head and lays its eggs in my brain, because later you might think you're having a good idea but it's just eggs hatching.

    • Whenever you read a good book, it's like the author is right there, in the room talking to you, which is why I don't like to read good books.

    • What is it about a beautiful sunny afternoon, with the birds singing and the wind rustling through the leaves, that makes you want to get drunk?

    • And after you're real drunk, maybe go down to the public park and stagger around and ask people for money, and then lay down and go to sleep.

    • Instead of a trap door, what about a trap window? The guy looks out it, and if he leans too far, he falls out. Wait. I guess that's like a regular window.

    • During the Middle Ages, probably one of the biggest mistakes was not putting on your armor because you were "just going down to the corner."

    • If I ever get real rich, I hope I'm not real mean to poor people, like I am now.

    • When I found the skull in the woods, the first thing I did was call the police. But then I got curious about it. I picked it up, and started wondering who this person was, and why he had deer horns.

    • I remember how my great-uncle Jerry would sit on the porch and whittle all day long. Once he whittled me a toy boat out of a larger toy boat I had. It was almost as good as the first one, except now it had bumpy whittle marks all over it. And no paint, because he had whittled off the paint.

    • Here's a good thing to do if you go to a party and you don't know anybody: First take out the garbage. Then go around and collect any extra garbage that people might have, like a crumpled napkin, and take that out too. Pretty soon people will want to meet the busy garbage guy.

    • Most of the time it was probably real bad being stuck down in a dungeon. But some days, when there was a bad storm outside, you'd look out your little window and think, "Boy, I'm glad I'm not out in that."

    • Sometimes you have to be careful when selecting a new name for yourself. For instance, let's say you have chosen the nickname "Fly Head." Normally you would think that "fly Head" would mean a person who has beautiful swept-back features, as if flying through the air. But think again. Couldn't it also mean "having a head like a fly"? I'm afraid some people might actually think that.

    • I hope that after I die, people will say of me: "That guy sure owed me a lot of money."

    • If you get invited to your first orgy, don't just show up nude. That's a common mistake. You have to let nudity "happen."

    • The tired and thirsty prospector threw himself down at the edge of the watering hole and started to drink. But then he looked around and saw skulls and bones everywhere. "Uh-oh," he thought. "This watering hole is reserved for skeletons."

    • If they ever come up with a swashbuckling School, I think one of the courses should be Laughing, Then Jumping Off Something.

    • When you're riding in a time machine way far into the future, don't stick your elbow out the window, or it'll turn into a fossil.

    • It takes a big man to cry, but it takes a bigger man to laugh at that man.

    • At first I thought, if I were Superman, a perfect secret identity would be "Clark Kent, Dentist," because you could save money on tooth X-rays. But then I thought, if a patient said, "How's my back tooth?" and you just looked at it with your X-ray vision and said, "Oh it's okay," then the patient would probably say, "Aren't you going to take an X-ray, stupid?" and you'd say, "Aw fuck you, get outta here," and then he probably wouldn't even pay his bill.

    • One thing kids like is to be tricked. For instance, I was going to take my little nephew to Disneyland, but instead I drove him to an old burned-out warehouse. "Oh, no," I said. "Disneyland burned down." He cried and cried, but I think that deep down, he thought it was a pretty good joke. I started to drive over to the real Disneyland, but it was getting pretty late.

    • A good way to threaten somebody is to light a stick of dynamite. Then you call the guy and hold the burning fuse up to the phone. "Hear that?" you say. "That's dynamite, baby."

    • Why do people in ship mutinies always ask for "better treatment"? I'd ask for a pinball machine, because with all that rocking back and forth you'd probably be able to get a lot of free games.

    • I'd like to be buried Indian-style, where they put you up on a high rack, above the ground. That way, you could get hit by meteorites and not even feel it.

    • If I lived back in the wild west days, instead of carrying a six-gun in my holster, I'd carry a soldering iron. That way, if some smart-aleck cowboy said something like "Hey, look. He's carrying a soldering iron!" and started laughing, and everybody else started laughing, I could just say, "That's right, it's a soldering iron. The soldering iron of justice." Then everybody would get real quiet and ashamed, because they had made fun of the soldering iron of justice, and I could probably hit them up for a free drink.

    • I bet when the Neanderthal kids would make a snowman, someone would always end up saying, "Don't forget the thick, heavy brows." Then they would all get embarrassed because they remembered they had the big hunky brows too, and they'd get mad and eat the snowman.

    • Fear can sometimes be a useful emotion. For instance, let's say you're an astronaut on the moon and you fear that your partner has been turned into Dracula. The next time he goes out for the moon pieces, wham!, you just slam the door behind him and blast off. He might call you on the radio and say he's not Dracula, but you just say, "Think again, bat man."

    • Too bad you can't buy a voodoo globe so that you could make the earth spin real fast and freak everybody out.

    • The people in the village were real poor, so none of the children had any toys. But this one little boy had gotten an old enema bag and filled it with rocks, and he would go around and whap the other children across the face with it. Man, I think my heart almost broke. Later the boy came up and offered to give me the toy. This was too much! I reached out my hand, but then he ran away. I chased him down and took the enema bag. He cried a little, but that's the way of these people.

    • I wish I had a Kryptonite cross, because then you could keep both Dracula AND Superman away.

    • I don't think I'm alone when I say I'd like to see more and more planets fall under the ruthless domination of our solar system.

    • Dad always thought laughter was the best medicine, which I guess is why several of us died of tuberculosis.

    • Maybe in order to understand mankind, we have to look at the word itself: "Mankind". Basically, it's made up of two separate words - "mank" and "ind". What do these words mean ? It's a mystery, and that's why so is mankind.

    • I hope if dogs ever take over the world, and they chose a king, they don't just go by size, because I bet there are some Chihuahuas with some good ideas.

    • I guess we were all guilty, in a way. We all shot him, we all skinned him, and we all got a complimentary bumper sticker that said, "I helped skin Bob."

    • I bet the main reason the police keep people away from a plane crash is they don't want anybody walking in and lying down in the crash stuff, then, when somebody comes up, act like they just woke up and go, "What was THAT?!"

    • The face of a child can say it all, especially the mouth part of the face.

    • Ambition is like a frog sitting on a Venus Flytrap. The flytrap can bite and bite, but it won't bother the frog because it only has little tiny plant teeth. But some other stuff could happen and it could be like ambition.

    • I'd rather be rich than stupid.

    • If you were a poor Indian with no weapons, and a bunch of conquistadors came up to you and asked where the gold was, I don't think it would be a good idea to say, "I swallowed it. So sue me."

    • If you define cowardice as running away at the first sign of danger, screaming and tripping and begging for mercy, then yes, Mr. Brave man, I guess I'm a coward.

    • I bet one legend that keeps recurring throughout history, in every culture, is the story of Popeye.

    • When you go in for a job interview, I think a good thing to ask is if they ever press charges.

    • To me, boxing is like a ballet, except there's no music, no choreography, and the dancers hit each other.

    • What is it that makes a complete stranger dive into an icy river to save a solid gold baby? Maybe we'll never know.

    • We tend to scoff at the beliefs of the ancients. But we can't scoff at them personally, to their faces, and this is what annoys me.

    • Probably the earliest fly swatters were nothing more than some sort of striking surface attached to the end of a long stick.

    • I think someone should have had the decency to tell me the luncheon was free. To make someone run out with potato salad in his hand, pretending he's throwing up, is not what I call hospitality.

    • To me, clowns aren't funny. In fact, they're kind of scary. I've wondered where this started and I think it goes back to the time I went to the circus, and a clown killed my dad.

    • As I bit into the nectarine, it had a crisp juiciness about it that was very pleasurable - until I realized it wasn't a nectarine at all, but A HUMAN HEAD!!

    • Most people don't realize that large pieces of coral, which have been painted brown and attached to the skull by common wood screws, can make a child look like a deer.

    • If trees could scream, would we be so cavalier about cutting them down? We might, if they screamed all the time, for no good reason.

    • Better not take a dog on the space shuttle, because if he sticks his head out when you're coming home his face might burn up.

    • You know what would make a good story? Something about a clown who make people happy, but inside he's real sad. Also, he has severe diarrhea.

    • Sometimes when I feel like killing someone, I do a little trick to calm myself down. I'll go over to the persons house and ring the doorbell. When the person comes to the door, I'm gone, but you know what I've left on the porch? A jack-o-lantern with a knife stuck in the side of it's head with a note that says "You." After that I usually feel a lot better, and no harm done.

    • If you're a horse, and someone gets on you, and falls off, and then gets right back on you, I think you should buck him off right away.

    • If you ever teach a yodeling class, probably the hardest thing is to keep the students from just trying to yodel right off. You see, we build to that.

    • If you ever fall off the Sears Tower, just go real limp, because maybe you'll look like a dummy and people will try to catch you because, hey, free dummy.

    • I'd like to see a nude opera, because when they hit those high notes, I bet you can really see it in those genitals.

    • Anytime I see something screech across a room and latch onto someone's neck, and the guy screams and tries to get it off, I have to laugh, because what is that thing.

    • He was a cowboy, mister, and he loved the land. He loved it so much he made a woman out of dirt and married her. But when he kissed her, she disintegrated. Later, at the funeral, when the preacher said, "Dust to dust," some people laughed, and the cowboy shot them. At his hanging, he told the others, "I'll be waiting for you in heaven--with a gun."

    • The memories of my family outings are still a source of strength to me. I remember we'd all pile into the car - I forget what kind it was - and drive and drive. I'm not sure where we'd go, but I think there were some trees there. The smell of something was strong in the air as we played whatever sport we played. I remember a bigger, older guy we called "Dad." We'd eat some stuff, or not, and then I think we went home. I guess some things never leave you.

    • If a kid asks where rain comes from, I think a cute thing to tell him is "God is crying." And if he asks why God is crying, another cute thing to tell him is "Probably because of something you did."

    • Contrary to what most people say, the most dangerous animal in the world is not the lion or the tiger or even the elephant. It's a shark riding on an elephant's back, just trampling and eating everything they see.

    • As we were driving, we saw a sign that said "Watch for Rocks." Marta said it should read "Watch for Pretty Rocks." I told her she should write in her suggestion to the highway department, but she started saying it was a joke - just to get out of writing a simple letter! And I thought I was lazy!

    • One thing kids like is to be tricked. For instance, I was going to take my little nephew to DisneyLand, but instead I drove him to an old burned-out warehouse. "Oh, no," I said, "DisneyLand burned down." He cried and cried, but I think that deep down he thought it was a pretty good joke. I started to drive over to the real DisneyLand, but it was getting pretty late.

    • If you saw two guys named Hambone and Flippy, which one would you think liked dolphins the most? I'd say Flippy, wouldn't you? You'd be wrong, though. It's Hambone.

    • Laurie got offended that I used the word "puke." But to me, that's what her dinner tasted like.

    • We used to laugh at Grandpa when he'd head off and go fishing. But we wouldn't be laughing that evening when he'd come back with some whore he picked up in town.

    • I wish a robot would get elected president. That way, when he came to town, we could all take a shot at him and not feel too bad.

    • As the evening sky faded from a salmon color to a sort of flint gray, I thought back to the salmon I caught that morning, and how gray he was, and how I named him Flint.

    • If you're a young Mafia gangster out on your first date, I bet it's real embarrassing if someone tries to kill you.

    • Whenever I see an old lady slip and fall on a wet sidewalk, my first instinct is to laugh. But then I think, what is I was an ant, and she fell on me. Then it wouldn't seem quite so funny.

    • If you go parachuting, and your parachute doesn't open, and you friends are all watching you fall, I think a funny gag would be to pretend you were swimming.

    • When I was a kid my favorite relative was Uncle Caveman. After school we'd all go play in his cave, and every once in a while he would eat one of us. It wasn't until later that I found out that Uncle Caveman was a bear.

    • Children need encouragement. If a kid gets an answer right, tell him it was a lucky guess. That way he develops a good, lucky feeling.

    • The crows seemed to be calling his name, thought Caw.

    • When you die, if you get a choice between going to regular heaven or pie heaven, choose pie heaven. It might be a trick, but if it's not, mmmmmmm, boy.

    • Whether they find a life there or not, I think Jupiter should be called an enemy planet.

    • Instead of trying to build newer and bigger weapons of destruction, we should be thinking about getting more use out of the ones we already have.

    • I think a good gift for the President would be a chocolate revolver. and since he is so busy, you'd probably have to run up to him real quick and give it to him.

    • Just because swans mate for life, I don't think its that big a deal. First of all, if you're a swan, you're probably not going to find a swan that looks much better than the one you've got, so why not mate for life?

    • If you're robbing a bank and you're pants fall down, I think it's okay to laugh and to let the hostages laugh too, because, come on, life is funny.

    • If you ever catch on fire, try to avoid looking in a mirror, because I bet that will really throw you into a panic.

    • Sometimes I think I'd be better off dead. No, wait, not me, you.

    • I can't stand cheap people. It makes me real mad when someone says something like, "Hey, when are you going to pay me that $100 you owe me?" or "Do you have that $50 you borrowed?" Man, quit being so cheap!

    • I think the mistake a lot of us make is thinking the state-appointed shrink is our friend.

    • I think one way the cops could make money would be to hold a murder weapons sale. Many people could really use used ice picks.

    • If you ever reach total enlightenment while drinking beer, I bet you could shoot beer out of you nose.

    • I believe in making the world safe for our children, but not our children's children, because I don't think children should be having sex.

    • Even though I was their captive, the Indians allowed me quite a bit of freedom. I could walk freely, make my own meals, and even hurl large rocks at their heads. It was only later that I discovered that they were not Indians at all but only dirty-clothes hampers.

    • It's true that every time you hear a bell, an angel gets its wings. But what they don't tell you is that every time you hear a mouse trap snap, and Angel gets set on fire.

    • If you're in a war, instead of throwing a hand grenade at the enemy, throw one of those small pumpkins. Maybe it'll make everyone think how stupid war is, and while they are thinking, you can throw a real grenade at them.

    • I hope life isn't a big joke, because I don't get it.

    • The next time I have meat and mashed potatoes, I think I'll put a very large blob of potatoes on my plate with just a little piece of meat. And if someone asks me why I didn't get more meat, I'll just say, "Oh, you mean this?" and pull out a big piece of meat from inside the blob of potatoes, where I've hidden it. Good magic trick, huh?

    • Life, to me, is like a quiet forest pool, one that needs a direct hit from a big rock half-buried in the ground. You pull and you pull, but you can't get the rock out of the ground. So you give it a good kick, but you lose your balance and go skidding down the hill toward the pool. Then out comes a big Hawaiian man who was screwing his wife beside the pool because they thought it was real pretty. He tells you to get out of there, but you start faking it, like you're talking Hawaiian, and then he gets mad and chases you...

    • Sometimes, when I drive across the desert in the middle of the night, with no other cars around, I start imagining: What if there were no civilization out there? No cities, no factories, no people? And then I think: No people or factories? Then who made this car? And this highway? And I get so confused I have to stick my head out the window into the driving rain---unless there's lightning, because I could get struck on the head by a bolt.

    • The whole town laughed at my great-grandfather, just because he worked hard and saved his money. True, working at the hardware store didn't pay much, but he felt it was better than what everybody else did, which was go up to the volcano and collect the gold nuggets it shot out every day. It turned out he was right. After forty years, the volcano petered out. Everybody left town, and the hardware store went broke. Finally he decided to collect gold nuggets too, but there weren't many left by then. Plus, he broke his leg and the doctor's bills were real high.

    • Too bad when I was a kid there wasn't a guy in our class that everybody called the "Cricket Boy", because I would have liked to stand up in class and tell everybody, "You can make fun of the Cricket Boy if you want to, but to me he's just like everybody else." Then everybody would leave the Cricket Boy alone, and I'd invite him over to spend the night at my house, but after about five minutes of that loud chirping I'd have to kick him out. Maybe later we could get up a petition to get the Cricket Family run out of town. Bye, Cricket Boy.

    • I think a good product would be "Baby Duck Hat". It's a fake baby duck, which you strap on top of your head. Then you go swimming underwater until you find a mommy duck and her babies, and you join them. Then, all of a sudden, you stand up out of the water and roar like Godzilla. Man, those ducks really take off! Also, Baby Duck Hat is good for parties.

    • I wish I lived back in the old west days, because I'd save up my money for about twenty years so I could buy a solid-gold pick. Then I'd go out West and start digging for gold. When someone came up and asked what I was doing, I'd say, "Looking for gold, ya durn fool." He'd say, "Your pick is gold," and I'd say, "Well, that was easy." Good joke, huh.

    • A funny thing to do is, if you're out hiking and your friend gets bitten by a poisonous snake, tell him you're going to go for help, then go about ten feet and pretend that you got bit by a snake. Then start an argument with him about who's going to go get help. A lot of guys will start crying. That's why it makes you feel good when you tell them it was just a joke.

    • I guess I kinda lost control, because in the middle of the play I ran up and lit the evil puppet villain on fire. No, I didn't. Just kidding. I just said that to help illustrate one of the human emotions, which is freaking out. Another emotion is greed, as when you kill someone for money, or something like that. Another emotion is generosity, as when you pay someone double what he paid for his stupid puppet.

    • Many people think that history is a dull subject. Dull? Is it "dull" that Jesse James once got bitten on the forehead by an ant, and at first it didn't seem like anything, but then the bite got worse and worse, so he went to a doctor in town, and the secretary told him to wait, so he sat down and waited, and waited, and waited, and waited, and then finally he got to see the doctor, and the doctor put some salve on it? You call that dull?

    • I scrambled to the top of the precipice where Nick was waiting. "That was fun," I said. "You bet it was," said Nick. "Let's climb higher." "No," I said. "I think we should be heading back now." "We have time," Nick insisted. I said we didn't, and Nick said we did. We argued back and forth like that for about 20 minutes, then finally decided to head back. I didn't say it was an interesting story.

    • If you're a Thanksgiving dinner, but you don't like the stuffing or the cranberry sauce or anything else, just pretend like you're eating it, but instead, put it all in your lap and form it into a big mushy ball. Then, later, when you're out back having cigars with the boys, let out a big fake cough and throw the ball to the ground. Then say, "Boy, these are good cigars!"

    • I remember that one fateful day when Coach took me aside. I knew what was coming. "You don't have to tell me," I said. "I'm off the team, aren't I?" "Well," said Coach, "you never were really ON the team. You made that uniform you're wearing out of rags and towels, and your helmet is a toy space helmet. You show up at practice and then either steal the ball and make us chase you to get it back, or you try to tackle people at inappropriate times." It was all true what he was saying. And yet, I thought something is brewing inside the head of this Coach. He sees something in me, some kind of raw talent that he can mold. But that's when I felt the handcuffs go on.

    • If I ever opened a trampoline store, I don't think I'd call it Trampo-Land, because you might think it was a store for tramps, which is not the impression we are trying to convey with our store. On the other hand, we would not prohibit tramps from browsing, or testing the trampolines, unless a tramp's gyrations seemed to be getting out of control.

    • I can still recall old Mister Barnslow getting out every morning and nailing a fresh load of tadpoles to the old board of his. Then he'd spin it round and round, like a wheel of fortune, and no matter where it stopped he'd yell out, "Tadpoles! Tadpoles is a winner!" We all thought he was crazy. But then we had some growing up to do.

    • Once when I was in Hawaii, on the island of Kauai, I met a mysterious old stranger. He said he was about to die and wanted to tell someone about the treasure. I said, "Okay, as long as it's not a long story. Some of us have a plane to catch, you know." He stared telling hes story, about the treasure and his life and all, and I thought: "This story isn't too long." But then, he kept going, and I started thinking, "Uh-oh, this story is getting long." But then the story was over, and I said to myself: "You know, that story wasn't too long after all." I forget what the story was about, but there was a good movie on the plane. It was a little long, though.

    • I bet a fun thing would be to go way back in time to where there was going to be an eclipse and tell the cave men, "If I have come to destroy you, may the sun be blotted out from the sky." Just then the eclipse would start, and they'd probably try to kill you or something, but then you could explain about the rotation of the moon and all, and everyone would get a good laugh.

    • I wouldn't be surprised if someday some fishermen caught a big shark and cut it open, and there inside was a whole person. Then they cut the person open, and in him is a little baby shark. And in the baby shark there isn't a person, because it would be too small. But there's a little doll or something, like a Johnny Combat little toy guy---something like that.

    14 votes
    1. [6]
      Promonk
      Link Parent
      I tried searching the one about dropping your keys in molten lava, and it seems to be a genuine Jack Handy original from one of the Deep Thoughts collections. I'll bet you found a collection of...

      I tried searching the one about dropping your keys in molten lava, and it seems to be a genuine Jack Handy original from one of the Deep Thoughts collections. I'll bet you found a collection of them online and saved them to a txt, because that's the sort of thing we used to do in between dodging attacks from packs of rabid allosaurs back in the day.

      9 votes
      1. slade
        Link Parent
        Don't forget forwarding chain letters to ensure a good harvest in the fall.

        Don't forget forwarding chain letters to ensure a good harvest in the fall.

        11 votes
      2. [4]
        fxgn
        Link Parent
        I wasn't even born back then yet, but it seems like people loved saving random stuff to their computers in early 2000s. Could you please explain why? Are there really any circumstances where you'd...

        I wasn't even born back then yet, but it seems like people loved saving random stuff to their computers in early 2000s. Could you please explain why? Are there really any circumstances where you'd be like "man, I'm so glad I saved the entire collection of Deep Thoughts to my drive"?

        3 votes
        1. [2]
          kfwyre
          Link Parent
          I didn't just save stuff, I printed some of them out so that I could have a physical copy! It's hard to appreciate from a modern perspective, but back then we weren't drowning in stimuli like we...
          • Exemplary

          I didn't just save stuff, I printed some of them out so that I could have a physical copy!

          It's hard to appreciate from a modern perspective, but back then we weren't drowning in stimuli like we are today. You couldn't go on your phone to get infinite feeds of content. You couldn't stream something you wanted to watch on demand. If you wanted new music, you had to listen to the radio or take a gamble on a new cassette/CD that you might or might not end up liking.

          When Napster entered the scene, it could still take you hours to download a single song. And that's if you could have hours of uninterrupted internet access. Because it used up the phone landline, you couldn't just sit online forever like we do today unless you were willing to shell out for a fully separate line just for the internet.

          As such, interesting content was harder to come by and more likely to be significant beyond just a singular moment. For example, I used to read and re-read my gaming magazines. Over and over again. Whereas today, if I had a subscription to one, I'd just as likely not even pick it up in the first place. If I read a review for a game today, I'm more likely to just skim it for the important bits, but I used to read whole reviews, from start to finish, repeatedly.

          Of course, back then there were far fewer games, and even fewer that I had access too, because my local stores didn't sell everything that was coming out.

          Overall, we just had less stuff available to us that required more work and effort to get. So when you did get something cool, you wanted to hold onto it and come back to it.

          Add to that there was simply a lot less you could do with computers, and the internet was a very different place. Now we rely on services to curate content for us, whereas back then we were our own curators.

          15 votes
          1. first-must-burn
            Link Parent
            Don't forget the sneaker net. My first copy of the Anarchist's Cookbook came from someone at school, given to me on a floppy disk.

            Don't forget the sneaker net. My first copy of the Anarchist's Cookbook came from someone at school, given to me on a floppy disk.

            3 votes
        2. deimosthenes
          Link Parent
          You might not have the internet available all of the time if you were still on dial-up, and if you found something you liked there was no guarantee it'd still exist later. I think there was just...

          You might not have the internet available all of the time if you were still on dial-up, and if you found something you liked there was no guarantee it'd still exist later.
          I think there was just more of a culture of saving things locally if you wanted to make sure you'd be able to find it again later.
          Maybe it's to do with the difference of wanting to preserve/hoard things if you went out actively hunting for content, rather than having it served up to you by a largely transient algorithmic feed.

          10 votes
  3. [3]
    dirthawker
    Link
    I wrote a load of fiction in the late 80s and 90s. The equivalent of 1 novel, 1 novella, 2 largeish chunks to another novel, and probably 30 short stories. I did try to find a publisher for the...

    I wrote a load of fiction in the late 80s and 90s. The equivalent of 1 novel, 1 novella, 2 largeish chunks to another novel, and probably 30 short stories. I did try to find a publisher for the novel, but it got rejected a few times so I stopped. Writing was really just therapy for me and so a lot of it is a) more close to my heart than I want to share and/or b) the level of technology is hopelessly outdated at this point. But I have this little character intro from 1992 which is kinda cute.

    Character Bright jokingly considered his name self-descriptive. He looked, though not necessarily was, he would say. And he always called himself by that name rather than his hated first name, which was Alfried. Not Alfred but All-freed. Only his mother could call him that, and she was dead. Bright was an average tall, with honeyish hair leaning towards dishwater and a healthy-cheeked roundishness to his face. Looking at him made one think of chocolate. Eventually he would grow a potbelly the size of a small handbag, but it wouldn't be out of place. His eyes were small and fleshy but friendly, and the irises were a fascinating mixture of blue and green and grey, often reflecting anything in that general color area. He liked looking ordinary and pleasant and averagely nice, as it made him totally anonymous. Anonymity was necessary for his business.
    10 votes
    1. [2]
      Nsutdwa
      Link Parent
      It sounds like a promising intro. The first two sentences are particularly good, very nice, tight writing. I hope you still enjoy the process of getting your thoughts out onto a page.

      It sounds like a promising intro. The first two sentences are particularly good, very nice, tight writing. I hope you still enjoy the process of getting your thoughts out onto a page.

      3 votes
      1. dirthawker
        Link Parent
        Thanks for the compliment! I have not shown much writing to anyone so I don't have objective opinions of it, so that's kind of a relief. I burned through the need to write about 15 years ago as I...

        Thanks for the compliment! I have not shown much writing to anyone so I don't have objective opinions of it, so that's kind of a relief. I burned through the need to write about 15 years ago as I found myself. Went and killed off a few characters and re-animated them, and it was not the same after that.

        1 vote
  4. [2]
    Lapbunny
    Link
    Here are Starcraft: Brood War download maps that I played back in 2006 from assorted custom games. Protect Bob slapped.

    Here are Starcraft: Brood War download maps that I played back in 2006 from assorted custom games.

    Protect Bob slapped.

    9 votes
    1. cfabbro
      Link Parent
      From Firefox: Windows Defender didn't find anything after scanning it, and neither did virustotal though... so very likely a false positive. :/ I wonder what set Firefox off, since it's all...

      From Firefox:

      This file contains a virus or malware

      Windows Defender didn't find anything after scanning it, and neither did virustotal though... so very likely a false positive. :/ I wonder what set Firefox off, since it's all scx/scm files which are relatively inert even if they did contain something malicious were they executable.

      3 votes
  5. QOAL
    Link
    I really like the idea of this post! roomtable.jpg Created: 20 July 2002, 12:47:19 My brother's school library had computer magazines, and on one of the discs that he brought home was a copy of...

    I really like the idea of this post!

    roomtable.jpg
    Created: ‎20 ‎July ‎2002, ‏‎12:47:19

    My brother's school library had computer magazines, and on one of the discs that he brought home was a copy of Cinema 4D 5.2 SE (I think that was the version).
    And it was a lot of fun, or potential fun because I didn't have any documentation, and I doubt I really had the patience for that.
    This scene is probably the best I could achieve at the time.
    I made all of the models.
    The bin is clearly just a default texture on a cylinder.
    I remember using boolean operations to cut out the solitaire board, and yet I left all the holes filled with marbles.
    It's a pity that getting a good looking liquid was too tricky for me.
    The little toys on the bottom shelf were fun things that I would go on to use in other renders and animations.


    I can also offer you:

    dreviladvert.txt I'm not advertising but after liquidating someone in my liquodeluxe 4000 (the fast any easy way to liquidate your nemesis with piping hot magma) I chew orbit sugar free gum

    Created: ‎19 ‎December ‎2003, ‏‎16:00:50

    8 votes
  6. [2]
    clem
    Link
    Alright, here's the dorkiest old thing I could find quickly: https://i.imgur.com/L8KqLJr.png It's a spreadsheet from apparently the start of the '97-'98 hockey season with my "career statistics."...

    Alright, here's the dorkiest old thing I could find quickly: https://i.imgur.com/L8KqLJr.png

    It's a spreadsheet from apparently the start of the '97-'98 hockey season with my "career statistics." I actually have another version floating around that has my whole career mapped out until my early 40s. I think I even planned out when I would retire from my lengthy career with the Detroit Red Wings.

    I do actually still play...on a "beer league" team once a week. But my dream of NHL success is long, long dead!

    P.S. Also note that I apparently neglected to type my sequential ages correctly. My current actual age is discernible from this spreadsheet, but I am not quite 45, as it suggests!

    7 votes
    1. ZeroGee
      Link Parent
      This is a real jem. I also have a hockey-career spreadsheet just like this, only I didn't stat playing until I was an adult, so our sheets are mirror images.

      This is a real jem. I also have a hockey-career spreadsheet just like this, only I didn't stat playing until I was an adult, so our sheets are mirror images.

      1 vote
  7. [2]
    whbboyd
    Link
    Alright, here we go. This is PhysObject.java, part of a project called PhysSim I wrote in high school. Commentary to follow. 468 lines of high-schooler-authored Java package Phys; import...

    Alright, here we go. This is PhysObject.java, part of a project called PhysSim I wrote in high school. Commentary to follow.

    468 lines of high-schooler-authored Java
    package Phys;
    import Utils.DebugOut;
    // PhysObject.java
    
    /**
     *	The <code>PhysObject</code> class is the superclass for all classes in <code>PhysSim</code> that implement
     *	physics.
     *
     *	<p>All <code>PhysObject</code>s have a mass, a physical profile (for clipping), a location, a velocity, and
     *	several other attributes generally related to clipping. All units are assumed to be the standard SI units of
     *	meters (m) for length/displacement and kilograms (kg) for mass, although the units are
     *	irrelevant as long as consistency is maintained. All rotational/directional measurements are in radians
     *	counterclockwise from east, and all times are in seconds.</p>
     *
     *	Note: Mass must be specified when a <code>PhysObject</code> is constructed. The default values for the other
     *		instance data is as follows:
     *		<ul><li>profile: CIRCLE</li>
     *		<li>radius: 1.0</li>
     *		<li>profileDirection: 0.0</li>
     *		<li>loc: (0, 0)</li>
     *		<li>velocity: (0 @ 0)</li>
     *		<li>restitution: 1.0</li></ul>
     *
     *	@author	whbboyd
     *	@version	27 April 2007
     *	@see	Vector
     *	@see	DebugOut
     **/
    
    public class PhysObject
    {
      // Instance variables:
    
    	public static final int LINE = 0;	//linear physical profile type
    	public static final int CIRCLE = 1;	//circular physical profile type
    
    		//ID for all PhysObjects:
    	private static long nextID = 0;		//next available ID
    	private long ID;					//this object's ID
    
    		//Mass:
    	private double mass;				//mass (assumed to be in kg)
    
    		//Shape:
    	private int profile;				//physical profile
    		private static final int DEFAULT_PROFILE = CIRCLE;
    	private double radius;				//radius/length (assumed to be in m)
    		private static final double DEFAULT_RADIUS = 1.0;
    	private double profileDirection;	//direction for a LINE. Meaningless for a CIRCLE.
    		private static final double DEFAULT_PROFILE_DIRECTION = 0.0;
    
    		//Location:
    	private Vector loc;					//location (assumed to be in m)
    		private static final Vector DEFAULT_LOC = Vector.ZERO;
    
    		//Velocity:
    	private Vector velocity;			//velocity (assumed to be in m/s)
    	private Vector tempVel;				//temporary velocity for updates thereto
    		private static final Vector DEFAULT_VEL = Vector.ZERO;
    
    		//Misc:
    	private static final double IMPERMEABILITY = 1000.0;	//impermeability (for bouncing)
    	private double restitution;			//coefficient of restitution
    		private static final double DEFAULT_RESTITUTION = 1.0;
    		
    		private boolean impacting;
    
    		/**
    		 *	Represents the period between calls of update methods for all <code>PhysObject</code>s. Can be
    		 *	modified by the calling class if a different timestep length is required; the default timestep is
    		 *	1/60 seconds, which may be too fast for some simulations. Accuracy is increased by using a shorter
    		 *	timestep.
    		 **/
    	public static double TIMESTEP_LENGTH = 1.0/60.0;	//timestep length (in seconds)
    
    
      // Constructors:
    
    	/**
    	 *	Constructs a <code>PhysObject</code> with the specified mass. Uses default values for shape, location,
    	 *	velocity and restitution.
    	 *
    	 *	@param mass	the mass of the PhysObject
    	 **/
    	public PhysObject(double mass)
    	{
    		init(mass, DEFAULT_PROFILE, DEFAULT_RADIUS, DEFAULT_PROFILE_DIRECTION, DEFAULT_LOC.clone(),
    						DEFAULT_VEL.clone(), DEFAULT_RESTITUTION);
    	}
    
    	/**
    	 *	Constructs a <code>PhysObject</code> with the specified mass and shape. Uses the default values for
    	 *	location, velocity and restitution.
    	 *
    	 *	@param mass	the mass of the PhysObject
    	 *	@param profile	the profile code for the object
    	 *	@param radius	the minimum radius of the object
    	 *	@param profileDirection	the direction of the object (if it is a LINE)
    	 **/
    	public PhysObject(double mass, int profile, double radius, double profileDirection)
    	{
    		init(mass, profile, radius, profileDirection, DEFAULT_LOC.clone(), DEFAULT_VEL.clone(),
    						DEFAULT_RESTITUTION);
    	}
    
    	/**
    	 *	Constructs a <code>PhysObject</code> with the specified mass, shape and location. Uses the default
    	 *	values for velocity and restitution.
    	 *
    	 *	@param mass	the mass of the PhysObject
    	 *	@param profile	the profile code for the object
    	 *	@param radius	the minimum radius of the object
    	 *	@param profileDirection	the direction of the object (if it is a LINE)
    	 *	@param loc	the location vector of the object
    	 **/
    	public PhysObject(double mass, int profile, double radius, double profileDirection, Vector loc)
    	{
    		init(mass, profile, radius, profileDirection, loc, DEFAULT_VEL.clone(), DEFAULT_RESTITUTION);
    	}
    
    	/**
    	 *	Constructs a <code>PhysObject</code> with the specified mass, shape, location and velocity. Uses the
    	 *	default value for restitution.
    	 *
    	 *	@param mass	the mass of the PhysObject
    	 *	@param profile	the profile code for the object
    	 *	@param radius	the minimum radius of the object
    	 *	@param profileDirection	the direction of the object (if it is a LINE)
    	 *	@param loc	the location vector of the object
    	 *	@param vel	the velocity vector of the object
    	 **/
    	public PhysObject(double mass, int profile, double radius,  double profileDirection, Vector loc,
    		Vector vel)
    	{
    		init(mass, profile, radius, profileDirection, loc, vel, DEFAULT_RESTITUTION);
    	}
    
    	/**
    	 *	Constructs a <code>PhysObject</code> with the specified mass, shape, location, velocity and
    	 *	restitution.
    	 *
    	 *	@param mass	the mass of the PhysObject
    	 *	@param profile	the profile code for the object
    	 *	@param radius	the minimum radius of the object
    	 *	@param profileDirection	the direction of the object (if it is a LINE)
    	 *	@param loc	the location vector of the object
    	 *	@param vel	the velocity vector of the object
    	 *	@param restitution	the restitution coefficient of the object
    	 **/
    	public PhysObject(double mass, int profile, double radius,  double profileDirection, Vector loc,
    		Vector vel, double restitution)
    	{
    		init(mass, profile, radius, profileDirection, loc, vel, restitution);
    	}
    
    	/**
    	 *	Initializes this <code>PhysObject</code>'s instance data.
    	 *
    	 *	@param inMass	the mass of the PhysObject
    	 *	@param inProfile	the profile code for the object
    	 *	@param inRadius	the minimum radius of the object
    	 *	@param inprofileDirection	the direction of the object (if it is a LINE)
    	 *	@param inLoc	the location of the object
    	 *	@param inVel	the velocity of the object
    	 *	@param inDamping	the restitution coefficient of the object
    	 **/
    	private void init(double inMass, int inProfile, double inRadius,  double inProfileDirection,
    		Vector inLoc, Vector inVel, double inRestitution)
    	{
    		mass = inMass;
    		profile = (profile > CIRCLE) ? profile : CIRCLE;
    		radius = inRadius;
    		profileDirection = inProfileDirection;
    		loc = inLoc;
    		tempVel = inVel.clone();
    		velocity = tempVel.clone();
    		restitution = inRestitution;
    				impacting = false;
    
    		ID = nextID;
    		nextID++;
    
    		if (mass < 0.0)
    			DebugOut.printWithTag(this.toString(), "Warning: mass less than 0.0 : " + mass +
    									" (strange things may start happening...)");
    
    		if (restitution < 0.0)
    			DebugOut.printWithTag(this.toString(),
    									"Warning: restitution less than 0.0 : " + restitution +
    									" (strange things may start happening...)");
    		else if (restitution > 1.0)
    			DebugOut.printWithTag(this.toString(),
    									"Warning: restitution greater than 1.0 : " + restitution +
    									" (strange things may start happening...)");
    	}
    
    
      // Getters:
    
    	/**
    	 *	Return the ID of this <code>PhysObject</code>.
    	 *
    	 *	@return the unique ID of this <code>PhysObject</code>
    	 **/
    	public long ID()
    	{
    		return ID;
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s mass.
    	 *
    	 *	@return	the mass of this <code>PhysObject</code>
    	 **/
    	public double mass()
    	{
    		return mass;
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s physical profile.
    	 *
    	 *	@return	the profile code of this <code>PhysObject</code>
    	 **/
    	public int profile()
    	{
    		return profile;
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s minimum radius.
    	 *
    	 *	@return	the minimum radius of this <code>PhysObject</code>
    	 **/
    	public double radius()
    	{
    		return radius;
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s direction. Only used by <code>LINE</code>s; meaningless for
    	 *	<code>CIRCLE</code>s.
    	 *
    	 *	@return	the direction of this <code>PhysObject</code>
    	 **/
    	public double profileDirection()
    	{
    		return profileDirection;
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s location.
    	 *
    	 *	@return	the location of this <code>PhysObject</code>
    	 **/
    	public Vector loc()
    	{
    		return loc;
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s velocity.
    	 *
    	 *	@return	the velocity of this <code>PhysObject</code>
    	 **/
    	public Vector velocity()
    	{
    		return velocity.clone();
    	}
    
    	/**
    	 *	Return this <code>PhysObject</code>'s restitution coefficient.
    	 *
    	 *	@return	the restitution coefficient of this <code>PhysObject</code>
    	 **/
    	public double restitution()
    	{
    		return restitution;
    	}
    
    	/**
    	 *	Return the this <code>PhysObject</code>'s momentum. Momentum is not cached, so it should not be
    	 *	checked unneccesarily.
    	 *
    	 *	@return	the momentum of this <code>PhysObject</code>
    	 **/
    	public Vector momentum()
    	{
    		return new Vector(velocity.magnitude() * mass, velocity.direction());
    	}
    
    	/**
    	 *	Return a string summary of this <code>PhysObject</code> and its state
    	 *
    	 *	@return	a <code>String</code> summarizing this <code>PhysObject</code>'s state
    	 **/
    	public String verboseToString()
    	{
    		return "PhysObject " + ID + ": mass " + mass + " loc" + loc.toString(true) +
    			", vel" + velocity.toString();
    	}
    
    	/**
    	 *	Return a string identifying this <code>PhysObject</code>
    	 *
    	 *	@return	a <code>String</code> that identifies this <code>PhysObject</code>
    	 **/
    	public String toString()
    	{
    		return "PhysObject " + ID;
    	}
    
    
      // Modifiers:
    
    	/**
    	 *	Apply a given force vector to this <code>PhysObject</code>.
    	 *
    	 *	Note: Newton's Third Law is the responsibility of the caller of this method.
    	 *		Also, should be called ONLY ONCE for any given force in any given timestep.
    	 *
    	 *	@param	force	the <code>Vector</code> for the force to be applied
    	 **/
    	public void applyForce(Vector force)
    	{
    		tempVel.change(tempVel.x() + (force.x() / mass) * TIMESTEP_LENGTH,
    			tempVel.y() + (force.y() / mass) * TIMESTEP_LENGTH,
    			true);
    	}
    
    	/**
    	 *	Apply a fixed acceleration (such as gravity) to this <code>PhysObject</code>.
    	 *
    	 *	Note: Should be called ONLY ONCE for any given acceleration in any given timestep.
    	 *
    	 *	@param acc	the <code>Vector</code> for the acceleration to be applied
    	 **/
    	public void applyAccel(Vector acc)
    	{
    		tempVel.change(tempVel.x() + acc.x() * TIMESTEP_LENGTH,
    			tempVel.y() + acc.y() * TIMESTEP_LENGTH,
    			true);
    	}
    
    	/**
    	 *	Updates the state of this <code>PhysObject</code>.
    	 *
    	 *	Note: Should be called after any and all accelerations have been applied, and should
    	 *		be called ONLY ONCE in any given timestep. Also, this.velocity() will not change
    	 *		until this method has been called (i.e.,<br /><code>
    	 *			Vector firstVel = object.velocity();<br />
    	 *			object.applyAccel(new Vector(1.0, 0.0));<br />
    	 *			Vector secondVel = object.velocity();<br />
    	 *			return (firstVel == secondVel);<br /></code>
    	 *		will return <code>true</code>.
    	 **/
    	public void update()
    	{
    		velocity = tempVel.clone();
    		loc.change(loc.x() + velocity.x() * TIMESTEP_LENGTH,
    			loc.y() + velocity.y() * TIMESTEP_LENGTH,
    			true);
    	}
    	
    	void set(Vector l, Vector v)
    	{
    		loc = l;
    		tempVel = v;
    	}
    
    	/**
    	 *	Check for and execute an impact with another <code>PhysObject</code>.
    	 *
    	 *	Note: All collisions are assumed to be essentially elastic, minus losses from the
    	 *		coefficients of restitution. Also, this only handles THIS OBJECT'S SIDE OF THE
    	 *		COLLISION; Newton's Third Law is on the calling program. Calling impact() for
    	 *		both objects will have the correct effect. Objects can be made functionally
    	 *		immobile by not calling impact() on them; other objects will bounce off, but the
    	 *		object itself will remain in equilibrium.
    	 *
    	 *	*DEVNOTE* Currently unable to calculate collisions for non-CIRCLE objects.
    	 *	*DEVNOTE* May need a check for precollision.
    	 *	*DEVNOTE* Lines don't work right.
    	 *
    	 *	*DEVNOTE* -- Will's thoughts on clipping. In real life, when two objects bounce off
    	 *		each other, both objects deform some and then rebound. Energy is lost either by
    	 *		objects permanently deforming (which will not be modeled by this simulation) or
    	 *		by losses to heat and sound. This effect can be simulated by pushing objects
    	 *		which are intersecting out of each other with a force proportional to the depth
    	 *		of clipping. The hard part is the energy loss. Will's though on energy loss: energy
    	 *		is based on velocity (unless the object loses mass, which in this case it cannot)
    	 *		so reducing the velocity throughout the collision oughta do it.
    	 *
    	 *	*DEVNOTE* -- V2.0 - Deformation sim - oughta be easier to manage objects at rest.
    	 *
    	 *	@param	collider	the <code>PhysObject</code> with which this object is colliding
    	 *	@return	<code>true</code> if this object collided with <code>collider</code>; false
    	 *		otherwise.
    	 **/
    	public boolean impact(PhysObject collider)
    	{
    		//*DEVNOTE* -- NYI: non-CIRCLE objects cannot calculate collisions. Sucks to be them.
    		if (profile != CIRCLE)
    			return false;
    
    		//DO NOT collide with self!
    		if (collider == this)
    			return false;
    
    		double clipDepth = 0.0;
    		double clipDir = 0.0;
    		Vector temp = this.loc.rel(collider.loc());
    
    		//Profiles:
    		if (collider.profile() == CIRCLE)
    		{
    			//Depth of clipping
    			clipDepth = -(temp.magnitude() - this.radius - collider.radius());
    
    			//Check to ensure that the objects are clipping
    			if (clipDepth <= 0.0)
    				return false;
    
    			//Get the angle at which this object will bounce
    			clipDir = temp.direction();
    
    		}
    		else if (collider.profile() == LINE) // *DEVNOTE* -- incomplete
    		{
    			//Depth of clipping
    			//	*DEVNOTE* - see notes - needs check for +/-
    			clipDepth = Math.sin(temp.direction() + Vector.HALF_REV - collider.profileDirection()) *
    				temp.magnitude() + radius;
    
    			//Check to ensure that the objects are clipping
    			if (clipDepth <= 0.0)
    				return false;
    
    			//Get the angle at which the objects will bounce
    			//	*DEVNOTE* - needs check for +/-
    			clipDir = collider.profileDirection() + Vector.FOURTH_REV;
    		}
    
    		//	*DEVNOTE* -- Probably inaccurate! (Nobody cares.)
    		Vector force = new Vector((clipDepth * IMPERMEABILITY), clipDir + Vector.HALF_REV);
    		this.applyForce(force);
    
    		//Energy loss:
    		Vector accel = velocity.rev().mult((1.0 - restitution) * 10);
    		this.applyAccel(accel);
    
    				impacting = true;
    		return true;
    
    /*		this.tempVel = new Vector((this.tempVel.magnitude() - collider.velocity().component(tempVel.direction())
    				* (collider.mass() / this.mass)) * Math.sqrt(restitution),
    			clipDir + (clipDir - this.velocity.direction()));
    		update();
    		return true;*/
    
    /*		if (this.velocity.component(clipDir) > 0.0)
    			return false;
    		this.applyAccel(new Vector((this.velocity.component(clipDir) * (1 + Math.sqrt(restitution))) / TIMESTEP_LENGTH,
    			clipDir - Vector.HALF_REV));
    		return true;*/
    	}
    
     }
    

    My thoughts and recollections, skimming this:

    1. The date stamp is probably a few months out of date. I fiddled with this a lot trying to get it to work well (when I left it off mid-summer, it didn't work well), and so I'm sure the guts of the physics engine were some of the last parts I touched.
    2. The project as a whole included an interactive interface where you could drive a "player" PhysObj around an environment (composed entirely of circles, since I never got any other shape working well), and a level editor.
    3. Hilariously, my prose writing style is completely recognizable to me now. One area in which I haven't grown that much, I guess, lol.
    4. This was written after I learned trig, but before I learned linear algebra, which means it's doing a lot of trig (and square roots), which is hellishly slow. It's also O(n²): every object checks for collision with every other object. On my laptop at the time, it could maintain a 60FPS framerate up to, IIRC, a few dozen objects; more than that, and it would slow down.
    5. The conceptual framework for the simulation here (described in the doc comment on impact) is pretty thoughtful. Go past me! (It probably helped that I was literally taking AP physics when I wrote this.) Unfortunately, it can't possibly work doing first-order integration. Real-life objects hard enough to be considered "rigid" take microseconds to a few milliseconds to collide, deform, and rebound. If you tried to simulate objects that hard here, the error would be catastrophic and utterly glitch out the simulation. And indeed, all the objects I ever got to work without utterly glitching out the simulation were extremely soft.
    6. Speaking of utterly glitching out the simulation, this is vulnerable to NaN poisoning. Certain operations can return NaN in pathological cases, which then gets stored, and on the next frame immediately propagates to every other value in the system because of how math on NaN values works. My renderer then drew every object with NaN coordinates at the top left of the screen. I didn't figure this out at the time, because my understanding of IEEE 754 floats wasn't good enough.
    7. Really the whole thing needs to be a lot less focused on plausibly simulating physics and more focused on behaving how I want it to. Modern commercial realtime physics engines work this way: there's a ton of nonlinearities and special cases, and the net result is a system where you can (a) stand on the floor, and (b) if you hit the right edge case, you can clip through walls. But with this one, you can clip through walls by pushing on them hard enough, so, y'know, eh.
    8. Ugh, mutable state everywhere. =( Partly that's '00s Java being '00s Java, but mostly it's just that I was a very immature programmer at the time. I'd been coding for a few years at that point, but largely in the context of intro material. I was good at it, but it wasn't until a few years later when I took much more sophisticated classes in college that I really developed a sense of program flow and structure.
    7 votes
    1. Boojum
      Link Parent
      Honestly, I'd say that's not bad for high-schooler-authored code! I've seen worse by people old enough to know better. Oh, I remember those days - also high school for me! Euler angle rotations...

      Honestly, I'd say that's not bad for high-schooler-authored code! I've seen worse by people old enough to know better.

      This was written after I learned trig, but before I learned linear algebra,

      Oh, I remember those days - also high school for me! Euler angle rotations directly on vector components and stuff like that. (Cringe!)

      1 vote
  8. vord
    Link
    So, I picked up some 3.5 floppies on ebay for a project. 5 of them had files on them. Behold, some great MIDI files. The file dates are not accurate, though the one came back as 1999 instead of...

    So, I picked up some 3.5 floppies on ebay for a project. 5 of them had files on them. Behold, some great MIDI files.

    The file dates are not accurate, though the one came back as 1999 instead of 1979, and I know swapping MIDI files on floppies was totally a thing in the 90s, I have no doubt they're from that era.

    If I could find my old IDE laptop drive adapter, I'd dig up some of my old files from circa 2002.

    6 votes
  9. TheRtRevKaiser
    Link
    I tend to do a clean install every few years, so the oldest files on my PC are from 2023, but I checked my Google Drive and found some files from 2015. I think it'll be pretty obvious what these...

    I tend to do a clean install every few years, so the oldest files on my PC are from 2023, but I checked my Google Drive and found some files from 2015. I think it'll be pretty obvious what these are without any context, but the title was just "09/20/2015 notes"

    09/20/2015 notes 9/20 session notes ball at lady ingleston’s

    talus got promise from lady to send manservant with list of influential people in waterdeep who want to act against cult of lady. may use party as face of movement against the cult

    aethan spoke to rep of mieliki(sp?) his goddess, was pointed in direction of lord havalar's house
    investigate with hawthorne, found shrine with statue of lady (raedra) who came to life and begged for help, did not know who she was. screamed. came after aethan and touched - drained life. aethan and hawthorne gtfo, heard guards being killed behind them.

    at party, talus and varel spoke with lady ingleston, professor dunhall, miss bexley who is secretly playwright Geoffry of Waterdeep. she promises to get info on cult.

    hawtorn ktfo prince ashur-nadin. party spoke with ukarth galubar, half orc sembian resistance fighter, who promised favor for party's help in defeating netheril.

    miss bexley followed party back to inn out of curiousity, got ktfo by hawthorne. woke up and was interrogated, was curious about interrogations and being hit. admitted to being geoffry, famous plawright.

    possibly have miss bexley kidnapped by choosers in a few sessions?

    6 votes
  10. qob
    Link
    A piece of music I made in 2019: https://envs.sh/uG2.ogg Not very old, but it feels like decades. I learned that making music with a computer is quite easy, but it takes forever and is exhausting.

    A piece of music I made in 2019: https://envs.sh/uG2.ogg

    Not very old, but it feels like decades. I learned that making music with a computer is quite easy, but it takes forever and is exhausting.

    6 votes
  11. teaearlgraycold
    Link
    Here's a trailer for a Minecraft server I ran back in High School. We had a bunch of different regions with different classes/races (High Elves, Dwarfs, etc.). I've ran a pretty much continuous...

    Here's a trailer for a Minecraft server I ran back in High School. We had a bunch of different regions with different classes/races (High Elves, Dwarfs, etc.). I've ran a pretty much continuous series of Minecraft servers since 2010/2011.

    6 votes
  12. MimicSquid
    Link
    My oldest files are from a couple of decades ago in my early adulthood, but mostly not where I want to share the detailed contents. A few photos, a rental agreement, a copy of ZSNES and 390...

    My oldest files are from a couple of decades ago in my early adulthood, but mostly not where I want to share the detailed contents. A few photos, a rental agreement, a copy of ZSNES and 390 related .smc files. I did find one image I find funny, in the way that it tried to enforce rules of proper argumentation. It feels almost naive, Like people actually would want to argue in good faith, or perhaps dedicated to self-preservation, it that it provides a formal out when someone is arguing in bad faith. Either way, it's a relic of a different time.

    4 votes
  13. zod000
    Link
    I just found a bunch of really old stuff, one was the result of my dirt cheap webhost getting hacked. Everyone's website on the host was replaced with an image of "HIDDEN WRESTLE dEFAcEmEnt tEAm"....

    I just found a bunch of really old stuff, one was the result of my dirt cheap webhost getting hacked. Everyone's website on the host was replaced with an image of "HIDDEN WRESTLE dEFAcEmEnt tEAm". I kept the image because it was so lame and amateurish and as a reminder to get better hosting.

    Edit: this was from 2004

    3 votes
  14. xk3
    (edited )
    Link
    The oldest files in my sync/ folder are a rip of the unicornjelly webcomic that I've been meaning to read. If I limit it to files ending in .txt I see: Report_Card_Incentive.txt ALL A's = 10 A+...

    The oldest files in my sync/ folder are a rip of the unicornjelly webcomic that I've been meaning to read.

    If I limit it to files ending in .txt I see:

    Report_Card_Incentive.txt
    ALL A's    =    10
    
    A+   =97%-100+% 5
    A    =93%-96%   4
    A-   =90%-92%   2
    
    B+   =87%-89%   1.75
    B    =83%-86%   1.5
    B-   =80%-82%   1
    
    C+   =77%-79%   -3.75
    C    =73%-76%   -4
    C-   =70%-72%   -4.5
    
    D               -10
    F               -20
    

    and more recently...

    hey_googles.txt
    cocaine poodle
    Hey Dougal
    hey doodle
    ay googoo
    

    I'm not sure when this one was made or even if it was written by me? I think may have been an early interaction with LLMs in 2022?? From an unsaved tab in VSCodium (I use VSCode 90% of the time but keep around VSCodium for random notes and snippets):

    The Mojave Desert through the Eyes of the Minarchist.txt
    The Mojave Desert through the Eyes of the Minarchist
    The game starts off in almost perfect balance
    Each faction tolerates each other
    fighting
    but never killing off each other
    Then you start the game and you throw it all out of balance
    The Mojave is pretty unforgiving
    but if it's one thing
    it is fair
    It doesn't choose sides
    But at some point while playing the game Fallout: New Vegas
    you have to choose sides and effectively take over other factions
    Almost ironically
    progress in the game can be seen as regress through the minarchist lens
    Throughout the game you meet over fifty different factions which you can be accepted by or vilified
    In order to complete the game you must either side with one of three major factions at the expense of the others or you can side with an AI named "Yes Man"
    reprogram a robot army
    and take over Hoover Dam so that no one faction has more control over the other
    The last option would be good
    but it stems more from dictatorism than minarchism
    The big problem with Fallout: New Vegas is that many of the quests you can complete for factions are against other factions
    This is not necessarily unlike real life
    but it denotes a false sense of progress
    If the player sides with "Yes Man" they can fail to see through an illusion of egalitarianism wherein the player him or herself has defeated every main faction and has effectively become a powerful dictator
    This is unfortunate given the vast number of factions within the game
    the level of ideological exploration was both illusionary and lacking
    

    I probably wrote it 3 months ago at 4am and don't remember

    3 votes
  15. [2]
    dustylungs
    Link
    This post reminded me of a site I haven't looked at in a long time: http://www.textfiles.com

    This post reminded me of a site I haven't looked at in a long time: http://www.textfiles.com

    3 votes
    1. asteroid
      Link Parent
      There goes MY productivity for the afternoon!

      There goes MY productivity for the afternoon!

  16. hamstergeddon
    Link
    It's hard to say when a lot of my files are from because they've been moved around between servers so many times that the dates on the files are substantially more recent than when they were...

    It's hard to say when a lot of my files are from because they've been moved around between servers so many times that the dates on the files are substantially more recent than when they were created. But I think among the oldest is a doodle I did in the mid-to-late 00s, maybe? I don't remember the context, but I do remember the title is "President GoKidneyBean", a presidential kidney bean version of Goku.

    3 votes
  17. Loran425
    Link
    Definitely an interesting dive through the old, "BACKUPS" folder, but this was a fun one to share from 2018, just an old .bat script for running python scripts from a USB drive back in college, I...

    Definitely an interesting dive through the old, "BACKUPS" folder, but this was a fun one to share from 2018, just an old .bat script for running python scripts from a USB drive back in college, I remember being way too happy that simply by copying and pasting a file with identical contents and renaming it I could launch different scripts from a flash drive.

    @echo off
    set wd = "%~dp0
    set PYTHON="%wd%WPy-3701\python-3.7.0.amd64"
    set SCRIPTS=%wd%WPy-3701\pscripts\
    "%PYTHON%\python.exe" "%SCRIPTS%\%~n0.py"
    

    For a bit of context in .bat files the %~dp0 extracts off the drive letter and the colon from the executed file name and %~n0 would extract the file name without the extension.

    Nothing fancy, but fond memories of that time.

    2 votes