Dave Tucker

System Theory and the Rise of Trump

Posted on March 5, 2016
A wild fire

Forest fires in some parts of the United States used to be common, but small. Before the 20th century, every five or ten years, a fire would sweep through and kill off mostly the small and young foliage, leaving the forest damaged, but intact1. Many saw this as a waste of resources. The logging industry wanted the forests for lumber, and Roosevelt wanted them for national parks. And so it was that the newly created US Forest Service adopted fighting fires as their primary goal2.

Yet here we are in 2016 and forest fires are as a great problem now than they were then. What went wrong? It turns out that small fires are beneficial to a forest. By clearing away all the debris often, small fires keep too much fuel from accumulating. This is a common property of organic systems. Beyond just surviving small stressors, such systems actually benefit from them. This is true across domains. Hygiene hypothesis suggests that exposure to pathogens is beneficial to us, possibly causing some temporary harm, but strengthening the immune system in the long run3.

Society, being an organic system, is subject to this same phenomenon. So how have we now come to suffer the wildfire that is Trump? We've been removing stressors. Just as our country became intolerant of any forest fire, no matter how small, we've become intolerant of any offensive idea. When some such idea springs up, we squash it immediately.

In 2015, a group of Williams College students invited anti-feminist author Suzanne Venker to come to campus and and speak about her ideas. They invited her specifically because they disagreed with her, but valued exposure to conflicting ideas. In today's PC climate, such an action by university students should be considered an act of heroism. Unfortunately, protests by other members of the student body were great enough to scare them in to revoking their invitation. Everybody loses in this scenario. Neither side will hear opposing arguments.

This is the environment we find ourselves in. Those who even question the science behind climate change are labeled "deniers" and told "the science is settled". Those are both ways of ending a debate before it begins. Two a penny labels like "racist" and "misogynist" are tossed around like profanity in a George Carlin bit. Question the military and you hate America. Want to reduce welfare? You hate the poor. Most every libertarian has been told they should move to Somalia, but last week I witnessed a libertarian tell a communist he should move to North Korea.

So how does a person react when their ideas are met with hostility, but no debate? First, they find people who will talk to them. Communities of like-minded people form, allowing their members to talk about their ideas among themselves, free from hostility, but also free from challenge; an echo chamber. But mostly, such people wait. They wait for some chance at legitimacy.

And it's in this environment that Trump lights a fire. The forests are packed dense with fuel. No debate has occurred to remove bad ideas. No stress placed on the system. And now people have a focus. A major political candidate seems to feel just like they do.

Think about what Trump is. He's the antithesis of the politically correct movement. He's the personification of the ideas that nobody will honestly confront. He's the chance for legitimacy that so many people have been waiting for. He's the inevitable result of trying to suppress ideas through any means other than a good argument. He is saying all the things his supporters have been saying, but nobody can silence him.

Instead of small brush fires burning throughout the country as people rationally debate ideas, we have a massive wildfire on our hands, and it's burning out of control. There may be no stopping this one now, but we can avoid such catastrophes in the future. Talk to those who disagree with you; especially those who disagree with you. Really listen to and try and understand their argument. Don't attack them, attack their ideas. Telling someone that they are wrong is useless. Tell them why. These conversations will likely spark some hostility, but it will be small - contained - a mere brush fire, and such small fires will prevent the wildfires of the future.


  1. http://www.npr.org/2012/08/23/159373691/how-the-smokey-bear-effect-led-to-raging-wildfires
  2. Ip, Greg. Foolproof: Why Safety Can Be Dangerous and How Danger Makes Us Safe. New York: Hachette Book Group, 2015. Print. Page 17.
  3. https://en.wikipedia.org/wiki/Hygiene_hypothesis

Calculating the Value of a Book Collection with Python

Posted on February 28, 2016
Stacks of books

I have a number of used books I'm interested in selling.  While I'm happy to buy used books online for 1 cent, selling them at that price is really not worth it to me.  I needed a way to evaluate a large number of books and see what they might be worth, both individually and as a group.

I found the site bookfinder.com and saw that it provides good price data based on a book's ISBN.  However, doing this for each individual book would take too long.  I decided to script the approach.  Initially I toyed with the Amazon API for getting book information, but I was having trouble getting good data as a single ISBN was returning multiple books, with no great way for me to determine which was the one I wanted.

The code below requests pricing data from bookfinder.com, scrapes the prices (and title) and computes the minimum, maximum, mean, and median used price for each book.  I was surprised how few lines of code it took to do this.  Most of the hardest work was done through the BeautifulSoup library.  The results are printed in CSV format so I can open the data in excel and play with it.

The program is executed as such: cat isbns.txt | get_book_values.py > results.csv

As a result, I know I have 45 books to sell worth at least $282.79, or $430.45 on average.


import sys
import numpy as np
from decimal import *
from bs4 import BeautifulSoup
import urllib2

# Parses HTML to extract a list of decimal used book prices
def extract_name_and_prices(html):
    bs = BeautifulSoup(html, 'html.parser')

    # Find the title span and extract its text
    title = bs.findAll('span', { 'itemprop': 'name' })[0].text

    # Get the td area for used prices (not the one for new prices)
    used_prices_area = bs.findAll('td', {'valign': 'top', 'align': 'left'})[1]

    # Sanity check
    if not used_prices_area.h3.text.startswith('Used books'):
        raise Exception('Failed to find used prices area!')
    # Get the spans that actually hold the price data
    price_areas = used_prices_area.table.findAll('span', { 'class': 'results-price' } )
    # Convert each price to a decimal value and add to list
    prices = [Decimal(price.a.text.strip('$')) for price in price_areas]
    return title, prices

# Calculates statistical properties of a price list
def calc_price_data(price_list):
    result = dict()

    result['Min'] = np.amin(price_list)
    result['Max'] = np.amax(price_list)
    result['Mean'] = np.mean(price_list)
    result['Median'] = np.median(price_list)

    return result

# Grabs HTML from bookfinder.com for a given ISBN
def get_price_html(isbn):
    URL_BASE = 'http://www.bookfinder.com/search/?keywords=%(isbn)s&new_used=*&lang=en&st=sh&ac=qr&submit='
    url = URL_BASE % {'isbn': isbn}

    result = urllib2.urlopen(url).read()
    return result 

# Print the header row for the CSV results
def print_csv_header():

# Print a row of the CSV results
def print_csv_row(isbn, title, price_data):
    sys.stdout.write(isbn + ',')
    sys.stdout.write('"' + title +'",')
    sys.stdout.write(str(price_data['Min']) + ',')
    sys.stdout.write(str(price_data['Max']) + ',')
    sys.stdout.write(str(price_data['Mean']) + ',')

# Get title and price statistics for a list of ISBNs
def process_and_print_isbn(isbn):
        html = get_price_html(isbn)
        title, prices = extract_name_and_prices(html)
        price_data = calc_price_data(prices)
        print_csv_row(isbn, title, price_data)

for isbn in sys.stdin:

Results look like this:

9781413321180,"Nolo's Essential Guide to Buying Your First Home (Nolo's Essential Guidel to Buying Your First House)",11.76,22.74,18.8328,19.05
9780895262479,"Coolidge, An American Enigma",4.06,8.18,5.7048,5.17
9780812979275,"Buffett: The Making of an American Capitalist",6.12,9.04,7.3008,6.88
9781598808360,"Rick Steves' Mediterranean Cruise Ports",3.48,4.97,4.0176,4.00

10 Uses of a Smartphone for Emergency Wilderness Survival

Posted on January 31, 2016
A broken smartphone

Keys, wallet, and a smartphone are items commonly carried by people.  If you ever find yourself lost or injured in the wilderness, that phone may be your best chance of survival.  In this article I list ten ways of using your smartphone in an emergency wilderness survival scenario.

However, before I get to the list, I want to talk about ways to extend your phone's battery life.

Your phone's radios, including 4G, WiFi, Bluetooth, and GPS, are huge users of your phone's battery.  You'll want to disable any of these that you aren't using right away, if you find yourself in a survival situation.  Simply putting your phone in airplane mode may be the easiest way to disable them.  Be sure it turned GPS off as well.  Only turn GPS back on if you intend to use it.  Also, as detailed in the section "Locater Beacon", you'll want to enable your cell connection on occasion as well.

Another power hungry aspect of your phone is the display.  You'll want to dim it as much as possible, and only turn it on when you really need it.  A phone can last for days with the radios and display off.  One useful program I've found is called Twilight.  It will let you dim your display, but also turn it red, which will help preserve your night vision.

Lastly, find ways to use the phone as little as possible.  Instead of keeping your phone on non-stop as you use the GPS, instead use the map to find the correct direction of travel, then pick a major landmark in that direction and move towards it without using your phone.  Also, disable as many apps as possible that may be running in the background sucking up power.


Communication is likely your most valuable asset if your are lost or injured in the wilderness.  A quick call to 911 could save your life in even the most extreme environments.  Unfortunately, many of the places people tend to get lost or injured are the very places where communication via cell phone becomes difficult or impossible.  Here are a few tips to get a cell signal:

  1. Get to high ground.  A summit or ridge line is the best place to get a signal in a mountainous area.  Cell phones can work over very long ranges with direct line-of-sight (meaning you can actually see the cell tower).
  2. Change the phone's orientation.  Your phone probably gets its best signal when upright, but turn the phone in various directions and positions to see if you can get a signal.
  3. Charge the battery.  If you have a battery charger, use it.  If not, don't wait until your battery is too low to try and call for help.  Phones may get a better signal with a highly charged battery.
  4. Move to a clearing. Trees will interfere with your cell signal. Try and get to an area with less trees if you suspect they are the cause of your poor signal.

Even if you can't make a phone call, text messaging may still allow you to communicate.  Often an SMS message will get through where a voice call will fail1.  Also, many phones will repeatedly try to resend a message that failed delivery.  This means if you accidentally stumble in to cell coverage for just a moment, your message might go through.

Locater Beacon

If you can establish a connection with a cell tower for even a short period of time, that cell tower can likely determine your direction and distance, giving search and rescue crews a valuable place to start their search.  Follow the tips above for getting a good signal.

If you are turning off your phone or putting it in airplane mode to save batteries, make sure you periodically turn it on or take it out of airplane mode to attempt a connection.  If you can ping the cell tower even once, your chances of rescue will increase dramatically.


There are many good map programs available for smartphones.  Google Maps might work in a pinch, but for wilderness navigation, you are going to want topographical maps.  Not only will it show you where you are in relation to where you want to go, but the ability to read terrain features will let you plan out a better route than just trying to walk in a strait line.

Whichever map software you decide on, make sure you enable caching of the map data.  Remember, you may not have a data connection in the wilderness, so your map software will be complete useless if you haven't downloaded all the maps ahead of time.  In my experience, really good map programs (that allow caching) may require you to pay for a pro version, but this is the one area where I think it's worth paying.  You'll want practice ahead of time, both with using the program and reading the maps, if you are to get the most value from this feature.


Any good mapping software will include GPS functionality which will likely negate the need for a compass.  But sometimes all you need to know is which direction you are heading, and compass software may be an easier and less power hungry option, enabling you to disable your GPS receiver.  To use compass software, your phone will need a magnetometer built in, which most phones these days have.  Otherwise your phone can only tell direction while moving based on GPS, but if you are going to enable GPS, you might as well use your map software.


Your phone's camera flash can also be used as a flashlight.  There are hundreds of apps available to let you enable this function.  Don't pay for one, as many of the free ones do the job perfectly fine.  Just make sure the app doesn't require permissions to use anything other than your camera.  Also, get one that will allow a variety of brightnesses.

Using your flash in this way will likely eat up some battery, so use it sparingly.


If you can't get radio communication working, you may still be able to establish visual contact with rescuers using your phone.  The glass face of your smartphone is incredibly reflective, allowing you to use it as a signal mirror.  If you see a rescue plane, helicopter, or ground search team, stretch our your arm and make a U shape with your thumb and fingers, so that your hand resembles a set of goalposts with your target in the middle.  Then hold your phone near your face in such a way that the sun hits and and reflects towards your other hand.  Sweep the sun's reflection all around so that it hits both sides of your hands (go up and down too).  If you are doing it correctly, the beam will also hit your target and they may notice you.

What about at night? At night you can use your flashlight as a signal. Some flashlight apps have a blink feature which will make you much more noticeable. Some even have an SOS feature, blinking s.o.s. in Morse code, which will not only make you more noticeable, but also indicate distress.

Lastly, if visual communication is failing, your smartphone may allow ground search teams to hear you. While you normally won't be able to make your phone produce sound louder than your own voice, if you are too weak to shout and you hear a ground search team in the area, it may be worth it to set off your ring tone as loudly as possible. Wait for them to yell your name, as directly following this event will be when they are listening for your response most carefully.


While there is no substitute for wilderness survival training, having a survival manual in your phone is certainly better than nothing. These guides are generally free and cover topics like water purification, knots, land navigation, edible plants, wilderness first aid, and almost everything else you might need to know.

Again, it is best not to wait to learn this information. When you are already dehydrated is not the time to start learning how to find clean water.


A clock can be of great use in a survival situation. When paired with a sunrise/sunset calendar app, it can let you know how much daylight you have left. The timer feature can remind you to take periodic rest breaks or to turn off airplane mode to check for a cell signal. The stop watch, combined with an estimated rate of travel, can give you an estimate of how far you've gone. The alarm feature can wake you up from a short power nap.


A notebook app can help you keep track of any information you might need to record.  If you want to remember that you look a left at the last split, it's best to write it down.  You can also record any medications you take and when you took them.  Recording other medical information might be useful if you are found unconscious (be sure to unlock your phone).

In addition, journaling during your rest breaks can help you keep calm and think clearly, greatly boosting your chances of survival.

Fire Starter

It is possible to start a fire with your cell phone.  I've included this last on the list because you'd have to be truly desperate to try this, meaning you don't think you'd survive the night without a fire.  Your phone is useful for so many other things, sacrificing it to start a fire should be a last resort.

There are lots of videos on the Internet of people starting fires with their cell phones.  Some of them seem to depend on you also having steel wool...something I'm betting most of us don't carry in our pockets.  However, you can potentially get the same reaction with any thin piece of metal (which might be found by breaking your phone in to small pieces) by putting it across the positive and negative battery terminals of your cell phone's battery.  If you can't get that working, another option may be to puncture the battery, which seems to set off a reaction in some cases.  Regardless of the method, it's dangerous and destructive.  You're better off just carrying a small piece of fire steel with you at all times.


  1. https://transition.fcc.gov/pshs/emergency-information/tips.html


The Ethical and Psychological Roots of Statism

Posted on January 24, 2016
A woman tied to the tracks as a train approaches

The state has become involved in almost every aspect of daily life.  Where we work, what we eat, and how we make our medical decisions are all subject to legislation and police enforcement.  Smoking a particular kind of plant could land you in jail.  If you resist going to jail, you'll be killed if necessary, meaning the majority has decided it's worth killing another human being rather than let them smoke a plant.

What's interesting about this is, in the absence of a state, most people would not be willing to enforce these edicts themselves.  If someone found out their neighbor was smoking marijuana, they likely wouldn't drag him off to their dungeon and imprison him.  However, that same person will cast a vote on Election Day with the same effect.  How can this be?  Are most people just too cowardly to act on their convictions, or is something else going on?  The answer may be found in a 50-year-old ethical thought experiment, referred to as "The Trolley Problem".

The original trolley problem, introduced by Philippa Foot in 19671, goes like this:

"You’re standing by the side of a track when you see a runaway train hurtling toward you: clearly the brakes have failed. Ahead are five people, tied to the track. If you do nothing, the five will be run over and killed. Luckily you are next to a signal switch: turning this switch will send the out-of-control train down a side track, a spur, just ahead of you. Alas, there’s a snag: on the spur you spot one person tied to the track: changing direction will inevitably result in this person being killed."2

Consider the above scenario for a minute.  What would you do?  In effect, your choice is between doing nothing, and watching five people die, or pulling a switch, causing only one to die.  While it's not an easy problem for everyone, most people believe you should pull the switch3, though people usually can't say why that's the correct choice4.  Likely they invoke a kind of utilitarian ethic: the many outweigh the few.  It's obviously better that one dies instead of five.

The issue doesn't end there, though.  Another proposed trolley situation alters the context slightly:

"You’re on a footbridge overlooking the railway track. You see the trolley hurtling along the track and, ahead of it, five people tied to the rails. Can these five be saved? Again, the moral philosopher has cunningly arranged matters so that they can be. There’s a very fat man leaning over the railing watching the trolley. If you were to push him over the footbridge, he would tumble down and smash on to the track below. He’s so obese that his bulk would bring the trolley to a shuddering halt. Sadly, the process would kill the fat man. But it would save the other five."5

Again we have a situation where, if you fail to act, five people die, but if you do act, one dies but you save the other five.  From a utilitarian perspective, this "fat man" problem is the same as the "spur track" problem: one is killed to save five.  However, unlike with throwing the switch in the spur problem, most people are opposed to pushing the fat man.  Perhaps these two problems aren't similar enough to give a fair comparison.  Looking at one final trolley problem might be instructive:

"The runaway trolley is heading toward five people. You are standing by the side of the track. The only way to stop the trolley killing the five is to pull a lever which opens a trap door on which a fat man happens to be standing. The fat man would plummet to the ground and die, but his body would stop the trolley. Should you open the trap door?"6

The only difference here is you're farther away and throw a switch to drop the man, rather than push him yourself.  In this situation, people are still opposed to killing the fat man, but not as much as if they had to push him themselves7.

What's interesting about these problems is not the ethical questions themselves.  These kinds of thought experiments are the ethics of emergencies, not the sort of issues you struggle with day-to-day.  However, people's reactions to them can still be quite telling.  Up to 90% of people would have pulled the switch, but with the fat man, the numbers are reversed with roughly 90% electing not to push him to his death8.  How could this be?

If you want to learn in what situations one man is willing to kill another, there's no better place to look than the military, an organization that lives and dies by such decisions.  In his book On Killing, Lt. Col. Dave Grossman explores the factor of physical distance between a soldier and his target, as well as the concept of group absolution.  In addition, I think the series of events that take place between a soldier's actions and the result of a kill are important.  I will refer to this as "causal distance."  In essence, someone will be more likely to kill someone by pushing a button than by using a knife.  These three factors are key to killing: physical distance, causal distance, and group absolution.

There is a strong link between ease of killing and physical distance.  Those killing at extreme ranges, such as drone pilots or artillery teams, have an easy time killing, and suffer few negative psychological effects9.  In fact there is often a feeling of "euphoria and elation" after a kill10.  It's not until killing becomes close, where you can see your target's face and hear him scream, that there begins to be intense resistance to killing.

"At close range the euphoria stage, although brief, fleeting, and not often mentioned, still appears to be experienced in some form by most soldiers. Upon being asked, most of the combat veterans whom I have interviewed will admit to having experienced a brief feeling of elation upon succeeding in killing the enemy. Usually this euphoria stage is almost instantly overwhelmed by the guilt stage as the soldier is faced with the undeniable evidence of what he has done, and the guilt stage is often so strong as to result in physical revulsion and vomiting."11

Group absolution is also a factor in both willingness to kill and resulting negative psychological effects.  It's easier to kill when you are part of a team and responsibility is shared.  This is especially true in teams that manage heavy equipment like a bomber, artillery, or a tank.  However, the effect is still prominent even in a gun battle at mid-range, as a soldier can never be sure it was they who actually shot an enemy12.  This is the same reason why firing squads shoot simultaneously.  None of the executioners can be sure it was their bullet that made the kill.  Group absolution is still tied to physical distance though, because when distance closes, it becomes more obvious who killed who.

Soldiers also maintain a variety of causal distances from those they kill.  Killing with one's bare hands leaves no doubt as to what did the killing, but using a gun has more causal distance.  A trigger is pulled, releasing a hammer, striking a blasting cap, which causes an explosion that propels a bullet towards a target, which results in a fatality.  Launching a missile has even more causal distance.  And it's not just the one pulling the trigger or pushing the button.  It actually extends much farther outward to include the entire military support staff and beyond.  The cook who feeds the soldiers probably doesn't feel very responsible for the killing those soldiers do, but that cook certainly had a hand in it.

Just like in war, physical and causal distances are at play in the trolley problems.  People are more willing to kill in these scenarios if they can do so from far away and with an intermediary device, such as a lever or switch.  While I'm not aware of any trolley problems that would include group absolution, I think it likely that people would be more willing to push the fat man to his death if it wasn't a solitary act, but rather a group effort.

I began by asking how someone who would normally never initiate violence against their neighbor is so willing to do it through the use of the political process, and the answer is now clear: democracy provides physical distance, causal distance, and group absolution.  If someone votes for the drug war, they are declaring this war mostly against millions of people they don't know and will never meet.  There is immense physical (and therefor emotional) distance.  The causal distance is even greater.  The causal chain between pushing a button in a voting booth and a flashbang grenade being thrown in to a child's play area is almost too long and complicated to follow.  Lastly, and seemingly most important for many people, is that they have majority backing for their position.  In a democracy, in order for a law to go in effect, in theory most people have given their support.

Democracy allows for the initiation of violence without the negative emotional reactions that would normally occur.  As long as ethical choices are driven by emotion instead of reason, our society will remain a war of all against all.


  1. Edmonds, David. Would You Kill the Fat Man?: The Trolley Problem and What Your Answer Tells Us about Right and Wrong. Princeton: Princeton University Press, 2014. pg. 9-10. Print.
  2. Ibid., pg. 183
  3. Ibid., pg. 9
  4. Ibid., pg. 33
  5. Ibid., pg. 184
  6. Ibid., pg. 192
  7. Ibid., pg. 140
  8. http://www.nytimes.com/2013/11/24/books/review/would-you-kill-the-fat-man-and-the-trolley-problem.html
  9. Grossman, Dave. On Killing: The Psychological Cost of Learning to Kill in War and Society. New York: Little, Brown, 2009. pg. 97-98. Print.
  10. Ibid., pg. 112
  11. Ibid., pg. 115
  12. Ibid., pg. 111