Bella Gaia

August 16, 2009 17:35 by scibuff

Bella Gaia (Beautiful Earth) is a ‘Living Atlas’ journey of our world, expressing the deeply moving beauty of planet Earth as seen through the eyes of astronauts. It was presented at the Iyashi Fair in Japan on August 8th, 9th 2009.

Below are the Bella Gaia teaser and a 5 min sample utilizing visualizations by NASA, SCISS/Uniview, featuring music by Kenji Williams.

40 years after one small step

July 21, 2009 02:56 by scibuff

Date: July 21. Time: 02:56:15 UTC. 40 years have passed since the moment in which approximately half a billion people worldwide watched in awe as Neil Armstrong said those immortal words taking the first step on another world.

That's one small step for (a) man; one giant leap for mankind - Source: NASA

That's one small step for (a) man; one giant leap for mankind - Source: NASA

The first words on the lunar surface actually belong to the Lunar Module Pilot (LMP) Buzz Aldrin. At 20:17:39.9 UTC just moments before the touchdown, Aldrin informed Armstrong of the “Contact Light” – meaning that at least one of the 1.73 meter-long probes hanging from three of the footpads has touched the surface.

At 03:15:16 UTC Buzz joined Neil out on the surface. They examined the LM, placed the TV camera away from the spacecraft, deployed scientific instruments (seismometer, laser reflectors, solar wind collectors, etc) and started to familiarize themselves with working in one-sixth gravity. The first lunar Extra Vehicular Activity (EVA) lasted for 2 hours 31 minutes and 40 seconds. After closing the hatch and stoving samples and equipment, the crew had a 5-hour resting period. The LM’s ascent engine fired at 17:54:00 UTC leaving the first footsteps of men behind in Tranquility Base.

The Apollo 11 Lunar Module (LM) ascent stage taken from the Command Module (CM) during rendezvous in lunar orbit as the LM makes its docking approach above Mare Smithii - Photo Credit: NASA/Apollo 11

The Apollo 11 Lunar Module (LM) ascent stage taken from the Command Module (CM) during rendezvous in lunar orbit as the LM makes its docking approach above Mare Smithii - Photo Credit: NASA/Apollo 11

Despite the tremendous achievement of the Apollo program, we can consider ourselves to be only temporary visitors to Moon. The 12 days 11 hours and 28 minutes of presence on the surface combined from the six successful missions are shorter than a summer vacation for most of us. The 12 astronauts whose footprints will remain in lunar “soil” for eons, total for even shorter 80 hours and 28 minutes spent outside the LM during 14 EVA’s between Apollo 11 and Apollo 17.

Unfortunately, the public lost interested in Apollo Program not much later than politicians who saw the Kennedy’s challenge met. Have it not been for the accident that nearly cost lives of Jim Lovell, Fred Haise and John Swigert, Apollo 13 would most likely not get a second of live TV. Ultimately, the splashdown of Apollo 17 on December 19, 1972 meant the end of glorious days of lunar exploration. Nevertheless, hardly anyone would have thought that the words of Gene Cernan

Okay, Jack, let’s get this mutta outta here

a few seconds before Apollo 17 LM’s lift-off from the Valley of Taurus-Littrow, would be that the last from the lunar surface in the 20th century.

LRO proves the Apollo 11 landing to be real

July 17, 2009 16:35 by scibuff

Today at 16:30 UTC, NASA released the first images of the Apollo landing sites taken by the Lunar Reconnaissance Orbiter (LRO). These are actually the first photos of Apollo landing sites with resolution high enough to show the equipment left behind by astronauts on the Lunar surface. Contrary to the ridiculous beliefs of Moon landing deniers, the resolution power of the Hubble Space Telescope (HST) is nowhere close to being able to accomplish a similar feat.

Apollo 11 lunar module, Eagle at the Tranquility Base. Image width: 282 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 11 lunar module, Eagle at the Tranquility Base. Image width: 282 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 14 lunar module, Antares. Image width: 538 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 14 lunar module, Antares. Image width: 538 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Labeled photo of the Apollo 14 landing site - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Labeled photo of the Apollo 14 landing site - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 15 lunar module, Falcon. Image width: 384 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 15 lunar module, Falcon. Image width: 384 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 16 lunar module, Orion. Image width: 256 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 16 lunar module, Orion. Image width: 256 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 17 lunar module, Challenger. Image width: 359 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

Apollo 17 lunar module, Challenger. Image width: 359 meters - Photo Credit: NASA/Goddard Space Flight Center/Arizona State University

First of all, let me make clear that I’m not naive to believe that (yet another) piece of irrefutable evidence will change the mind of conspiracy theorists. Those who still believe that NASA pulled of the biggest lie in history matched only by that of organized religion, despite having every single piece of their fantasy debunked innumerous times, are not gonna be stopped by some silly thing called evidence. As Phil Plait has put it in one of his posts:

You could fly a conspiracy theorist to the Moon and show them the equipment lying on the desolate surface, and they’d accuse you of drugging them.

Despite thousands of pictures and hours of video footage made by astronauts themselves and an unconquerable mountain of evidence refuting every single one of their claims, the Moon landing deniers will continue to spread their non-sense with religious zealotry. Similarly, antivaxxers will insist that vaccines cause autism. Creationists will obstinate that the Earth is 6,000 years old, even in a speech about mining Uranium, which, ironically enough, is used in the Uranium-lead scheme of radiometric dating to determine the age of Earth (4.5 billion years). These people live in a fantasy world rivaling that of magic schools boys and a gay headmaster in a fight against an evil soulless orphan supremacist. Their “reality” has nothing in common with an evidence-based world.

To say the truth, these people are not deserving of any respect whatsoever as they have none for the thousands they would call liars, frauds and cowards. They have the audacity to dismiss the heroism of those 24 brave astronauts who flew to the Moon and thus ventured further from the Earth than any man in the history. They would blatantly shrug off the achievement of the 12 extraordinary men, who had the privilege to touch and walk on another world, standing on shoulders of every single man and woman who dedicated their lives to the human space flight. That includes every single cosmonaut who has ever passed beyond the barrier of space, every worker in every mission control center around the world, every scientist who devised an experiment to be conducted in vacuum under zero gravity, every technician and engineer who tirelessly built every component, connected every wire and tested and retested every spacecraft zillion times until they could no longer talk, think or dream of anything else, and most importantly, the crew of Apollo 1, Gus Grissom, Ed White and Roget Chaffee, together with Edward Givens (support crew Apollo 7) and Clifton Willians (backup LMP Apollo 9) who were among the 32 astronauts who made the ultimate sacrifice in the effort to push the boundaries of what is possible.

To discard this wondrous accomplishment of humanity based on nothing but paranoia, inferiority complex and/or in an attempt to sell a few extra copies of a book or a movie, is against the very nature of being human, i.e. our curiosity to explore the unknown, our perseverance and unwillingness to give up despite odds or doubt and the determination to reach the stars. Fortunately, the view of these (few) individuals is irrelevant because:

Truth needs no defense. Nobody, nobody… can ever take those footsteps I made on the surface of the Moon away from me.

- Eugene A. Cernan (Gemini 9A, Apollo 10, Apollo 17)

This graphic shows the approximate locations of the Apollo moon landing sites - Credit: NASA's Goddard Space Flight Center Scientific Visualization Studio

This graphic shows the approximate locations of the Apollo moon landing sites - Credit: NASA's Goddard Space Flight Center Scientific Visualization Studio

NASA goes back to the Moon

June 18, 2009 21:48 by scibuff

Update 3: LRO/LCROSS launch video on YouTube and Flickr

Update 2: LRO will reach the Moon on Tuesday as 09:43 UTC.

Update 1: Official launch photos are now available on NASA Blogs and NASA Flickr stream.

Today at 21:32:00.1 UTC (after the two earlier launch windows closed due to lightning in the area), NASA launched the Lunar Reconnaissance Orbiter (LRO) aboard the United Launch Alliance Atlas V (in configuration 401) rocket from the Space Launch Complex 41 at Merritt Island, Cape Canaveral, Florida. Along with the LRO, Atlas V also carried the Lunar Crater Observation and Sensing Satellite (LCROSS) attached to the Centaur rocket.

More launch photos are available at my Flickr Feed

Atlas V liftoff from Space Launch Complex 41 with LRO and LCROSS aboard - Source: NASA TV

Atlas V liftoff from Space Launch Complex 41 with LRO and LCROSS aboard - Source: NASA TV

Atlas V - Ignition - Source: NASA TV

Atlas V - Ignition - Source: NASA TV

Moments before Atlas / Centaur Separation - Source: NASA TV

Moments before Atlas / Centaur Separation - Source: NASA TV

The Atlas/Centaur Separation occurred at T+4 minutes and 10 seconds. At T+ 45 min the LRO Spacecraft separated from LCROSS and at about T+90 minutes LRO achieved the translunar trajectory. Within the next 24 hours the mission controllers will execute a planned mid-course correction (MCC) to LRO’s the trajectory.

LRO / LCROSS Launch Configuration - Source: NASA

LRO / LCROSS Launch Configuration - Source: NASA

After approximately four days, the lunar orbit insertion (LOI) sequence, consisting of a large LOI-1 maneuver followed by a series of smaller LO1 maneuvers, will place the spacecraft into a 30km x 216km commissioning orbit. LRO will enter its operational circular polar orbit 50 km above the lunar surface after approximately 60 days of spacecraft checkout and instruments calibrations.

LRO Lunar Orbit Insertion and the commissioning orbit - Source: NASA TV

LRO Lunar Orbit Insertion and the commissioning orbit - Source: NASA TV

LRO’s primary mission objectives are to create a comprehensive atlas of the moon’s features, find possible landing sites, locate potential resources, and test new technology. The mission will help to set the stage for further exploration of the Moon which will hopefully result in establishing a permanent human presence on the lunar surface.

After the separation from LRO, the LCROSS spacecraft will retain the Atlas V’s Centaur upper stage rocket and use it as the primary impactor for the mission. After sufficient distance from LRO is achieved, the LRO/Centaur duo will perform a maneuver to dump remaining fuel to prevent contamination of the impact site. After five days, the spacecraft and the Centaur will execute a flyby of the moon and enter into an elongated Earth orbit to position LCROSS for impact on a lunar pole.

LCROSS enters elongated Earth orbit placing LCROSS on the path to impact on a lunar pole - Source: NASA TV

LCROSS enters elongated Earth orbit placing LCROSS on the path to impact on a lunar pole - Source: NASA TV

On final approach, approximately 9 hours and 40 minutes before the first impact, LCROSS and the Centaur will separate. LCROSS will execute a 180-degrees turn around to position its instruments towards the impact. The Centaur will act as the first impactor to create a debris plume with some of the heavier material reaching a height of up to 10 km above the lunar surface. Following four minutes behind, the LCROSS will fly through the impact ejecta to collect data and relay it back to Earth before impacting the lunar surface.

LCROSS - Centaur separation - Source: NASA TV

LCROSS - Centaur separation - Source: NASA TV

The Centaur impact crater is expected to be approximately 27 m in diameter and 5m deep, while the LCROSS spacecraft impact crater is expected to be approximately 18 m in diameter and 3 m deep. The impact is expected to create a very brief visible flash lasting less than 100 milliseconds. Most of the impact ejecta will be thrown upward at a velocity of more than 250 m/s reaching altitude of up to 10-15km above lunar surface.

Centaur rocket is about to meet its doom - Source: NASA TV

Centaur rocket is about to meet its doom - Source: NASA TV

Centaur impact the Moon - Source: NASA TV

Centaur impact the Moon - Source: NASA TV

Currently, the impact is planned for October 9, 2009. The LRO spacecraft will be joined by the Hubble Space Telescope (HST) as well as many ground-based observatories in Hawaii, Arizona, South Africa and Japan in observing the impact. In the following days, the LCROSS team will announce the lunar pole and the primary target crater. Factoring any additional information (such as lunar libration) a final determination of the target crater will be made 30 days before impact.

LCROSS Impact Ground Observation Sites - Source: NASA TV

LCROSS Impact Ground Observation Sites - Source: NASA TV

The primary mission objective for the LCROSS mission is to measure the concentration of water ice (ice to dust ratio) in permanently unlit lunar regolith or soil. Other objectives include identifying the cause of the hydrogen signatures previously detected at the lunar poles and determining the composition of the regolith in one of the moon’s permanently shadowed crater.

Altas V Tribute Plaque - Source: NASA TV

Altas V Tribute Plaque - Source: NASA TV

The Atlas V rocket carries a memorial plaque for J.Bob Reiss – life-long NASA employee who spent his career working on the Atlas rocket and was instrumental in the success off missions such as the Viking, Cassini and recently launched (January 19, 2006) the New Horizons.

NASA Goddard Space Flight Center will have live mission coverage of LRO’s lunar orbit insertion (LOI) on NASA TV. Mission images, video, and animations are available for both the LRO and the LCROSS. You can follow mission twitter feeds at LRO_NASA and LCROSS_NASA

Unobtrusive Ajax Navigation – Version 3

June 15, 2009 13:24 by scibuff

Last week we continued the tutorial on Unobtrusive AJAX Navigation by cleaning up our Javascript code as well as adding functionality which enabled users to bookmark individual pages and use the “Back” and “Forward” browser buttons for navigation. This time, we’ll focus on cleaning up the back-end scripts to make the solution easily maintainable and expandable. Check out the fully functional demo and/or download the files for this tutorial.

There are two equally good approaches to achieve our goal. One is using simple server-side include (SSI) instructions to keep common content in separate files and include them into our pages at the time when it is needed. The second approach is via Object Oriented (OO) PHP. I am a big fan of OO but too often I see it misused by self-pronounced programmers who naively think that throwing OO concepts on everything makes them better coders (nothing could be further from the truth). There is place and time for deciding to “complicate” your file structure but unless you’re about to create a solution of the size of WordPress (for example) you should think really hard about the pro’s and con’s. Unless your intention is to build a robust, easily extendable and maintainable product with support for hundreds of thousands of users, good old procedural scripting will do the job just as well (if not better).

So without much further ado, let us look at the back-end code from the previous projects:

The first thing that is immediately obvious is that the majority of code in “index.php” and “about.php” is identical. Let’s split this code into appropriate files. Create a directory called “inc” and place the following “.htaccess” file in it:

Order Allow,Deny
Deny From All

All this file does is it prevents any sort of (GET, POST, HEAD etc) requests made directly to the /inc directory. Next, we create a file called “header.php” and place the “print_header” function in it:

<?php
 
function print_header(){
?>
 
	...
	<body id="version-1-0">
 
		<!-- WRAPPER - START -->
		<div id="wrapper">
 
			<!-- HEADER - START -->
			<div id="header">
 
			<h2>Unobtrusive Ajax Navigation - Version 3.0</h2>
 
			<ul >
				<li><a href="index.php">Home</a></li>
				<li><a href="about.php">About</a></li>
			</ul>
 
 			<div></div>
 		</div>
 		<!-- HEADER - END -->
 
 		<!-- CONTENT - START -->
 		<div id="content">
 
<?php
}
?>

Similarly, we create “footer.php” and place the “print_footer” function code in it.

 <?php
 
function print_footer(){
?>
 	 	</div>            
 		 <!-- CONTENT - END -->
 
 		 <!-- FOOTER - START -->
 		 <div id="footer">
 	 		 <p>Footer</p>
 	 	</div>
 	 	<!-- FOOTER - END -->
 	 	</div>
	</body>
</html>
<?php
}
?>

Then create another two include files, one for the content of “index.php” and one for the content of “about.php”. Let’s name them “index.inc.php” and “about.inc.php” respectively, and place the “print_content” functions in them, like so

<?php
 
function print_content(){
?>
	<h2>Homepage</h2>
	<p>Lorem ipsum ...</p>
<?php
}
?>
<?php
 
function print_content(){
?>
	<h2>About</h2>
	<p>Lorem ipsum ...</p>
<?php
}
 
?>

Next, create “content.php” and place the code from above the “print_header” function in “index.php” (or about.php) into a newly created “print_page” function, like so

function print_page( $page ){
 
	require_once("inc/header.php");
	require_once("inc/footer.php");
 
	require_once( $page );
 
	// if the page is requested by AJAX
	if ( isset($_REQUEST['ajax']) && $_REQUEST['ajax'] == "true" ){
		print_content();
	}
	else {
		print_header();
		print_content();
		print_footer();
	}
}

Perhaps, this new function requires a bit of explaining: We want to remove all (as much as possible) code duplicity, so create a function which will print a page content, just as we did before (depending on whether the request came directly from a browser or was requesting by our AJAX Javascript code). The only difference is that we use the “$page” argument to tell the function which page needs to be printed. The script will use the “print_content” function from the appropriate file.

Now, whenever you see something resembling

require_once( $content_inc );

your red alert flashing light should immediately go off. This is potentially a huge security risk: if someone could make the value of “$page” to be “.htaccess” or “.htpasswd” the user could read (encrypted) passwords and see other site settings. In the particular use of the construct, it is unlikely (nothing is impossible) that anyone would be able to exploit it. Nevertheless, it is possible that sometime in the future, to extend functionality or for some other purpose, the smallest modification to the code could leave us vulnerable against an attack. In short, the best practice is NEVER to trust the user, especially when a potential security flaw can easily be fixed by restricting the possible value set. Add the following lines before the function declaration:

define("PAGE_HOME", 0);
define("PAGE_ABOUT", 1);
 
define("PAGE_HOME_SSI", "home.inc.php");
define("PAGE_ABOUT_SSI", "about.inc.php");

change the function declaration to

function print_page( $page = PAGE_HOME )

and add the following switch statement:

	switch( $page ){
		case PAGE_ABOUT : {
			require_once( PAGE_ABOUT_SSI );
			break;
		}
		case PAGE_HOME : {
			// fall through to default
		}
		default : {
			require_once( PAGE_HOME_SSI );
			break;
		}
	}

The few extra lines of code is all that is necessary to prevent the possibility of a large headache (at best) in the future.

Now, all that’s left is to use the newly created files and functions in our original scripts. Thus, we go to “index.php” and place the following lines of code in it:

<?php
require_once("inc/content.php");
print_page( PAGE_HOME );
?>

Similarly, in “about.php”

<?php
require_once("inc/content.php");
print_page( PAGE_ABOUT );
?>

We will conclude this tutorial by adding a page called “Contact”. First of all, create a “contact.php” in the main folder and place the following code inside it:

<?php
require_once("inc/content.php");
print_page( PAGE_CONTACT );
?>

Then open the “content.php” inside the “inc” folder and add

define("PAGE_CONTACT", 2);
define("PAGE_CONTACT_SSI", "contact.inc.php");

as well as

		case PAGE_CONTACT: {
			require_once( PAGE_CONTACT_SSI );
			break;
		}

into the switch statement. Then, let’s add the Contact Page to our navigation by placing the following into the “header.php”

<li><a class="ajax-link" href="contact.php">Contact</a></li>

Finally, we need to create a “contact.inc.php” inside the “inc” directory with a “print_content” function:

<?php
 
function print_content(){
?>
	<h2>Contact</h2>
 
	<p>Address Line 1</p>
	<p>Address Line 2</p>
	<p>City, Zip Code</p>
	<p><strong>Country</strong></p>
 
<?php
}
?>

Next time, we will look at creating Unobtrusive AJAX Navigation as a part of a complex product (using OO) as well as making URL more user friendly (although search engine are perfectly capable of indexing links with query parameters there is an elegant way to make links more user friendly).

Meanwhile, check out a fully functional demo of version 3 and/or download the files for this tutorial.

See inside the Apollo 10 command module

May 24, 2009 12:20 by scibuff

Date: May 18, 1969. Time: 16:49:00 UTC. Place: Kennedy Space Center. The Saturn’s V first stage F-1 monster engines just sucked up 43 tons of kerosene and liquid oxygen in nine seconds before lifting up the 3,000-ton rocket with Apollo 10 from the Pad 39-B.

The Apollo 10 (Spacecraft 106/Lunar Module 4/Saturn 505) space vehicle is launched from Pad B, Launch Complex 39, Kennedy Space Center, Florida at 16:49 UTC, May 18, 1969 - Source: NASA

The Apollo 10 (Spacecraft 106/Lunar Module 4/Saturn 505) space vehicle is launched from Pad B, Launch Complex 39, Kennedy Space Center, Florida at 16:49 UTC, May 18, 1969 - Source: NASA

Apollo 10 was a full dress rehearsal for Apollo’s 11 meeting with destiny two months later. With the permission of the Peanuts cartoonist Charles Schulz the Command/Service Module (CSM) was named Charlie Brown and the Lunar Module (LM) Snoopy. The crew of Thomas Stafford (Mission Commander), John Young (CSM Pilot) and Eugene Cernan (LM Pilot) had 10 spaceflights between them and Gene also performed an extra-vehicular activity (EVA) on Gemini 9 (the third EVA ever).

On May 24 40 years ago, Thomas Stafford, John Young and Eugene Cernan were orbiting the Moon after the first-ever manned CSM – LM docking in lunar orbit carried out at 03:11:02 UTC on May 23, 1969 (at 106:22:02 MET) preparing for the Trans-Earth Injection (TEI) maneuver to set them on the course home. The TEI burn started at 10:25:29 UTC on May 24, 1969 (at 137:36:28.9 MET) and lasted 165 seconds. Apollo 10 landed successfully at 16:52:23 UTC on May 26, 1969 (at 192:03:23 MET) about 200 km east of American Samoa.

Science Museum in London, the home of Apollo 10 CSM – Charlie Brown, prepared a special event for its visitors for the 40th anniversary of the mission. For only one day (Saturday, May 23 2009) the module’s hatch cover was removed from the spacecraft to allow visitor to look at the actual controls.

Apollo 10 Command Module with the hatch cover removed

Apollo 10 Command Module with the hatch cover removed

The entrance to the Apollo 10 Command Module

The entrance to the Apollo 10 Command Module with John Young's and Gene Cernan's seats visible

The Command Module pilot seat

The Command Module pilot seat

The Command Module controls board with a guidance computer on the left

The Command Module controls board with a guidance computer on the left

Lunar Module Pilot seat with a storage for the Flight Plan, Malfunction Procedures, CSM Updates and the Crew Log

Lunar Module Pilot seat with a storage for the Flight Plan, Malfunction Procedures, CSM Updates and the Crew Log

Charlie Brown's Heat Shield (or what's left of it after the re-entry)

Charlie Brown's Heat Shield (or what's left of it after the re-entry)

More photos are available in my flickr photostream.

For great inside info about Apollo 10 read Eugene Cernan’s The Last Man On The Moon.