30 September, 2008

A diversion before the rollout...

My brother in law asked me to spec. out a multimedia pc for him, I sat down with him and we put together a relatively modern dual core machine, the last of the parts for the rig came in 2 days ago so I decided to build it as recreation before getting back to the business of installing my web framework on my production servers for my pending site launch. I had a late night doing just that on one of my servers and elated that I have the first production node of my cluster up and running decided to chronicle the media center build with some photos...because well, I like photos and some readers might be interested in building their own low cost machine. It is amazing how far pc's have come in the last 10 years let alone the last 20. I remember fondly thinking the 64kb of RAM that came with my Atari 800xl back in 1984 was an ocean of data, little did I know what the futuer lay in store. Later upon graduating from college I decided to purchase a computer to use for learning and also to find a job. It was the greatest investment of my life but one thing that stands out about that decision just over 8 years ago was the fact that the computer I purchased, an intel pentium driven machine with all of 128 Megabytes of RAM and all of 2 Gigabytes of hard disk space is that it cost me nearly $2500. Here we are 10 years later and by casually selecting parts I can build a machine that is literally hundreds of times more powerful than that first computer for a fraction of the cost. In fact the total cost for this build hovered just under $400 dollars.

The computer parts as ordered from NewEgg.com were:

  • Linkworld black midtower case.
  • Asus En6200LE video card
  • 2Gigabytes DDR2 RAM
  • 430Watt ATX power supply
  • Lite On 20x DVD+ - Writer/Reader with Lightscribe
  • AMD Athlon 64 X2 6000+ @ 3Ghz per core
  • Microsoft wireless keyboard and mouse
  • Asus M2A-VM motherboard
  • Western Digital 160Gigabyte SATA 720 rpm, 3Gb/s HDD
  • Encore Enuwi G2 wireless G network adapter

I had no problem putting all the components into the spacious case, I ran into one issue with the case ....very sharp metal surfaces on the inside. I received a rather deep cut on my left index finger from one such piece of metal without being aware of it until after it started bleeding. After getting a bandage I continued on with the build. Most people who don't build pc's think there is something magical about it. Like anything else as long as you know how the parts interface (and if they can be interfaced) you will have no problem building successful computers. As usual this build started with removing the motherboard from it's antistatic wrapper and setting it down on said wrapper. I then made sure to get the processor ready for mounting in it's slot, and attached the rather cool looking AMD stock heat sink. Now that the processor is mounted I added in the RAM sticks and the motherboard is ready to mount inside the case...

but before mounting the motherboard I made sure to add the powersupply into the empty case and went ahead and installed the optical drive and the hard drive as well...

This is the first build where I decided to go without a floppy drive, modern motherboards allow booting from the optical drive so getting the OS to install on a clean hard drive is trivial without requiring the shinanigans of the past. No dos or network boot disks for installations over the network and no need for format or fdisk on the command line. The use of SATA devices also allowed the inside of the case to look suprisingly neat thanks to the removal of the old style parallel ATA flat ribbon cables and replacement by the thin and sleek red SATA cables shown above.

With the motherboard mounted , next step was just to ensure all the cable connections were in place and then attempt the first fire up, here it is standing up ready to be fired up.

Here's the machine with the side panel on, this case has a HUGE fan in the side panel that made me laugh at first, but it is whisper quiet and has some cool LED lighting that my brother in law would appreciate. Below the machine is turned on and being loaded with windows, there was only one error during the build ...the LED light for the power switch was in the reverse polarity aside from that the machine booted into the installed windows XP cd immediately and in minutes was installing the new OS.

I let the box sit over night and installed software on it over the next day, when it was done it was time to send it to its new home. Here is a photograph of the new box connected to my brother in laws projection set, the set is not the best display for a mmpc since projection tv's aren't very sharp but we used the DVI connection in liu of the s-video which seemed worse when we first tried it that way.

The signal to the wireless router in the basement is strong and allows streaming of high definition video from the internet with the rare hiccup. Now that fun is over, time to get back to the production rollout. ;)

21 September, 2008

Fallacies in the idea of a Cambrian Explosion.

A common mistake made by people describing the Cambrian era of 545 mya is to assume that the incredible diversity of forms found in the shale strata that dates to this period is some how unique to the period. This mistake falls from the assumption that because we don't see the same level of diversity in later rock strata that it means there was less diversity in general over all possible living environments, but this doesn't follow. In the roughly 540 million years since the Cambrian age , the Earth's geology has changed significantly along with the animal forms, they did this while radiating into new habitats that were different from those in which the Cambrian creatures thrived. The homogeneity of the limited living environment of these early forms bares a contribution to the apparent diversity of animal forms found in the strata. We know that the early seas were incredibly homogeneous and it makes sense that as animal forms proliferated that they would team across this single strata in all their forms. As animals expanded into other environments and were selected into new species in these new environments, the diversity that existed under the single formative strata environment would be distributed across the new environments. As time goes by the different environments have different abilities to retain fossils of the animals that inhabit them, as the Cambrian gave way to the more recent ages, Carboniferous, Permian , Cretaceous, Tertiary and the present age the different rates of fossil preservation of species in these different environment strata would appear as a reduction in diversity from the perspective of the original homogeneous nature of the Cambrian strata and from the different rates of fossil preservation that exists in the radiated environments to which animal forms spread. Thus to make the statement that diversity during the Cambrian stands as an anomaly is a fallacious one based ignoring the influence of new environments for the diversity to be spread over the last 540 million years.

The question is raised , how would we go about quantifying the amorphous concept of "diversity"? Is it an attribute of evolving species in selected environments that is conserved? I posit that it is conserved and though it is true that a great deal of animal forms came into existence in a relatively short space of 25 million years, these forms came into being at a time when the genetic information for all animals consisted of many more shorter segments of nucleotides. It seems intuitive that these many number of shorter segments would allow for the emergence of ready variations in species. As animals evolved and early forms competed, those which acquired the most beneficial traits for survival in the early environment of development (the seas) were more likely to survive and radiate. So the ability to radiate into new environments is directly facilitated by the species having the genetic complement necessary to survive in those new environments. So as time went on the descendant species combined survival traits of their ancestors or of parallel species that for one reason or another failed to survive, being so possessed of survival genes these species in essence harbored the diversity that formerly resided in distinct species in fewer descendant species. The diversity is conserved but in so being conserved, the diversity is difficult to extract from subsequent rock strata analysis of "apparent" complexity in living forms that developed in the hundreds of millions of years since the Cambrian "acceleration". Where I don't use the term in quotes to describe evolution increasing in rate but rather acceleration describes the increased ability for animal forms to survive in their nascent environments as through selective processes they evolve traits that are conducive to survival in the environment.

The engine of this acceleration may be for example locked in a radically different view of reproduction among early Cambrian species than we are aware of now. We know that many species exist in "ring" relationships, animals like fish, birds and frogs offer clear examples of divergent and convergent evolution of species along a geographic path. The existence of ring species with differential abilities to mate with members of populations that are geographically segregated, if run backward provides a perfect explanation for what might have existed among ALL species of early simple animal forms in the Cambrian era seas. What if these early forms were similar in their reproductive apparatus more than they were in their physical apparatus? Namely, what if what we "see" as obviously different creatures in the ancient rock strata , are creatures which actually could share genetic information through mating either through intention or by accident. We know that the evolution of internal methods of gestation comes almost 150 million years later, in a population of organisms with similar genetic mating apparatus it should not be surprising at all that a riot of physical forms could arise, as only with the emergence of dominant strategies for survival in these physical forms could less robust forms be weeded out, as it were through selection and continued genetic isolation.

As genetic complement increased in the diversifying species the likelihood of viable cross breeding between species with different physical appearance would go down until we have what exists today. Less apparent diversity but highly specialized and robust species thus representing the early diversity within existing species. I am going to give these ideas some more thought to determine some tests to the hypotheses.

16 September, 2008

more proof that Sarah Palin is a complete basketcase.


It is a shock to me as an American citizen that the country seems so close to having this woman a heart beat away from the highest office in the land. Those who support her do so at the peril of our countries secular foundations.

Can the republicans pick another vp candidate or is this choice set in stone? They are asking to lose once all this information comes out.

04 September, 2008

the rebuild is going....

I anticipated before starting the new development box build that I would run into driver issues with the current installation of windows 2003. The radical change of motherboard, video card , memory and processor underneath the existing system was sure to make the OS go nuts upon the first boot up. I have done hundreds of pc builds and the process proceeded with clock work regularity, I got everything looking nice and tidy and ready to go, set the pc open boxed on top of one of its twins and plugged it in and pushed the power button and it hummed silently to life with the one single beep that is the motherboard call for "ok". Within seconds though the screen flashed a BSOD indicating a stop error, the worst kind that windows throws about...not so surprising...but this is when the fun starts...

SATA and IDE drives, the newer mother boards are being shipped with the serial ATA port specification taking over the older PATA IDE spec. The difference in size of the connectors allows the mobo makers to save significant board space for other things or to just make the board smaller (and cheaper) , one thing they are also doing is reducing the number of PATA ports on the mother boards as well. I spent almost 30 minutes on newegg.com trying to find a motherboard that offered a board with the classic two PATA IDE ports. I couldn't find any and settled on a solution of using a PATA to SATA converter board to use on my DVD drive to allow it to work on the SATA port while the two hard drives continue to use the now lone PATA IDE port on the motherboard. This just may be the reason that I am having the issues I have run into...

I booted up the machine again after coming up with a plan to upgrade the win2k3 installation but I feared that the PATA to SATA converted DVD drive would give me some problem. Sure enough, attempting to boot off the bootable CD loaded into the drive failed. The drive itself gets power and loads the disk and is listed as a SATA device in the motherboard BIOS screen listing attached devices it simply won't recognize the disk on boot up.

So I came up with another idea, as a pc and network consultant at Chase Bank in 1998 I helped co-design a method for installing software over the network by allowing a "brain less" (no active HDD) or "mouth less" (no active optical disk) machine to get the required data across the network. It involves configuring a network boot disk with the necessary files to enable any NIC onboard or attached to the motherboard, I've been using this technique quite successfully to load OS's on machines with clean hard drives that for one reason or another fail to allow the optical drive to boot the OS disk. I also use it to perform Ghost restores to such machines if again they have issues running any restore disks locally. I decided to configure a network boot disk for the new machine, this required updating the NIC drivers in the DOS files to reflect the newer RealTek NIC driver used by the onboard 10/100/1000 NIC on the motherboard. After getting this done the network boot was successful! I added the windows disk into a working machine on the network and shared the drive, I then proceeded to attach to the drive from the DOS prompt on the build machine using the trusty DOS net use command. Changing directory to the shared disk on the remote computer allowed me to get to the i386 folder and I was ready to run the install using the winnt.exe command at the prompt. Of course doing this only revealed more "fun"...in an ominous message from the windows installation routine.

"An Internal Error Has occured."
"Could not find a place for a swap file."

This error occurs when the partition that I am attempting to install runs out of space. The initial DOS partition created on the hard drive was too small apparently,

A little investigation revealed that this error could occur when the "conventional" memory space of the DOS mini OS loaded by the boot disk runs out. Conventional memory is restricted to the small original memory sizes that were normal during the days of DOS. Obviously today's programs use significantly more memory to run but in order to maintain compatibility the additional memory is added into "extended" memory blocks addressed to the oceans of standard RAM that comes in even the most basic of pc's today. I have 2Gigabytes of RAM on this machine , an amount of RAM that is equivalent to the entire Hard drive capacity I had on my first pc purchased in1997. In any event I was confused at first as to why it was running out of memory. A quick read up on the issue revealed a possible solution, in loading only the programs needed to save on conventional memory use. After hours of trying various combinations it finally succeeded in allowing me to run the installation across the network. I proceeded to install the OS, by this time another day had turned to night and was now early morning. I was completely drained and decided to give up the game for the next day since the OS was installed.

Next day....

After a short stint of 5 hours sleep, I got up and started where I left off the night before by installing the required video driver and motherboard drivers for the onboard devices. While doing this I noticed that the hard drive partition that I created to use as an installation drive was showing up in the windows "my computer" directory, I didn't want this so I figured it would be easy for me to simply boot into dos and remove the partition after first changing the windows boot.ini file to point to the new boot partition as the second partition (which actually had the installation files) I even moved over the necessary boot files to the second partition to make sure it would boot properly. I knew I was taking a chance in the machine not booting up again but I tried it just the same. I rebooted the machine and after several tense seconds was greeted by an ntldr missing error, which told me that the boot.ini change must have not been saved. I was now back to ground zero with a broken installation of window on the machine! It felt like I was in the twilight zone!

I took a deep breath and began to set up the network installation of windows all over again, this time fearing that it would fail to start for the same reason as before , no memory....sure enough the first time I tried it, it failed in this way but after clearing the partitions and formating them with system files it worked. I installed windows again, installed the drivers again and for a second time tried to eliminate the dos boot partition, this time after a reboot ...it worked!

I spent the next three days reinstalling and configuring all of my software on the machine. Luckily, my application and data partitions were untouched and contined the most recent code up to the point that the last motherboard blew out. I was able to mount ghost viewer and extract various files from the images that were part of the previous system, here I am now on the new machine , all my development applications (VSS, XmlSpy,Advanced Installer, MySql Query Browser, Netbeans IDE, Java SDK...etc) installed and tested. My code loaded from the back up and used to compile and build a new distribution just fine...after two weeks of down time I am back!

Lessons learned:

1) Ghost is great for restoring images to a machine so long as that machines underlying hardware doesn't change significantly. I've restored ghost images on a machine after changing the optical drive, video card, NIC or HDD but none have ever survived a change to a new motherboard of a different brand...so always make physical file copies of your data AS WELL as full partition or disk images using ghost or a similar tool. If I use ghost explorer to pull out files from images so I didn't really need a separate file copy but if I didn't have explorer those images would be useless to me. Copying the files makes it more accessible so that should be done as well.

2) Hardware-software interface is very very kludgy even today and wraught with bad design choices. From the ridiculous "out of memory" errors that the windows installation throughs (the code should automatically figure out a way to use the available memory to get the job done ..even if performance is impacted , a slow installation is better than no installation) to the madness of formatting partitions and setting active partitions, a great deal of complexity during the build stage could be eliminated with better designed lower level programs particularly in the windows installation code.

This experience also is a good example of being prepared for anything, I knew that the development box was last rebuilt over 5 years ago so knew something was about to go wrong but that "something" is usually not a motherboard burn out. That said, had the hard drive burned out instead I would be in a worse off position despite being able to recover from the event easier using the ghost images...the reason is that up to the motherboard burn out the last ghost image I'd created was 2 weeks old! In those two weeks I solved some major production issues (e commerce integration with amazon, coded permission token logic into core code) it would have been quite a bit more taxing for me to reinvent those solutions than to install software on a fresh installation of windows. So always keep your back ups up to date! I originally was making ghost images every friday but fell off as I neared site launch, wrong move! I am going to make an image as soon as I'm finished with the rest of the software installation on the box and be sure to keep it up to date every week.

02 September, 2008

will the internet make more languages obsolete?

A parallel to human evolution exists in the social activities that our species has evolved in order to ensure our robust ability to survive under rapidly changing and adverse environmental conditions. A key such evolved trait is our singular ability to communicate using complex languages. The human vocal tract under went changes that allowed our vocal apparatus to simulate a much larger range of tones than any other animal, as a result we can combine and modulate these tones with clever use of our lips, tongues and teeth to produce the amazing variety of languages that exist in the world today.

However, though paleontological theory has given us good evidence to explain the how behind our ability to develop and use language it doesn't tell us why distinct languages have formed or how those languages evolved over time. For these answers we must enter other areas of scientific endeavor, components of applied linguistics. We must also step outside the box of linguistics entirely in order to understand how the physical environment has enabled or prevented the emergence and migration of particular patterns of speech through out various regions of the world. For example, we know today that many language barriers exist where geographic boundaries also exist. A cursory examination of the cultures and languages on either side of mountain ranges clearly shows patterns of linguistic separation that do not exist to the same degree between adjacent communities living say on a plain or tundra regions of the world. Geography has formed a strong factor toward the development of new languages, the separation tends to provide the isolation needed to evolve the distinct differences between languages that have only evolved in the last 2000 years following the weakened grip of the Roman civilization that brought the Latin language to previously Celtic peoples living in those regions. France exists in a relative bubble of linguistic isolation as it is separated geographically from Spain by the Pyrenees and separated from its western neighbors mostly by thick forest, rivers and the Alps. This constituted the barriers that naturally slowed the Roman expansion into Germany after conquering what was then called Gaul (pre French Celtic cultures) . The migration of language follows a pattern of being facilitated by the migration of human beings into Europe over the last 50 thousand years and then by periodic remigrations of humans from other regions to inject regional nuances into the evolved languages. Shaping the development of the languages through it all lies the relatively immobile nature of geography. Where mountains exist, differences between the language spoken by adjacent populations on either side of the range occur relatively quickly compared to their emergence across either side of a river (and also vary with the difficulty to pass those rivers) , the same is true with forested areas which when heavily forested (as is the case in many tropical rain forests) the emergence of new languages can be so varied and so rapid that within a few thousand years islands like Borneo or others in the south Pacific can develop hundreds of distinct languages from a single original migration of populations from other islands, many unique to specific villages separated only by a few tens of miles.
The preeminence of geography in shaping the development of language poses an intriguing question.

What if the reverse process can occur in some way, will languages then devolve into a common regional, continental or even global form?

We can get a strong indication that this is so by studying the history of the migration of English throughout the world in the late 19th and 20th centuries. The middle eastern trade routes and the building of a massive Navy helped England rise to power and dominance at several times in the last 500 years. The discovery of the New World opened up the hemispheres to the English navy's command of the seas and allowed them to colonize and or terrorize lands from Australia to the Falkland's. As they spread their will and culture they also spread their language, more so than any other European power the language of England is more universally known than any other on Earth. Though it is true that the total number of citizens of China and India number just over a billion each, these citizens speak dozens to hundreds of languages with much smaller global reach, English is spoken as a second or third language by speakers of any other language. The spread of the language was facilitated by the English Navy and the pressing desire to explore and colonize new lands and this explains the pervasiveness of the language today. Pervasiveness though is not sufficient to explain why English use is still growing, the answer to this is found in why the ancient roman language of Latin is NOT. Latin nears extinction because the arteries that kept Roman civilization together, that allowed the armies to march freely across Europe, the middle east and Africa are no longer with us. The local civil administrations and the marvel of the Roman road all suffered as the Empire fell. The loss of the infrastructure then inexorabaly gave rise to the loss of the common cultural identity that the infrastructure presented across a large suathe of Europe.

In the case of English , we see that the infrastructure (highly developed Naval power) that facilitated the language spread gave way to other more efficient methods of spreading culture. In the mid 19th and early 20th century the telegraph and telephone was invented, later radio and televion and today Satellite ensure that languages can be beemed or delivered to any corner of the globe nearly instantly. This allows changes to the language that would normally emerge in proportion with the previously mentioned methods of geographic isolation to be retarded or out right eliminated. Today, English is seen as the lingua franca of business and is being learned by people in foreign countries simply by watching television. The communication infrastructure that keeps the English spoken in Australia, relatively close to the English spoken in Africa and the English spoken in Great Britian or the United States works to preserve its dominance and may lead to the eventual inclusion of English into regional languages so that over time a global amalgam is developed.

The second revolution in the migration of languages was only made possible within the last 15 years with the emergence and then rapid spread of the global communication medium that is the internet. The internet is very different from telegraph, telephone and tv in that it is a medium that has both static and dynamic delivery forms. When reading a blog written in English, German or French ...the delivery form is static, the language fixed for interpretation (or even translation) however when participating in a real time chat room, the language is dynamic..nuances of conversation can be read and translated in a way that no previous medium allowed. (eg. when you read a news paper, it is not interactive, when you listen to the radio you can't rewind the conversation stream, when you watch tv you can't (normally) see the words) the simultaneous immersion into internet communications of all these forms will in the short term hasten the spread of the dominant language (English) and also accelerate the amalgamation or extinction of non dominant languages unless a way can be found to nullify the impact of a common language base for most internet communication. This has already begun with the availability of language translation software that allows paragraphs and entire web pages to be translated from one language to the next. These tools will make the preferred language of the participants irrelevant and still available to be used locally without having a pressure to be amalgamated into a dominant language. So which force will be the one to win the fight? Will the spread of a global communication medium like the internet kill non dominant languages before translation technologies have their effect to preserve them? Will there be a quiessent point reached where the internet serves as an amalgamating force across all the non dominant languages , forcing them to adopt elements of the dominant one or ones? The latter outcome is in my view the more likely but the time scale over which this will occur will be incredibly short when compared to the time scale that elapsed before Latin in Portugal became Portugese and Latin in Spain became Spanish and rather than occuring due to the existence of geographical boundaries this amalgamation of language will be the first to have a non physical source, namely the pervasive communications that allow conversations to occur simultaneously throughout the globe.

The story of human language is going to have some interesting twists and turns over the next few hundred years.