ppmforgeprogram I contributed to Netpbm toolkit in 1991. It is available as part of the
Netpbmdistribution. You can download the modified version, a stand-alone program which does not require integration into the
netpbmtoolkit and provides additional parameter randomisation features and higher quality image synthesis (particularly for star backgrounds) than the original edition. The image generated by this program is then scaled to form the large and small images plus the icon for the header, and encoded into JPEG with the
cronjob to create the new planet every day. It executes the shell script:
#! /bin/sh # # Update Terranova: Planet of the Day # WEBTREE=/server/pub/www.fourmilab.ch/web/terranova NETPBM=/server/bin/netpbm/current/bin TERRANOVA=/server/bin/terranova/current PATH=$TERRANOVA:$NETPBM:$PATH renice 19 $$ SEED=`expr $RANDOM '*' $RANDOM` # Create image, save PPM, and make JPEG file # Generate large-scale planet images without stars terranova --verbose --seed $SEED --mesh 4096 --planet \ --stardensity 0 --clusters 0 \ --width 8192 --height 6144 | tee /tmp/TNd$$.ppm | \ pnmscale -width 1024 >/tmp/TNa$$.ppm # Create star background for large image with # "black hole" cutout for planet terranova --verbose --seed $SEED --blackhole \ --stardensity 8,14 --starsize 1.2 \ --width 1024 --height 768 \ --starbright 1 --stargamma 1.5 \ --clusters 0,2 >/tmp/TNb$$.ppm # Composite the stars with the planet to create the large JPEG pnmarith -add /tmp/TNa$$.ppm /tmp/TNb$$.ppm | tee /tmp/TNc$$.ppm \ | pnmtojpeg -progressive >$WEBTREE/new.jpg # Scale the full-resolution planet image to the small image size pnmscale -width 640 /tmp/TNd$$.ppm >/tmp/TNa$$.ppm # Generate the star background for the small image terranova --verbose --seed $SEED --blackhole \ --stardensity 8,14 --starsize 1.2 \ --width 640 --height 480 \ --starbright 1 --stargamma 1.5 \ --clusters 0,2 >/tmp/TNb$$.ppm # Assemble the composite small image pnmarith -add /tmp/TNa$$.ppm /tmp/TNb$$.ppm | tee /tmp/TNc$$.ppm \ | pnmtojpeg -progressive >$WEBTREE/new_s.jpg # Create the 80×60 logo by scaling down a copy of the large composite pnmscale -width 80 /tmp/TNc$$.ppm | \ ppmquant -fs 256 | pnmtopng -interlace >$WEBTREE/newlogo.png # Delete intermediate files rm /tmp/TNa$$.ppm /tmp/TNb$$.ppm /tmp/TNc$$.ppm /tmp/TNd$$.ppm # # Install the new images in the directory and swap the # previous ones to be "yesterday's". # cd $WEBTREE # rm -f last.jpg last_s.jpg ln -f terranova.jpg last.jpg ln -f terranova_s.jpg last_s.jpg mv new.jpg terranova.jpg mv new_s.jpg terranova_s.jpg mv newlogo.png mainlogo.pngIf this is gibberish to you, don't worry—such are the incantations Unix hackers must mumble in order to accomplish something perfectly straightforward. (Unix grognards: I create all the images as “newxxxx.xxx” and them swap them at the end to close the window in which a user might see an invalid image in the process of being written. You may sleep; the Web never winks.)
Amateur astronomers hoping to share their love of the sky sometimes speak of “the friendly stars”. Certainly anyone who comes to really know the sky cannot look upward without seeing old friends visited before, friends to call on again and again, whether with a telescope, binoculars, or just lying in a grassy field on a warm spring evening, taking in the heavens with that venerable instrument, the human eye. Yet learning more about the universe makes it seem, in many ways, less friendly. For the stars are not lamps hung in the sky to guide us at night, but raging nuclear furnaces separated by emptiness so immense our minds cannot grasp its extent. To study astronomy is to encounter violence beyond the human experience: stars which explode, incinerating their planets, or burn out into eternally dark cinders; sources of radiation so intense they outshine whole galaxies, powered by black holes that swallow entire stars; gravity that crushes atoms into subatomic particles or into nothingness; whole galaxies that explode, collide with one another, and devour their neighbours; a universe born in a creation fire still glowing today and destined—we know not which—either to collapse and be crushed from existence or expand into an eternity of darkness and cold. Awesome it is to contemplate, but awful in its seeming hostility to life. Awesome because what we discover in the sky seems so alien to our own experience. Awful because to look at the sky is to ask, in the larger sense, “What is my place in the universe?”. We look upward from a small globe teeming with life and see an endless void: empty, lifeless, and violent. To learn that not just one's own personal existence, not just all of humanity's experience, but that life itself appears insignificant and irrelevant to the universe is to stand humbled under cold and unfriendly stars. Look upward to the Sky; look downward at the Earth. Upward, blackness punctuated by points of fire, worlds by the dozens in our neighborhood, and all of them lifeless. Downward, a globe not just home to a multitude of living creatures, but fashioned by life: its life-sustaining atmosphere itself created and maintained by life. Earth is not merely home to life; in a real sense it is alive, but alone. But are not the stars home to other forms of life, perhaps other intelligent species already sensing our electromagnetic birth cry and preparing to welcome us into the galactic community? Almost certainly not: there is every reason to believe we are alone in the galaxy, and perhaps in the universe. The meaning of life is to live. To live is to expand the scope of life itself, by replicating, by adapting, by modifying the environment, and by evolving into other forms of life. We are the inheritors of more than three billion years of ceaseless global molecular experimentation, of competition among individuals and species, of a relentless expansion of life into new environments and emergence of new capabilities. How can we have the arrogance to believe, so recently evolved ourselves to a stage that we can truly be said to think, that we are unique—that no other intelligent beings see our Sun as a star in their sky and, as arrogantly, consider themselves unique? It was physicist Enrico Fermi who first remarked, “If they existed, they would be here”. Life expands its own scope. Life on Earth extends from the mid-oceanic ridges where the Earth's very crust is born, to the peaks of the highest mountains and the most remote regions of the Antarctic. In the span of one human lifetime, transcending the limits of our bodies through the cleverness of our minds, our own species has descended to the deepest points in the ocean, visited the most remote places on the planet, learned to fly in the air and then beyond into space, and on July 20, 1969 set foot on another world which had never before been host to life. Products of billions of years of ever-expanding life, the very molecules of which we are made drive us to spread life ever further. Already, our robot proxies have visited all the major worlds of our solar system, seeking life and finding none. Is it reasonable to expect that life will cease to expand at the very moment it becomes capable of spreading further, outward, onward? That after billions of years and countless quadrillions of organisms, life will remain huddled on one small planet, awaiting the day when the Sun dies and ends it all? No. Already we have taken our first steps outward. Once the expansion begins in earnest, it will spread exponentially. It took three billion years of evolution before life managed to assemble individual cells into complex creatures, then only a quarter as long to evolve beings capable of carrying life to other worlds. Using only technologies we currently possess, and traveling no faster than the Voyager probes already bound starward, we could begin to explore the galaxy. Even at so slow a speed—requiring between ten and a hundred thousand years to travel between stars, if each new outpost launched its own emissaries of life onward, life would spread everywhere in the galaxy in only 300 million years—less than half the time it took the first multicellular creatures to evolve into beings audacious enough to think such thoughts. Using technologies likely to be developed in the next century, founded on scientific knowledge already in hand, life could populate the galaxy in just 4 million years—comparable to the time it took the first hominids to radiate from the Home Continent to the farthest corners of the Home Planet. Four million or even three hundred million years is an eyeblink of time compared to the 10 billion years elapsed since the galaxy reached the stage where beings like us could develop. If intelligent life is common then why, over the billions of years that preceded our appearance, has no species evolved earlier already filled the galaxy? “If they existed, they would be here”, said Fermi. So where are they? Nowhere in evidence. Intelligent beings with technologies advanced millions of years beyond our own, spread to the far ends of the galaxy, should not be difficult to detect. We already possess the means to detect even primitive technological civilisations like our own at a distance of hundreds of light years. If they existed, they—the first intelligent species to expand outward among the stars—would be here. And since we look around and see nobody but ourselves, then it is only reasonable to conclude, “We are here, so we are them.” We evolved here and we have not yet begun to sow the seeds of life among the stars, but surely we will. Three billion years ago, one planet, the Home Planet, came to life. Slowly life spread across the Home Planet, gaining complexity and diversity until it could think of going yet further. In a short time on the cosmic scale, beings throughout the galaxy will gaze at the friendly stars in their skies. They will look upward and see, not a hostile and lifeless galaxy, but one teeming with life—the legacy of the planet that came to life and then brought life to a galaxy. They will not be human, no more than we are Australopithecus or fish or bacteria, yet they, in their number and diversity trillions of times beyond the scope of life on Earth, will be our children, heritors of our coming to understand the meaning of life and the rôle we humans are to play in its grand pageant.