runestone interactive

What a week its been!   So much has happened in the last week that I just have to take some time out to organize my thoughts and get some of this information out there where others can read it.

What is Runestone Interactive?

Runestone Interactive is primarily a home for both the content and the technologies that go into publishing interactive textbooks.  At the moment interactive textbooks for Computer Science, but who knows how far this could go.  Probably the best way to see this is to actually visit our site and play around.  But in the meantime here is a short video to give you an introduction.

 

  1. Home to our open source publishing tools.  My goal as that these tools become the LaTeX of interactive publishing. There is lots of work to do before we can claim success here, but I think we have a good vision and a decent start.
  2. A model for a new online only publishing house. At some point, I think it is important for content to go through an editorial process, not just for copy editing quality, but for coherence, and quality of approach. Right now the number of content creators using our system is pretty small, but I can already see that starting to grow. We have lots of thinking to do about this.
  3. A home for hosting online courses or textbooks.

Who is your audience?

At the moment, I think we serve three distinct groups of people.

  1. The  teacher out there who wants a good quality textbook, but is not interested in forcing their students to pay $100+ and is interesting in trying an interactive book, all for free.   So to serve this audience we have interactvepython.org. You can select one of our pre-defined books and set up a course where you are the instructor and have access to grading etc. Or you can use the drag-and-drop interface to put together a book by selecting from the library of modules. Maybe some of these teachers have an exercise or two they would like to contribute, but mostly they are just looking for good materials to help them with their course.
  2. Authors who would like to contribute significant chunks of content -- chapters or section sized -- or videos. For example I'm working with an entrepreneur who wants to add content and a graphics package that looks more like Nodebox. He's very interested in putting together materials for middle school kids.  Others, including other Computer Science researchers, are more interested in algorithm visualization and working together on building in more visualization tools to the tool box.  Others have their own CS course materials that they would like to get into an interactive form and make available to the world.
  3. People who are interested in learning CS on their own.  We get a ton of people coming to the site just to learn on their own. I had the most heartfelt letter from a guy the other day who found our site as he is trying to retool after being laid off for a couple of years. He said this is the first thing he's come across that really worked for him and helped him learn a bit of CS.  How does this compare with Udacity and Coursera?  Both of those companies are primarily video oriented, and both of those companies are running courses that are in some sense synchronous.  You have to move through the course on their schedule to get the full benefit.  Our books/courses can be done at your own pace, on your own time.
 

I would like to use this for my own class how do I get started?

Its easy, just follow these steps:

  1. Go to interactivepython.org and register yourself as a user.
  2. Click on Create a Custom Course link in the right sidebar.
  3. Select a short name for your course that uniquely identifies it among all the other courses.
  4. Type in a short description for your course
  5. Now you get to choose.  Do you want to use one of our standard configurations, either How to Think Like a Computer Scientist: Interactive Edition, or Problem Solving with Algorithms and Data Structures using Python  or do you want to build a custom book by choosing modules from both of the above?
  6. Click on the build button.  Wait a few minutes and you will have a page with a link to your new course.
Now you can send your students to interactivepython.org and simply tell them to register for your course.  
 
Why would you choose to build your own course when you could just use one of the open books?  When you create your own course you become the instructor and admin for that course.  You can grade your students assignments right online, and even access their homework in progress if they have questions.  You can also get a sense for the different activities they are choosing to use in the textbook.

How can I get involved?

There are lots of ways you can get involved:

  • We need readers who are willing to be critical and report bugs on everything from typos to activecode blocks that don't work exactly right.
  • We need web developers who are willing to work on the back end, developing reports for instructors and making sure our infrastructure is sound.
  • We need web developers who are interested in developing user facing features, everything from algorithm visualizations to interactive assessment tools like the multiple choice and fill in the blank questions you see already.
  • We need compiler geeks who can help fix bugs in our Javascript implementation of Python.
  • We need authors who want to add new and interesting content, either entire courses, or new modules that could be combined with the modules already there.

hosting a web2py app in the cloud

I consider myself pretty up to speed on web development.

I’ve spent the last two days trying to find a hosting solution for the data structures eBook…. I looked at too many of the following:

  • Google App Engine — I’m a long time GAE user, but the setup I have uses sphinx to generate content on the fly which it wants to store in pickle files on the local file system.  This doesn’t work with a GAE and some other systems that treat the file system as read only and expect any writing you do to go to a database.
  • heroku — seems very promising, but I’m not sure how to configure web2py so it doesn’t need any local file system write access.  The lack of ssh access is a bit disconcerting.
  • dotcloud — seems promising but the app kept hanging for no discernible reason.  I fought with it for the better part of the afternoon before deciding to move on.
  • fluxflex — easy to get web2py installed, (1 minute)  but a real pain to try to work with a real app.  I’m not going to use the web interface for all my editing.  I want to git push and/or git pull to deploy and update the app.  It doesn’t seem possible to get both ease of installation and robust configuration management.
  • pythonanywhere - non-starter
  • webfaction — Its not free, but at least it has a command line I can work with and I’ve got the whole thing running.  The only confusing thing about webfaction is that they don’t list web2py as a supported framework, but when you type it in under other it magically works for  you….  The other annoying thing that I just discovered is that the 256MB limit is way too low for the default configuration.  I just now got a helpful email saying a support ticket had been opened for me because I was using too much memory.  This was like 15 minutes after I finally got my app running and I’d made about 5 page requests.

new commuting strategy

I can see the campus from my house, its about a 20 minute walk, all downhill for the first half of the trek, then slightly uphill the rest of the way to the Olin building.  I’ve always thought that biking to work would be the way to go, but I hate getting home all sweaty and gross.  The problem is the uphill trek.  From the River to My House is about a 300 foot climb over the course of just under a mile, a 6% grade for those who care to know.  But trust me, its steep.  It takes a lot of work to get up to my house, even on my road bike.
But, awhile back I was reading about some of the new electric assist bikes, and I thought hey, I haven’t bought a new bike in a long time.  So, I started doing a bit more research and decided that one of the Trek Ride+ bikes would be great.  I ended up with the Trek FX+.  Sadly, my local bike shop can’t sell the Ride+ bikes, so I had to go to La Crosse to find this one.  The good news is that this is a good time of the year to get a new bike!   30% off was the sale today.
Trek FX+
I took it for a ride around LaCross and up the only little hill I could find,  the Cass Ave Bridge, not much of a hill, but I knew I was on to something when I felt like I was riding on the flats with the wind at my back, when I was actually going up a little hill.  After riding it around downtown a little longer I went back to the shop, smitten.  The only decision was which panniers to get so I can haul groceries and my stuff to school.
Jane hasn’t ridden it yet, but I have the feeling I know what she’ll want for Mothers day.  This would be the perfect option for our cycling marriage.  I could ride my road bike and she could ride the electric assist.  I think I see some longer bike rides together in our future :-)
The other great thing is that no gas is required.  Its all battery operated, and as I coast down the hill the battery is recharged.  I’lll be able to easily cruise my way to school, and then on the way home I can engage the electric drive at the bottom of the hill, and get the assistance I need to climb up to my house.  I won’t arrive home sweaty, and I’ll have the satisfaction of knowing that I got a few extra minutes of exercise, and didn’t use any gas!  The only downside is that I’ll be only inches away from the Whippy Dip as I ride home, but as long as I can get by there I’ll be fine.


pizza oven

I love it when a good plan comes together.  Last summer we decided to finally take the plunge and build a pizza oven at the lake.  After looking at the options to site the oven, and thinking about a fireplace/oven combination, we finally decided to combine the pizza oven project with our desire to replace the aging and increasingly ugly outdoor bar area.
In late June I contacted a few different stone masons to start to get an idea of cost and availability.  I was immediately impressed with David Marek www.layersofstone.com and his ideas on the project.  I checked some references and decided that my initial impression was correct, that David would be a good guy to work with.  Here’s his original sketch of our project.

Brad Miller Plan

David was able to start tearing out the old bar, and working on the replacement the last week of July.  He just finished the project last week, in time for us to enjoy some Pizza with our friends this last weekend.  The result was beyond my expectations.  Here’s a photo of the final outcome that you can compare with the plan:
6162728834 2a3c8d4985














For more shots of the project you can check out my Flickr Photo Set
Last saturday was the inaugural pizza baking.  It took about two hours to get the oven fully up to temperature, but the wait was well worth it.  We used this crust recipe and pre-baked the crusts on both sides for just a few seconds.  The crusts came out very light and crunchy.  I’m looking forward to trying out lots of different crust recipes, but this was definitely a winner.



joshua tree national park

I think I said that the plan for today was to head to the Palm Springs tram, and do a little hiking at the top of the tram then enjoy a nice lunch in downtown Palm Springs.  But two minutes before we walked out of the house we changed our minds and decided to go to Joshua Tree National Park.  Since we both have boys named Joshua, and they are staying together while we are out here in California, it made sense for us to check out this national park.  We are glad we did.

The south entrance to Joshua Tree is only about 25 miles away from Indio, so its a short drive to get to the park.  But, once you are there you find out how huge the park is.  We drove another 23 miles through desert scrub before we got to some of the really interesting parts.  The Joshua Tree National Park is a mixture of climates, it is part Colorado Desert, and part Mojave Desert, microclimates abound.

Our first big stop was at the Cholla cactus garden, its weird how these pictures almost look like they are underwater photos of coral!

.IMAG0020IMAG0016

In the national park there are these small mountain ranges that pop up out of nowhere that look like someone just drove in a huge dump truck and left a pile of rubble behind.  In fact these are all granite, and formed from volcanic activity.

IMAG0021

Because of all the different climates that are part of the park, the whole southern half of the park doesn't even have any Joshua Trees!  You have to wait until you get to a little higher elevation which is in the north and west part of the park.  Here's Jim and Karen standing under a very picturesque Joshua Tree.

IMAG0035

The Joshua Tree gets its name from the mormon's who saw it and thought that it reminded them of the prophet Joshua stretching his arms heavenward.  In fact the "tree" is part of the Yucca family.  It has extremely sharp  points on the end of the leaves which the loggerhead shrike (a bird) uses to kill its prey!

Our last stop in the park was a great little hike in hidden canyon.  Here you can get a sense of how these little mountains were created out of blocks of granite.  Its amazing to see the Joshua Trees along with the scrub oak, and Juniper trees just growing out of the rocks.

IMAG0039

On the way home, we drove through the wind farm in the San Gorgonio pass.  This is a great site for a wind farm as the wind blows here all the time.  There are more than 4000 turbines here that generate enough power for the entire Coachella valley!  There are turbines here of all ages, some very old and very small, some with two blades, for working in higher winds, and some very new and large turbines.  Poor Jim, we discovered too late that you can get tickets for a tour of the wind farm!

IMAG0046

 

adding a module to skulpt

Now that I’m back from traveling in South America I’ve started on a project to add a turtle graphics module to skulpt.  Skulpt is a javascript implementation of Python written by Scott Graham, and is available on skulpt.googlecode.com.  Its a very nice project because it allows you to embed a Python interpreter right in your web page.  I’ve written about how to do this in a previous post.
The skulpt interpreter works like a charm, but it does not yet have any of the Python standard library modules implemented.  Scott has been working with wrapping some of Googles closure libraries, and has a webgl module too.  But none of your regular Python friends are available, things like math, random, turtle, etc need to be implemented.  For the most part these things are already available in javascript so the work is in creating the module and then wrapping the underlying Javascript inside the standard Python API.
Where to start?  There’s not a lot of documentation provided for skulpt, so I’m hoping this post will be enough to help others get going a bit quicker.  Scott was very helpful in responding to all my emails so this is not a criticism of him, rather I’m hoping this will save him the effort the next time someone wants to extend skulpt.  So, here’s the deal.  skulpt relies on two javascript files the first is skulpt.js  and builtin.js  A very minimal installation only uses skulpt.js, whereas if you want to use any modules they are in builtin.js.  Looking around the distribution you will not immediately find skulpt.js because you need to build it. You get a sculpt.js file by using the m script that comes with the distribution.  running m –help will give you the full list of commands, but the two that you probably most care about are m dist and m docbi The dist command builds both skulpt.js and builtin.js  docbi builds builtin.js and puts a new copy of it in the doc/static directory.
Lets begin with a quick tour of the source tree:

  • src - contains the implementation of the Python interpreter
  • src/lib - has the module implementations of webgl and goog.  This is where turtle will live and any other modules I implement along the way.
  • doc - This directory contains a google app engine application and is what you see on skulpt.org There are a couple of important files to check out in here.  One of them is doc/static/env/editor.js  This is the code that ties together the interactive editor on the home page with the skulpt interpreter and the codemirror editor.  If you know how to build a google app engine app then this directory makes sense.  One thing about the home page is that it is not set up to use any of the modules.  The modules are used in the more advanced ide, which you can find in doc/ide/static.  I’m going to tell you how to add modules to the simpler editor later in this article.
  • test - this directory contains a bunch of files for testing the implementation in a batch mode.  These tests are run whenever you run m dist, or m test.
  • dist - This directory gets created and populated when you run the m dist command.  It contains the built and compressed versions of skulpt.js and builtin.js
To illustrate how to make use of modules, here’s an extended version of my earlier hello world style example.

<html>
<head>
<script src=“skulpt.js” type=“text/javascript”></script>
<script src=“builtin.js” type=“text/javascript”></script>

</head>

<body>
<script type=“text/javascript”>
function outf(text) {
var mypre = document.getElementById(“output”);
mypre.innerHTML = mypre.innerHTML + text;
}

function builtinRead(x)
{
if (Sk.builtinFiles === undefined || Sk.builtinFiles[“files”][x] === undefined)
throw “File not found: ‘” + x + “'";
return Sk.builtinFiles[“files”][x];
}

function runit() {
var prog = document.getElementById(“yourcode”).value;
var mypre = document.getElementById(“output”);
mypre.innerHTML = ‘';
Sk.configure({output:outf,
read: builtinRead
});
try {
Sk.importMainWithBody("<stdin>",false,prog);
} catch (e) {
alert(e);
}
}
</script>
<h3>Try This</h3>
<form>
<textarea edit_id=“eta_5” id=“yourcode”>
print “Hello World”
</textarea>
<button onclick=“runit()” type=“button”>Run</button>
</form>

<pre id=“output”></pre>

</body>
</html>

There are some important differences between this version, and the version and the non-module version.  First off, the call to Sk.configure contains another key value pair which sets up a specialized read function.  This is the function that is responsible for returning your module out of the large array of files that are contained in the builtin.js file.  You will see that all of the modules are contained in this one file, stored in a big JSON structure.  The extra key value pair is:
read: builtinRead
The read function is just for loading modules and is called when you do an import statement of some kind.  In this case the function accesses the variable builtinFiles which is created from the builtin.js file.  The other difference, of course, is that you have to include builtin.js in your html file.  Note that builtin.js must be included after skulpt.js
Now as far as the module itself goes, the easiest thing to do is to start your module in the src/lib directory.  This way it will automatically get built and included in builtin.js.  If you don’t put it there then you are going to have to modify the m script, specifically the docbi function in the m script to include your module.  Suppose that you want to have a module called bnm.test  Here’s what you have to do.  First, you need to make a bnm directory under lib.  In this directory you will need to have either init.py or init.js or bnm.js to stand in for the bnm module.  There doesn’t need to be anything in the file as long as it exists.  This is just like CPython by the way.  Then to make a test module you can either make a test directory and put all your javascript code in init.js or you can simply create a test.js file in the bnm directory.  Lets look at the test module.
var $builtinmodule = function(name)
{
var mod = {};
var myfact = function(n) {
if(n < 1) {
return 1;
} else {
return n * myfact(n-1);
}
}
mod.fact = new Sk.builtin.func(function(a) {
return myfact(a);
});

mod.Stack = Sk.misceval.buildClass(mod, function($gbl, $loc) {
$loc.init = new Sk.builtin.func(function(self) {
self.stack = [];
});

$loc.push = new Sk.builtin.func(function(self,x) {
self.stack.push(x);
});
$loc.pop = new Sk.builtin.func(function(self) {
return self.stack.pop();
});
},
‘Stack’, []);


return mod;
}

All modules start out with the $var builtinmodule = statement.
This test module exposes a single method to the outside world, called fact, There are a couple of key functions for building up a module.  The Sk.builtin.func   call for adding functions to your module, and the Sk.misceval.buildClass method.  This test module defines a simple factorial function called fact, and a class called stack.  Here’s a simple Python program that exercises the module:
import bnm.test
print ‘starting’
print bnm.test.fact(10)
x = bnm.test.Stack()
x.push(1)
x.push(2)
print x.pop()
print ‘done’

Its not obvious, but the buildClass method takes four parameters:  globals, func, name, bases
It seems that you always pass the mod object itself as the globals parameter, the func parameter is a function that represents the class object, the Name is the external name of the class, and bases presumably would be if the class is inheriting from another class.
The Sk.builtin.func method creates a function.  For module creation we typically only have to worry about the one parameter, func, which is the javascript implementation of our Python function.  The method can also take a globals object and two closure objects.  Look at the comments in function.js if you want more explanation of how the builtin.func method works.
Well, I think this should be enough to get you going.  Its worth repeating, if you made it this far, don’t forget to call m docbi or m dist after you make changes in your module, its easy to get into the mode of thinking that the new javascript is automatically loaded.  But builtin.js is not automatically rebuilt!
I’ll consider this post a work in progress, please leave a comment if something is unclear or you would like something explained in more detail.

cruise wrapup part ii

I've been back in Decorah for less than 24 hours, its been a little more than 48 hours since we got off the cruise ship in Valparaiso. It was great to get a good nights sleep last night after having an overnight flight from Santiago to Dallas. Boy do I wish I could sleep on airplanes.

The Celebrity debarkation process was about as painless as you could make it. We woke up, showered and dressed, got some coffee at the Cova Cafe, checked our email one last time, and then walked off the ship. Like Buenos Aires, the port in Valparaiso is not really designed for cruise ships, so we got off the ship and then took a bus through the containers to the actual terminal. We found our luggage right away and realized that this process was so efficient we still had about 45 minutes to wait before our guide, Mac, from La Bicicleta Verde It was a little odd this morning because Chile was supposed to go off daylight savings time at the same time the US was supposed to go on daylight savings.  So, in one day we would go from being 3 hours ahead of home to just one hour.  Strangely the government of chile decided at the last minute not to go off daylight savings time, so some people were really off.  Mac showed up just after 9:00, and we got our tour underway.  We started by exploring the hills of Valparaiso.  Its an old shipping town, started when Nitrates were a big natural commodity that was shipped out of here.  Before the Canal, and before artificial nitrates had been invented.  So there are many beautiful old shipping houses owned by the british that have been converted into small hotels.  Here you can see one last view of our ship from the hills:

IMG 2559

We continued on past the first Lutheran Church in Valparaiso, and then had to avoid a pack of street dogs.  All chilean cities are full of street animals that are well feed and mostly well behaved.  The problem this morning was there was one female in heat and four males that were trying to get her attention.  Things got a little violent, so we headed off in the opposite direction hoping to lose the pack.

Mac told us that the day before this whole area of the city had been without power.  Now as you can see from this picture Valparaiso has a very modern system of electrical distribution:

IMG 2566

We were told that whenever there is a power loss, rather than trying to untangle the mass of wires and fix the problem, they simply find an area of the city that has power and then run a new wire to the blacked out area from there.

After the hill tour we headed down the coastline to visit some of the beautiful coastal towns, suchas Vina del Mar.  This would be an awesome place to come back and visit on a land tour.  The beaches are spectacular, and there are some really awesome restaurants looking right out over the water.  Mac got us number one at the most popular restaurant along this stretch.  People literally line up outside this restaurant waiting for a table.  Something that is unheard of in Chile.  We started off with a couple of apetizers:  Machas ala parmesan (razor clams smothered in a parmesan cream sauce.)  The only way to sum up this dish is:  To Die For!  We also had Camerones pil pil (little shrimp scampi).  Then for the main course we had freshly prepared fish.  They have about 7 different kinds of fish on the menu, each one with several different preparations.  I had Albacora (swordfish) grilled, and Jane had the Corvina (chilean sea bass) also grilled.  We had a side of Arroz and thought we were in heaven.  What a great last meal of the trip.  Oh, lest I forget , I also had my first Pisco Sour.  Pisco Sour is a great chilean drink made of a distilled wine (kind of like brandy) served with lime juice and simple syrup.  Just one please!

IMG 2569

After our delicious lunch we headed out to wine country.  The Casablanca valley is between Valparaiso and Santiago.  We stopped at the Emiliana Organic Vineyards, for a wine tasting and a walk around the vineyards.  We had a great wine steward, named Joshua, who served us samples of their premium Emiliana Adobe line.  This is sold in the United States under the Emiliana Natura label because of  a trademark dispute with the Adobe software company.  Please lawyers find something more productive to do with your time.  The highlight was their Gewurtztraminer, its not nearly as sweet as the German Gewurtztraminers and was very refreshing.  In addition to being organic they also practice Biodynamics (you'll have to look it up).  This sounds like a lot of hokum to me, but you can't argue with the results.

IMG 2574

Finally, what trip would be complete without some cute animals.  The vineyard also raises Alpacas, which we learned are part of the Camel family.

IMG 2585

With the vineyard tour over, our last stop was the Santiago airport.  We had lots of time to kill, since we got there about 5pm and our flight wasn't supposed to leave until 10:05.  Of course at 5:00 the American Airlines counters were not even open yet. Then at 6:00 when they opened it was a mad house.  hundreds of tired cruisers all anxious to get home, and all accustomed to being pampered for two weeks were now forced to stand in extremely long lines like so many commoners.  It was not pretty.  An interesting thing about flying out of Santiago is that all the outgoing flights leave in the evening, this is partly because you want to time your flight to get in to the states at a decent hour of the morning.  Say 6:00 AM or so.  But all the incoming flights get in to Santiago at 7 or 8 in the morning anyway, so why not have an outbound flight at 10AM?  By Chilean law, all outbound flights must have a complete mechanical inspection within 12 hours of their flight by a Chilean mechanical team.  The reason for this law dates back to 1972 when the Uruguayan rugby team crashed in the Andes and resorted to cannibalism to stay alive.  The Chilean legislature wanted to ensure that nothing like this would ever happen again so they passed this inspection law.  The result is that the flights that leave in the evening are never delayed for mechanical reasons, because they've had all day to inspect and fix everything.  Nice, makes you feel safe.

Well, that brings us as far as our last flights, which were pretty uneventful.  A bit of turbulence somewhere between Santiago and Dallas is about the only thing worth mentioning.  This was an awesome trip.  Thanks again to all the great new friends we made on board the ship for making it a fun time!

 

cruise wrapup part i

Its the last day aboard ship, and it has been a day of mixed emotions. We are excited to get back to our friends and family in Decorah, yet we have had so much fun on this cruise, and we have actually met some great people as well. Some of these people get to stay on the ship for the next leg of the cruise and as we think about our long day tomorrow and our overnight flight we are a bit jealous that we don’t get to go through the Panama canal, and then fly home from Fort Lauderdale. I’m amazed that I could even consider staying onboard for another two weeks, but we’ve learned that its really all about pacing (note to self, next time do not buy the unlimited drinks package.)

The cruise critic message boards really provide a great service. Not only can you find good reviews and recommendations of the non-ship excursions, but we’ve met a lot of fun people, and have been able to enjoy excursions with people that we met online prior to the cruise. So to Carol and Mike, and Carol and Ralph, and Scott and Gai, and Kristine and Craig (our aussie friends)… Thanks!! To Jonathan and Nancy and Jo, we look forward to the final Martini rankings, Aloha! And to Shila and Yogi, Kim and Rico, Rachel and Howie, thanks again for the fun dinners! Hopefully we’ll cross paths with some of you again on a future cruise.

So, where have we been? Here’s the super-fast summary of our travels:

Decorah to MSP with Jenkins, Thanks for the ride guys!

MSP to Dallas

Dallas to EZE (Buenos Aires) cross town transfer to Jorge Newberry and then on to Iguazu

Two fantastic days at Iguazu falls. If you are looking at this cruise or planning a trip to South America, do not skip Iguazu. The views are fantastic.

Iguazu back to BA and on to the ship!

BA to Montevideo, Uruguay

Montevideo to Punta del Este

Punta del Este to Puerto Madryn – Desert like climate but great penguins and sea lions.

Puerto Madryn to Cape Horn and the Ushuaia (Ushuaia gets my vote for favorite city of the trip) Its the southernmost city of the world, and the hiking and views on our hike in Tierra del Fuego national park were just phenomenal!

Ushuaia to Punta Arenas… OK, but not that spectacular. If you haven’t seen penguins by now, you should definitely do the trip here to see the penguins.

Punta Arenas to Puerto Montt. The port area is not spectacular, but once you get out into the country or to one of the other smaller neighboring cities its great. Beautiful scenery…. second favorite city. Of course the zip line ride really made this stop worthwhile.

Puerto Montt to Valparaiso to Santiago

Santiago to Dallas

Dallas to MSP

Ride home with Sandy Larsen! Wow gone 16 days and no parking charges at the airport!

Other stuff:

While on board, we used up 435 minutes of internet time.

We drank 2 bottles of wine :-) or more…

Jane won $700 at the craps table

We really enjoyed many of the shows onboard the Celebrity Infinity! We had become pretty much jaded about cruise line entertainment, but the quality here was really high. I missed having a magic show, but the music was mostly really great, except for the aging former Argentine star, who just doesn’t realize its time to hang it up. When you are on a cruise ship and you have to start your show with a video about how great you used to be, that is not a good sign! Travis, from Nebraska, you rock. The a cappella group top shelf was great too. It was hard to listen to this recently graduated group of young guys without thinking about Kaia’s future as a musical performer.

No summary would be complete without some room pictures, so here are a few pics of our Celebrity Suite. This suite will be redone when the ship is Solticized in November, but we thought it was perfect for this cruise. Not only was the room spectacular, but our Butler, Teguh, was the most Amazing person. No job was too big or too small, he really made our cruise seamless. From sneaking into the room before I was awake every morning so that my coffee was hot and fresh on the table, to organizing a part for 20 in our room one night. He was the best!

IMG 2543IMG 2546IMG 2556IMG 2549

Jane says I can type and read at the airport tomorrow, so I think its time to get dressed for dinner one last time!








tsunami warning!

This is weird, but I woke up this morning wondering about the question:  "what are the ships procedures in case of a Tsunami?"  Would we head for the open sea and ride out the giant fast moving swell there, or would we seek safe haven in a harbor of some kind.  Then, when Jane checked her email and the news she told me about the 8.9 magnitude earthquake in Japan, and the Tsunami warning issued for the entire Pacific Ocean.  I didn't really give it much thought, because after all we are a LONG way away from Japan.  However, when we were in the tour bus this morning, our guide told us that they were evacuating Easter Island and some of the other Chilean Islands.  OK, maybe this is more serious than we thought.  Now I was thinking what kind of damage could be done to the harbor in Valparaiso?  Will the tsunami have an impact on our trip home?  When we returned from touring we noticed that they were essentially evacuating the harbor, all of the ships we already towed out or in the process of being moved out of the harbor to more open water.  Score one for the open water solution.

As far as we know, this is not going to have a big impact on our trip. Out at sea, the tsunami is nothing but a big swell that we would ride up and over like any other large swell.  Its only when it gets toward land that it becomes the giant wall of water you see on the news. The captain is going about business as usual and we are on our way out of the harbor at Puerto Montt as I write this.  We have about 650 nautical miles from here to Valparaiso, and tomorrow we will spend a relaxing last day at sea.  If we were the tsunami, we would be able to get there in just a little over an hour!  According to news reports the wave traveled from japan toward Hawaii and the west coast of the US at over 500 mph.  The pictures of Japan on the news are just unbelievable, but again it appears that distance will sufficiently weaken the tsunami to the point where we will not be affected at all.

So, lets turn our attention to our fabulous day here in Puerto Montt!  We got to check off a bucket list item today.  What could that be you ask?   Zip Lining!  The highlight of todays tour was going to the top of a volcano, and then riding a series of zip lines to the bottom.  When we arrived on the pier this morning it was quite overcast and the owner of the tour company warned us that with the rain from last night and the wind today we might be out of luck.  But we took off in our little bus and headed for Lago Llanguihue, this is a huge vacation lake that sits below the volcanoes.  And when we arrived at the base of the ski lift on the volcano it appeared that we might in fact be out of luck.  Here's a view of what the side of the volcano/ski area looked like:

IMG 2473

We were clearly in and above the cloud line, and it was really eerie to see the wisps of clouds, that looked like steam rising from the dark sides of the volcano.  Our guide told us that we would not be allowed to go because of the wind.  So, we just hung out for a while looking at the clouds and suddenly we noticed that the sky towards the top was starting to clear.  Suddenly the chair lift even started running.  Our guide came out and said OK team lets head down and we'll go into Puerto Vargassafsf for some shopping and a nice lunch.  Wait!  a couple of the women (including jane) said.  Can't we at least ride up the chair lift?  Of course I'm thinking you guys are mad, why would we want to ride higher up into the clouds to just see more clouds.  So our guide told us to wait and she would check.  Miraculously, now the 'experts' were out checking the zip lines to see if they were safe.  The verdict came back that it was safe, so a few of us decided to follow the original plan and go for it.

When we reached the top of the ski lift we were treated to the following view:

IMG 2496

Clearly you can see the clouds had dissipated and we had a fantastic view of the top of the volcano, and its glacier.  It took us a few minutes, as the guy working at the top of the lift did not speak any english, but we eventually located our zip lining guides.  They got us into our harnesses and led us to the top of the launching pad for our very brief (10 seconds?) safety briefing.

Him:   hold

Me:  Si

Him:  break

Me: Si

Him:  No touch the cable, only here and the break

Me:  Si

And off you go!

Here's Jane and our friend Scott before we got our helmets.  Those harnesses are certainly stylish.

IMG 2484

And now here's Jane on her first run of the day.  Yes kids thats your mother hanging by a thread from a long thin piece of cable..  Don't worry she's having the time of her life.

IMG 2486

 

And now here's one of me coming in for a landing after our longest ride.  The span of this ride was 600 meters!  The total ride time was about 38 seconds which means our average speed was 15.78 meters/second or about 35 mph.

IMG 2519

In all, we got to go on four different runs, each was great and very exhilarating.  We had an adrenaline rush for a good hour after we were all done, talking excitedly in the bus all the way back down the volcano.  A great day and a lot of fun.  Can't wait to try it again sometime!

 

on the high seas

We are sitting here having our morning coffee and hot chocolate watching the waves crash and roll.  We left the Straits of Magellan sometime in the middle of the night and entered the Pacific Ocean, where we have high winds and, as the captain says, "Big Waves."  I took some video looking out our window, but I'm not sure you can get the real sense of how much we are rocking and rolling.  I'll post the video when we have a faster internet connection.  Meanwhile I just walked down the stairs to the Cova Cafe to get some of their great little croissants for breakfast, and I noticed that the crew has strategically placed barf bags along the stairwells and in other places.  According to the captain, who just updated us, we are experiencing winds at 50-60 knots with gusts of 70 knots.  In addition the waves are 15-20 feet high.

I just got back from the workout room.  walking up the stairs was quite an adventure.  At times I felt like I was floating up two to three stairs at a time, and at other times, I felt like I was carrying an elephant on my back as I was trying to go up a single stair.  Bootcamp was postponed this morning due to the high seas.  I decided to go ahead on run on the elliptical, which was kind of fun with all the dipping and plunging the ship was doing.

We will be at sea today, and tomorrow, although later today and all of tomorrow we will be cruising through the Chilean Fjords. The Fjords will be much calmer than the open ocean.  I'm not sure whether or not to even attempt to go to bootcamp workout in these high waves.

Yesterday we were in Punta Arenas.  It was our first stop in Chile.  We did not do any kind of excursion or tour.  We just took the tender to shore and walked around the town a bit.  There was a nice park square with trees, and a statue of Magellan, and handicrafts.  Apparently you are supposed to kiss the toe of Magellan and you will come back again, but with the crew having you sanitize your hands every five minutes, I can't imagine why anyone would want to kiss the toe of a statue and share the germs of a hundred other travelers that way!

While we were in town we found an internet cafe, where for the price of a cup of coffee we could get all the free internet we wanted.  It was nice to have some high speed internet for a change.

We just got back from a tour of the bridge.  It was very interesting and one of the officers confirmed that the wind was very strong this morning.  He said the maximum gust was 99 knots.  Thats about 113 mph for you non-nautical types.  So what do you do when you have a twelve story floating building and the wind is blowing against one side of the building at 113 mph?  Several things, it turns out.  The ship has stabilizers that can be deployed to counteract the forces of the wind.  These protrude out of the ship under the water at an angle like long wings that are under the water.  In addition there is water ballast that can be pumped from one side of the ship to the other to counteract the wind and the seas.  So when you consider that we had a strong current, 15 foot waves, and strong winds gusting to over 100 mph its amazing how little rocking and rolling the ship actually did.

Here are a couple of photos I snapped while we were on the bridge:

IMG 2431

 

IMG 2434

Since we are back we are also getting ready to host a little party in our room for some of the people we've met on board.  The party will start here, and then we'll also visit some of the rooms and suites that others have.  This is a great way to see what kind of room you might like to have the next time you come on board.  Here's a shot that I took on the balcony of our friends Jonathan and Nancy.

IMG 2449