Thursday, August 13, 2009

Cave Men

There are many things that bother me about the world I live in. In America we still have a large number of bigots, racists, hate groups, militias, gangs and other throngs of violent or verbally abusive people. This is not the only country with such entities, and perhaps not even the worst.

However, in America we like to claim that we are superior, that we have a moral high ground, that we promote "the greatest good" in the world. Whenever I see those words I grimace. I always hope that such things will be true someday, for the sake of my grandchildren.

Today, in the "brave new world" of the 21st century, we still live like tribal savages from the time before the Pyramids. We have barely evolved, if at all, from the cave-men caricatures of our ancestry. In fact, if not for a continuous monitoring of the populace, including a monitoring of the monitors themselves -- our civilization would collapse into a Mad Max world of savages. Racism and bigotry would be the major forces in the world. Intellect and civility would be overrun like Easter bonnets in a cattle stampede.

So, just think about the world you are creating, and what you will leave for your children and grandchildren. If you are just teaching them bigotry, then you are destroying their future.

Tuesday, August 11, 2009

Virtuoso

Recently I have tried using "virtual computing" and I'm very impressed really. Although I have tried to do this before, using a computer that wasn't quite up to the specifications needed to handle it, this time it has been far more successful.

I am using an Alienware computer with 6gb of memory and an Intel i7 processor with 8 threads, so the horsepower and memory are already there, this time around.

Using a free, for-home-usage product called VmPlayer (a tool in the VmWare product line), and another tool from a web page (known as EZY-VMX) I was able to generate several virtual machines to run on a single computer. I tried a few different arrangements, including using multiprocessors, large memory space to single processor, small memory space, and then running virtual systems using Linux.

So first I made a system for Ubuntu 8.04 (using an existing Ubuntu boot CD I had.) No problems there -- everything worked flawlessly and the virtual machine hardly made a dent in the Alienware's Vista system. What was even more impressive was rebooting Alienware into an existing Ubuntu Linux OS, downloading VmPlayer for Linux and running exactly the same virtual machine from there as ran in Vista. I was a little troubled that I had done so much work for an older version of Linux, however.

Next, I found a pre-built "appliance" for VmPlayer, where someone else had already booted OpenSuse 11 into a virtual machine and stored it as a compressed blob. All I had to do was download the blob, decompress it and run it in VmPlayer. It worked flawlessly as well. And it also ran at the same time as the other virtual machine with Ubuntu. So I had all three running at once, Vista, OpenSuse Linux and Ubuntu Linux. The machine was happily humming along. I decided to get a more up-to-date version of Ubuntu (9.04) by downloading an appropriate blob for that.

So, anyway, this has been a good experience with virtual machines, but I have to admit that I did it all out of curiosity rather than necessity. If I was a business, howevehr, I would probably go ahead and shell out the bucks for a total VmWare package so that I could tweak things and get all the proper updates, etc.

I then updated them with the latest and greatest open source software, especially for software development and word processing, etc. And once I got everything working good, I compressed the disk files that comprise each virtual machine on Vista and backed them up as single blobs of my own. So if I blow something up I can just retrieve the backed up machine and proceed from there.

Now, I'm not advertising any of this, I don't make a dime off anything I'm saying here, it is just my personal experience with these systems. For all I know there might be just the same abilities using other virtual machine software out there, it just so happened I tried this combination first. I'm also not easily impressed, but this is good stuff.

Tuesday, August 4, 2009

Why I dislike C++ and C#

I admit it. I am a "Object Oriented Programming" hater.

At first there was just a kind of disconcerting feeling about it, such as a sudden shifting from the simplistic terminology of C to the "elitist" terminology of C++. (These are not the only examples of opposite languages, but they are good for examples.) I always tried to program computers in the most simple, direct manner so that I could understand what I did later when it needed to be changed. Although C cannot make things assuredly simple, C++ makes the simplest things hard.

For instance, the "Hello World" program can be made almost identical for C and C++, since C++ will allow certain forms of C syntax and function to work right out of the box. This is a good thing, otherwise most C++ programs would never work. Yet it is possible to use the "class object method" model for programming "Hello World" and suddenly a 2 or 3 line C program becomes an entire screen full of symbols and gobbledygook with the string "Hello World" stuck in there several places.

Now, I am not saying that C++ doesn't have good aspects about it. Certainly I like the fact that objects clean up after themselves in a more orderly fashion than C functions, although part of that ability is on the part of the programmer to make sure it is done. I had the same habits when I programmed in C -- to make sure all allocations were freed, all files closed, all errors returned, etc. It was just a habit of programming rather than a structural part of the language.

I originally wrote code in BAL (IBM Basic Assembly Language), Burroughs Assembly Language and PDP-11/70 Assembly Language. There were some other awful things in there too, like Cobol, various Basics and Fortrans. Lisp, Forth and some self-written languages also made my list. But when you program in assembly language, you learn to think in certain patterns that keep you from shooting yourself in the feet. Other languages try to force your feet to keep out of the way of bullets, or disallow bullets entirely.

Macros were an important part of assembly languages. These allowed repetitious aspects of programming to be done once and then reused wherever necessary in new programs. In some ways the C language is merely an enormous macro language encapsulating all the goop of assembly language. Yet the very thing I liked best about assembly was the pinpoint accuracy it gave you. Whatever the machine was capable of, you could make it do it. In today's world, most of a machine's capabilities are wasted, and some small subset is used in 99% of programs.

Although I do not wish to program in assembly language any more, (carpal tunnel hell,) I do miss the pinpoint accuracy. Using C makes me feel like I'm using very dull pencils. Using C++ makes me feel like I'm using Legos with Swiss Army Knife attachments made from balsa wood. With C++ I hardly every achieve exactly what I set out to do with a particular program. It always winds up being what I am allowed to do by some hidden Fascist inside the machine.

C# is another level of icky gooey stuff poured over C++. In some ways it is like a scripting language, or a little bit like Java. I think the benefit of C# is sort of lost -- it is just another arbitrary thing created by Microsoft that could just as well been done with Java (but without Microsoft's purely profit driven reasoning...)

I stay away from C# for that reason. It isn't that I want to program with difficult, syntactically punctuated languages at all. I just dislike arbitrary reinventions of wheels. It was a great waste of programmer time and it is a waste of my own time to learn and use it for anything. Especially since there is a performance and capability loss with the use of C# (and its .NET world.) It is like using C++ with thick mittens on, and under the watchful eye of a vicious Nun.

Sunday, August 2, 2009

Thinkless Machines

I read all kinds of stuff about Apple's hardware, software, iPhones, iPods, iWhatevers. I am not really against Apple, really, but I don't own any of those things.

I know lots of people with iPods, etc., such as my daughter and most of her friends. Her husband evidently ran over one with his car recently -- I found the flattened, broken thin glass and metal thing in a compartment in his truck when I was looking for a rolling marble or something. Whatever it cost, it is worthless now.

I have many computers, including old, 1999 obsolete Thinkpad, newer medium quality Dell laptop, a higher end Alienware desktop, plus a lesser, older Dell desktop about 5 years old. I use all of them for various purposes -- sort of software quality filters. If something will still run decently on the Thinkpad (with Linux) it will run extremely good on the Alienware box (with any OS...)

But, back to the Apples. Why don't I have an Apple? Actually my first "home" computer was an Apple, although I had played with TTL circuitry and made weird little contraptions -- sort of proto-computers -- before I plopped down the $2500 bucks for an Apple IIe. Now, that was a SLOW computer.

Later on, due to my profession in software, I had access to very powerful machines -- servers, workstations, robotic systems, etc. -- and didn't really have time to screw around with gutless machines. So I needed whatever the latest greatest fastest stuff was -- usually an Intel box, but sometimes it was SGI or even an IBM system of some kind. Apple was not on the list.

I did play with a NeXT box for a while, something that was for porting software to, but it wasn't a very popular system for whatever reason, cost or lack of color or something. I thought it was OK, and certainly I liked the C and C++ programming for it. But it was just a brief project, and on to the next junk.

I have never used a Mac, especially an iMac or whatever they have, either the desktop or the laptop or the iPod or iPhone or anything else. I guess the closest I've come is having used Safari web browser for a few days, and occasionally using iTunes for playing mp3s (but not syncing to an iPod or using the iStore...)

And now that I'm getting on in years, I probably won't ever purposely buy anything from Apple. If somebody buys me one as a gift or as a work project or something, I guess I wouldn't kick it off the desk. But I'm not rushing out to empty my wallet on one anytime soon.

For one thing, for absolutely FREE, I can use a myriad instances of Linux (I know, I know -- Apple-heads look down on Linux). Yet, for all practical purposes, except for the prices of machines and the software, Linux is very similar to Apple's stuff. Not identical, no. Nor is it identical to Microsoft, nor is Linux even identical to Linux, since there are so many flavors.

But I am a machine head -- I like the fact that I can mold Linux any which way I want, or not, on a whim. I don't have Cupertino's lawyers breathing down my neck, nor the ghost of Bill Gates haunting me. I just have nice systems running in all my machines.

I also have Microsoft, of course. I have to because I'm a software guy. But I use that the way I'd use a semi-truck - to haul cargo. I use Linux the way I'd use space craft -- to do whatever the heck I feel like doing. I'm using Ubuntu Linux on my Alienware to write this, but I could just have well done it with the Thinkpad, although a bit slower.

Apple? I'm not sure I even know what to think about those things. I hardly ever think about it them at all. And I for sure will never pay actual money for one, ever again. I paid way, way to much for that Apple IIe, and it couldn't even think one bit.

Friday, July 31, 2009

Another Life Emerges From The Goop

There is a war going on between humans, and since it involves a subject so profoundly bound with our existence and our place within the Universe, naturally there will be heated disagreement and even deaths resulting. You guessed it -- religion and philosophy cause wars.

First of all, even without a discussion about the nature of life, or even the nature of the non-biological processes all around us, there are many arguments over whose "holy book" is the holiest. It seems to always depend on where you were born, and therefore which culture had its effects imprinted on you first. I don't like arguing about things that are essentially arbitrary. In fact I don't like arguing at all. It is quite tiresome, and I have little of my life remaining to waste on such endless blithering.

I am not an Atheist, although I don't necessarily disagree with many of their arguments. Yet I am definitely not a Theist, because both of those labels imply that I believe something. I don't believe in either premise -- that there is NO god, or that there IS a god. Who knows?

I don't "believe" anything on that level. There are many things that I suspect, and there are many things that seem to be true -- the fact that I am alive right now, typing these words into a computer -- how can I argue against such a fact. I can't. But that is not something that requires "belief". I don't have to actively force my brain to believe in such an immediate reality. I just exist, whether I believe it or not.

"Belief" is something that is required whenever there is a possible doubt. And for scientists, the doubt must be overcome with logical facts which can be proven (or at least not collide against things which are already proven.) I am more like a scientist in that regard. The other kind of belief is "Faith", in which one believes something for the sake of believing it, regardless of any facts, for or against. I have no "faith".

I used to joke about believing things, such as "I will now believe in Aliens." I certainly had no reason or knowledge regarding Aliens that could prompt such a decision. It was just an arbitrary thing to believe -- something which many people have strong feelings about. I just liked to see how people would react to such a statement. It is silly, yet no more silly than believing in the Big Bang or something like that.

However, when I look at the most fundamental aspects of existence, such as the substrate of atomic interactions known as chemistry, with all the electrons and atomic weights somehow producing a vast array of properties in so many different combinations -- I see an endless complexity. It is not necessary to drag "life chemistry" into the problem in order to see the complexity. It exists in the simplest chemical, e.g. hydrogen. The existence of hydrogen is a mystery all in its own. The relationship of the single proton with its single electron has a built in unpredictability, and behaviors which depend greatly upon the temperature of the environment (and thus of other hydrogen or other atoms) around it.

Looking even closer, one finds that a proton is collection of quarks, with different properties within, thereby making the hydrogen atom far more complicated than a stone with a littler stone orbiting it. Even an electron, so tiny compared to the proton, is a lepton particle/wave contraption with little rules of its own within. It also depends on the temperature of the environment to behave whichever way it does.

When we back out to the level of human life, and pick up a stone from the ground, we don't see the vast interactions of countless specks of atoms and their electrons. We just feel the weight, the hardness, the solidness of the stone in our hand. If we could live a billion years, and held the rock in our hands the entire time, it would have changed very little. Possibly the acids in our skin might effect it, or bacteria, gasses and so forth in the environment might discolor the thing, but it would mostly just be that same old stone.

Yet, internally, the atoms may have all changed places in their matrices, and certainly the electrons would have all been replaced. If one could watch atoms through a microscope, which is rarely possible, there would be an endless dance of molecules, vibrating, bouncing about, changing partners as in a minuet. Yet, seen from the distance of our eyes to our hands, the stone's atoms seem to be as completely solid as solids can possibly be.

Still, if you could make a tiny drill with a drill bit as sharp as a single atom of titanium, and drill the tiniest possible hole into that matrix of atoms, the hole would disappear nearly instantly once the drill bit was removed. Atoms won't tolerate such an artificial structure as a hole without some other factor, such as a minimum size for the hole, or a junction layer of differing atoms that hold back the tide of other atoms from filling in the hole. Yet, even the junction layer would have rules governing the minimum size of a hole that it could tolerate.

So, are these atoms alive? Are they like teeny tiny bacteria or viruses? I doubt that they alive in the sense that formal life forms are alive. Certainly they are not organic molecules, at least not in a common stone -- perhaps made only from silicon dioxide, quartz, or feldspar, without a single carbon atom to be seen in the whole matrix (except possibly as an impurity.)

But, even if the rock was merely a solid crystal of hydrogen (not very likely on the Earth), it would have extremely unpredictable behavior at the molecular level. The only thing that can be predicted is that it will be chaotic. This is the law of entropy. Things will become increasingly disordered with time, releasing their energy in lesser and lesser levels of infra-red radiation as entropy progresses.

Not until all matter has been stripped of its latent heat, frozen beyond any conception of the word "freeze", will there be a cessation of the progress of entropy. Where will all that heat have gone? It will have been dissipated into infinite space, radiated beyond the reach of every atom. The "heat" will have been stretched out until it is flattened and cold, and then to disappear from existence entirely.

But until that far distant time, which could a quintillion years from now, or longer, there will be the ceaseless dance of molecules. Ever changing shapes and configurations, shuffled and reshuffled again as if in infinite atomic poker games. Atoms will accidentally form shapes and designs of nearly limitless kinds. Only their "death" at that future heat death at "absolute zero" (a sort of comical expression, really, any other kind of "zero" would not really be "zero" at all...) could ever stop the endless dancing of atoms and particles of matter.

Certainly, as the temperature reduces, the freedom of movement of each atom is reduced. The crystal forms will be less and less able to be altered. The atoms will be forced to dance in smaller and smaller arenas, as in the crystalline methane snow of Pluto. It is unlikely that hydrogen will become anything more complicated than methane in such an environment, yet it is even there, frozen as solid as solid can be, the most minute organic molecule, like a tiny frozen biscuit, food for bacteria that might come along someday.

Of course, with the addition of "dark matter" and other exotic formats of energy and space, there may be other completely separate complexities of which I know nothing, and can only just pretend to imagine, but even so, the meaning of "existence" must include those things as well, even though nothing is known about them. But rather than subtracting from the complexity of simple matter, it can only add more.

Anyway, this is what I tend to "believe", if I must use such a word -- that atoms and energy ARE life. They have always been alive, at the most basic level, and always will be. As ever increasingly complex "life forms" such as ourselves come into existence, certainly far more complex than basic atoms, they are able to look upon these little bricks of super-simple life and wonder -- how did these little things get created? Was there an intelligent maker? Or did these things just emerge from the infinite goop of nothingness?

Thursday, July 23, 2009

Wallpaper Images


I have written some software based on 3D rendering algorithms for generating somewhat surreal scenes of massive floating chrome balls floating over a multicolored terrain made from boulder sized cubes and even more massive reflecting pools and blocks. The pixels of background images are used for coloring each block, in various "secret ways" which cause the most aesthetically pleasing effects.

I must thank "SuperJer" for some of the original ideas and algorithms, however I extensively rewrote them to handle very large mapping objects with the eventual goal of individual pixels instead of each "large block" that currently is rendered. That kind of detail takes a very large amount of memory even with more efficient storage methods, and will also require massive processing, which is currently being done on an Alienware computer using an Intel Core i7 CPU with 8 processing cores and very fast memory, etc.

Monday, July 20, 2009

Self-chosen Man.

For a million years or so, Mankind has been poking and scraping at things on this planet, sometimes eating them, sometimes just making shapes to amuse themselves, sometimes just destroying things accidentally. We are good at that.

And ever since then, when Mankind ate of the "fruit" of the tree of knowledge, the world has not been so innocent ever again. Before we came along there could never be Pekingese dogs. There could never be Texas longhorns. There could never be Siamese cats. There could never be popcorn. And there could not even be modern humans unless there were proto-humans who made the initial qualitative choices that led to our genetic form.

We made all of those things appear on the Earth, quite unnaturally. There was the time before when natural selection purely laid the foundations of life. If a life form was weak or unsuited for a particular niche, too bad. It was gone. And the same thing applied to early hominids. It is not clear, exactly, what the environment held against us in those days, but certainly large wild animals, very bad weather, and even very savage fellow hominids all had a hand in their doom. Some kinds of human habitats are similarly savage even today, such as in grizzly bear country, or in places where tigers or leopards still roam.

It is somewhat harder to follow the next phase of logic, which was that as hominids became ever so slightly more intelligent, even though barely above the intelligence of a baboon, their mental processes became part of the "natural selection" process as well.

Although I'm certain we did not consciously create ourselves from the raw material of lesser apes, I am sure that we made choices about who we mated with, who we slaughtered, who we befriended and so forth, on increasingly more arbitrary, qualitative criteria. I call this "augmented" natural selection.

Of course the hominids had already inherited many traits from their ape ancestors, just as we can observe in modern versions of apes. Still, there are no "human-like" apes except for humans. Chimpanzees and gorillas may share many traits, but they are clearly not performing the same kind of "augmented" natural selection which is the hallmark of human genealogy. If they did, they would have become sentient beings like ourselves. They did not.

Let's make a cruel but plausible scenario in which early man might have made decisions that effected evolution. For instance, let's assume that, for whatever reason, there was some bad weather, some limited food stuffs, and few food animals to hunt. It is also most likely that males were the dominate ones of our species in most (but not all) aspects of life. They still seem to be the most dominate today, although not in quite so pronounced a manner.

So, if the alpha male has to make choices of who gets to eat and who doesn't, what criteria might there be? The male, being as shallow as modern males, perhaps, might choose more sexually appealing females to keep and drive away the others. (I'm not sure what "appealing" meant for the earlier hominids, maybe odor, maybe looks, who knows?)

The males in the group might either have been held at "spear tip" distance, or at least allowed to remain in the group on a strict value basis, such as whether they were essential for hunting, excelled at tool making, or even if they were merely good friends with the head honcho.

Males that encroached on the alpha male's gang of females might not be so appreciated, but there may be room for sharing some of the females so long as there is a benefit to the group in the opinion of the alpha male. No matter how prodigious an alpha male might be, he still can only service so many females in a given time. So it is unlikely that an alpha male could successfully keep every single female to himself, because even if he's the meanest, most selfish hulk on the hill, he has to sleep sometime and the females could be very sneaky in their own quests.

Still, some kind of understanding about that would effect who mates with the females and who doesn't. This is another area for qualitative selection to be enforced.

Certainly, at some point along the way, the sexual habits of the humans began to reflect their intelligence, both in the conscious selection of mates and in the choices which females themselves could make amongst the children they bore. Even the shapes and functions of the sex organs became selected for.

In purely aesthetic areas, if a child was somehow too ugly, or had something "unappealing" about it, the females might neglect it, allowing the unfortunate mutants to wither away. In some animal species the females actively seek out and kill babies for many reasons, including jealousy, anger, mutation and perhaps even "having slightly the wrong odor."

Humans react to babies in predictable ways in modern times, however even the most mutated human babies might be sheltered by parents now and then. There are many cases of idiot savants, the Elephant Man, paraplegics and so forth, who would probably just die if subjected to a more natural setting. On the other hand, just as many of the same conditions would spell certain doom to those poor children, from either stark neglect or outright infanticide by frustrated, disappointed parents.

I wonder how many infants where "drawn and quartered" in the courts of ancient kings, such as with the stories of Solomon. It is not so much that Solomon actually did such things, but the fact that the women in the story about "who the real mother was" actually believed Solomon would and could do such a thing was telling.

But infant killings are rare enough and specialized enough that they are usually understandable, and usually out of necessity. One cannot keep a baby alive if it has no brain, or if the skin cannot form around its internal organs, or if its bones grow together in a knot, etc. Whether human or animal, those cases are hopeless. Yet in human society, those cases can lead to greater knowledge about the mechanics of genetics.

It could be a side effect of modern medicine, whereby keeping alive babies which were deemed hopeless in earlier times, that we will ruin our genetic heritage. But I think we have already ruined it, many eons ago. We can never be "naturally selected" again. If conditions on this planet become so terrible that only the "most fit" can survive, then the greatest majority of us are certainly doomed. I cannot even imagine what kind of person it would take, because I don't know what the conditions really will be. Many past extinctions occurred with animals which were far more adapted to harsh conditions that we are.

But, technology being a kind of "ace in the hole", it may be that it will not be the most brutish of the brutes that survive, but the geekiest of the geeks, instead. As for the females? I have no clue. But, if you notice, geekiness knows no sexual boundaries.