Javascript Objects (2005)

As I got more comfortable with javascript and its capabilities to manipulate the DOM, I decided to play with my favorite pastime – user interfaces. Specifically, I wanted to build a library of objects I could use in web-based applications at work. One can call it an early, one-man jQuery UI competitor – except that jQuery UI was first released in September 2007…

The demo is pretty much self-explanatory. I defined the following objects:

  • An expanding object (the two green boxes in the demo), consisting of a header (the clickable area that triggers the expansion/contraction) and the actual object being expanded/contracted. The object can expand to a given maximum height, can expand with transparency over the existing elements or can expand around them, and can trigger on click or hover.

  • A slider set (the light green squares inside the grid). Each slider can be dragged and can either spring back to its original location, or stay where dragged. The sliding is reflected in real time in other elements (in this case, the table to the right of the grid)

  • A draggable object (the two light red boxes), which can be dragged into a container (the two dark red boxes)

When jQuery came out, and then jQuery UI, I fell in love with the way it extended javascript’s syntax in such a natural way and made web and specifically UI programming so much more legible. This experiment gave me a good deal of empathy for what’s going on “behind the scenes” in any framework that sits on top of javascript and the DOM.

js-objects

Click through for the live site.

The source code for javascript objects is hosted on github here.

Early Websites (2001)

Below is a collection of websites I made back in high school.



A Level Module Allocator

I was, you may say, an early adopter of maximizing javascript’s capabilities. One of the static sites I built was a British A Level (nationwide final high school examinations) module explorer for the Mathematics A Levels. Mathematics curriculum consist of a number of modules in four categories (Pure Maths, Mechanics, Statistics and Data). Different configuration of modules could earn a student various kinds of A Levels (e.g. “Further Mathematics”). I built a tool that allowed students and educators to explore the different configurations and the resulting A Level classes.

  • In the Novice→Combinations mode, the site asks the user which modules are mandatory and lists all possible combinations of modules that the student can take to earn a particular A Level

  • In the Novice→Grades & Retaking, the site asks the user which modules they already took (and what scores they got), and what ultimate grade the student aspired to, and lists combinations and scores the student would need to get

  • The only difference in Expert Mode is that the user can eliminate modules which are not offered by the Mathematics department

A Level Allocator

Click through to go to the live site.

The source code for the site is hosted on github here.


German Grammar Test

To teach myself German grammar in high school, I built a simple grammar test website. I would like to say that in 2001, javascript and HTML best practices were somewhat lacking, but nonetheless there are a number of things I’m not proud of (using eval, frames, and those horrific background patterns and wordmarks!)

German Grammar Test

Click through to go to the live site.

The source code for the site is hosted on github here.

saferm (2004)

A long time ago, back in college, when the vast majority of my time was spent in the Terminal, I would get burned time after time, having rm’d something that I later ended up needing, or after accidentally having rm’d something important. At the same time I was falling deeply in love with Mac OS X’s UI and its forgiving Trash concept. So I decided to build a guardrail for myself and aliased rm to a script that replicates the functionality of Trash.


saferm.tcsh (view it here in github)

  • Ignores -r and -f switches (why bother if files are just moved to Trash)

  • If a file/folder (say, “photo.jpg”) with the same name already exists in the Trash, it is renamed to “photo copy.jpg”. If that name also exists, it is renamed to “photo copy 1.jpg” etc.

Then simply in my .bash_profile I added

alias rm="~/saferm.tcsh"

You’ll thank me later.

Reverse Engineering Reverse Engineered DRM

Very early on in the years of the iPod, my colleagues and I found it to be the perfect device for our team to listen to work-related recordings. We wanted to protect the media from exfiltration in case the devices got stolen and so Apple's DRM seemed like a perfect solution.

Yes, technically a determined adversary could attach a line in cable to the iPad and pull the recording off. My early-stage engineer's mind found it hard to deal with the imperfection of the solution – logically, if there is a way to get the media out, why bother do the DRM in the first place? But many conversations (and much reflection) have helped me learn my first of many "professional" lessons. In the real world (and especially in the workplace setting), solutions are imperfect. In case of security, frictions are an underrated barrier. I knew enough to understand that DRM itself – security by obscurity – wasn't a perfect solution, and so then it was just a matter of degrees.

Once I overcame that mental obstacle, I encountered a technical one. There was no way for third parties to use DRM as a service. I determined to build one.

Fortunately for me, around that time, enterprising hackers were able to reverse-engineer DRM encryption. My insight was to use the hack (which was open sourced) and reverse engineer it... that is, forward-engineer DRM.

I suspected it would only be a matter of time before Apple came up with V2 and invalidate the hack, but as far as I was concerned I didn't care – so long as never updates either iTunes or the iPad firmware, the solution would work reliably. And it did, for several years, until we switched to another device that allowed third-party encryption.

Here is the repository that contains my “hacked hack”, some documentation as well as the original hack source code. Enjoy!

Of course, by now the version of DRM, iTunes, the iPod (what is an iPod?!), and the framework the code runs under are woefully out of date. But it was still a fun project.

UPC Scanner Codes

Strange though it may sound, I’m fascinated by device I/O capabilities.

If we think of humans as a form of a device, our “Inputs” are our senses: sight, hearing, smell, taste, touch (and the various attributes conveyed through the skin e.g. temperature or humidity), and our “Outputs” are our vocal chords and the interactions we can have between our bodies and the physical world. It’s a very robust set of capabilities.

Other devices are not so lucky. Take UPC scanners, for example. Many of them can only scan barcodes for input, and display two lines of text as output. Imagine having the brain of a human being but being able to interact with the world through only these two things!

While a scanner may get plugged into a more expressive device with buttons, larger screens, or even a full terminal, by its purpose it may not be near a machine when its user requires it to do more than scan items. For this, UPC scanner designers devised various clever schemes to augment the device capabilities with appropriate conventions. And I discovered one of them quite by chance.

If you spot a UPC scanner out in the wild (for example, in a department mall such as Bloomingdale’s, as was the case for me), try having it scan the following barcode. Prepare to be (somewhat) amazed!

Try scanning this barcode with a retail UPC scanner. This works only for some scanners…

Try scanning this barcode with a retail UPC scanner. This works only for some scanners…


This makes for a good party trick, assuming the party is happening at a department store and you happen to have this barcode. (I, for one, carry a printout in my wallet, just in case).

“Control codes” are an old invention but it’s exciting to see one used in such a common scenario as shopping. Here is another one I discovered. Kudos for those who find more, I am pretty sure one can find some user manuals with all the control codes per model of scanner.

Another one that worked for me.

Another one that worked for me.


Enterpreneurship Classes at Stanford

Stanford, and the Business School specifically, are serious about entrepreneurship. The school doesn't just pay this area lip service; the selection is broad, diverse, and satisfying. It's possible to spend the majority of your time here just in entrepreneurship-related classes.

What follows are some of my thoughts around the many classes offered at the Business School and at Stanford in general. I tried to be clear about my sources (took the class, friend took the class, applied to the class, just heard about it, talked to the professor, etc.). Note that a lot of the below is often just my personal opinion. If there is one thing I learned about entrepreneurship, it's that it comes in all shapes and sizes, trying to survey the whole field is near impossible, and trying to extract best practices futile at best. But by taking a variety of classes, I've exposed myself to a number of different mindsets, backgrounds and personalities, and I feel that I'll be just a tad less surprised once I get out into the real world.

Finally -- but most importantly! -- two big caveats. I've met a lot of people who "want to be entrepreneurs". I've always had a problem with that statement. What many of these people really are saying is that they are enamored by the mythical entrepreneur, by the story of the college dropout who created a $100B company in his dorm room. In talking to people who have seen and been through a lot, I found that those who end up being dedicated entrepreneurs do it either because (a) they are cursed with an idea, something that won't let them sleep, something that they would just love to have solved but there isn't a good solution so they are compelled to do it themselves, or (b) they have a relatively big ego (which is not necessarily a bad thing!) and they just can't work for anyone else. There may be other characteristics, but I'd encourage you to think very hard about what "entrepreneurship" means to you, personally.

Secondly, the best way to experience/get better at/learn about/prepare yourself for entrepreneurship is to just do it. Sitting in classes, no matter how "hands on", simply won't cut it. It may seem hypocritical, me talking about getting out there while I sit in the idyllic Town Square at the Stanford Business School, but the most impactful "teaching moments" I've had about entrepreneurship happened when I got outside of the classroom. Classes -- especially speakers -- open your mind up, and force you to question things, which is useful, but you want to apply what you learned quickly and frequently. Most likely, your first ex-classroom experience will be to do everything you were taught not to do (as it happens, this very thing happened to me...)

I'd put the Stanford entrepreneurship courses into four categories: Theory (the most familiar to a GSBer: case-based classes that introduce to you various entrepreneurship-related themes), Lab (hands-on experiences that have you do something), Workshop (mostly project-based courses) and Peripherals (not entrepreneurship per se, but offer useful perspective).


Theory

In Case/Theory classes, I'd be looking for: quality of speakers (what have they gone through? are they successful? can they offer insights?), and the teaching dynamic. It's worth to answer the case prep questions carefully -- they aren't hard, but they can get you to think about the themes/entrepreneurship challenges in general.


STRAMGT 353: Formation of New Ventures
(Took it in Autumn '13 with Siegelman+Leslie)

GSB's staple. Sections taught every quarter, usually co-taught by two professors. Very typical case-based class. High variation in teaching quality, and with that comes the variation in the quality of speakers (since professors invite the speakers they know). Consider not just the specific teacher, but also the dynamics of the duo. The course title is a bit misleading -- the class covers formation (first third), pains of a growing startup (middle third), and exits/failures/acquisitions (last third).
I enjoyed the cases and the speakers, although I wish they had spoken for more than 15 minutes each. The paper (two parts: midterm and final, but really one paper) is a good excuse to get out and interview a bunch of people in a startup. But start looking for startups early -- it's hard to get a commitment and the proposals are due early in the quarter.
Leslie+Rachleff is (I heard + witnessed in one class during admit weekend) the killer duo. Sadly, the year I took the class, Rachleff went on a sabbatical, and the Leslie+Siegelman dynamic was new and untested. Leslie was the dominant personality and, sadly, made it clear: interrupted Russ, talked too much at times at the expense of the speakers, seemed interested in the One way to answer his questions. But I came to like Russ a lot through this class (and through Startup Garage, which he also co-taught). I'd want to make sure you have either Rachleff, (hesitantingly) Leslie or Ellis teaching the class. Siegelman is new, and he's a big plus if he complements the aforementioned. In a few years I expect him to be up there too as the headliner.

STRAMGT 348: Very Early Stage Ventures
(Took it in Spring '13 with Reiss+Chess)

The class was new, first offered when I took it. I took a risk in the Spring of my first year and took it as an elective. The class basically takes the first third of S353 and explodes it to take up the whole quarter, talking in much more detail about team formation, idea generation, and funding. I found that to be great, because in general I've been yearning some depth at the GSB. I liked the class a lot. The duo was great, good dynamic, they clearly knew what they were talking about. Good speaker lineup. Professors did warm calls (started the class telling us who's going to be called on to answer specific questions). The speakers got to talk a lot more than in S353. Midterm was a good exercise in analyzing a specific startup (you don't get to do that much at the GSB), final was similar to S353. I found that I took much more away from this class than from S353, though it may have been because I took it first. The handouts were actually useful -- something I imagine myself going back to post-GSB. Note that there is a lot of overlap between S348 and many sections of S353, so you may not be able to take both, depending on which section of S353 you're eyeing.

GSBGEN 525: From business venture to business plan
(Didn't take it -- took E-Business, which was taught by Mendelson, and which I was told had good overlap)

Mendelson is an old-school professor: he has a certain way of doing things, but I found his teaching useful in absorbing the themes and the frameworks. Still, he polarizes the students -- some like him, some aren't big fans. In E-Business I learned a ton that I found myself bringing up in my second year. Mendelson's classes have a high workload.

Note

In both S353 and S348, it was good to get to know the professors. They can offer their advice on life, or shred your business idea to pieces (which you should be aiming for at all times!). And, most importantly, the classes offer a wonderful selection of speakers, which is really what all this is about. Ask them challenging questions!


Lab

ENGR 245: Lean Launchpad
(Took it in Winter '12 with Blank, Miura-Ko and Feiber)

The original lean startup class, taught by a Stanford celebrity Steve Blank. You apply as a team of four, which you must form, and with an idea. Blank and the teaching staff interviews you. Blank has three info sessions/mixers that you can use to form a team. 4 GSB students is rare; if that happens, make sure 2+ of you have technical skills and really sell that in the interview. There are more GSB students than you think who want to take the class and don't care about the idea so you can form a team easily. Engineering students are harder to get - but they care about autonomy and if you start with a problem space and they like it (especially if there is a hard technical problem there), you should be fine. The class is in the Engineering school but it's really a Business school class (when I took it, more than 50% students were from the GSB).
The class teaches you one thing only, but it really, really teaches it to you: get out of the building, talk to people, and keep talking to people. It's great if you like a space (and ideally have some connection to some specific customer segment). It's not so great if you have an idea you fell in love with but if you haven't validated it -- Blank loves the notion that "no startup idea survives first contact with customers". Your idea needs to be specific, and something you can prototype (even if it's a low-fidelity, paper prototype or a "fake product").
Form a team of people who won't mind talking to a lot of people, because that's what the class is all about. Blank flipped the classroom so you watch the lectures at home, and in class you present. 15 minutes every week. The class is great in teaching you the importance of talking to customers, but the course structure and the need to prep a presentation each week may mean that you'll end up being distracted from building a company by having to prepare class deliverables. I call that the "course tax" and it was pretty high for me in the class.
In general, a problem with lab classes is that if everything is going as the professors have envisioned, it can be great. You start with an idea, somewhat full of yourself, then you talk to people, you realize that your idea sucks. After a few weeks of soul searching, you find something the customers want. Then you build a prototype, you talk to customers more, an identity crisis sets in, you dramatically pivot to something you heard in an interview that you hadn't thought of. Then you go really fast, build a prototype, and get an LOI (Letter of Intent, from a business that wants to buy the product that you haven't started building yet). That's the ideal, but it's rare. It's a little painful outside of that.
Blank is a self-proclaimed asshole, which I liked a lot -- I think too many people at Stanford are just too damn nice. He will interrupt you mid-sentence. It's humbling and he's often right. The teaching staff holds office hours every week, which your team has to attend. It's a great way to get some mentorship -- I actually found the OHs to be more useful than the class itself.
In retrospect, I should have probably just taken Startup Garage, though the exercise of forming a team around a half-baked idea was a good exercise in leadership.

STRAMGT 356/366: Startup Garage
(Took it in Autumn '13 with Zenios + Siegelman + Lin + Gur)

If you only take one hands-on class, take that one. It's the best combination of Lean Launchpad, Launchpad, and the more traditional S321. The class has an entire classroom to themselves, for God's sake! Look through the window at some point to see how awesome the classroom (M101) is, it's like a kindergartener's paradise. But, on a serious note, the class combines design thinking, Blank's "get out of the building" customer development and hypothesis-driven startup philosophy, and includes some hard skills -- how to prototype, adwords, etc. You even get some funds to test some of your hypotheses. You get comfortable brainstorming and prototyping.
The "course tax" is relatively low; you have to prepare for 2 design reviews + a final review, but I found the preparation to be super applicable to what I was doing. The availability of teaching staff and the mentor network is huge.
You apply in the Spring. The class is in the Autumn, and you may choose to continue in the Winter (usually, if you found a semblance of a product-market fit by December, it may make sense to continue in the Winter, where you continue with execution; don't force it to continue if you don't have an idea you're somewhat convinced in). You can apply as an individual (am section) or as a team, if you have some kind of traction (pm section). If you have a team, and ideally took one other entrepreneurship class, you should just apply as a team, the pm section is better. Most teams pivot in the first three weeks, so the idea isn't that valuable (you will hear that said a lot in Silicon Valley, and by God how true is that! Drop the whole stealth thing), and the pm section offers you more autonomy and caters the curriculum to what your individual team needs.
This was probably my favorite entreprenurship class at Stanford. I ended up liking Russ a lot (it was the third class of his that I took, which helped), and the other teaching staff were great also. I ended up spending a lot of time in M101, working on the startup idea, which is how you should be spending your time anyway.

STRAMGT 321/322 : From Idea to Launch
(Didn't take it -- went to info sessions, talked to prof and the TA)

For second-years only. Class is more inter-disciplinary than Startup Garage, and since it includes Sloans, often the people there are more serious about their startups. You apply as a team and with an idea which you should be pretty commited to.

ME301 : Launchpad
(Applied, didn't get it)

Design school class. I applied and met with the professors during their Office Hours, but I didn't get it. You apply as a team, and should have some traction (and should be in communication with the professors before the deadline to apply). We joke that it's really a two-quarter class, because you need to have worked on an idea throughout Winter (the class is in the Spring). The professors are great, and it's an awesome class to take if you haven't taken a D School class and if you're interested in design thinking as applied to entrepreneurship. It seems to me that the class is catered towards consumer products (especially physical products!), given the activities and what they are teaching, but you may be able to make variations (service business, or Enterprise) work. The class focuses much more on being customer-centric and prototyping.


Workshop

Venture Studio
(Member since Summer '13)

I guess it counts as a workshop. You apply with an idea (and/or a team) and if you get in, you get some office space in either the Venture Studio on the third floor of Zambrano, or the CoLabl (M101). It's a great community to be a part of, and having space may make it easier for you to focus on your venture. I recommend applying.

 

STRAMGT 313: New Idea Workshop
(Taking in Winter '14)

I like Reiss -- see S348 -- but don't know what the class will be like.

 


Peripheral

Not entrepreneurship classes per se, but you can learn something about entrepreneurship taking them.

MKTG 355: Product Launch
(Took in Spring '13)

Half the students who take the class become infatuated with Levav. I was too. He's just such a good lecturer. He's inspiring, and pushes you to work, even though sometimes at the end of the class I left the classroom with a big "so, what was the takeaway?". The speakers are great, though. It was my favorite Foundations course. You have to petition since it's Advanced Marketing, and the petition really is an exercise in whether you can market yourself. So go, sell hopes and dreams!

STRAMGT 315: From Launch to Liquidity 
(Know the profs, talked briefly about class)

New class, didn't take yet, taught by Levav and Rao (of HR fame) and Rauh (whom I don't know). The first two seem like a good teaching combo, but the classes I did take with Levav and Rao were a little bit fluffy, so I would be concerned about compounding that effect. 

Acquired Taste and Poetry

There are relatively few times in life when we discover that we enjoy something that we never used to. Most frequently it's a particular food: we "acquire a taste" for – as was the case for me – olives, beer, or spicy food. This happens on its own terms and timeframe, but once it happens, we feel richer, more complete, happier.

It's incredibly rare to discover a liking for an entire category of things, rather than a specific instance. Usually, this comes with some insight or a shift in perspective, and usually requires a trigger. I was incredibly fortunate to have experienced such a thing.

I never enjoyed poetry. At school I was forced to read poems and had to explain – for a grade! – what the poem meant. There was always one thing that a poem was about, and as years went by, that thing seemed more and more elusive. It may have been, I reasoned, just the "school factor": after all, when forced to do something, we rarely like it, but when given the freedom to explore it by ourselves, we find a passion and excitement that we never thought possible. As I had thus discovered the enjoyment of swimming and reading, I thought poetry might come next. But it didn't – I still didn't know what those damn poems were about. There seemed something fundamentally different about poetry.

And then I watched Billy Collins at TED, which led me to a TED Radio Hour that featured Collins. And that's where the insight came from: Billy Collins complained that we put too much emphasis on interpreting poetry and not enough on simply appreciating the poem's aesthetic.

This remark seems fairly straightforward and, whether you agree or disagree with Collins, you wouldn't argue the existence of these two dimensions. But for me, that was the moment when I internalized such existence. I always focused on interpretation; I felt like a failed in some way if the "take-away" of the poem was not a SparkNotes-like synthesis that mandatorily mentioned abstract thoughts and states of mind. If there are those two dimensions – I said to myself – why not focus on the other for a change.

As soon as I stopped worrying about the interpretation and dropped the guilt, and instead just enjoyed the poems for their beauty, for the inner melody, rhythm, and composition, I fell in love with poetry.

The saddest part is that I could have loved poetry sooner, much sooner. If some teacher in grade school didn't choose to focus on what the poem meant and grade her students on that metric. If I had come across a truly beautiful poem that clearly meant nothing (or clearly meant something). If somebody had introduced me to beautiful poems and pointed out their aesthetic. What about all the other treasures we deliberately reject because don't know how to approach them?

Deep Relationships and Hyperlogical Behavior

Is it possible to have a deep, meaningful relationship with someone based purely on being logical? (I'm thinking about friendships, but the same reasoning should apply to romantic relationships)

In my opinion, the answer is a resounding no. The deepest relationships are built on common experiences, trust, and the unique personality of each person which makes spending time together feel special. Our personalities become intertwined – you and I change slightly based on what the other is like. While it's possible to squeeze these components of relationships into some logical framework ("well, trust is just the expectation that the other person's future behavior won't affect me negatively, and it makes sense given the person's track record and personality to have that expectation..."), they are, in my view, fundamentally incongruent with being hyperlogical.

I don't claim that people in deep relationships shouldn't value logical discourse – quite the opposite, it's great to be able to have conversations and grow one's intellect and knowledge of the surrounding world. But I don't want to feel that the relationship could end because at some point, the other person may – through a perfectly logical train of thought – realize that the friendship simply doesn't "pay off". There are many reasons why relationships should end, but this one is a sign of shallowness, not depth.

 

Attention to Detail

 Most people probably don't notice it, but on a cloudless day, you lie down and fix your gaze into the sky, pay attention to all sorts of motion inside and on your eye. For example, you should be able to see various shapes sail smoothly through your point of view. If you move your eyes, the shapes seem to follow, but imperfectly. These shapes are specks of dust, lashes, and other tiny particles that settled on your eyeball. Because they are so close to the lens, they are so out of focus that you see them as much thicker than they actually are, with a halo around them (just like you would in a microscope, looking at something out of focus). They sail across your view because they are slowly sliding down a fluid surface of your eye. They follow your eyes because they are fixed to the eyeball, but not perfectly, because of friction.

I like to play a game, focusing on a particular speck of dust (maybe the one with the most interesting shape) and moving my eyes around to make sure that the speck stays in the center of my vision, motionless, and doesn't slide off. It's an interesting exercise in navigation where the mechanics are unlike anything I've experienced.

Attention to detail reveals complexity you may never have imagined.

The Ability to Solve

 One of the things I value the most in people is an ability to solve problems. It's actually a combination of a value and a number of abilities.

The value is the desire to eliminate problems; many – if not most – people don't feel the discomfort of walking by a problem without addressing it. If problems don't bother you, you will not be motivated to find solutions.

The abilities include:

  • Being able to see the problems in the first place
  • The conceptual ability and the creativity to see connections between the problem and everything that you know, so that you can discover a solution
  • The ability to push through to solve the problem. Frequently this means trying various alternatives, getting to the right answer with trial and error

Despite people increasingly tagging themselves as "problem-solvers", I think the ability to solve is actually pretty rare. It takes someone who is just a little obsessed, just a little bit of a perfectionist, has just the right amount of patience (enough to try various solutions, but not too much so they don't get bothered by the problem in the first place), and a lot of determination.

Communicating with an Alien Race

Let's assume that there exists other intelligent life somewhere in the Universe.  I like to consider the various parameters of the properties of such a life, which would define commonalities between us and them (it), which would help define how we could communicate.

Unsurprisingly, as any topic that tickles our (I'll argue evolutionary!) desire to explore, there has been a lot of thought put into this problem.  I'll do what I do best -- start with some of the context I've acquired over the years (the Pioneer message, the Arecibo message, a much longer one, or Carl Sagan's Contact) to see where I can take the idea (a good test of how I'm thinking about it, and possibly a way to think outside the box), and would love to hear from those who know more, or have thought about it, especially if you have differing opinions.

Let's start with a relatively simple model.  An alien race that is based on similar biological mechanisms, thus consisting of individuals that have become intelligent through evolution, that have acquired inter-generational (institutional) memory and thus civilization through some method of communication between individuals.  Note that I'm not necessarily assuming many of the aspects of such a life -- language (imagine a species that can communicate through some form of telepathy), physical attributes (such a life may be non-carbon based and interact with the environment in wildly different ways than we -- for example, be entirely gaseous and receive and generate arbitrary signals along a specific range of electromagnetic spectrum), motivations.  Let's assume, however, that the Universe behaves the same way locally to this alien life form as it does in our environment.

The most interesting aspect in such a case is the mode of communication.  What can we assume is common?  Nothing physical, for sure.  For species that travel in the electromagnetic spectrum (just like light does), our highways and staircases and in general attraction to solid state objects would make very little sense.  Instead of trying to start with something most concrete to us, it makes sense to start as broadly as possible.  We need a medium and a message.

For the medium, we could use the electromagnetic spectrum.  Really, anything we can generate that can travel far, fast, and be distinguishable from everything around us.  Don't be fooled by visible light! -- although it's possible that there is some cosmic law that makes visible light frequencies be a local maximum along some dimension -- the energy required to receive it relative to its usefulness in the surrounding environment (seeing X-rays instead of "visible" light would not be all that helpful to early humans) -- this is highly dependent on the initial conditions of life.  Or maybe it's a fluke.  More generally, anything that generates a force field, though it's harder to generate ripples in the gravitational field as easily as it is to blast electromagnetic messages.  Quantum effects are likely too small to be noticed, although I don't really know anymore, given all these spooky things happening.

The message?  Non-random (non-chaotic), but not too regular (pulsars send out regular messages out in the space).  Taking both together, it's a pretty natural thing to mimic the universe around us -- assuming that what we observe of distant stars from Earth, the aliens can also observe from their vantage point -- but provide patterns whose complexity is a tad higher than the complexity of similar messages generated by the Universe itself.  Prime numbers are good candidates -- and in general, anything that is really fundamental and to do with mathematics, because it's very likely that an alien race knows mathematics (as the study of patterns, totally abstracted from the source of these patterns).  Unitless quantities are better than something with an intrinsic measure, because the fewer assumptions, the better.

Can an alien race be sophisticated enough to be able to receive our communication, and interesting enough to talk to, but not understand at least some form of mathematics?  Could an alien special have developed (not been born with!) interstellar travel and not understood binary systems.  Science fiction scenarios aside (an alien species is decimated along with its cultural heritage and ends up traveling across solar systems without the knowledge of how its machines take it thus far), I think there is universal consensus that the answer is no.  And in fact, an ability to think abstractly is very likely a sign of intelligence.  But this does not hold the other way -- I can imagine a race that is either so sophisticated as to think of mathematics the same way we think about the pulses of Nature and simply ignore any such signal, or so intuitive that they don't identify mathematics as a discipline.  For the former, introducing some obvious and non-obvious error in the message might be a great solution.  A race that can enumerate prime numbers is intelligent, but a race that makes a mistake early on must be much more street smart!

But even assuming an alien race does understand the concept of binary arithmetic, it may not be able to understand its encoding.  Would a series of dots and dashes in a column corresponding to the numerals necessarily be informational?  Not if the aliens don't have spacial awareness.  Would a series of beeps be a good encoding?  Not if the aliens can't hear or -- more interestingly -- don't have a notion of time (or cause-and-effect).

Math aside, the fundamental laws of the Universe would probably be a common base, although one can imagine a less curious (or much more sophisticated and thus thinking of the laws of the Universe as irrelevant) life form, or a more precise one where our crude approximations of the Universe map to something incomprehensible to them.  We can ask astronomy what quantities are pervasive and communicate their ratios.  This is what Pioneer and the Arecibo messages were, and it is a great way to communicate our relative knowledge of the universe with the above assumptions in mind.

There are alternatives to this model that would work similarly in some aspects.  Consider a species that is a single individual (instead of many individuals that communicate with one another and thus pass the knowledge).  Such an individual may not comprehend the notion of individuality, but may still be able to communicate with us the same way, definitely remotely, where we can approximate mankind as a single individual, at least in the beginning of the dialogue.  If their Universe doesn't behave the same way as ours does (say, the speed of light, due to some quirkiness, is infinite in some valley of the Universe), if the alien race can perceive the different laws elsewhere, they can still compare our crazy patterns of high entropy to the surrounding comparative dead silence.  Though such an alien race may not be particularly useful to talk with (if they have no insight that can be understood by us).

The concept of communicating with an alien race is a fascinating one.  Clearly, there is no way to think about it in the most abstract way -- there are always assumptions that we must accept.  Let's hope that we'll get to tackle this problem at some point in the near future, and let's hope that we get some of our assumptions right -- we wouldn't want to miss an alien race that happens to be intelligent in a different way.  Or be trampled by one in search of intelligent life.

The Fall of the Scientific Method

I believe the Scientific Method is, if not becoming irrelevant, at least losing its prominence in discourse throughout the world.  As anything in the history of the world, this is just a cyclical movement, but I think we're about to witness an inflection point.

Biased by the local version of history, we forget that the Scientific Method is only one possible paradigm of reasoning, one that particularly suited humans who found themselves in the Age of Invention and Exploration.  When the number of phenomena being discovered is large and each strengthens the fundamental theories put in place, the Scientific Method feels adequate.

The Scientific Method is -- my amateur definition follows -- the process of rejecting theories through observed contradictory experimental evidence.  Synonymous with modern science, it can't prove anything about the world we live in.  It can only evaluate theories for how bad they are.

People tend to forget that even the Ancient Greeks -- our model of scientific thought -- believed in reasoning that is a combination of the supernatural (mythos) and the rational (logos).  For a long time, we have overemphasized the latter, dismissing alternative approaches to understanding reality, but as science turns strange and more distant, I believe we will begin looking for a basis of our understanding that isn't rooted strictly in observation and rejection of theories.

Science is turning strange.  To see this, let's go back to 1905.  The world was a fundamentally different place.  All motion in the Universe was governed by a few simple rules first formulated by Newton.  Mathematicians believed that every statement about the world can be proven or disproven (shown to be false, of course).  We just learned to fly.  We built automobiles and submarines, harnessed electricity, and were beginning to understand radioactivity.  Maxwell unified our understanding of most of physics into an elegant set of equations.

Today, our laws -- even the simple laws of motion -- are more complicated.  Sure, at low speeds they reduce to Newton's beautiful equations, but this nonlinearity doesn't give us much confidence that there is no third-order consequence, and beyond, that we're simply yet unable to detect.  Perhaps the rules that govern how the universe works are unknowable.  Moreover, universe is already known to be unpredictable, in addition to being possibly inscrutable.  Particles are in a number of states at the same time.  The more we refine our models following observations which refute our hypotheses, the more science begins to look like, well, magic.  And while we don't readily admit it, I (and I am sure you, too) feel disappointed by it.

Science is also turning more distant.  Many of the advances in physics don't concern us beyond the drama of popular science narrative.  It's unlikely we'll directly benefit from the discovery of the Higgs particle, but even if we eventually do (after all, DVDs wouldn't be possible without Einstein, and his revelations seemed "unpractical" enough), we are adding layers of indirection between our theories and our lives.

Instead of focusing on observations, we can listen to our intuition (what feels right?), our sense of beauty (what is elegant?), or even simply focus more on fundamental phenomena and reason about what is not easily unobservable (what is entropy, exactly?  What could the underlying cause of the Universe increasing in complexity be?).  Doing this would not necessarily be equivalent to a rejection of logic -- I simply advocate for us to go back to the axioms that we base our knowledge base on and revisit them.  Once we settle on our axioms, we should absolutely use logic to deduce truths about the world.  But that first step is crucial in defining what kind of truths we will discover.

Why would the rejection of the Scientific Method be good for us?  For one, it may actually teach us something about the universe.  Instead of tweaking existing theories, which are increasing in complexity and losing their elegance, we may be able to think outside the box: take an alternative approach, rethink everything we know about the universe, and settle on a much more intuitive and legible understanding.

Maps

 Perhaps I inherited the love of them from my seafaring father.  Perhaps my precise, visual, mathematical mind picked up on their usefulness.  Perhaps I am OCD.  No matter what the reason, I've been fascinated with maps every since I was little.  I just finished preparing for my trip to Spain and--in what has become an obligatory part of any preparation--I saved the maps for each of the places I'll be visiting.

I love the fact that reality can be represented in such an intuitive, instantly valuable way.  I can look at the map and quickly orient myself, figure out the direction in which I should go.  A good map doesn't need a lot of detail to be informative -- all it takes to understand a map is some simple pattern matching, at least one (well, arguably, two) piece of information to match the real life.  Maps are, in my view, the original virtual reality.

There is probably also something about how maps easily provide comfort.  When I have a map on me, I never feel lost.  I feel in control, and in command -- after all, I have the territory charted so it cannot surprise me.  This is also why having maps on my mobile phone is one of the most valuable aspects of it.

Did you notice how everyone has their favorite map?  Either of a real place, or some treasure map they drew when they were little.  In fact, having thought about it, it's not just me: a little bit of map-worship is probably in all of us.

 

When it comes to electronic maps, I only have one invariant: a map must face north.

I have gotten a lot of weird looks from my friends when I explain to them that I like the Navigation system in my car to have the map facing north (as opposed to facing the direction of travel). Apparently it’s common sense to do the latter.

I disagree. It has everything to do with one’s objectives. If all you care about is optimizing for the user experience understanding directions, then yes, having the map face the direction of travel is better. It’s clear when to turn left and right because the map reflects what ahead of you so you can mimic easily. But for me there is an important objective that I think people undervalue: I value knowing where I am. In other words, I value having a mental model of the area, which allows me to gain intuitive understanding of how far things are and how to get from one place to another without a navigation system (an incredibly useful skill if you don’t have your nav, or if you have the annoying ones that don’t let you the passenger key in directions while you’re driving). There is something really powerful in having a good understanding of your surroundings; it gives you a firm ground.

You simply can’t build that mental model if the map keeps rotating, because there is no invariant that your brain can stick to.

And for anyone who gets confused translating turns on a rotated map into car turns, here is a better paradigm that I use: instead of thinking of turns as “left” and “right”, get used to thinking of them as “clockwise” and “counterclockwise”. Those concepts are invariant under a rotating map so you’ll never get confused.

Admittedly, one difficulty in such an arrangement is turning: it’s not always clear whether to turn left or right if the map is not facing the direction of your travel. Here is a good hack that can help you overcome this difficulty.

Suppose you arrive at a turning point:

Your navigation system (facing north) may show this, for example

Your navigation system (facing north) may show this, for example

It’s not immediately obvious that you’re supposed to turn left, sharply. Here is what you can do: draw an imaginary line that specifies your current direction on the map, and place an imaginary steering wheel at the intersection. Now grab the real steering wheel at the point where the extended line meets an imaginary steering wheel, and turn towards the direction in which you’re heading, like this:

This is how you know which direction to turn in (and how much to turn!)

This is how you know which direction to turn in (and how much to turn!)

All you need to do is imagine overlaying the map onto your steering wheel, to know where to grab the steering wheel and how to turn it. The above method has the added benefit of letting you know how much to turn — the sharper the turn, the more you’ll have to rotate the steering wheel!

If you don’t care about the magnitude of the turn, just the direction, a simpler method is simply to turn the wheel in the direction defined by the arc drawn from the final direction to the original one, like this:

A simple way to figure out the direction of turn

A simple way to figure out the direction of turn

In other words, simply imagine placing the map on the steering wheel, grab the wheel at a point where the final direction of travel intersects the steering wheel, and turn it towards the point of intersection of the original direction of travel and the steering wheel.

Try it, it’s really easy, and I know you’ve been antsy to switch the map to be displayed facing north! 

Pedestrians vs Bikes

 Ever since I started biking in Central Park, I've been formulating my opinion of pedestrians.

For one--I'm just going to get this off my chest--I am increasingly frustrated by pedestrians who think they are entitled to just cross the street and bikers will slow down for them.  I think it has to do with the sense of entitlement mostly because of the mixture of stubbornness and madness displayed on their faces; but also--let's face it--surely they wouldn't have done the same for a large ass truck heading their way.

In general, I found myself being less and less patient with pedestrians (I do, however, try to differentiate between those who just don't pay attention and those who jaywalk to spite me).  I used to slow down, later just swerve to avoid them.  Now I'm pushing it more and more, engaging in this terrible game of chicken.  I think, deeply, nobody wants to be run over by a cyclist (while the cyclist would definitely be injured and the bike damaged, the damage to the pedestrian is greater by simple laws of physics and the pedestrians must--let's hope--understand that intuitively).

Crosswalks are interesting in Central Park.  While they are accompanied by traffic lights, both pedestrians and cyclists seem to ignore them by and large.  My take on this is very simple: a crosswalk gives the cyclists the obligation to be more careful (it's like a flashing amber light for regular traffic).  A crosswalk with the walk signal for pedestrians gives the pedestrians right of way, by which I mean a pedestrian should feel to be in control of his or her pace in crossing the intersection in order to cross safely.  In other words, a pedestrian should not have to hurry half way through the intersection because otherwise a racing cyclist hits him or her; a pedestrian should be allowed to slow down or speed up.  The pedestrian is in control.  However, that doesn't necessarily mean the cyclist needs to stop at the crosswalk.  So long as the cyclist ensures he or she is not on a collision course (with adequate buffer to account for a reasonable change in the pedestrian's behavior), he or she can cycle through the intersection even when the pedestrian has a walk signal.

This rule is symmetric, of course.  A cross with the don't walk signal for pedestrians gives cyclists the right of way.  A cyclist should not have to swerve or slow down in order to avoid hitting a pedestrian, but a pedestrian is welcome to cross if he or she is careful not to get in the way of a cyclist, taking into account a reasonable change in the cyclist's behavior.

I like this rule because it's unambiguous and efficient (it's impractical for all cyclists and pedestrians alike to stop at all such crosswalks).  Similarly, it does give the pedestrian a slight edge (cyclists must be careful around crosswalks) which seems fair given the prevalent opinion about relative rights of pedestrians, cyclists, and motor vehicle operators.

Now, if only I got everyone to listen to me and actually behave accordingly...

A Different Way to Teach Exact Sciences

…Inexactly.

When I was at school, there was this time period when I found physics incredibly fun and interesting, and a time period when I found it painful and dull. Of course, the moments with experiments were by far more engaging than the moments with mathematics and equations, but I’m actually just thinking at the latter part — there were times when the formulas were beautifully simple and the results satisfying, and times when the calculations felt like drudgery, there were a plethora of formulae which I couldn’t intuit, and even the result didn’t “click” with me intuitively.

I attribute a large part of this lack of excitement over physics to excessive focus on algebra and symbolic manipulations. I consider myself fairly good at algebra, but I feel that even I would have benefited more from my physics tuition if I had thought of it less as an exercise pure math and more as a systemization of the physical world. I am not advocating for making physics less conceptual — quite the opposite — I want kids to understand that all things are connected, and that there are really very few rules that govern the world; that there is a kind of beauty to physics. I just don’t want to conflate this with a college dose of pure mathematics.

What is it precisely that I am advocating for?

What if we change the way we teach physics (and, while we’re at it, all exact sciences) to focus not on forcing kids to memorize all the formulas, which end up being derivatives of one another (but we don’t have the tools or the sophistication to know it), but on having them answer questions about the physical world by teaching them the few simple rules and equipping them with the tools to compute the answer, sacrificing the symbols along the way? In other words, I want to teach kids as few formulas as possible, instead showing them how they can transform these formulas numerically and compute the answer.

What I am proposing is no small matter. It means teaching the kids the concept of calculus (but without the heavy algebra behind it), and having them apply it in problems. Yes, they would be able to (numerically) integrate before they learned about exact solutions to quadratic equations, but why is this necessarily something to avoid?

I believe this would work for a number of reasons. First, while in the absence of sophisticated tools, checking the algebra was really the only fair way to evaluate students, these days we can follow the kids’ thought process even without any symbols. It is also satisfying to arrive at a tangible answer as both an apt metaphor for physics as a way to answer questions about the world, and something one can have an intuitive reaction to (“5″ is a much better answer to have an intuitive reaction to than “x^2+1, at 2″). It also decouples physics as an experimental science where theories are put in place and tested, from the mathematics behind the theories that can be daunting and distracting from the main point. And while I believe that symbolic manipulation is a great skill that drastically improves ones cognitive abilities, we still have mathematics that will teach it to the kids. And imagine the “aha” moment that kids will have once they realize that what they have been doing in math, transforming all these expressions, coming up with closed form solutions and exact answers, can enrich everything they have been doing in physics — using numerical calculus in application of a few very simple rules to arrive at the answers to problems.

By the way — it would be a sin to not recommend what I believe to be by far the most engaging, satisfying, and challenging physics textbook I have ever read: Motion Mountain. I wish I had had read it much earlier than I did (at 25). Motion Mountain is epic, in all the possible meanings of this word. Instead of focusing on hard math, it does its best to show me what physics is all about — the side of it that I was never shown in class. Its problems make me think (never recall), and, while you need to have a degree to take full advantage of it, I believe you can reach for it at an early age. In fact, it’s these “layers” that make the book so fascinating.

To See the Future

 If you could see the future, how would such an ability manifest itself?  How would you describe "seeing" the future, especially given that the future is much less one image as a superposition of an infinite number of probable images?  How do we take into account the "observer" effect -- where the future of some events drastically depends on what the one seeing it decides to do in the next few seconds?

I imagine that seeing the future would be just like seeing in a classical sense, with a few exceptions.  First, you could focus on some time in the future (just like you focus on a particular element in your field of vision) and that would reveal the state of reality in that point in the future.  It would be pinpoint-, but not distance-accurate (just like focusing is): you can focus on a particular existing element well and almost instantaneously, no matter how close or far it is, but you couldn't focus on an element at a particular distance.  Similarly, when seeing the future, you would be able to focus on a particular event, but not necessarily on a particular point in time (and you would only know by and large what time this event is going to happen).

Moreover--and more importantly--possibilities in the future would manifest themselves as blurry spots.  If something was a certainty, you would see it as sharp and distinct.  If something was a possibility, it would blur with the other possible outcomes.  For example, the sun rising tomorrow is a certainty so as you focus on the event of the run rising tomorrow you would see it sharp and distinct.  But, say, your dog might be hit by a car in a week so it would appear in your visions of the subsequent future as blurry.  The further out you "focus", the more blurry it will be.

This model comes to a beautiful conclusion in the case of the above mentioned "observer" effect.  As you focus on the future event that depends heavily on a decision you make, the details in the event will shift from blurry to more defined as you think more or less heavily of making one decision relative to the other.  In a way, you will be able to "focus" your vision of the future by committing to certain decisions.

On Invisibility

So much in our society relies on some very fundamental (and seemingly sure) assumptions about the world and the rules that govern it. What if some of them ended up not being true?

For instance, we assume we can perceive the world as it is, on a macro scale. Let’s consider a simple thought experiment and suppose that a small group of people throughout the world had the ability to become invisible (and, say, affect the visibility of a small set of objects in their reach). What would the implications be? It is famously said that invisibility is never used for good, so with that in mind presumably what would be affected are societal standards, controls and guardrails; the sticks that ensure that our civilization doesn’t collapse in chaos.

We would have to seriously rethink security and the way we govern access. If I were invisible, I could board a plane very easily (staying out of the way of others would prove somewhat tricky, but I’m going to consider this a merely logistic problem rather than a fundamental one). I could walk past most security gates, likely only expect for those that use non-visual controls or ensure only one individual could pass the gate at once. Security would not only need to change; it would likely also have to be implemented in places where there normally isn’t any, as now the barrier for a breach is much higher. The world with invisibility would be a paranoid one.

What about other similar assumptions? How would the world change if we could suddenly teleport cheaply, safely and instantly to any place in the world? What if we could fly (have we built fences similar to what we build around turkeys)?

Evolution of Systems

Looking at any system, any process, or anything that can be described as a black box with inputs and outputs, I can’t help but notice a distinct, linear progression, directed with a profound and powerful underlying idea that systems tend to increase in complexity naturally.

When a system is born, it is small and vulnerable. It makes many mistakes and may fail easily, but if it doesn’t, it adapts and quickly becomes better and grows in its capabilities. It remains easy to grasp mostly because of its size.

Over time it increases the number of degrees of freedom it can handle.

At some point the mechanics of the system become more like an art — it has enough degrees of freedom, and is stable enough to experiment with its controls. In this highly creative stage, it truly defines itself.

Size is the primary enemy of art so as the system becomes more complex and bigger, its systemization begins. The experimentation gives way to proceduralization, and as some of its outputs are deemed more valuable than others, they are commoditized.

After systemization, these systems focus narrowly on maximizing efficiency of these designated outputs.

The final stage is a natural consequence of specialization and optimization — the system begins to rely on its optimizations. Small deviations in output become costly, as are small deviations in input. Since no system exists in a vacuum, eventually every system becomes irrelevant as the world around it changes. The system dies (a death of explosion if its construction or attrition).

You have seen this evolution everywhere — companies begin their life as small startups that can likely fail but are also agile and productive. As they gain confidence in their status and stability, they begin their creative phase — a killer feature, or a risky but profitable expansion into an unlikely market. Once they turn into corporations, ad hoc work becomes proceduralized, the company is too large to quickly adapt so it focuses on what it does best. Once that’s defined, it minimizes costs. But the industry changes and the corporation, too large to change its operating models, becomes irrelevant. Just think of what happened to Blockbuster’s.

We can expand this to TV shows. A new show much catch the eye. It’s simple and has a small base of supporters. It can change rapidly based on early feedback, but it also plays with its characters to gauge viewers’ reactions. As it gets big, it is doomed to repeat the same tricks, the same lines, the same plot twists, because that’s what the viewers are used to, and it’s difficult to change in a way that doesn’t turn a large portion of the audience off. It becomes formulaic — it has its distinctive style, and it’s no longer creative. As the viewers change their tastes (or as one generation is replaced by another), the show becomes irrelevant and eventually gets cancelled.

This is also true with people, though with some parallels (for example, death means irrelevance to society; systemization means having a daily routine, having a rigid set of preferences).

The best systems can resist this progression for a long time — by remaining agile, maintaining its growth through compartmentalization and appropriate scaling, and maintaining a careful equilibrium between death of attrition (irrelevance) and death of destruction.

Keep Looking

We find comfort in light.  There is ample symbolism that gives light an undoubtedly positive meaning -- the light leading to an Afterlife, light as serenity, peace (have you ever seen any peace symbol that was surrounded by darkness?), energy, goodness.

But there is something better than light.  It's the twilight; it's the knowledge that the light is there somewhere, it just needs to be found.  The anticipation of light gives us hope and keeps us going.

In ancient mythology, there is a concept of Paradise Lost, mankind's fall from grace.  But in my view, Paradise is not really lost.  Man did not fail or screw up.  Instead, Man was shown a glimpse of Paradise, and then told to earn it.  Without seeing it in the first place, Man would never feel incentivized to keep looking for it.

In a way, what makes us human is our desire to keep looking.  We are always aiming for the next great thing.  Progress is just a disguise for mankind's search of answers to the infinite stream of questions.  It doesn't matter how many questions are left.  It doesn't matter where and when Paradise will be found.  We'll keep looking -- that's all that matters.

What makes a Moment?

I look back and remember moments in my life -- seemingly random, brief periods of time -- which I somehow attach a high sentimental value to.  In themselves they are irrelevant but they unlock my memory of a state of mind I was in during that moment.  Those moments truly are arbitrary -- for example, one of the strongest moments is linked to my memory of reading a local newspaper, sitting at a chair at my grandfather's place.  The moments are very distinctive and highly discrete.

I haven't been able to figure out why this specific moment and not, say, the one that happened just after it, helps me unlock my memory.  I did make two observations -- that enough time must pass to make a moment (the most recent moment happened to me three years ago), and that the time early in my life comes with more moments than the time later in life.  The former makes sense -- enough time needs to have passed for the memory not to be fresh and easily recallable.  As for the latter, I think it has to do with the fact that I perceived the world very differently, say, 20 years ago than I did 5 years ago, so it's more likely for a moment that happened early in life to unlock a deeper set of memories which are so unrecognizable (since I had a very different personality then).

I wrote down the moments I could think of -- there is a couple dozen of those -- but I don't like to go back to that list.  There is something precious about "stumbling upon" these moments, as a chain of reasoning takes me back in time to ultimately land on one of those moments.  Once I start thinking about the past, these special moments act as attractors -- I'm more likely to converge my thinking on a moment than not.

It's somewhat disappointing that the moments come at a decreasing rate.  I really enjoy reminiscing about my state of mind and enriching the set of recollections like this would allow me to keep these memories fresh.  Just like with a favorite song of yours, you can recall them too much and lose their magic.