Author Archives: Jeff

Poor Virtual Reality Experiences Recalibrate Vestibular System

An interesting conversation in the comments of Hacker News today.

  • Oculus Rift is the name of a really good virtual reality system; truly the first system to come along that avoids giving the user motion sickness
  • Google Cardboard is a recently released project by Google that lets you use your smartphone as virtual reality–however, the processors on a smartphone are not powerful enough to provide a good virtual reality experience; so motion sickness is induced pretty easily


toomuchtodo 7 hours ago | link

> In fact, many people have reported that spending time in VR, and taking a break whenever motion sickness creeps up, actually reduces motion sickness outside of VR. As in, people are saying “After playing in my Rift for a few weeks, I can suddenly read in the car for the first time!”Is this because the VR experience is causing your brain to recalibrate your vestibular system [1]?



electromagnetic 4 hours ago | link

More than likely. Our brains are very adaptable, it would appear this is more similar to how people have been “recalibrated” to chronic pain and extreme phobias.The chronic pain example is that a prolonged duration (about 2 weeks) of being free of pain medications can cause the body to adapt and recognize it’s over-interpreting pain.

The extreme phobia was if you had someone with a severe phobia of snakes, you would put them into a room with a few dozen snakes in cages and lock them in until they recalibrate as their body can only stay in panic for so long. However… it isn’t the most ethical way as it actually is possible to suffer heart failure from fear.

The Quoracast

I started a podcast. It’s called “The Quoracast” and is an unofficial podcast dedicated to profiling members of the community. Episodes can be found on the iTunes store or on

Stock Similarities

Stock Similarities is a tool I wrote for comparing equities using cosine similarity.   The source code can be found on github.


Upon starting the program, the user is presented with the following:

restrict : limits the parsed metrics to a stricter set than default
ld <ticker> : loads all information about a stock into memory
ld <sector> : load tech, pharm, food, or finance
ld all : loads several NASDAQ stocks from various sectors
list : list all loaded companies
print_vect <ticker> : print the formatted stock vector for a ticker which has been loaded into memory
print_atts <ticker> : print all raw attributes of a stock which is in memory
sim <ticker> <ticker> : print the cosine similarity of two vectors
vis : enter visualization mode
sr : perform SageRank
q : quit the system

A standard series of commands can be found here.  It was generated from an older version of the code.  Several key lines are:

measure_similarity MSFT AAPL
measure_similarity AAPL AMZN
measure_similarity MSFT AMZN

The output is code that can be copied into a Processing file to get the following visualization:

visualizationThe lines of output suggest that, of the three companies, AAPL and AMZN are the most disparate.  As a result, AAPL and AMZN are connected by the hypotenuse (the longest line).  The other meaningful component of the visualization is the radius of the circle, which is dictated by price/earnings ratio.


Stock data is pulled from Yahoo finance, formatted, parsed, and mapped to vectors.  After this process, a stock can be summarized by a vector such as AAPL -> {contracts traded yesterday = 1000000000, last traded price = 520, short ratio = .5 …}.  Vectors are compared using cosine similarity.

	public static double cosineSimilarity(AttributeVector v1, AttributeVector v2) 
		return dotProduct(v1, v2) / (v1.magnitude() * v2.magnitude());

This creates a 1-to-1 similarity ratio for each pair of stocks.  GraphFactory turns these relationships into edge lengths, so that the stocks form a fully connected graph.

The nodes can each be printed in order of ranked importance.  A node’s importance is the sum of the incoming edges in that node.

Soylent Journal: Hiatus

I received my box of supplies from Amazon.  Whey protein, calcium, sulfur, magnesium, maltodextrin, iron, fiber gummies, multivitamins; it was like eight days of Hanukkah all at once.  I looked up the recipe and got to work mixing up a batch.

I didn’t realize that the author had made errata since his first post on the forums.  For example, his recommended dosage of fiber gummies was 8 per day.  That’s 4x the daily dosage listed on the back of the container.  I overdosed on fiber because I followed the misinformation of someone on the internet.

To protect me from my own lack of common sense, I’m quitting Soylent until the Kickstarter launches and FDA-acceptable batches are being shipped.  I simply don’t do the necessary homework to make my own.  I will still drink protein shakes from the whey and maltodextrin, because those are of fairly uncontested nutritional value.  But I’m done measuring teaspoons of pure calcium and sulfur and hoping I don’t screw up.

Guess it’s back to cooking swamp stew.

swamp stew

Soylent Journal: Two Days In

Yesterday I started drinking soylent.

The recipe hasn’t been completely aligned with what Rob Rhinehart wrote about.  I’m using the crude measurements my younger brother wrote on a sheet of paper inside his box of ingredients.  He has been drinking Soylent for several months.

Today’s breakfast was a cup of Soylent, some coffee, and a lot of water.  Then I went to the gym with a bottle containing some powdered Soylent and consumed it throughout the workout.  It was a similar experience to working out with a bottle of just protein powder, but the taste is unique and makes me look forward to taking a swig more than the typical temptation of “Vanilla Ice Cream” flavored whey.

I’m treating Soylent as a supplement to several light meals.  I drink the daily dosage at a dilute concentration so I feel full and hydrated throughout the day. I can’t eat 21 good meals a week, but I can probably manage 10-15.  Eating half of my meals conventionally hedges against making a mistake in the recipe.  Accurate preparation takes practice, and if I make and consume a full day’s worth of erroneously measured Soylent, I could overdose.

By the time my shipment arrives in the mail, I should be ready to switch to 100% Soylent.

Organic Food

The standards with which I evaluate grocery purchases have changed over the past several years.  Rather than judging purchases primarily on taste, I judge them by what I know about them and how they make me feel in the hours shortly after consumption.  This is partly a natural change in preference that comes with age, but also due to widespread increases in consumer awareness, exemplified by the following:

  • the willingness of consumers to pay considerable mark-up for “organic” products
  • news reports of McDonald’s pink slime, IKEA’s horse meatballs, and other incidences of supply chain efficiency at the expense of honesty and consumer health
  • the popularity of food documentaries on Netflix
  • the increase in share price of both Chipotle and Whole Foods by ~1000% from 2009

Unfortunately, there probably won’t be a widespread increase in quality and transparency for awhile.  Whole Foods (and to a lesser extent Trader Joe’s) will continue to rake in absurd profit margins, supply chains will remain opaque, and the scarcity of organic corporate restaurants will leave potential profits on the table on the days when people aren’t in the mood for a Chipotle burrito.