Happiness and Improvement

As humans, we have a constant desire to improve our lots in life (well most of us do anyways). Improvement makes us happy, or perhaps it’s lack of improvement that makes us unhappy. Either way, it’s a good survival adaptation. It stands to reason that the humans with a stronger instinct to improve themselves and their surroundings would become those with better housing during a blizzard or more food during a period of drought. I think it likely that this sense has been bred into us by natural selection.

It manifests itself in strange places though. Now that many of us in the first world no longer have to worry about food or shelter, our focus turns to things like houses, cars, and gadgets. Yet do these things really make our lives better? Arguably they do on the surface. Acquiring them seems to make us happy. When I bought a nice LCD tv a few years ago, I was very excited to have it arrive. But looking at it now, is 37″ really any better than 30″? Is 1080p really better than standard definition in regards to my happiness? I don’t know. When I’m using the tv, I’m not thinking about the pixels, I’m engrossed in the story or action of what’s being shown to me on the tv. Could just be me, but it seems to me that we’re perhaps fooling ourselves, and missing out on a more lasting happiness by succumbing to an over-simplified model of how material goods provide us with happiness.

One model of human desire which I particularly like is that of French literary critic and philosopher, Rene Girard. Girard introduced the concept of what he called mimetic desire in his book: Deceit, Desire, and the Novel. In his model, there is a third element which exists between a person and their desire for an object. This third element is another human, and Girard claims that our desires stem from our desire to possess what the other person has or wants. Admittedly, there are certain animalistic desires such as that of hunger, sexual drive, or sleep which are not necessarily affected by this third actor, but even these are often influenced. This triangular desire plays itself out in much of our day-to-day lives, look at modern advertising trying to convince us that we’d be happier if we behaved like these other people or had what they had. Clearly it’s an effective technique for convincing us that we should go out and buy stuff.

If this all comes back to instinct and we’re powerless to control it, what could we possibly do with this knowledge to make ourselves happier? I hope that merely being cognizant of how our mental functions react helps to make better decisions. Maybe next time you’re going to buy something, ask yourself why you’re buying it. Have you seen someone else with it, do you think it will help you achieve some sort of goal, will it provide some sort of unmeasurable happiness in your day-to-day life? It doesn’t really matter what the reason is, just by taking a moment to be present and aware of why you think it’s going to benefit you to acquire the object may provide you with some insight into what’s really making you happy about it. If you can understand it, maybe you can use it to your benefit.

(Now to destroy all that build-up with a final paragraph of things that just occurred to me as I’m writing this. Also, I’d like to mention that I’m not against being materialistic, just a bit skeptical about the degree of importance with which most of us provide our possessions.)

Of course, maybe sometimes you just need to blow some money of frivolous shit because you want to.  It turns out that research shows that typically the more we think about a purchase the less happy we are with it. Maybe it’s all for naught and we’re damned if we do and if we don’t. Maybe I’ll just stick with food, sex, and sleeping. Those are a lot simpler to understand (well two of them anyways).

Rebooting and the 100 Push-up Program

The last few months have been frustrating physically for me. I injured my back a long time ago (December 2009). After doing physical therapy at 3 different places, getting an epidural shot, and working with a few different trainers, I’m still pretty clueless as to what to do. I have an aggravated nerve in my lower back that flares up during a number of activities, most notably while sitting and after working out. Well, I sit all day at work (although I recently acquired a standing desk, which helps). Because of all this sitting, my back stays in pain for several days after I work out most typically. Anyways, I don’t want to go on about that too much other than to say that I’ve been frustrated with it. I haven’t been able to work out and as such, I’ve been losing muscle mass and weight. I don’t like losing.

I recently started tracking in a spreadsheet all of the activities that I do in a day and pairing those with a 1-10 scale of pain for the day. I’m hoping I can determine the most damaging activities and avoid those, while still remaining as active as possible. This finally brings me to the point of this post: I need something to work towards physically, and I need that activity to not aggravate my back too much. Near as I can figure, push-ups don’t hurt too much.

I’m hereby embarking on an attempt at the 100 push-up program. It’s a program designed to get one to 100 pushups in 7 weeks. I’m not sure that I believe the hype of the program, but it looks like a good starting point to get myself to 100 pushups in a row. I did my test to start off and I got 41 in a row to start, so I’m starting off on week 3 of the program. I’ll be modifying as needed to include more rest and some cycling, but consider this game on.

Who’s with me? If you want in, do the initial test and post your score in the comment and what week you’re starting on.

What’s an API? An explanation for the layman

So working as a web developer, I work with a lot of APIs. I’m also frequently asked things by non-coders about our API and the APIs of other sites. The concept of API seems to be that of some magical coding device that solves problems. However, while this is an amusing concept, it’s not entirely correct. In trying to explain the details of this to a coworker the other day, it occurred to me that I needed a good parable. So here you go:

Imagine if you would, a grouping of small islands in the middle of an ocean. Many islands are rich in coconut trees, but one is favored by schools of fish for it’s shady rock outcroppings near shore . Between these islands are a number of conveyor belts, capable of holding a small amount of weight. Each island is inhabited by a single individual. The islands are too far apart for speech, and they have long since run out of anything to write on, so the individuals are left to communicate by a pre-agreed upon system. They send across pebbles on the conveyor system, with different numbers corresponding to different messages. An example exchange:

1 Red rock + 2 Blue rocks = What kind of fish do you have today?

1 Red + 1 Green = 1 Cod + 1 Tuna

2 Red + 2 Green = **Bad data — not translatable** — (Should a non-agreed upon message be passed, it will not be understood)

4 Green = Message not understood. Please resend

1 Red + 2 Green = I’ll take the Cod please

2 Blue + 2 Green = Will do, please send 2 coconuts in exchange

Now this is of course a simple nonsense exchange, and it’s not very intuitive system, but in creating a communication system which allows them to exchange information over the conveyor belt (which is our metaphor for the copper or fiberoptic lines of the internet, these men have created an API. In it’s simplest sense, and API is a predefined system for communication, allowing two parties to share information. While many API share similarities, each data provider is free to set up their API however they want, both in terms of how the requests are made and how they respond to requests.

As you can see, there’s nothing magical about this. In a practical sense, any data that your company or site wants to allow others to read or write can be built into an API, some takes longer than others to expose in an intelligible manner. For example, a request to “give me the username and email for a user with id=300” is simpler than something like “give me the social graph of usernames connected to the user with id=300.”

Obviously, providing your data in such a manner could be a security problem, so often times API’s will be locked down to only users or other sites making requests with appropriate keys or perhaps the site providing the API will limit the number of requests per hour. There are a number of technical considerations that can are are made in designing an API, but I’ll save you from and other complications here.

Hope that helps. Feel free to post question in the comments, and I’ll try to explain.