home
on exploration, introspection and creation

Archive for the ‘principles’ Category

The mysteries of evolution

Thursday, February 18th, 2010

As I mentioned before, evolution is probably the most fascinating of all epiphenomena that we deal with every day (I’m not going to focus on alternate representations of evolution). Even though it’s simple in its premise, it continues to baffle us (with scientists coming up with new theories about it all the time). I have lots of questions about this epiphenomenon.

Evolution as a greedy process: evolution is a statistical process coupled with individuals’ mutation that, when viewed at a very high level, creates the impression of progress of species over time. Species evolve from one state to another that gives them immediately higher survival value. It is impossible to evolve to a state through an intermediate state that may be of lower value.
Hence, evolution is a greedy process, always aiming to incrementally provide value. This means that many “features” of species which could be extremely beneficial may never appear through evolution because they would necessitate going through an intermediate stage: in other words, evolution is susceptible to local maxima.

Arguably, this is why species never evolved to have wheels, which we now know to be the most efficient mode of transit. No incremental process can create a wheel (I should imagine that additional arguments may point to the fact that such a wheel would be difficult to maintain).

Invariants of evolution: evolution has no “plan”, that is, the progress is rather random and depends on a number of conditions in nature. Still, are there any invariants of evolution? That is, are there features that evolution always produces (or produces provided that some criteria are met)? Is photosynthesis a necessary process for species to adopt (in other words, does evolution always produce green organisms?) Similarly (and this is of course a million dollar question) is intelligence an invariant?

I believe the answer to both questions is yes, not because there is some higher purpose to evolution but because, simply put, photosynthesis and intelligence are the most efficient mechanisms at particular modes of operation (vegetative state, and being a hunter-gatherer, respectively). Unlike wheels, they can appear through an incremental process. The only conditions are sufficient sophistication and competition. For photosynthesis–directly using a virtually unlimited energy–is a great solution to the problem of limited resources for immobile organisms; similarly, intelligence is an answer to species reaching physical limits of body construction (further mutations won’t make the species faster, or stronger). However, intelligence is an expensive feature to develop which is why I think it could only have been possible after increased competition between species made cooperation within a species beneficial, which allowed to specialization and thus easier mutations towards intelligence.

I am not an evolutionary biologist and so the above paragraph is simply my theory. It will be difficult to come with proof of it (or a proof to the contrary) because, as with all epiphenomena, the system that would need to be analyzed to gain the threshold level of understanding is too large for us to currently tackle.

Rapid feedback systems

Saturday, January 30th, 2010

There is a class of systems that offer rapid feedback to the operator, that is, an adjustment in the way they are controlled is very quickly reflected in the output of the system.

Take driving, for example. You press the accelerator pedal (for good reasons I’ve stopped calling it the “gas” pedal) and the car goes faster. You turn the steering wheel a little and the car turns. For safety reasons, such a rapid feedback system is so natural that it’s necessary — it needs to be as natural to our instincts as possible (so that, when, say, a cat jumps out on the road, you can swerve and not hit it). But safety reasons aside, it’s also a great way to allow people to become good drivers quickly (you could imagine an alternative way to control a car, for example one in which you point to where you want the car to go. While terrible for many reasons, such a mechanism would probably take much longer to master).

I think this explains why people find it relatively hard to play golf well — the feedback is painfully slow (in fact, it’s so slow that special vehicles were invented to try to make it faster–or maybe it’s because those playing golf hate to walk–another reason why golf isn’t really a sport).

This also explains why an RC helicopter is more difficult to master than an RC car (I think more so than the fact that a helicopter involves more complex controls).

It’s useful to use this principle when designing really any kind of system. For example, wouldn’t kids find it much easier to learn to play the piano if the correct next key were a little easier to press (or, if that’s too easy–i.e. would make people lazy and therefore prevent them from learning–at least all notes of a particular musical key, like B flat, were a little easier to press).

Note that it such a system doesn’t necessarily have to be natural in the sense of being an extension of our muscles or senses. Cooking (I mean preparing the entire dish, not figuring out that you’ve burnt a steak) doesn’t offer a particularly quick feedback. Fortunately, its quality is fairly insensitive to the inputs (it takes a lot of mistakes–or a big one mistake–to make a dish taste awful) but we’d be much better cooks if ingredients changed color based on the amount of salt we added.

How to Design an Armchair

Monday, January 25th, 2010

Over the weekend, I fell asleep in an armchair. There is really no good position when you’re constrained to a chair. Eventually I settled on a fetal position across the chair, using one arm as a pillow and the other as support for my feet.

I think an excellently-designed armchair should include this use case. In other words, I’d design an armchair so that its oblique cross-section makes for a comfy bed.

Moderation

Monday, January 25th, 2010

Moderation is best when enjoyed in moderation.

(I’m looking at those who believe that everything in life should be enjoyed in moderation)

Skills

Thursday, January 14th, 2010

Throughout your employment, you should hone two sets of skills: those specific to your job, and generic, life skills. The former allows you to stay employed; the latter allows you to find new employment.

Deep connection for goal achievement

Saturday, January 9th, 2010

I had one of those rare “aha” moments over the holidays. Whenever I get a large collection of music, I sift through it and keep the music that I like. For a long time I used a method that helped me extract the useful characteristics of a song without actually listening to the whole song–say, I’d listen to the first 10 seconds, then 5 seconds starting one minute in, and fast-forwarded to the chorus. This would give me an idea about the song; hopefully enough of an idea for me to make a decision whether I want to keep it.

The problem with this approach is that it’s too sensitive to how I feel and what state of mind I’m in. Sometimes the song doesn’t have an interesting chorus at which point I may reject some songs that I should keep.

So that one day over the holidays, I was listening to one of the songs and suddenly, out of nowhere, the song instantaneously felt familiar. I felt at that instant that I know exactly what song it is. I felt that I knew everything about it. It was an unexpected revelation. I happened to fast-forward to some part about 30 seconds from the end of the song. There wasn’t even anything particular about those few seconds that I had listened to. But I knew instantaneously whether I like the song or not. Even better, I knew exactly in what moods I’d like it the most. I felt a deep connection with the song. My old way of understanding songs suddenly felt silly. How superficial my algorithm has been!

I realized how many things that I was doing had only a superficial connection to whatever goal I was trying to achieve. Take reading, for example. It’s easy to think that you’re reading “well” — after all, your eyes fall on every word, you comprehend the plot and maybe you can even predict what’s going to happen next. But are you really reading the book? Are you getting something meaningful out of the activity? Reading poems is probably an even more apparent example… many of us have read poems and we think we understand them. We can talk about them, about how they make us feel. We think we crossed a kind of magical threshold–we’re now in the inner circle of those who know.

The truth is that we don’t know half of it. We haven’t connected with the book, or with the poem deeply. It’s one thing to know how the poem makes you feel; it’s another to feel the poem permeate our bodies. It’s almost as if the poem fused with us, we’re now richer by a miniscule, infinitesimal amount, but this speck is also infinitely rich.

It’s difficult to describe the kind of feeling you get if you connect with something at a true, deep level. In fact, almost by definition there is no way to grasp this moment with any kind of scientific approach; it’s pure art. And while it usually manifests itself with works of art, I realized that any goal can be internalized in such a way. In fact, this is the only way that guarantees that you truly achieve your goal. Of course, the difficulty is precisely this lack of preciseness that characterizes the feeling–there’s no prescription for how to achieve this clarity. Sometimes the feeling comes after you experience something for 5 seconds. Sometimes you can experience it in its entirety over and over again and the feeling will not come.

It should come to no surprise that we form this superficial connection with goals all the time. We do this when we work out, when we communicate with others, when we cook. It’s definitely easier to do because we’re all great imitators. Mechanistic things are what the more fundamental parts of our brain react to, and–let’s face it–those parts have been with us for much longer.

But if you realize that taking a different, imprecise, unscientific approach to achieving goals results in a much more complete and meaningful goal achievement, you will open your mind to the possibility of true enlightenment.

User Manuals

Thursday, December 31st, 2009

A few months ago I started using a new music sequencing software (called Logic). At first (something I, as well as many other people like to do) I simply launched the application hoping to get up to speed naturally. This usually works — in case of Logic, I realized that by just playing around, I acquired a certain level of proficiency — I could do most things, but probably not in the most efficient way. I also saw that there were also certain parts of the application that I didn’t understand — I may have figured out what setting to use, for example, to achieve a desired effect, but I didn’t know why I needed to set it that way, what else I could do with it.

I decided to enhance this threshold level of understanding I had by reading a user manual. I don’t usually do this so it was a rather new experience. I chose to focus only on those sections that I somehow deemed important in making me more efficient and in filling the gaps I perceived. This amounted to reading the abridged version of the user manual (100 pages) and a few sections of the full, 1000-page version. Beyond a certain point I perceived a point of decreasing marginal returns; spending the time to read the user manual simply wasn’t worth it and so I stopped.

I took some useful lessons from this experience.

  • Good software should be self-documenting: it should be possible to jump in, if you’re a generally tech-savvy person. In fact, most software (and hardware) we use these days, I feel, is like this.
  • Sometimes, for specialized software (like software for music sequencing), and for software that introduces a new paradigm to user interaction, the above may not provide a level of understanding sufficient for continued use. In such a case, a kind of quick start should ideally anticipate and fill the gaps
  • Nobody should read user manuals cover to cover

In general, then, the time required to get up to speed should be inversely proportional to the amount of functionality one gains proficiency in. The “thresholds” of proficiency/time required should follow an exponential curve.

Vices

Wednesday, December 16th, 2009

A good friend told me once that to really conquer a vice, you have to be able to enjoy it in moderation (reflect on this sentence).

Apparently for many people, “moderation” is a relative term…

What I want to teach my children

Tuesday, December 8th, 2009
  • I want to teach them to appreciate beauty
  • I want to show them that giving can be more rewarding than receiving
  • I want them to understand a connection between cause and effect
  • I want them to understand what a trade-off is
  • I want them to have ample means to express their creativity
  • I want to empower them to solve problems and answer questions they may come up with
  • I want to help them see connections between seemingly unrelated things by reducing them to concepts; I want them to understand “abstraction”
  • I want to teach them to be ambitious, strive for mastery, and have learning goals (not performance goals)
  • I want them to understand how to set goals
  • I want them to be able to define and express their preferences
  • I want them to be able to read people
  • I want them to ask difficult questions
  • From other sources:
  • How to focus intently on a problem until it’s solved
  • The benefit of postponing short-term satisfaction in exchange for long-term success
  • How to read critically
  • The power of being able to lead groups of peers without receiving clear delegated authority
  • An understanding of the extraordinary power of the scientific method, in just about any situation or endeavor
  • How to persuasively present ideas in multiple forms, especially in writing and before a group
  • Project management. Self-management and the management of ideas, projects and people
  • Personal finance. Understanding the truth about money and debt and leverage
  • An insatiable desire (and the ability) to learn more. Forever
  • Most of all, the self-reliance that comes from understanding that relentless hard work can be applied to solve problems worth solving

Specifically here are some things I want to do with them:

  • I will read poetry to them
  • I will ask them to periodically donate something they’ve earned (or something they own)
  • I will reward them for asking why, especially in succession
  • I will encourage them to make something out of nothing (papercraft, kitchen chemistry experiments)
  • I will teach them a second language as early as possible
  • I will ask them to describe things, events and thoughts to me
  • I will encourage them to write fiction
  • Teach your kid to read
  • 50 Dangerous Things you should let your kid do
  • Awards don’t work–don’t couple chores with money!
  • They should learn Chinese
  • Learn the history of the Universe (bighistory)
  • Elimination communication
  • Wireless, biosensor baby pajamas

The evolution of the todo list

Monday, December 7th, 2009

Being somewhat OCD, I keep the concept of a todo list close to my heart. I’ve gone through several dozen iterations of an excellent todo list and what I have arrived at works very well for me; I want to share some of the design decisions I’ve made in the past, since I’m sure that if you’re just as passionate about keeping track of things to do, you probably came across the same problems as I did.

I wrote my first todo list when I was in fourth grade (I was about 10 years old). I found the concept really useful in staying organized and keeping on top of tasks. I think the perfectionist in me hated forgetting things (most of us have a dislike of forgetting things–this is related to our irrational preference for the preservation of options) so I added a safety net for my memory early on in my life (also, as a youngster, I would tend to forget things really easily).

The todo list started as a collection of subjects for which the teach assigned homework. I would write three-letter abbreviations out on a small 2.5″ by 2.5″ of paper, squeezing Monday through Wednesday on one page and the rest of the week on another. The first lesson I learned was to write in a small, regular type so that things could fit on a small piece of paper that I could take with me anywhere.

Soon I realized that it’s better to attach the tasks to the day they are due (or the day before, to be precise) rather than the day they were assigned. This pushed Monday through Thursday on one page and the weekend on another (since I ended up doing most of the task on weekends).

At some point the list was enhanced to include items not related to homework: for example, I wanted to find a new wallpaper for my computer’s desktop, or finish a particular computer program or a game I was working on. Most of the things I had listed at this point were tasks–they were specific and achievable in the frame of one week. When I added longer-term items (for example, books that

I was supposed to read over a semester), I’d separate them visually from all other items with a different color. Finally, I started using icons to represent frequently-listed tasks, partly for increased efficiency, partly because I liked having a system that only I understood.

When I was 16, I went to high school in London. My tasks slowly amalgamated into goals, small and big; particularly as I started listing things I wanted to achieve for self-improvement. This was also the first time that I separated short-term things from long-term things: the latter was one large sheet of paper that I kept in my drawer; the former became post-it notes (yes! I discovered post-it notes!). This was mostly also due to efficiency — I didn’t want to keep copying the same items over and over again from one week’s post-it note to the other.

The move to post-it notes also forced me to keep everything on one page. This ended up being a good thing: I was realizing that I’m a hypervisual person–being able to grasp the entire week at once allowed me to get things done more efficiently (this is also why I prefer restaurants that display all the entrees on one page).

At some point in my senior year in college I finally moved to have an electronic form of my todo list. I held out for quite a long time, because the act of writing out my tasks seemed to make a longer lasting impression on me than typing them out. But through behavioral change I slowly got used to referring to my todo list on a computer. I worked out a few rules that made such a system possible: having the list open at all times (so that I would never lose sight of what I was doing–this also forced me to keep the list small), using simple formatting (I stuck with plain text notes formatted with tabs; simple formatting allowed me not to lose sight of the tasks, allowed me to edit the list very quickly, and made the list very compact). I worked out very efficient (“cryptic” to some) terms to denote tasks.

It was then that I started to think about the effectiveness of my strategy to get things done (mind you, that was back in the day, before someone decided to write a book about these commonsensical things and made a lot of money) as opposed to just the efficiency of the representation. It became more important to have a system that helped me achieve the things rather than a system that allowed me to write them down quickly. This is where a lot of the experimentation happened. I thought a lot about what makes me motivated and while most of the motivation is independent of the protocol for keeping track of goals and tasks, I found a fairly significant variability between which system I used and how effective I was at getting things done.

I toyed with an idea of a kind of game I’d play with myself, a kind of system where I’d reward myself for getting stuff done. I didn’t really need any exogenous incentive–earning virtual “points” was all that I needed (perhaps it’s because I’m a conceptual thinker, or perhaps because I’m a nerd). I’d assign myself points for every task, and the number of points was proportional to how “important” the task was. I would set goals for, say, a month. I went even more crazy than that, coming up with a number of point thresholds, exceeding each of which would give me a different “rank” (it’s incredible how much fun a kid can have with nothing but pen and paper). Recently I dropped any kind of scoring system because I noticed that I by and large knew how well I was doing and keeping track of my score became less of a factor in motivating me — in other words I realized that the desire to get things done had to come from something else than how many points I got for the day.

I also experimented with the timeframe for my short-term todo list. At that point I still had two lists: a short-term one and a long-term one, and every time I came up with a new instance of the former one I’d consult the latter. For about a year I changed the frequency of the short-term list to be biweekly but I found that a frequency of one week is optimal — the list needed to include at least one weekend (otherwise it wouldn’t be all that useful since I do get a lot of the stuff done over the weekend–the weekend is also a “buffer” for overflow work); but if it included more than one I would end up feel too complacent on the first weekend and postpone everything to the second one.

About three years ago I came up with a framework for a high-level structure of the todo lists that I had by and large accepted and tried to follow: I listed things which I wanted to do every day (for example, get up to speed on the blogs that I was following; or go jogging) in a kind of “checklist”. Generic todo items would follow, at first scattered arbitrarily throughout the week. Specific events had dates attached to them. I had a separate file that listed events happening on a particular date if they were more than a week away, to not litter my todo list too much.

I went back and forth on whether I should explicitly include the daily tasks on my list or not. At first I thought that by including them I would be more incentivized to do them every day. At the end updating them ended up just wasting my time so instead, my short-term list now has a list of these things to remind me what I have to do every day, but I don’t keep track of whether I actually do.

Finally came the iPhone and for the first time since I switched to a computer-based todo list I could carry the lists with me at all times. It was great as I no longer had to email myself notes (or keep them in some separate
container and then get them out of my iPhone). I’m still pretty adamant on keeping the notes as simple and unformatted as possible and accessible from anywhere so I wanted to stick to text files. Fortunately I found an app called SyncBook which did exactly what I wanted it to do — it allowed me to sync a folder of text files between my computer and the iPhone and–most importantly–it allowed me to edit the text files on the iPhone (there are several good apps that work in a similar fashion — take a look at Evernote if you don’t need the notes to be text files and don’t mind slightly bigger overhead, or just sync native Notes if you don’t mind Marker Felt. There are also apps that allow you to edit richer documents if you do care about the formatting).

About three months ago I settled on a final design for my todo lists. I like it because

  • It’s simple–there is minimal overhead; I only need to update pretty much one word when I complete a task (or want to add a new one)
  • The important information, and only the important information is with me at all times–I have the todo list open on my computer, and when I’m away from my computer I have it on my iPhone. Syncing is as easy as pressing one button in SyncBook, and I can sync over the local network, which is great (I can do it anywhere around the house)
  • My todo list is organized in a three-tier structure: day, week, month, which is a natural structure to think about tasks
    • week (a short term list) enumerates all days of the week with things which I have to do that day. It also has a general “grab bag” of items which I simply have to do at some point in the week. Finally it has a list of items which are my daily tasks (I don’t repeat them for every day) and a list of items which are my weekly tasks. All the daily and weekly tasks derive from my goals. Finally, it contains a list of problems in my life that I want to solve in order of how anxious they make me.
    • thisMonth enumerates all items which I’m supposed to do at some point in the month. I also include longer term periodic things such as what books to read and what miniprojects to do. Every week I take some items from this list and put them in the week list.
    • nextMonth enumerates all items which I’m supposed to do next month. Every month I move them to the thisMonth list.
    • calendar which contains all events with dates attached to them. I tried to use something like iCal but I like the flexibility of specifying indeterminate times (e.g. some time in the latter half of January) and I found the existing interfaces of iCal insufficient
  • All the items are available offline — I hate not being to access something because it’s online, or having to deal with slow web-based interfaces. Changing a status of an item takes me a couple of seconds at most
  • It’s short–the short term list consists is a text file measuring 20 rows and at most 50 characters in a row (so it can fit on one page on my iPhone). All thanks to efficient representation of todo items — there’s no need to be verbose since I remember most things that I’m supposed to do given a short prompt. For example, I know that “nprAlarm” is a task to set my computer up so that it wakes me up every morning by playing the live podcast of WNYC.
  • It’s fast–syncing is fast, editing is fast, viewing is fast. Moving items from one list to another is fast.
  • All my goals are represented in one form or another on the short term list. That way I’m constantly reminded of what I’m supposed to be doing and how it connects to my goals.

Of course, this framework is just one of many and which framework works for you depends very much on your personality and what makes you tick. I do, however, encourage you to follow a few principles:

  • Have a list. Some people say that having a list is bad because you stop relying on your memory. I solve this problem by training my memory in other ways (e.g. with Brain Challenge). Don’t conflate training with work
  • Experiment. Switch things around. A kind of “evolutionary” process–an informed random walk–allows you to find the most effective system
  • Keep it simple. Complicated lists end up wasting time and detract from actually getting stuff done
  • Keep it available. You never know when you have some time to knock something off the list, and you never know when you want to add something to the list
  • Keep it flexible. After all, we think in free-form way, not in a highly structured way, especially when we go about our daily activities and let our mind wander