Coming Out

It’s 11 p.m. on a Friday night and I’m heading home from work, shivering in the cold wind. My mind’s divided on what to do after getting home: practice my guitar stuff and go to sleep, or head to a nightclub and get the fatigue out of my system? Given two nearly identical emotional assessments and honestly not knowing in advance which to pick, I suddenly recall LessWrong and decide to use logic. Trying to apply logic in real life is an unfamiliar sensation but I prime my mind for recognizing accurate arguments and drift away for a moment, a proven technique from my mathematician days...

By the time I reach my front door, the solution for discriminating between two outcomes of equal utility has arrived and it’s a logical slam dunk. Tonight is Friday night. There will be ample opportunity to practice music tomorrow and the day after that. So get dressed and go dance now.

It worked.

You might be tempted to dismiss my little exercise as rationalization and I can’t really convince you otherwise. But the specific tool used for rationalization does matter. What if I’d made that decision based on some general ethical principle or a pithy quotation I’d heard somewhere? Success or failure would have prompted an equally ill-specified update of my held beliefs, the same way they have meandered aimlessly all my life. A single human lifetime sees a precious few belief-changing events — definitely not enough bits to select an adequate emotional framework, unless you started out with a good one. Not so with logic. Any vague verbal principle, however much you admire it, is always allowed to give way under you if you base your decisions on it… but logic is the ground floor.

The above episode has hit me hard for reasons I can’t quite verbalize. For the past few days I’ve been obsessively going over Eliezer’s old posts. No longer viewing them in the mindset of “articulate dissent”: this time I went searching for useful stuff. Turns out that most of his concrete recommendations are either way beyond my current abilities, or solving problems I haven’t reached yet. Forget expected utility calculations, I don’t even have the basics down!

Logic is the ground floor. Disregard the defense of biases. If you find yourself falling, use logic.

I remember a quote from functional programming researcher Frank Atanassow about his formal semantics enlightenment, similar in spirit:

When I graduated, I was as pure a corporate hacker as you can imagine: I wanted to be a corporate salaryman; I wanted to “architecture” object-oriented programs in the Gang-of-Four style; and above all, I was convinced that CS is a completely new field unto itself and had no relation at all to all that mathematical crap they were trying to stuff down our throats in school...

What happened next, I remember very clearly. I bought a book, “Lambda Calculus” by Chris Hankin. It’s a thin (<200 pages) yellow book, mostly about untyped lambda-calculus. It has a fair amount of equational stuff in it, but I took it on my trip to Korea (to get my Japanese visa—I was working in Tokyo, and you have to leave the country once for some reason to get a working visa) and was amazed that I could understand it...

After that, I was able to read most of the programming language theory literature, and I read TONS, and tons of it. I seriously couldn’t get enough, and what I marvelled at was that you could actually make indisputable statements about programs this way, provided your language had a formal semantics. It was no longer a fuzzy thing, you see; it relieved me of a great burden, in a way, because I no longer had to subscribe to a “methodology” which relied on some unsubstantiated relation between real world-”objects” and programs. I came to understand that certain things have to be true, provably, incontrovertibly and forever, if your programs can be translated easily into mathematical terms. This was a huge step for me.

There’s much work ahead, but at least now I know what to do.