A Seismic Oregon

On a night in January in the year 1700, people living along along the coast in Japan were surprised to find their homes and villages suddenly under water.  Tsunamis were not new to them, but they always came after an earthquake.  This one did not.  What had happened?  It remained a mystery for nearly three hundred years.

Full Rip 9.0

Full Rip 9.0

This mystery is one of several related to our understanding of the seismic history and risks that is presented in the book “Full-Rip 9.0: The Next Big Earthquake in the Pacific Northwest” by Seattle Times journalist Sandi Doughton.  The book focuses on our current understanding of the risks posed by earthquakes in the area, and tells the stories of how those risks were discovered.

It is also a warning.

It may seem like Oregon and Washington are much calmer than California when it comes to earthquakes, but it’s an illusion.  The reality is that Oregon and Washington have the greatest risk of a destructive earthquake that could happen at any moment.

The Cascadia Fault runs about thirty miles off the pacific coast from northern California up to Canada.  It is one of the relatively few fault lines in the world capable of the largest earthquakes – magnitude 9 and higher.  It’s caused by the pacific plate subducting , i.e. going under, the North American plate.  This is what enables such large quakes to occur.  Tension builds up along this collision until it suddenly releases, potentially without any warning.

When the Cascadia Fault rips, it will be very similar to the magnitude 9 earthquake that rocked Japan in March 2011.  The quake will last for several minutes, pummeling structures inland as far as Portland.  Seismic preparedness studies have repeatedly shown that the entire Pacific Northwest will not stand up very well to this type of shaking.  Multiple studies have concluding that it is likely that the entire coast will be physically cutoff from the rest of the nation due to damages to bridges and roads.  The only possible transportation may be from air or water for months as this infrastructure is rebuilt.  Electricity will likely be lost for months as transmissions lines will need to be completely re-laid.

But that is not the scariest part of this scenario.  The time immediately following the earthquake is the most dangerous.  Just like the quake in Japan, a massive Tsunami will be generated.  People on the coast will have 15 to 20 minutes to get to a high enough elevation to escape it – at least 150 feet is recommended.  The Tsunami in Japan topped out at 137 ft.  The Oregon coast, with it’s many harbors and inlets, will act as a focus to the giant wave, driving the water higher and faster.  People in this situation will need to make their way through infrastructure damaged by the quake, and make it to higher ground.  In many coastal town, this will be difficult if not impossible.  The town of Seaside is especially vulnerable, given it’s size and (lack of) proximity to safe elevations.  The Tsunami will not stop at the coast, but will travel up the rivers.  Portland could get hit with a wave 20ft high or more.  Coastal river canyons will be scoured many miles inland.

Tsunami Sign

Tsunami Sign

If you experience an earthquake along the coast, you’re not supposed to wait for an official warning.  It is unlikely to be issued in time.  You should immediately head to higher ground.  It is not recommended that you take a car, as the quake is likely to have damaged bridges and other infrastructure, and you do not want to get caught in a traffic jam.  Be aware that there is likely to be multiple large waves, lasting for hours, and that the first wave might not be the largest.  Once you get to a safe place, stay there, and stay aware of your surroundings. There will be signs along the road directing you to a safe location.  You will eventually get to a sign that tells you that you are leaving the hazard area.  It is not recommended that you stop here, but continue heading up as far as you can go.

There is no predicting when the Cascadia Fault will rip again.  It’s been ripping pretty steadily every few hundred years, and with the last one clocking in at 300 years ago, it’s overdue.  Tension has been building up and can be demonstrated through studies of the see floor, and micro-quakes measured further in land.  The plates involved slide past each other at the rate of a few inches a year, and in the time since the last quake, that adds up to about 25 feet of locked rock.  For comparison, the the Japanese quake released about 20 feet of tension.  Japan was much better prepared for an earthquake like this, and it still devastated their country.  We lack the building and zoning codes, early warning systems, and disaster planning the Japanese used to save thousands of lives.

In other words, we are extremely vulnerable.  This fault is a Sword of Damocles over all of us. We need to invest the resources required to improve our odds when the big one comes.

These topics are covered very well in “Full Rip.”  The book contains much more information can be presented here, including discussions of other seismic risks in the area.  I highly recommend picking up and reading it!

How to Explore Oregon: Roads

If you’re going to be exploring Oregon, eventually you’re going to end up spending a lot of time in your car travelling.  While there are usually many very nice things to see close by, to really get a taste of Oregon, you need to expand.  Oregon is made up of several very distinct areas, and each of them has wonderful things to offer.  From the Pacific coast, with it’s dramatic ocean bluffs and lighthouses, to the rain forests of the coastal mountain range, the temperate forests of the west cascades and the high desert on the east of the Cascades, there’s definitely not a shortage of things to see.  Within a few hours driving you can have a taste of it all.  But you need to know some things about the roads you’re going to be traveling on.

To get up to the date information about the conditions of major roads, it’s best to always start with tripcheck.  Tripcheck is run by the Oregon department of transportation and will contain any road closures, construction, and conditions that might be important to you, including many webcams so you can check out the roads for yourself.  Some of the roads in Oregon, like the McKenzie Pass, or the Cascade Lakes scenic byway, are only open when snow-free, so it’s important to start checking those in November.  These closures can provide an interesting opportunity for some, because they are only closed to vehicles.  Hikers, Bikers, and Cross Country Skiers are welcome on them when they’re closed.  Last may, I walked along about ten miles of the McKenzie pass the weekend before it was supposed to open to vehicles, and it was a great experience.

It is important to be cognizant of road conditions in Oregon, because unlike other states, Oregon does not salt it’s roads.  This can be especially hazardous when entering from another state, whose roads are fine, only to find Oregon roads slick and dangerous.  This is especially true if you’re going to be traveling through the Siskiyou Pass on I-5 south of Ashland.

You should also be aware of elevation differences.  If you’re in Eugene, at elevation 450ft, it might be clear, or perhaps drizzling.  At at the Willamette pass at over 5000ft, this can mean snow and ice.  The weather forecast will usually include a snow line if there is snow predicted in the area.  This will be the elevation where they predict rain will turn into snow.  It can be a useful guideline.

Since Oregon does not salt it’s roads, it has something called the Chain Law.  The chain law states that you should always carry tire chains or traction tires on highways.  The chains are cheap.  I think I paid about $30 for them for my vehicle.  I’ve thrown them in my trunk and just leave them there.  You’ll see signs like this:


The message on the chain law signs change when you are required to actually equip them:

Chains Required

You need to chain up if you see this.

I’ve only been through this requirement once, and for my vehicle, chaining up was not required.  I had noticed that the message on the sign had changed, but I didn’t catch the entire message.   When I saw trucks that were towing trailers sliding around, I knew something might be up.  I had a very harrowing journey over the Santiam Pass, but in the end, didn’t experience any personal difficulty in my small car.

Foul weather is not the only thing you need to be considerate of when travelling.  With all the rain that falls in Western Oregon, landslides are a problem. Some of them can be quite large.  On more than one occasion, I’ve driven through a small path made through a landslide, and have been diverted from roads completely closed due to a landslide.  They are something to be aware of, especially if you’re traveling on roads that do not see much traffic.

There are several different types of roads in Oregon.  There are the usual roads you get everywhere: Freeways, Highways, and the like.  When you’re out exploring, though, you’re likely to travel off the beaten path a little bit.  In Oregon, this means traveling on National Forest Roads, or Bureau of Land Management roads.  Some of these may be paved, but to get to some places, you’ll be traveling on gravel or dirt.  These require special considerations.

First, the condition of the road if it is unpaved should be suspect until you actually lay eyes on it.  Just because it’s on the map doesn’t mean it’s been maintained this century, or that it even is still a road.  You might find that it’s been completely blocked off and abandoned.  You might find that it is full of potholes and driving a car with low clearance on it is impossible.  Or you might find it in fine shape and able to continue on.  National Forest roads seem to usually be in better quality than BLM roads, but I don’t think there is a large difference.

If you’re going to be traveling on gravel, plan on it taking much longer to complete your trip.  Even on good unpaved roads in Oregon, unless you’re in an off road vehicle, it’s going to slow you down.  Incorporate this into your planning. Be aware that these roads are highly unlikely to have certain safety features, like guard rails.  You will need to be more cautious, especially along ravines and ridges.

And clear cuts.  At some point, you’re going to travel through an area of the forest that has been wiped of all vegetation for logging purposes.  These are especially dangerous, because they can leave the road unstable.  Studies have shown that land that has been clear-cut is more susceptible to land slides, especially large ones.  So be careful. The only nice thing about clear cuts is that they can open up views that you might not have had otherwise.  Usually, it doesn’t feel like it was worth the trade.

One Lane Road - With Turn Outs

One Lane Road – With Turn Outs

If you get off the beaten path a little bit, you’re likely to run into a sign much like the one on the right.  The road you are on will narrow, and every little ways, you’ll find that it widens for 20 to 30 feet.  If you see a car coming, pull off to the side and let them by.  I haven’t figured out any etiquette for these encounters except  whoever pulls over first lets the other one past.  Of course, on these roads you want to travel more slowly in case you meet oncoming traffic.  If you’re headed around a sharp curve, you might want to honk your horn and alert anyone around to your presence.  Most of these roads are going to be gravel, but don’t assume that just because a road a paved, that it will be two lane.  I went over a paved road in the Umpqua National forest that was paved, but down to one lane.  It was also one of the roads that had been hit by a landslide.  So it always pays to be careful!

On one road, I came up to a fork that wasn’t on the map.  I was headed to the town of Steamboat, and looking at the map, I really wasn’t sure which fork to take.  Luckily, someone had left this very helpful sign:

Steamboat this way

Steamboat this way

Not exactly what I was expecting, but it was right.  I’ve seen signs that were knocked down and broken.  It you’re at an intersection and not sure where to go, look for a sign that may have been knocked over.  You might find something helpful!

When travelling over the large mountain passes, they require that you gain a few thousand feet in elevation, sometimes over a very short distance.  When climbing the pass, you will eventually find yourself behind a very slow semi-truck.  Be patient.  There’s going to be a passing lane within a few miles, and you’ll be able to safely pass them and continue on your journey.  When you’re coming down the pass, keep an eye on your speed. It’s very easy to build up speed and not even realize it.  Coming down Mt. Saint Helens, I was enjoying the drive until I realized that I had hit 80mph coasting down the hill.  This is a situation to be avoided.

Sunken Grade

Sunken Grade

Finally, you might see signs that indicate the road has a “Sunken Grade.”  They can be easy to ignore, but you should pay attention.  These signs indicate that the ground has shifted in that area, possibly due to a landslide.  Likely, the should is unsafe to pull onto, or there could be unexpected dips in the road.  The road may bank in an expected direction, especially around a curve.  Luckily, these areas are usually not very large.

That’s all for now!  Next time, I’m going to be taking a look at Oregon weather.

How to Explore Oregon: Maps

This is the first article in a series I’ve been working on discussing some of the lessons I’ve learned exploring Oregon over the last year.  Oregon is a beautiful place, full of amazing sites and getting out to explore it has been a tremendous pleasure.  I’ve learned quite a few things in my adventures, and they might be valuable to other people

Maps are vital.  Being from Missouri, I’m used to google maps being pretty much all I need.  In Oregon, this is not the case.  I discovered this the first time I tried visiting Crater Lake.  I had pulled up Google Maps, and plotted out a course that took me through the Umqua National Forest.  I figured it was going to be a beautiful drive.  About an hour into the trip, I discovered a problem:

Google maps does not tell you if a road is paved.

At that time, I did not have a GPS device other than my phone.  Instead of visiting Crater Lake, I ended up driving around on National Forest roads for several hours and ended up about 30 miles from where I started.  Lesson #1: Do not depend on Google maps.

You need to get a paper map.  As soon as I got back to civilization, I purchased one of

Oregon Road & Recreational Atlas

Oregon Road & Recreational Atlas

these, and it always stays in my car.  It shows the information you need, for the most part.  You can tell whether or not a road is paved, which is major.  I’ll talk more about roads in my next post, but for now, knowing whether or not a road is paved is very important information.

Google maps has a different kind of value.  When looking for places to explore, one thing that I spend a lot of time doing it looking at the terrain version of google maps.  I like to look at how elevation changes and the possibility for great views.  One very recent example of this is my discovery of Mt. Hebo.

I was looking for things to see along the coast in the Tillamook area, using my paper atlas.  I was suspicious when I saw a paved road that was named ‘Mt. Hebo Road.’  Road names can jump out out you after a while.  This sounded like a promising name to me.  Was there a mountain there that could provide some excellent views?  I pulled up google maps and saw this:

The default view of Mt. Hebo Road

The default view of Mt. Hebo Road

Not too much exciting going on here.  But let me turn on terrain mode:

Mt. Hebo Road - Terrain

Turn on Terrain

Okay, now that looks much more promising.  This is a pave road that goes nearly to the top of a 3000 ft mountain, less than 10 miles from the coast, and was the highest in the area.  All that adds up to some very nice views. So my parents and I headed up to check it out.  The road was indeed paved.  We started out at about 100ft elevation, and over the course of about 7 miles, we climbed up to 3000ft.  At the bottom, we were socked in with fog, and could hardly see a half mile.  By about the 800ft mark, we were up above the fog and had blue skies and bright sun.  At 3000ft, the temperature had climed to nearly 80°F and it was beautiful.  The road didn’t go all the way to the top of the mountain.  My dad set out cross country for the last quarter of a mile or so to get to the true summit.  I was a little more cautious and found a trail – of course there would be a trail.  The view was completely worth it:

View from Summit of Mt Hebo

View from Summit of Mt Hebo (Click for larger view)

That was just looking in one direction.  Looking to the north and westeast, we were able to see Mt. St. Helens, Mt Adams, Mt. Hood, and Mt. Jefferson – four of the large volcanoes in the Cascade Mountain range.

We would have missed it all, if it wasn’t for the terrain map.

Another type of map that is very important for hiking especially is the National Forest maps. These maps cost around $10 and can be found online or at stores specializing in the Outdoors, like REI.  They contain high resolution topological maps of the forest, along with roads, trails, and landmarks.  They don’t always come from the National Forest Service.  For example, for the Redwood National and State Parks the best maps come from Redwood Hikes Press.

Sample from the Redwood National and State Parks map

Sample from the Redwood National and State Parks map

Wherever you’re hiking, definitely find a map ahead of time and take it with you.  Before you go, familiarize yourself with it.  Study your route and its’ landmarks.  You might be surprised at how much it helps you enjoy your hike that much more.

Do not depend on GPS to get around.  Sometimes the maps in your GPS system are not up to date with the latest roads.  Sometimes, especially in deep mountain canyons, and thick forests, you will not be able to get a GPS signal.  Carry a compass and map at all times, and learn how to use them ahead of time.

Preparation is key.  If the first time you look at a map is when you’re lost, it’s not going to be nearly as helpful.  You have to learn the map before orienting yourself, locating your current position, and figuring out where to go.  This is not something to do while under the stress of feeling lost.  Familiarize yourself with the map ahead of time, and you’ll have a much better time.

If you expand beyond google maps, use a map that shows the types of roads and not just their mere presence, and look at them ahead of time, you’re off to a very good start in your exploration of Oregon.  Good Luck!

Recursively Installing in 3…2…

Internet Explorer 11 was released today to Windows 7, so I thought I would upgrade.  IE has been making great strides in the browser world, and I wanted to see what was new in the latest one.  I downloaded the installer, and tried running it:

IE11 Error

IE11 Error

Well, I guess I won’t be trying IE11 after all.  I’m okay with that.  I’ll just keep chugging along with Chrome and Firefox.

Hello, Digital Ocean!

Sunrise on the Pacific

Sunrise on the Pacific

After a little bit of work this evening, I successfully imported my blog from my previous host to a new hosting provider: digital ocean.  This was my first experience with a VPS, and DC has been incredibly easy.  The site is fast and cheap, and exactly what I was looking for.  I’m excited about publishing more content soon!

How we’re using AmplifyJs

AmplifyJs is a very nice library for wrapping and handling ajax calls and other data operations. It handles requests, storing object locally, and a very nice pub-sub system. We abstracted out all of our ajax requests to use amplify, and it’s paid off hugely for us. This post is not meant to be a tutorial on how to use Amplify, but a few things we stumbled upon that is very useful.

Replace the Default Decoder

This was one of the first things we did.  We wanted to be able to handle requests that error’d in one place, so by replacing the default decoder, we were able to display a nice message to our users, yet still pass through our success data (this code is in TypeScript):

amplify.request.decoders._default = function (data, status, xhr, success, error) {
  if (data.status == "success") {
  } else {
    try {
      if (data.message == 'ValidationErrors') {
      } else {
    } catch (err) {
      messageHub.showError("There was an unspecified problem with the request");

Subscribe to Ajax Events

Another thing we wanted to only handle in one place was the display of a loading animation or message.  Amplify made this incredibly easy through it’s pub / sub functionality.  I was able to subscribe to two events that would track how many requests were currently happening, and show or hide a dialogue box accordingly:

amplify.subscribe("request.before.ajax", () => {
  if (requestsHappening == 0) {

amplify.subscribe("request.complete", () => {
  if (requestsHappening == 0) {

This greatly simplified our request code.  We took both of these pieces of code, and called it amplify_config.js.  That got included in our bundled scripts, and it provided a nice central location to define our requests as well.  I highly recommend this as a way to simplify your ajax code, even if you’re not using the more advanced features of the library.


This has given me much to think about:

The natural tendency of most organizations is to restrict choices in favor of the obvious and the incremental. Although this tendency may be more efficient in the short run, it tends to make an organization conservative and inflexible in the long run. Divergent thinking is the route, not the obstacle, to innovation.

– from “Deign Thinking for Social Innovation” by T.Brown, J.Wyatt


A little over a month ago, I sat down and started working on something I’m calling Netherpad.  The idea is loosely based on etherpad, though I’m implementing it on .NET using ASP.NET MVC 4, SignalR, and some TypeScript.

The main technology that allows this live shared collaboration is called Operational Transformation.  I’ve had it on my list of things to learn for several years now, and now I’m starting to wrap my mind around it.  What I’m finding is that it’s not as difficult as I thought it would be.  I found a simple implementation of the algorithm in JavaScript called jinfinote. Going through this code made it pretty easy to understand what was going on.  I had to modify it to first use SignalR instead of straight web sockets, and that required a pretty good understanding of what was going on, especially since SignalR uses GUIDs to identify users instead of straight integers.  This has been causing some pain, but I’m working around it.

After nearly all day of working on it, I got the basic live collaboration working, as can be seen in this video:

It’s an ugly hack, but it works.

As the caption says, it’s ugly and requires some trickery in the underlying javascript, but it’s working.  It was a truly magical moment for me to type a key in one browser and see it show up in the other browser.

Moving forward, I’m working on porting the original javascript to TypeScript and will be mixing in some linq.js in order to make up for the fact that Javascript doesn’t have a native dictionary object.  So far, I really like working with TypeScript; it’s a huge improvement over plain Javascript.  Porting the code has also forced me to gain a good understanding of the algorithms involved.  I’m almost at the point where I can throw out the original implementation and rewrite it in a way that makes more sense from a .NET / TypeScript standpoint.

There is still a lot of work to do on the project, but so far, it’s pretty exciting.  Be sure to check out the code if you wish, but beware, it doesn’t really work right out of the box at the moment, though I will be working to make that happen soon.

Introducing Nenetics

This weekend I spent a little bit of time working on the C# genetic algorithm library I’ve created called ‘Nenetics.’ I created an introductory video that demonstrates where I’m at right now. Still have a long ways to go until I get where I want to be:

The Artificial Selection civilization seems to be behaving pretty good at this point, though as the genome size increases, it’s becoming difficult to get past around the 89% fitness hump. I think the problem there is in the breeding code, so I’ll be testing a few things with that. After that, it will be on to open simulations, which I’m really looking forward to.

As always, code is up on github.