diehealthy.org

Archive for October, 2007

Dr. Zoltan Øbelisk has an essay contest about “What Is Wrong With The Human Race? Below is my submission.

Supposedly Humphrey Bogart thought the problem was that everyone was a few drinks behind. This may or may not explain things like stores specializing in pet tattoos (and don’t ask me if it’s tattoos for pets or tattoos of pets!)

As far as I’m concerned the real problem with the human race is control. Mr. Bogart certainly tried to become master of his own existence through heavy drink, but this strategy has almost never worked. The few times it has is almost surely pure coincidence.

If you take a moment to look at headlines, celebrity gossip, sports scandals, and generally observe the humans you see a lot of misery. Drugs, drunks, gambling, sexual frustrations and baggage, crime, war, and bad trips of all sorts mark our species. Obsession-compulsion. People who collect fast food restaurant toys.

If you check out this guy that was named Abraham Maslow he had his own kind of ‘food pyramid’ thing going. They call it “Maslow’s Hierarchy of Needs.”

So that hierarchy basically says, “The humans need this stuff, but you can’t just give a bum a luffa and expect him/her to be happy. You gotta give the bum a house, food, water, medical aid, dental care, sex, sleep, etc. Then you give them the luffa, dummy.”

That humans have some total set of things we need in order to feel secure in our existence, and we need them in some general order from the things for basic survival to the things for physical preeminence…and then on to the things that, when had, keep us from doing things like barking orders at the waiter in the restaurant or double-parking our SUV in handicap spaces (or even owning an SUV).

And that’s the behavior I tend to focus attention on. Why is that guy yelling at the waiter? He thinks the waiter what, paid, or maybe blackmailed, the chef to sleep with the man’s wife? It wasn’t like that. The wife heard the chef was well endowed, and she always wanted her hierarchy tickled, so…But seriously, break it down. A human may break out in a horrid rash of anger, violence, and despair at the very mention of his or her lover being unfaithful. That’s about control.

You see some drug fiend arrested on the TV and say, “what a shame, why in God’s name would anyone let their life turn into that?” You don’t, however, stop to question what the hell they wanted to escape from so bad they’d resort to addiction. You don’t ask, this person, this prostitute, when they were a child maybe they were molested and raped by some adult they knew well and should have been able to trust? And so maybe now they are a prostitute because in choosing to undergo those same acts but for money they feel like they have the control they didn’t have back then?

And of course the control issue runs a cycle on us all. Take the gambling addict. He has financial troubles so he goes to the track to try to solve them. In turn creates more troubles. He’ll curse the lot of them, saying they should be made into glue. He’ll buckle down at work and make the nut and get out of debt. Hell, he’s even on top a little bit. That feels okay, but he reflects on the hell he just toiled in and feels dejected at the prospect that it was all to fill others’ coffers. So he takes his little bankroll down to the tracks to try to make his work payoff for once. That he deserves a surplus at least approaching the massive debt he’s just crossed off.

The basic algorithm of human misery is one of a loss of control followed by some aberrant behavior that attempts to establish control. Everything from overeating to serial murder to terrorism. And what’s worse, the behavior then becomes the trigger for more deviance.

One of my personal patterns is thinking. I see the misery and can’t control it, so I try to think of ways to solve or at least improve the global situation. That leads to the inevitable revelation that despite some ideas having merit I lack the means to test or implement them. Which leads to more thinking.

Or consider the USA’s foreign policy of late. For a whole century we tried to gain control of our destiny by gouging an anthill with a cattle prod. Then there was the reaction of the ants. So now we’re working on surveillance and other means of figuring out where the ants are, and better cattle prods. Its another cycle.

So what’s the solution? Stop the initial loss of control? It will sadly take too long for man to do a good enough job at that to be viable. The solution is, rather, to try to give people more control now. For those of society who we have deemed unsafe and put in prison, it remains in our best interest to give them the ability not to be beaten and raped and tormented, but instead to improve their stations in some small way.

It means instead of sending someone to rehabilitation for drug or alcohol addiction and then sending them back to their previous life, they should be shunted off into a new life where they actually stand a chance of breaking free of their past mistakes. Because control is all about your environment. If you’re in an environment you can’t control you will misbehave in some way to compensate. People stuck in traffic on the interstate will often drive in the breakdown lane.

Well, that’s my view about exactly what’s haywire. And why. And how to solve it. And I happen to think it’s right. So if you’re life is out of control instead of drinking too much or eating too much or other things like that, why not do something small. Go on google and find some simple origami. Make a swan. Or go buy a 500 piece puzzle (not the one with the hot air balloons, I hate that one) and do a little bit of it every day. Or take up knitting. Or whatever suits your fancy.

In other words, there’s pretty good odds against us beating this whole mess outright. Instead of trying to overcome a virtually insurmountable foe in a single battle, stage your own smaller battles for control. If you’re sick of fighting for a parking spot, find an alternative means of transportation (including giraffe). If your boss is an asshole then next time he’s about to shout or snap at you for some minor error or something that wasn’t your fault give him a greeting card with pictures of puppies on the front. Okay, that one might not work.

Point is, you can reclaim small bits of control that you don’t have now. You can. I can’t do it for you. God either can’t or won’t do it for you. You can.

Posted in unAmerican | No Comments »

In my endeavor to get bookStack included in the official Mozilla addons repository I was told to accumulate some user reviews. As a result of talking to some users I found out the upcoming version (currently in beta) of the Netscape browser, Netscape 9, has a very similar feature to the one bookStack provides.

The main difference is they use a sidebar and do not (from what I could tell, haven’t tried it myself yet) give direct access to the stored items (eg, via the bookmarks manager).

So I’m currently working toward a version of bookStack that has a sidebar so that people who want Linkpad for Firefox can get it.

It should be ready in about a week.

Posted in software | 4 Comments »

Valve has just (okay, a few days ago) released their ‘orange box’: Half-Life2 Episode 2, Team Fortress 2 (multiplayer), and the game I mentioned last December, Portal.

I’d been waiting for TF2 since I played the original back when it was a mod for Quakeworld (the online component of Quake). Of course, that was when it was going to be a mod for Quake 2, and then it was going to come out on Valve’s Half-Life engine, and none of that happened. Ultimately TF2 is very different than what we waited for. It’s a good game, but the reason I bought Quake 2 and the original Half-Life is a game that will never exist.

The newest release in the story of Gordon Freeman is a solid episode. It’s a cliffhanger, which hopefully means that we’ll see Episode 3 sooner than we saw this follow-up. It’s definitely got some nice touches and replay value.

But the gem of the three is definitely Portal. It’s a genius idea. Take the idea of the hazard course/test lab environment that we saw over seven years ago in the first Half-Life and combine it with a great new ‘weapon.’ On top of that they throw in the whole 2001: A Space Odyssey “HAL9000″ element. The puzzles are great, and the humor is marvelous.

The difficulty is almost purely your ability to conceive the solution. There weren’t really any places in the game where I felt ‘hey, I don’t want to keep doing this, I get it but I’m just not capable, can’t I skip it?’ And to me that’s vital for a game.

A video game shouldn’t be about training me to some obscure combination of buttons or my reaction time. Above all it should be, can I think my way through this novel situation.

I haven’t looked at the bonus levels (challenges and advanced versions of some of the puzzles seen in the main game) or the commentaries of either Portal or HL2:E2 yet. The past commentaries have been wonderful so I look forward to those. Also, they’ve added a feature ‘achievements’ that keeps track of certain side-goals. Neat.

I don’t play that many new games, but when I do I’m pretty happy if they turn out like this. There are surprises and a general ambiance that almost feels like Quake 1 in terms of making a game where anything could happen. And in some ways, anything can.

Posted in software | No Comments »

This post regards the Euclidean Algorithm for determining the Greatest Common Divisor (GCD) of two integers.

I happened to read about this fun and simple algorithm and decided since I’ve been doing some C programming to take a little time to implement this in C. The version below outputs to the console via printf, but could easily be modified to return a value and thus be used as part of other programs.

Here it is:

[snip out GPL notice, it's in the actual file though]
#include <stdio .h>
#include <stdlib .h>
#include <limits .h>
#include <errno .h>

int
main(int argc, char **argv)
{
  int a,b,r; // declare variables

  if (argc < 3)
  {
    printf(”usage: gcd <value> <value> where neither == 0\n”);
    exit(-1);
  }

  b = strtol(argv[1], NULL, 10); // get values from command line
  if (errno != 0 && (b == LONG_MIN || b == LONG_MAX)) // ensure valid input
  {
    perror(”Bad argument”);
    exit(-1);
  }

  r = strtol(argv[2], NULL, 10);
  if (errno != 0 && (r == LONG_MIN || r == LONG_MAX))
  {
    perror(”Bad argument”);
    exit(-1);
  }

  if (b < r) // order them properly
  {
    a = r;
    r = b;
    b = a;
  }

  while (r != 0) // keep going until GCD found (worst case it’s 1)
  {
    a = b; // shuffle values to correct spots
    b = r;

    if ((r = a % b) == 0) // compute the remainder, if it’s 0 then GCD found
    {
      printf(”The GCD is: %d\n”, b);
      exit(0);
    }
  }
  printf(”usage: gcd <value> <value> where neither == 0\n”);
  exit(-1);
}

If I’ve made any grievous errors or there’s just a better way please let me know. This code is released under the GPL.

Also, you can download this file here: gcd.c

An example of input/output:

./gcd 184965 385
The GCD is: 55

Posted in math | No Comments »

I think it is important that the open source products also have an obligation to participate in the same way in the same way in the intellectual property regime.

That’s why we’ve done the deal we have with Novell, where not only are we working on technical interoperability between Linux and Windows but we’ve also made sure that we could provide the appropriate, for the appropriate fee, Novell customers also get essentially the rights to use our patented intellectual property. And I think it’s great the way Novell stepped up to kind of say intellectual property matters. People use Red Hat, at least with respect to our intellectual property in a sense have an obligation to eventually to compensate us.

Let’s start off with the claim of obligation. That’s up to the courts, ultimately, to decide whether a specific piece of the Microsoft Patent Repository is valid and what, if any, damages have occurred by use in linux (or, any other patent holder vs. any other alleged infringer).

But that’s really moot when you read what Ballmer said about the Novell agreement. Because it isn’t clear they can only distribute coupons that provide GPLv2 software. They would have to make it very clear to the Novell users they distribute to, “If you install any GPLv3 then you’re using our patents in a disallowed way… you aren’t protected.” And even then, unless they have very tight language they are dead in the water.

And even if not, they’re puffing the magic dragon if they’re going to hide behind the Novell agreement, “Look at us, we’re trying to be pals” whilst those very customers aren’t protected. They just can’t have it both ways. Either Novell users are protected, even under GPLv3, or they aren’t (under GPLv3) and the facade is covering the other face.

Ultimately what’s important is for the people to come to terms with what these corporations are actually doing… what they’re pulling. We need to recognize our society from the wider view, and then look down at the specifics, to decide for ourselves what’s good and bad.

Most people don’t take that time, which is a mixed blessing. Enough people infringing copyrights, enough corporations trying to beat their customers into compliance with arcane law and idiotic economic models… let’s face it, the muscles will always lay behind the invisible hand in that battle. Sooner or later the society crumbles or gets reformed just like any other system.

Posted in warpath | No Comments »

© 2008 — apt-get install wordpress