Category Archives: Rants


The four stages of life

couple is walking in the rain under an umbrella, abstract colorful oil painting

Mimicry, Self Discovery, Commitment, and Legacy
There’s a million and one ways to talk about our lives, but this one seemed to strike a chord with me.
By Mark Manson

Art Politics Rants Science

The Empathic Civilisation

Mirror neurons are just the beginning of a whole range of research going on in neuropsychology and brain research and in child development that suggests that we are actually soft-wired not for aggression and violence and self interest and utilitarianism that we are actually soft-wired for sociability ‘attachment’ as John Bowlby might have said affection, companionship, and that the first drive is the drive to actually ‘belong’. It’s an empathic drive.

Empathy is the invisible hand. Empathy is what allows us to stretch our sensibility with another so that we can cohere in larger social units. To empathize is to civilize, to civilize is to empathize.

Jeremy Rifkin

Politics Rants Science

Perspective is Everything

One of the great mistakes, I think, of economics is it fails to understand that what something is, whether it’s retirement, unemployment, cost, is a function, not only of its amount, but also its meaning.

So where economists make the fundamental mistake is they think that money is money. Actually my pain experienced in paying five pounds is not just proportionate to the amount, but where I think that money is going. And I think understanding that could revolutionize tax policy. It could revolutionize the public services. It could really change things quite significantly.

Rory Sutherland, via TED

Art Random Rants Science Technology

Sierpinski Triangle

If you are going to read one essay about the Sierpinski Triangle, it really ought to be this one.

From what I can tell, one of the settings used to deal with division by 0 is the so-called Riemann sphere, which is where we take a space shuttle and use it to fly over and drop a cow on top of a biodome, and then have the cow indiscriminately fire laser beams at the grass inside and around the biodome. That’s my intuitive understanding of it anyway.

Yeah, you know you wanna get all up in this gasket.

Via:Hacker News

Random Rants

The Measure Of Man

A change in perspective is worth 80 IQ points
Alan Kay

Now, I’m not the biggest fan of the idea of an intelligence quotient, but I think Alan is really on to something here.

Humans are relativity machines: we experience and interpret our world through the lens of our previous experience. As an idea, in and of itself, this is unsurprising, for how else could we feel and see and know but through what we have already experienced? But bear with me for a second, and think about the experience of stepping onto a farm. The distinct, deep and abiding smell of hay, manure, fields and mud. It is powerful and unmistakable, until you’ve been on the farm for an hour. Then the smell starts to fade into the background when finally, you don’t notice it at all.

There are these two young fish swimming along and they happen to meet an older fish swimming the other way, who nods at them and says “Morning, boys. How’s the water?” And the two young fish swim on for a bit, and then eventually one of them looks over at the other and goes “What the hell is water?”
David Foster Wallace


This phenomenon of normalization, the process of consistent stimulus becoming less and less is noticeable each time it is presented is called “Habituation“. We become habituated to our everyday experience, much like we become habituated to the smell of a farm: the rich details and experiences of our everyday lives can become invisible to us, lost in the quotidian.

Cultures around the world, I think, have recognized this to various degrees, in the tradition of the rest day of the week, holidays both sacred and profane. That said, the weekend rhythm soon becomes part of our habituated existence. We adapt and normalize so that those two days a week no longer provide enough perspective. We literally can’t get far enough away, and in turn, the cognitive tools we have to bring to bear on the world and the scope of sensation we have to process at best stagnates and at worst diminish.


Getting the hell out of dodge, going someplace fundamentally other, literally lets us become explorers of our own lives, see with new eyes just what, exactly, normal is.


You develop an instant global consciousness, a people orientation, an intense dissatisfaction with the state of the world, and a compulsion to do something about it. From out there on the moon, international politics look so petty. You want to grab a politician by the scruff of the neck and drag him a quarter of a million miles out and say, ‘Look at that, you son of a bitch.’
-Astronaut Edgar Mitchell on the Overview Effect.


The thing that I find most compelling about this quote is that the physicality of actually orbiting the earth fundamentally alters the window of possible thoughts. Mitchell certainly wasn’t surprised by what he saw, the astronomy, physics etc. were bread and butter to him, a PHD in astronautics from MIT. Still, the physical experience profoundly changed him, far beyond what he had expected.
I would give my right arm to go to the moon, but I just don’t think it’s in the cards, and while I have been very lucky and able to travel, I think it’s not just going places that does the trick: it’s the delta, the difference in experience that counts. While the moon is about the biggest change in perspective possible, I think in our everyday life the opportunity to try something new, to change your perspective, to see the world differently presents itself. The tough part is choosing. And it’s tough for a reason! The more common a stimulus is, the easier it is to process it (the mere exposure effect). Our brains literally recoil from novelty because it literally hurts. So we have to push ourselves to become neophiles instead of neophobes because otherwise we can literally loose sight of the lives we live in the haze of the “normal”.

Art Random Rants

Werner Herzog Reads Where’s Waldo

There seems to be a theme today…

Random Rants

You are a Ghost


History Rants

DFW: This Is Water


Learning how to think means learning how to have some control over how and what you think. It means being conscious and aware enought to choose what you pay attention to and to choose how you construct meaning from experience. If you cannot do this as an adult, you will be totally hosed.

And the so-called real world will not discourage you from operating on your default settings, because the so-called real world of men and money and power hums merrily along in a pool of fear and anger and frustration and craving and worship of self. Our own present culture has harnessed these forces in ways that have yielded extraordinary wealth and comfort and personal freedom. The freedom all to be lords of our tiny skull-sized kingdoms, alone at the centre of all creation. This kind of freedom has much to recommend it. But of course there are all different kinds of freedom, and the kind that is most precious you will not hear much talk about much in the great outside world of wanting and achieving…. The really important kind of freedom involves attention and awareness and discipline, and being able truly to care about other people and to sacrifice for them over and over in myriad petty, unsexy ways every day.
That is real freedom. That is being educated, and understanding how to think. The alternative is unconsciousness, the default setting, the rat race, the constant gnawing sense of having had, and lost, some infinite thing.

David Foster Wallace, Kenyan College Commencement Speech, 2005.


UPDATE: The DFW trust has taken down the excellent video from The Glossary, so I’ve updated it with just a straight recording of the speech from youtube. Thanks Trustees!

History Politics Rants

Bike Lanes Boost Local Business

NYC study finds that bikes lanes boost local retail sales by almost 50%, at a time when average retail sales increased by 8%. Additionally, dedicated bike lanes reduced all injuries for all street users by over 30%.


Download the pdf here.

Also relevant:

Random Rants

DFW: On Perfectionism

Perfectionism is very dangerous, because, of course, if your fidelity to perfectionism is too high, you never do anything, because doing anything results in … it’s actually kind of tragic, because it means you sacrifice how gorgeous and perfect it is in your head for what it really is.

–David Foster Wallace
via PBS Blank on Blank

Rants Technology

A Startup Development Plan

  1. Continuous Integration, use it.
  2. All code must have tests. Lower coverage == CI fail
  3. Tests must run fast. Slower average test speed == CI fail
  4. Code quality regression == CI fail.
  5. Vagrant and Chef for your development environment. A new dev machine is a “git clone” and “vagrant up” away. (this means good seed data!)
  6. Any and All strings that a user could ever see must be internationalized, resource file in {native language} first, of course.
  7. Github is the hub: pull requests for code review. One other person signs off on code before it goes to staging
  8. Deployment, Rollback, and Scaling are all one command away.
  9. Build for horizontal scaling.  Start with multiple instances of every server/database/application/service type. Plan on your servers/apps/services being fungible, unreliable, and innumerable. Discovery over configuration. (etcd, zookeeper, ironfandoozerd)
  10. Faster response to the user is always better. Anything that doesn’t need an immediate response, queue it up and do it  in the background. Cache and pre-compute as much as possible.
  11. If someone else has made a library that does most of what you want, use it. (Submit patches so it does all of what you want)
  12. If you can abstract the solution out of the app into a standalone library, do so and make it open source. Open source is the great code review in the sky. More eyes means better code.
  13. A service is better than a solution. A solution is better than a hack. A hack is better than nothing at all.
  14. Done is the engine of more.
  15. Perfect is the enemy of the good.
Awesome Rants

Desiderata Of Happiness

Go placidly amidst the noise and haste, and remember what peace there may be in silence. As far as possible without surrender be on good terms with all persons. Speak your truth quietly and clearly; and listen to others, even the dull and the ignorant; they too have their story.

Avoid loud and aggressive persons, they are vexatious to the spirit. If you compare yourself with others, you may become vain and bitter; for always there will be greater and lesser persons than yourself.

Enjoy your achievements as well as your plans. Keep interested in your own career, however humble; it is a real possession in the changing fortunes of time.

Exercise caution in your business affairs; for the world is full of trickery. But let this not blind you to what virtue there is; many persons strive for high ideals; and everywhere life is full of heroism.

Be yourself. Especially, do not feign affection. Neither be cynical about love; for in the face of all aridity and disenchantment it is as perennial as the grass.

Take kindly the counsel of the years, gracefully surrendering the things of youth. Nurture strength of spirit to shield you in sudden misfortune. But do not distress yourself with dark imaginings. Many fears are born of fatigue and loneliness.

Beyond a wholesome discipline, be gentle with yourself. You are a child of the universe, no less than the trees and the stars; you have a right to be here.

And whether or not it is clear to you, no doubt the universe is unfolding as it should. Therefore be at peace with God, whatever you conceive Him to be, and whatever your labors and aspirations, in the noisy confusion of life keep peace with your soul. With all its shams, drudgery, and broken dreams, it is still a beautiful world. Be cheerful.

Strive to be happy.

The Desiderata of Happiness, by Max Ehrmann

Rants Stuff Technology

Urban R&D: the perfect keychain

After many years of research and testing, I think I have finally hit upon the ideal keychain. Before I get into specifics, though, lets talk about what, exactly, makes a keychain “Ideal”.

  • First and foremost, silence: I don’t want to hear my keys every step I take.
  • Additionally, the ideal keychain must be lightweight, as light as possible.
  • Small, so as to not interfere with my day to day movements and add the least wear and tear to my pants as possible.
  • Indestructible: I’m carrying this thing everywhere, and well, probably going to be sitting on it.
  • Utilitarian: Why else would I carry it with me? For me, utilitarian means being able to store some data, open a beer, easily open packages, and turn a screw here and there.
  • Easy to add and remove elements: oddly enough, this is the toughest bit to combine with the rest. The traditional split ring keychain makes adding or removing anything a fight at best.
  • Finally, that it can be attached to my beltloop and fit in the backpocket of my pants, without clumping up at the bottom of the pocket, so that I don’t have to sit on my keys, and instead they stay to the upper corner of the pocket.

So, what collection of objects has all of these wonderful properties?

The carabiner key

The Lucky Line Keyring: easy to add and remove keys, but never comes undone accidentally.

The Lacie Iamakey, slow but small and indestructible.

The NiteIze S-Biner size #4: It is the perfect size to hang off a beltloop and into your pocket.

The Gerber shard, sharp enough to cut plastic clamshell packaging, opens a beer, turns a screw, and the TSA lets it through. Super cheap to boot.


And that, my friends, is the perfect keychain.

Rants Technology

So you’d like to start a Web Company, eh?

“Men wanted for hazardous journey. Small wages. Bitter Cold. Long months of complete darkness. Constant danger. Safe return doubtful. Honour and recognition in case of success.”

Ernest Shackleton.

This is the perhaps most accurate description of a job at an actual startup. If this sounds like something you’d be interested in, read on.

Remember, Most startups fail. Failing, however, is a crucial step towards not failing.

General advice: read as many of Paul Graham‘s essays as you possibly can. from the top down. Paul Graham has literally helped several hundred startups get off the ground. Some essays will not really be useful right now, but the ideas in there are generally very very good. Check out on a fairly regular basis. Read the comments, lookup every word and acronym you don’t know. Watch these videos

Try to answer these questions as quickly and cheaply as possible:

  1. what is the addressable market size? meaning, in the world, right now, how many people would pay for this? How many people would be interested to the point of being regular visitors?
    this is intended to give some sort of idea about how big the opportunity is.Use tools like to help evaluate how big the audience is that your product might reach. Imagine if you are making a management tool for independant contractors: How many people visit on a monthly basis? that’s about your addressable market.
  2. figure out the minimum viable product. Try to get your product down to one sentence. Perhaps even one or two pages. (not counting boilerplate, like “about us”, “FAQ” etc.)Don’t get caught up in vision of the final product. No plan ever survives first contact with the customer. Try to get to the very essence of what it is that your idea does. It should literally be one sentence, or possibly less than a sentence. The minimum viable product for google was literally a place to type in text, hit enter, and get search results from a database of websites.When people think of ideas, they go from version 0 to version infinity almost immediately. You should never stop thinking about version infinity, the absolute pinacle of what it is that your idea could be, but, you should laser focus on version 0.1, the absolute minimum of what it is that your idea does. Literally, the one thing, that without it, your idea doesn’t exist, it’s still an idea. It really should be one thing. sometimes you can get away with two. sometimes.Then, you make the one thing and you show it to as many people as possible. Maybe you don’t even make it, you tell people online that you are going to make it, you setup a website where people can give you their emails so that you can tell them when you make it, and then, when you have their emails, you ask them about it, you get them involved, you show them mockups, get them to beta test, ask them to pay you for it upfront. the works. Your customers are your partners.
  3. Fail often, fail fast, and fail cheaply.
    failure is the process of stumbling towards success. This means relentlessly testing assumptions that you have as quickly as possible, with as little downside as possible. the difficulty is figuring out how to test accurately yet also as cheaply as possible. thus, use what is already there to try to invalidate your assumptions. Think of it like science: you’ve got strong hunches that you want to prove correct, but you can’t be sure of them, and aren’t going to bet the farm until you’ve got a sure thing. The only way to be sure is to test it and be honest with yourself about the results.

How are you going to fail as fast as possible? Remove as many people, steps, and processes as possible from getting your idea in front of someone who doesn’t care about you. (Your family and friends are useless in this regard, insofar as they will not tell you that your idea is a stinker)

Crucially, if your idea happens to be related to computer and software in any way shape or form, learn how to program your computer. There are a ton of awesome resources out there to learn how to write software and for starting a business, but it can be daunting to try to separate the wheat from the chaff.

The two best languages at the moment are, in my humble opinion: ruby and javascript. Ruby because it is easy and understandable, yet also powerful, javascript because it is ubiquitous, interesting, and easy to play with: if you’ve got a browser, you can mess around with javascript. I’d look through each one below and see what seems like it’s your thing. Also, remember: it’s not that hard and more importantly there is no speed limit.

Free ruby stuff:

Free javascript

At this point, you should be ready to start failing. Go forth, claim your destiny.

Stay tuned for the next installment of this multi-part series.

Rants Technology

The Semantics of Emptyness

Empty space, often realized as indentation, is a common method to signifying meaning in programming languages. Python is famous for this, Haml uses indentation to represent the structure of HTML. I, for one, am not a fan.

In human language, information and meaning, codified, take the shape of syntax and semantics. Syntax being the framework within which the semantics can be parsed. I like to think of syntax as a protocol, the agreement we make to enable the exchange of meaning. English syntax enforces word order, whereas Latin requires declension and conjugation to provide a framework within which we can communicate. Syntax itself informs and modifies Semantics, subtle shifts in word order and conjugation change the meaning of a sentence. A set of words that violate the syntax of english are in essence almost meaningless aside from them self. If I were to take all the words in this paragraph, sort them  randomly, remove the spaces and all punctuation, the result would be gibberish. Additionally, syntactic elements, separated from the words they encompass are without meaning as well.  All of the spaces, punctuation and the order of the parts of speech of the words in the paragraph would also contain very little information at all.

With programming languages, so much of the same holds true: the syntax provides the framework through which the meaning of a program can be understood. My problem with considering whitespace as meaningful with regards to syntax and semantics is that for almost every language, including human language, whitespace has one purpose: token separation. It is only important because of what it is not. Let me try to provide a concrete example.

Above this line there are four spaces. This sentence on the other hand, has eight spaces. The spaces above are meaningless, because empty space itself is almost a purely syntactic element. It has absolutely no semantic value. Beyond that, it’s almost impossible for you to visual discern exactly how many spaces there are because typically the syntactic element we use to separate tokens is the very token you are trying to count.

Haml has many graces: it makes it very easy to whip up totally valid html in a flash and templating is a joy, however, it’s use of whitespace indentation to indicate html element nesting levels is maddening, precisely because it has radically overloaded the concept of emptiness and indentation. To give you an example of this degree of exactly how maddening it is, in one of the sentences above, between two words, there is a double space. Where is it? Can you see it by quickly scanning the document?

I’ve never been able to tinker in python, at least not in the same way that ruby lets me throw together things that just work anywhere I’ve got a text editor (that I can clean up later, naturally). I literally find myself cursing the emptiness. If programming is about expressiveness and power, I for one would not like to wield that ability with a void.