The Case of the Missing Ancestor – The Denisovans

National Geographic has a great article on the discovery and further research related to our cousins the Denisovans. Everyone knows about the Neandarthals, and at this point I think most people know that large portions humans living today have some percentage of Neanderthal DNA. I was completely in the dark about the prospect of another subspecies of Homo sapiens which moved out of Africa and is carried in the DNA of some modern humans – The Denisovans:

A third kind of human, called Denisovans, seems to have coexisted in Asia with Neanderthals and early modern humans… Although the Denisovans’ genome showed that they were more closely related to the Neanderthals, they too had left their mark on us. But the geographic pattern of that legacy was odd. When the researchers compared the Denisovan genome with those of various modern human populations, they found no trace of it in Russia or nearby China, or anywhere else, for that matter—except in the genomes of New Guineans, other people from islands in Melanesia, and Australian Aborigines. On average their genomes are about 5 percent Denisovan. Negritos in the Philippines have as much as 2.5 percent.

What is amazing about this discovery is that it was all discovered from two teeth and part of a finger bone. Three separate individuals who died in a remote cave in the Altai Mountains in Siberia, a cave which has also been inhabited by Neanderthals and modern humans. Thus far the Denisovians have been found no where else, however, as the article points out the southern climates mean DNA is unlikely to survive. In fact the cool temperature in a Siberian cave is likely the only reason they were able to pull significant DNA out of the finger bone. Genetics and the ability to pull DNA from very old remains is such an incredible change to the way our history is studied – we no longer have to guess at what fragments mean, we can read the history directly from their essence.

Unrest in Turkey

It has been interesting to watch the ongoing strife and turmoil that has been shaking Turkey. We were there for two weeks in March & April and had a chance to speak with a number of people in different locations. To a certain extent it has been hard to reconcile the strength of reaction given our conversations and the views shared, though some of the seeds of the reaction were easily visible.  Our time in Turkey was marked by three main themes when we spoke with people:

Ongoing tensions between secular & traditional Turks – Due to reforms driven by Mustafa Kemal Atatürk, Turkey has a modern history of being open to different forms of religious worship, or no worship at all compared to the rest of the region.  The majority of the people we spoke with (bias of English speakers) identified as Muslim, but not devout and in many cases, non-practicing.  They had plenty of scorn for the clerics and traditionalists and dismissed their political power as buy-outs & giveaways to segments of the population. They felt that their options & lifestyles were under threat to a certain extent.

The Turkish economy is (or was) great – We saw a lot of new development and construction as we navigated the country.  In general all of the folks that we spoke with said things were good and life was getting better for everyone.  Despite Turkey’s run of growth there is increasing worry that the economic growth and stability in Turkey has been fueled unsustainable by outside lending. Sound familiar?

Turks are happy to be separate from the Euro – Without prompting people would mention how proud they were that they were doing better than the Euro zone, and that they were very happy to have not joined the Euro.  The financial crisis appears to have given confidence to going it alone.  Perhaps the growth experienced in the last five years was amplified by the troubles in Europe and investors looking for (and paying more for) opportunities in Turkey.

Time will tell how far the current unrest will last, both sides don’t appear to be backing down and are further instigating the other.  I wouldn’t give up hope soon – Even now it is very common to see Atatürk bumper stickers and tributes.  Turks are proud of their country and consider it unique and a model for other countries to follow.

Backing up data on AWS EC2 Micro instances using the CrashPlan headless Linux client

I’ve been using a combination of scripts to do local backups on my Amazon EC2 micro instance I use to serve this website – AutoMySQL Backup and some cron jobs which ran rsync for various paths on a rotation. For example:

#!/bin/sh
rsync -a /var/www/html /mnt/backup/filebackup/weekly
rsync -a /var/lib/g2data /mnt/backup/filebackup/weekly

This is frankly a pretty lazy way to do it. I’m not protected at all if something wipes out the backup destinations or the EBS drive goes bad, and this method uses up a lot of EBS space because there are multiple sets of the files. I could use the AWS EC2 framework to script out EBS snapshots, but that’s just going to further increase my monthly Amazon bill without any ability to be very specific about point in time restores for files. Instead, I thought I should make use of something that I’m already paying for: CrashPlan.

As noted in a previous post, I’m using CrashPlan to backup our desktop & laptop computers, as well as my file server (Synology NAS). I have a CrashPlan+ Family Unlimited plan which means I can add up to 10 computers and store unlimited backups from them to the CrashPlan cloud included in the plan (local backups, or peer to peer Crashplan backups are always free and don’t require a plan).

Install CrashPlan to a Amazon Linux AMI

CrashPlan offers a number different clients, including a headless java client for Linux. This is perfectly suited to the micro instance I’m using in EC2 – the Amazon Linux AMI which is based on RedHat/Centos. I installed the headless client using the following options – note that I’m using the latest version at the time of this post (3.5.3) in my commands below, but you can see the latest download link on their page. I’m also using sudo in my commands, you can remove pr ignore that if it is isn’t needed in your Linux configuration.

sudo yum install grep sed cpio gzip coreutils
wget http://download.crashplan.com/installs/linux/install/CrashPlan/CrashPlan_3.5.3_Linux.tgz
sudo tar -xzf CrashPlan_3.5.3_Linux.tgz
cd CrashPlan-install/
sudo install.sh

At this point the installer launches and will ask questions about where the files should go. Their suggestions are reasonable for my configuration and I was able to simply follow the defaults, hitting enter the whole way through the install. Once the install finishes, it will start the CrashPlan service automatically.

 

Connect to the headless CrashPlan Linux server with a remote client

Now that the service has been started, a remote client needs to connect to the server in order to further configure backup options. The easiest and most secure way to do that is by making use of SSH’s ability to tunnel to the server. The following instructions are for Windows, but similar steps can be performed on other operating systems. First, install the CrashPlan client if it is not already installed on your computer, but don’t start the program. Next, locate and edit the ui.properties file using a text editor. This file is typically located here: C:\Program Files\CrashPlan\conf\ui.properties for Windows systems. As shown below, remove the # to uncomment the line, and change the port to 4200. When done, save the file and exit.

Edit servicePort for ui.properties

Next the SSH tunnel needs to be enabled for the client to connect to the server via SSH. Open PuTTY and create a new connection to your Linux server. Under the configuration menu, navigate to Connection, SSH, then click the Tunnels option in the menu. On that page, enter “4200” as Source port, enter “localhost:4243” as the Destination, and click the Add button. Once completed, connect to the server as normal via the configured SSH session and leave the terminal window open.

putty tunnel add

putty tunnel added

At this point the CrashPlan client can be started. It will first ask for CrashPlan credentials, then display the usual interface. Note that the compression and dedupe options can be resource heavy – which means during the first backups for the server it will likely consume a lot of CPU, particularly for EC2 micro instances which have low CPU throughput (bursting) to start with. This CPU usage should reduce over time as the backup deltas get smaller.

crashplan ui linux remote

Configure CrashPlan Linux to backup /var or other hidden directories (if needed)

Note that by default, several directories and file structures are hidden in the CrashPlan client for Linux. In my case I want to backup files under /var, as that is where my gallery2 files reside, as well as my web content. In order to expose that folder structure for CrashPlan the my.service.xml configuration file should be edited, and the “pattern regex=”/var/” line under the Linux area should be removed. First stop the CrashPlan service and edit the config file (assuming you installed using default file paths):

sudo service crashplan stop
sudo vi /usr/local/crashplan/conf/my.service.xml

Next, look for a line like this under the Linux area and remove the following data from the file (e.g. dd in vi):

<pattern regex="/var/"></pattern>

Save the file (Esc, :wq + enter in vi) and then start the service back up. After connecting again using the client, the /var folder should now be visible.

sudo service crashplan start

crashplan ui linux remote file selection

Facebook’s suggested gifts algorithm needs some work

Some good friends of ours recently had their first child and posted photos on Facebook. When viewing that post on the desktop version of Facebook it had a little ad which suggested giving a gift to them:

facebook gifts

I don’t think their suggested gifts algorithm is doing a good job of suggesting Fast & Furious 6 for a newborn, but perhaps I’m just a traditionalist and out of touch.