Comment by wmorgan on What are you working on? March / April 2014 · 2014-03-16T18:25:53.005Z · score: 5 (5 votes) · LW · GW

Here we are. We buy and sell Magic cards.

Attn Magic: the Gathering players

If you want to buy something, send me a PM and I'll send you a coupon code for a LW discount.

If you have MTG cards you want to sell, I want to talk to you. Our buy prices are competitive and we will buy most everything. Drop me a line with what you've got and I'll get back to you quick with an itemized spreadsheet breakdown.

Comment by wmorgan on What are you working on? March / April 2014 · 2014-03-15T18:31:23.045Z · score: 8 (8 votes) · LW · GW

Goal: Money

So I moved to Austin for an adventure with three or four half-plans for making money which all fell through, plus unexpected expenses hit me hard. A few months ago I read the writing on the wall and set about finding a Real Job. Interviewed at a local startup; they didn't want me. Went to some programmer meet-ups, gave a couple talks, stuck around afterwards to ask who was hiring. Found a great company that way, so starting this month I'm living in L.A., working for a funded startup in a skyscraper.

My buddy and I continue to grow our e-commerce business, 1100+ orders filled so far this year. Our inventory contains over 80K individual items. Custom software that I've written has allowed us to scale what is essentially a 1 or 1.5 person operation with room to grow. We ran a booth at a live event earlier this month which went great, did a lot of buying & selling, and generally made a great impression on a lot of customers. Expenses are huge, though, so even if we're profitable it isn't by much. My goal is for us to be ramen profitable by the end of the year.

So I'm walking two paths towards wealth. Moving forward is going to be a grind, a lot of hard work and careful planning but I'm excited for the opportunities.

Comment by wmorgan on What are you working on? October 2013 · 2013-10-02T15:58:23.665Z · score: 9 (9 votes) · LW · GW

I left my family, my job, and my girlfriend to move across the country, to Austin, to explore the world, to work for myself, and to become a Complete Social Creature, aka a Normal Person, aka an Adult.

Progress. Being so far from home has freed me to act like who I want to be, rather than who people expect me to be. This is coming at the same time that social interactions are making much more sense than they did when I was younger. I understand what I have to offer and what others have to offer me, and how to frame our interactions like that. Dating is easier and less stressful, which is amazing considering how inscrutable I found it even a year ago. I've been working full-time on the side business, and we filled over 650 orders in September.

Setbacks. The day I moved down here, an unexpected expense wiped out a good chunk of my savings, at the same time my buddy quit the stake (poker), and the consulting job I thought I'd lined up never happened. So I'm playing with less of a safety net than I'm accustomed to, and I have to live on minimal income which is a stressor but a minor one. I haven't been here long enough to build the deeper bonds of friendship so I need to tread carefully. But overall it's an adventure and a great challenge and I'm very excited to keep moving forward.

Comment by wmorgan on Group Rationality Diary, September 16-30 · 2013-09-16T04:50:09.220Z · score: 2 (2 votes) · LW · GW

I'm coming around on the stronger version of the Efficient Market Hypothesis that says, "you can't buy and sell equities in a way that beats the market in the long run. Just invest in an index fund, pay low fees, and don't try to pick stocks." I'm not sure I believe this any more, for a few reasons.

One is that I lived with a guy who traded professionally and we had a series of conversations where he explained about stocks to me, specifically why information-efficient prices don't automatically imply an unbeatable market.

Another is that the outside-view strong-EMH argument has some vague structural similarities to arguments I hear about poker being unbeatable, with the following facts that seem VERY reminiscent of trading:

  • The long run is so long and the variance so high that day-to-day performance is basically all noise, and so
  • Lots of players with losing strategies appear to beat the games, and
  • Lots of players with winning strategies lose money, even over "long" periods of time, and THEREFORE
  • Just because someone has won in the past doesn't mean you can do what they do and make money.

But I know that poker is in fact beatable, I know why it's beatable, and I know it because of specific facts about the reality of the games & the players. Similarly I suspect that certain facts about real markets and market actors may make them beatable by retail investors.

Still researching this.

Comment by wmorgan on MIRI's 2013 Summer Matching Challenge · 2013-07-26T17:47:36.194Z · score: 24 (26 votes) · LW · GW


Comment by wmorgan on What are you working on? July 2013 · 2013-07-04T00:38:13.843Z · score: 16 (16 votes) · LW · GW

My goals are money, power, and romance. Some good news on all three, finally!

Money. I'm bankrolling my buddy in a high stakes poker game. He's highly skilled but rather risk-averse, so we negotiated the following deal: I provide his buy-ins, he gives me 40% of his winnings and keeps the rest. It's been a great year so far, netting me about a year's worth of living expenses for basically zero time investment. As an unexpected side effect, by talking over hands and general strategic concepts with him, I've absorbed some of his poker skills, which I've tested in a few high stakes games this year to good success. I have no desire to play professionally, though.

Power. I've decided to strike out on my own, career-wise. I've got a lot of ideas for software products that I'd like to take the time to develop more fully. My side business is two years old and has filled over 3,500 orders and could probably support me if I did it full-time. I have a lot of leverage at my current job so I talked to my boss about it. He offered me a raise which I turned down, then he said that he'd hire me as a founding CTO of his new business if I wanted the position; I said I'd think about it. They're amenable to hiring me on a consulting basis: I think I can get hired back at around 4x my current salary for short-term engagements, which would a fantastic deal for me and a pretty good deal for them, too.

Romance. After another disastrous attempt to hit on girls last New Year's Eve, I gave up pursuing women. The days were cold and dark and I couldn't deal with the rejection, so in order to live with myself I made a resolution to stop trying. The effects on my mood were phenomenal, and by April I'd look in the mirror and actually like what I saw. Then a couple months ago I met a girl at a cookout, and I thought she was giving me the goo-goo eyes, so I took her aside and kissed her and she liked it and we've been dating since then, my first regular girlfriend and it's awesome; I'm her first boyfriend too so we're learning everything together.

Comment by wmorgan on What are you working on? July 2013 · 2013-07-03T04:09:06.700Z · score: 2 (2 votes) · LW · GW

Some great resources on poker AI: University of Alberta Computer Poker Research Group. Papp 1998 in particular goes into detail about what makes it difficult, briefly: multiple opponents, imperfect knowledge, risk management, agent modeling, deception, and dealing with unreliable information. To these I would add the distinction between optimal and maximal play:

In chess AI, it never really matters what you expect your opponent to do like it does in poker. In chess, you just always try to move the board into the most favorable possible state. A win is a win in chess, but in poker the optimal strategy makes less money than an exploitable, but maximal strategy. But if you're playing an exploitable strategy, then your opponent can turn around and play a strategy to beat you...much of poker strategy is figuring out how to be one "level" above your opponents for as many hands as possible. And getting an AI to do that is difficult.

Comment by wmorgan on Public Service Announcement Collection · 2013-06-27T18:08:24.203Z · score: 2 (2 votes) · LW · GW

Agreed about reading random source code files. I popped open the first .py file I found on the django project and got this:

which I would say is a little esoteric for even the most precocious non-programmers.

But I also agree that investigating one's programming aptitude is a great low-investment high-reward endeavor. It does seem to be the case that many people just "get it". This thread offers some great suggestions on how to check: Checking for the Programming Gear.

Comment by wmorgan on Open Thread, June 2-15, 2013 · 2013-06-02T17:53:26.824Z · score: 4 (4 votes) · LW · GW

I was on the subway the other day and Sovereign Bank had bought up all the ad spots advertising in big print "MONEY MARKET ACCOUNT. 0.6% APY. $100,000 MINIMUM." The interest rate offered on a smaller deposit is presumably less than that, and yet the bank thought this deal would be appealing enough to advertise. This makes a year of "emergency fund" holdings in a money market account approximately worth the change in the couch. I don't see how that's enough of a difference from a checking account to worry about.

Comment by wmorgan on Using Evolution for Marriage or Sex · 2013-05-07T23:31:31.420Z · score: 9 (9 votes) · LW · GW

New England guy here. I was surprised when I read OrphanWilde's comment yesterday; I went out last night and observed. These are the rules most of us follow:

  1. Someone trying to initiate eye contact wants to talk to you -- even just "hey, how are ya" or a gesture of acknowledgement like when you pass them on the street. But the eye contact is always a prelude.
  2. If you don't want to interact, look in their general direction, but not into their eyes. If you do catch their eye, either look away fast or give 'em a nod or make your eyes wide or something.
  3. You get one freebie look when you walk into a room or get on the bus, or when someone pulls up next to you in their car, that sort of thing. Gotta know who's there.

It feels kind of evasive, I guess, but I don't believe that in other parts of the world the rules are much different than this. Especially other cities, obeying the meta-rule of "your acknowledgement of a stranger is inversely proportional to the number of other people around."

I don't see any connection to aggression, creepiness, or man/woman.

Some examples:

  • I'm at the store trying to find something. Someone walks up beside me to get something. I ignore them, grab the thing, leave. Eye contact in this situation would be unusual.
  • Walking past someone on the street. Here eye contact is optional, but mostly avoided. In Boston you generally will not get a response from a greeting anyway, but in Western Mass you will. In Boston people won't even notice you're trying to look at them, most of the time, so in those cases a verbal greeting is actually surprising.
  • I sit down across from you on the train. Take your freebie look if you want it, greeting optional. For the rest of the ride, don't look into my eyes. The first time you do it, I'll give you the look-back. The second time, I'll start a conversation.
  • Airplane. Completely average to never look into the eyes of your neighbor. But those have people from all over on them.
Comment by wmorgan on Boring Advice Repository · 2013-03-11T22:03:32.833Z · score: 27 (26 votes) · LW · GW

Always negotiate on salary, i.e. ask for more than their initial offer. Patrick McKenzie explains why.

Comment by wmorgan on 2012 Winter Fundraiser for the Singularity Institute · 2012-12-14T20:16:59.109Z · score: 30 (30 votes) · LW · GW


Comment by wmorgan on Money: The Unit of Caring · 2012-11-26T19:24:50.220Z · score: -1 (1 votes) · LW · GW

Have you ever tried writing software? Like they say: "a programmer is a machine that turns coffee into money," or something like that.

Comment by wmorgan on The Sin of Underconfidence · 2012-09-28T20:56:00.453Z · score: 3 (3 votes) · LW · GW

I'll give it a shot.

In poker you want to put more money in the pot with strong hands, and less money with weaker ones. However, your hand is secret information, and raising too much "polarizes your range," giving your opponents the opportunity to outplay you. Finally, hands aren't guaranteed -- good hands can lose, and bad hands can win. So you need to bet big, but not too big, with your good hands.

So my buddy and I sit down at the table, and I get dealt a few strong hands in a row, but I raise too big with them -- I'm overconfident -- so I win a couple of small pots, and lose a big one. My buddy whispers to me, "'re overplaying your hands..." Ten minutes later I get dealt another good hand, and I consider his advice, but now I bet too small, underconfident, and miss out on value.

Replace the conversation with an internal monologue, and this is something you see all the time at the poker table. Once bitten, twice shy and all that.

Comment by wmorgan on Who Wants To Start An Important Startup? · 2012-08-14T21:09:08.843Z · score: 4 (4 votes) · LW · GW

I don't know anything about programming Macs, but here are some thoughts for anyone who wants to try this:

  1. DDHotkey can register global hotkeys.
  2. The current working file of a window is called the "represented file." You can get the path to it by calling representedFilename of the active NSWindow (I couldn't figure out how to get the active NSWindow). I didn't try to find out how to get the currently selected file in the Finder.
  3. Cyberduck is scriptable with AppleScript, I think. It has an "Upload" entry point. See here. It has a single required argument, the path of the file to upload. Wouldn't it be sweet if you could pass in the path from step #2, and everything just worked?

(Another option for step #3 would be to programmatically drag-drop the active file to the Cyberduck window, but I couldn't figure out how to do that)

Comment by wmorgan on What are you working on? August 2012 · 2012-08-03T16:35:53.931Z · score: 26 (26 votes) · LW · GW

Dating. Progress from June, February, December, October.

A year into my experiment, I'm glad to finally report some success: I asked a girl out and she said yes and we had a very nice time together ending in my first real sexual intimacy. I tried to see her again, and she was enthusiastic about the prospect for a week or so, but things cooled after that. I think she moved on.

For a long time before this I had to seriously consider some scary hypotheses about myself, many along the lines of "you are so X that you'll never Y." I've updated all of those downward. But as far as the actual date went, I don't think my changes of the last two months had much to do with it. In the honesty of calm retrospection, no theory fits as well as "we both wanted to," i.e. "I got lucky," i.e. I don't actually know exactly what works and what doesn't, yet.


A year ago, I wouldn't even have been in a position to have this kind of good fortune. And even if, say, half the effort was hers, well, the other half came from somewhere, along with a bunch of nontrivial skills that took practice & research & reflection to build. I could name a dozen ways that the night would have sucked if it happened to wmorgan_2010. But it was actually awesome, and while I can already feel myself climbing back on the hedonic treadmill, for now I'm very very happy to have finally completed level three. Next subgoal is to do it again.

Comment by wmorgan on Admissions Essay Help? · 2012-08-01T20:29:32.433Z · score: 5 (5 votes) · LW · GW

The article you linked talks a little bit about modeling admissions officers. One nonobvious thing to consider:

There's a very good chance that the only person who will ever read your college essay is 25 years old.

Some unsolicited advice: private universities are way overpriced right now, and 17- & 18-year-olds are regularly encouraged to take on massive nondischargable debt in a way that many consider exploitive. Stanford's tuition broke $40K this year...have a plan, is all.

Comment by wmorgan on SI's Summer 2012 Matching Drive Ends July 31st · 2012-07-29T16:50:08.826Z · score: 13 (15 votes) · LW · GW


Comment by wmorgan on What Is Signaling, Really? · 2012-07-10T18:21:11.123Z · score: 10 (10 votes) · LW · GW

What you're saying rings true, and a lot of people agree with you, but is it actually right? Is it testable? I can think of plenty of counterexamples, by people who look like they know they're doing. But I can't think of anyone whom I just want to grab and yell at: "you'd be so effective if you'd just shut up about the signaling already!"

Comment by wmorgan on Morality open thread · 2012-07-08T21:35:43.310Z · score: 5 (5 votes) · LW · GW

Don't sell your reflexes short. Our brains were executing complicated plans for millions of generations before acquiring explicit reasoning, i.e. language. Lately I've been leaning towards the Elephant and Rider model of decision-making, or drawing from this pithy tweet by Stephen Kaas. In your case, I think, your elephant wants to surf the web, and it has a lot more brainpower than your goal-setting rider who wants to finish the paper.

In a practical sense, I think this means you want to put yourself in situations where success is the default, expected result. Use your conscious mind to set up the system, once, then the full power of your brain will work towards your goal, rather than have your "seek cheap entertainment" drive fighting your "finish my paper" drive. (Easier said than done!)

Paul Graham has two computers, one online and the other disconnected from the Internet, and his rule is "you can waste as much time as you want, as long as it's on the other computer". That works for him. Scott Adams' rule is "go to the gym five times a week" even if that means walking through the doors and then walking out immediately. He says, "losers have goals and winners have systems."

Comment by wmorgan on [SEQ RERUN] Existential Angst Factory · 2012-07-07T21:31:57.036Z · score: 3 (3 votes) · LW · GW

Here you go.

Comment by wmorgan on Less Wrong on Twitter · 2012-06-22T18:53:46.271Z · score: 11 (11 votes) · LW · GW

The Twitter devs vetoed that idea back in 2009 -- too much spam potential. Here's my 5-minute effort anyway:

I don't have a Twitter account so the page isn't tested, but it looks like it works -- give it a second to load, though.

Edit: The following JavaScript will turn all Twitter links on this page into follow links. Couldn't figure out how to make a bookmarklet in markdown:


  .attr({"id": "twitter-wjs", "src": "//"})
Comment by wmorgan on Looking for an intuitive explanation of expected outcome · 2012-06-20T15:19:12.455Z · score: 2 (2 votes) · LW · GW

Because someone downvoted it. If I had to guess why they did it, it'd probably be some combination of these:

  • It doesn't answer OP's question -- I think Blackened was asking something more specific than what I answered.
  • It comes across as overconfident (whoops)
  • It's needlessly personal (self-aggrandizing) -- the word "I" shouldn't appear in it at all.
Comment by wmorgan on Looking for an intuitive explanation of expected outcome · 2012-06-20T03:19:27.879Z · score: 1 (3 votes) · LW · GW

Mathematically literate like grad students, or quants? I'd expect to hear that justification much more from the former group than the latter. It doesn't hold water, right?

Comment by wmorgan on Looking for an intuitive explanation of expected outcome · 2012-06-20T02:37:06.444Z · score: -1 (1 votes) · LW · GW

You're explaining expected value and it's absolutely true. It's the law that tells you what decision to make.

If there's an intuitive explanation, I haven't found it yet. All I know is that there's a reliable cluster of people who

  • prefer a certain $500 to a 15% chance of a $1,000,000.
  • will never bet with you on anything, no matter how sure they are.
  • call a $5 scratch ticket "paying five dollars for entertainment"
  • believe that it's impossible to be a professional gambler / poker player
  • say things like, "the reason people lose money in stocks in they get too have to put your money in, wait for the price to go up, then sell it!"

Even weirder are the ones who know the math, agree with you that something is a good bet for them to take, and then refuse to bet anyway! Like math and decisions occupy completely different worlds, and the heuristic "if you gamble, you'll lose" takes precedence over EV.

Comment by wmorgan on What are you working on? June 2012 · 2012-06-09T15:23:14.565Z · score: 1 (1 votes) · LW · GW

For what it's worth, I think you make great points in your comment and I agree with all of them :-D

I'm reminded of what Joe McNally said about tradeoffs between goals and principles:

If someone won’t listen to what you have to say because you’re not wearing a tie, then put on a tie, ’cause what you have to say is more important than not wearing a tie.

There's a difference between behavior that's obviously harmful and seriously harmful. Status games are silly and rude and promote bad epistemology, I agree, but they're everywhere, I doubt I'm really hurting anyone on the margin of my participation, and the potential payoff, AFAICT, is of life-changing importance. So I'm treading carefully, but moving forward.

Comment by wmorgan on Welcome to Less Wrong! (2012) · 2012-06-07T00:49:05.376Z · score: 0 (0 votes) · LW · GW

I've never seen a compiling AI, let alone an interrupted one, even in fiction, so your example isn't very available to me. I can imagine conditions that would make it OK or not OK to cancel the compilation process.

This is most interesting to me:

From these examples, I think "will become a person" is only significant for objects which were people in the past

I know we're talking about intuitions, but this is one description that can't jump from the map into the territory. We know that the past is completely screened off by the present, so our decisions, including moral decisions, can't ultimately depend on it. Ultimately, there has to be something about the present or future states of these humans that makes it OK to kill the baby but not the guy in the coma. Could you take another shot at the distinction between them?

Comment by wmorgan on Welcome to Less Wrong! (2012) · 2012-06-05T04:50:28.929Z · score: 0 (0 votes) · LW · GW

You are right; retracted.

Comment by wmorgan on Welcome to Less Wrong! (2012) · 2012-06-05T00:09:41.906Z · score: 0 (0 votes) · LW · GW

Consider this set:

A sleeping man. A cryonics patient. A nonverbal 3-year-old. A drunk, passed out.

I think these are all people, they're pretty close to babies, and we shouldn't kill any of them.

The reason they all feel like babies to me, from the perspective of "are they people?", is that they're in a condition where we can see a reasonable path for turning them into something that is unquestionably a person.

EDIT: That doesn't mean we have to pay any cost to follow that path -- the value we assign to a person's life can be high but must be finite, and sometimes the correct, moral decision is to not pay that price. But just because we don't pay that cost doesn't mean it's not a person.

I don't think the time frame matters, either. If I found Fry from Futurama in the cryostasis tube today, and I killed him because I hated him, that would be murder even though he isn't going to talk, learn, or have self-awareness until the year 3000.

Gametes are not people, even though we know how to make people from them. I don't know why they don't count.

EDIT: oh shit, better explain myself about that last one. What I mean is that it is not possible to murder a gamete -- they don't have the moral weight of personhood. You can, potentially, in some situations, murder a baby (and even a fetus): that is possible to do, because they count as people.

Comment by wmorgan on What are you working on? June 2012 · 2012-06-04T06:41:37.518Z · score: 3 (3 votes) · LW · GW

Alright, I'll PM you something this month; we can see if you get anything out of it.

Comment by wmorgan on What are you working on? June 2012 · 2012-06-04T06:31:56.779Z · score: 1 (1 votes) · LW · GW

Sure thing

Comment by wmorgan on What are you working on? June 2012 · 2012-06-03T17:37:46.209Z · score: 32 (36 votes) · LW · GW

The goal is to date successfully. The subgoal is to get one date. Despite meeting a lot of single women, flirting with them, and getting some phone numbers, none of them have been willing to actually go out, or they've made plans and then cancelled. The working theory is that I'm way less attractive than I think. So I'm debugging my appearance and behavior.

Clothes. My process was this: go online, read about fashion, put clothes on, stare at mirror. "According to this, none of my shirts actually fit!" Go to the store, try shirts on, "and none of these fit either!" Go to a tailor, spend $180 to get five shirts ruined (N.B. test a tailor before giving them a big chunk of your wardrobe). Go to a new tailor, and finally I now own a shirt that fits like it's supposed to.

I had tried improving my clothes before without effect, but I think the latest batch of changes bumped me up a level. I've also been testing out these high-status behaviors, so it's hard to isolate changes, but these are new in the last two months:

  1. People walking on the street get out of my way (this led to a lot of "sidewalk dancing" for a while, because I was still expecting them to expect me to move).
  2. Pretty girls have started conversations with me. That NEVER happened before.
  3. In groups, men have been taking way more shots at me.

Social. I can now reliably initiate conversations with strangers. I did this by noticing that I was comfortable engaging with people, as long as they made the first move (i.e. they said something to me). So I started gradually lowering my standard for what qualified as a first move in my mind, e.g. if they asked me to save their place in a line, then I'd start a conversation when they got back. I'm at the point now where even passive things qualify, like "he's carrying a trombone case" or "she's wearing a cool shirt." And when someone walks across the room to stand near me, to not talk to them feels almost as awkward as ignoring something they said.

This is a useful skill in general, but it's really nice for flirting, because you don't have to rely on them or some external event to throw you together. There are some other benefits too, like having more control of the conversation. The most surprising thing I've noticed is how pleasant it always is: even when I'm hitting on girls that just aren't interested, they're friendly, and never offended. We talk for a while, I say goodbye, and we go our separate ways. What was I so worried about?

There's a lot more that I'm trying, but this comment is already too long. I am keeping a log of my changes that I'm sure will be completely useless to everyone except me, but I'm tracking it anyway. See you in August, hopefully I'll have some good news!

Comment by wmorgan on Rationality Quotes June 2012 · 2012-06-01T14:27:20.502Z · score: 0 (8 votes) · LW · GW

You have to know exactly what you want, and you have to know exactly how to get it.

Eben Moglen, on how to change the world

Comment by wmorgan on Open Thread, June 1-15, 2012 · 2012-06-01T05:56:48.537Z · score: 6 (6 votes) · LW · GW

I notice you have a STEM degree. Since the job market is in your favor, I'll assume you will find multiple employers interested in hiring you. Learn about salary negotiation now, before you go into an interview. If you're as clueless as I was when I got my first job, then you can pick up thousands of dollars for a few hours of research.

Recommended reading:

Comment by wmorgan on Open Thread, June 1-15, 2012 · 2012-06-01T05:34:26.464Z · score: 2 (2 votes) · LW · GW

I've been trying to adhere to it for a year or so. My main point of departure is that I drink a lot of diet soda and beer. My results:

  1. I lost five pounds in the first two months and the weight didn't come back, despite consuming slightly more calories, and a lot more calories from fat.
  2. It's easy for me not to graze on simple carbohydrates, because I feel fuller. Regardless of your nutritional philosophy, most of us agree that potato chips and cookies do nothing for you.
  3. I haven't gotten or given anyone food poisoning or any other indication that my food is too undercooked. Especially for beef and lamb, I strongly suspect that I could eat it raw and be OK. Similarly, but not so much, for eggs, fish, and pork. I still cook the pink out of chicken, but I'm eating much less chicken anyway.
Comment by wmorgan on PSA: Learn to code · 2012-05-26T07:56:56.024Z · score: 0 (0 votes) · LW · GW

The pleonastic cat was intentional (I like the expressiveness), but I didn't know that about pipes. Very cool!

Comment by wmorgan on PSA: Learn to code · 2012-05-25T21:00:57.133Z · score: 6 (6 votes) · LW · GW

Agreed about debugging. Dijkstra said something like, "Debugging is the process of taking bugs out; therefore programming is the process of putting them in." Or consider the revelation of Maurice Wilkes:

As soon as we started programming, we found to our surprise that it wasn't as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs.

One of the biggest misconceptions I notice in non-programmers is that they think it's mostly typing: "telling the computer what to do." Depending on the task, it's a lot of reading, or researching with Google, or staring intently at text on the screen for long minutes until you figure out what you're doing wrong.

Knowing how to program can often be secret sauce for semi-skilled labor. This resourceful individual claims to have tripled their salary by writing a program to mostly-automate their work, thereby collecting the lion's share of bonuses. At my company, I've saved whole person-weeks of others' time with really simple stuff.

My first software job was working for a guy who saw a need, wrote one program, and he's been supporting his family & lifestyle business for 7+ years by selling licenses for $1K-$10K per seat-year to corporate clients who are absolutely thrilled to buy them. Opportunities like this are everywhere, once you start to notice them.

the second most common letter for an English word to end in

Cribbing a bit from Doug McIlroy:

cat /usr/share/dict/words | \
sed -e 's/.*\(.\)/\1/' | \
tr A-Z a-z | \
sort | \
uniq -c | \
sort -rn

Edit: whoops, John_Maxwell_IV is right about the above program. It's 50% humor, 50% code golf.

Comment by wmorgan on Why do people ____? · 2012-05-04T18:21:29.938Z · score: 3 (3 votes) · LW · GW

This is an awesomely clear explanation of the thought process. I can see how "willingness to take on an enemy" or "willingness to speak for everyone" may be deciding factors in who boos and who doesn't. It also explains why booing only happens in large crowds (at sufficiently small events, everybody is in the same group). Cheers!

Comment by wmorgan on Why do people ____? · 2012-05-04T18:05:54.780Z · score: 2 (2 votes) · LW · GW

Thanks for the reply, and upvoted. Now there are three things I don't understand ;-). It rings true in the sense that people can be reliably expected to behave that way. But I still cannot empathize, and if I have the same mental machinery as the booers, then I ought to be able to.

  1. Fun to boo. This one feels right and yet so foreign. Shouldn't sympathy for the target of criticism kill the fun? Like you imagine doing something hurtful, then you picture the other person, hurt. Then you imagine what it would be like to be that person, and, jeez, I wouldn't want that! So I'd better be nice to them. (This is why I still can't empathize with cruelty. I can see hurting someone unintentionally, or when the stakes were high, but petty malice is so weird. What are these people thinking?)

  2. Thrill of the crowd. Sometimes it's easier to go along with the crowd, like if everyone is doing X, then it's just simpler to do X than to do nothing. And sometimes you can use the crowd dynamics to get away with something you'd never do as an individual. But thrilling? Like a roller coaster, or gambling?

  3. Anger. Sure, I've seen bad performances. But booing doesn't improve them; it only makes them worse for anyone in the audience that might be enjoying themselves. And it's almost never the performers' fault in the sense that they're doing it to me, so any anger would be misplaced. And even if I was actually angry with a performer, booing isn't the best way to take it out on them. It's just the most public way.

Then again, misplaced anger serves a useful purpose in some contexts. My buddy's sister gets a lot of good deals at stores because she verbally abuses the employees, and she does this not to get the deals (that would be sociopathy), but because she always perceives an insult ("Did you see the way he was looking at me?!"). Maybe it makes sense to have a general policy of getting "irrationally" angry sometimes.

Comment by wmorgan on Why do people ____? · 2012-05-04T15:53:08.245Z · score: 26 (26 votes) · LW · GW

For many people, alcohol raises talkativeness and lowers inhibition, so you're more likely to say things you normally wouldn't (in vino veritas). Sharing private things is a friendship-builder (HPMOR 7), but it can also be embarrassing. Drinking is a pre-commitment to build friendship through potentially embarrassing interactions, and when you abstain, you're saying, "I'll hear your secrets, but keep mine, thank you very much," which is a suspicious and untrustworthy kind of stance.

To the extent the above is true, it's too bad, because

  1. Some people really don't like drinking, and alcohol doesn't make them more sociable anyway
  2. No one should need to self-handicap in this way to trust and be trusted
  3. It's a pre-commitment, limiting your options
Comment by wmorgan on Why do people ____? · 2012-05-04T07:08:54.260Z · score: 7 (7 votes) · LW · GW

Why do people boo performers? Example: I was at Geek Bowl 2012, which was this huge team trivia event in an auditorium, and toward the end of the night they invited participants to come on-stage and dance in teams for 45 seconds per team. Only 4 of the 200 teams volunteered, and while they danced, the crowd noisily jeered them. Now, the dancing wasn't great, but...

  1. These are amateurs and they're clearly nervous. Based on those facts alone, I would cheer them no matter what. Golden Rule, right? It's only 45 seconds.
  2. You gain nothing from booing them, except possibly you signal...what? Being loud and opinionated? Being in a position of judgement and therefore high-status?
  3. Even assuming there's a signaling explanation, I cannot figure out the thought process that leads to booing. Like, they somehow get angry at the performers? Or is it morbid curiosity, and they wonder if it'll get even worse if the dancers get flustered?
Comment by wmorgan on Take heed, for it is a trap · 2012-05-02T01:34:43.239Z · score: 1 (1 votes) · LW · GW

It turns out not to matter. Consider a formalism G', identical to Godel numbering, but that reverses the sign, such that G(N) is true iff G'(N) is false. In the first N numbers in G+G', there are an equal number of truths and falsehoods.

For every formalism that makes it easy to encode true statements, there's an isomorphic one that does the same for false statements, and vice versa. This is why the set of statements of a given complexity can never be unbalanced.

Comment by wmorgan on What are you working on? April 2012 · 2012-04-03T09:38:42.234Z · score: 0 (0 votes) · LW · GW

More immediate goals have been put on hold while I pursue a project of opportunity. Work has sent me to the Philippines, where I've been for the past three weeks, to help the US Army build schools. Since I want to, one day, live and work in southeast Asia for an extended period of time, this has been a great chance to gather information cheaply.

Lots of firsts for me: first time outside the US, dealing with a language barrier, working in a military environment (I used to wonder how I'd have fit in if I'd joined the service, and WOW the culture does not suit me AT ALL). It's been highly stressful (also a new experience because my life is so relaxed) and highly rewarding. The best part is the success we've seen on the project: this reflects well on my boss and my company, and I'll use that capital when I get back home. I just have to decide how to spend it.

Comment by wmorgan on What are you working on? February 2012 · 2012-02-05T21:28:43.497Z · score: 18 (18 votes) · LW · GW

Dating: The girl from my previous post cancelled on me 30 minutes before we were going to meet. Then the next week she invited me out to lunch and cancelled again, an hour out. So I guess she didn't actually like me.

Then I went on a blind date with FOAF and that went OK. I took her out again but there was just no romantic chemistry, so it was a couple of nice times but that was the end of that.

I've been trying to get better at reading the subtext of social interactions to tell when someone is interested. I noticed that a single friend had been getting touchy with me when she hadn't been before, calling me by a cute new nickname, getting flustered when I teased her, etc. So when she offered to make me a dinner I decided it was worth taking a chance, toward the end of the night I held her hand...and she DID NOT like it. Unambiguous (but friendly) rejection. Confirmation bias on my part, I suppose.

So still failing. Still working hard to improve.

I'm beginning to suspect that there's a big difference between the way I see myself and the way others see me, i.e., I'm actually unattractive to most women. This is a hard pill to swallow, but if it's true, then I want to believe it's true.

So here's what I'll be doing over the next two months:

  1. Improve appearance as much as possible. Get shirts tailored, start lifting, whiten teeth.

  2. Work on empathy. Imitate the gestures of whoever's speaking. Dedicate time to thinking about others when they're not around: "I wonder what he's doing right now?", "I wonder what she thinks about that?"

  3. Meet lots of people. Start more conversations with strangers. Go to some of the tech meetups in the city and mingle. Go to some cooking classes. Keep notes and review them.

This is gradually becoming the hardest thing I've ever done. Hopefully that will make it all the more rewarding when it finally works out!

Comment by wmorgan on Automatic programming, an example · 2012-02-02T19:18:41.000Z · score: 1 (1 votes) · LW · GW

This is the generated code segment:


Those four lines together amount to a shift 10 bits to the right, i.e., division by 1024.

I think you understand what's going in the code. The point of my refactoring was to make something that was human-readable: something that I could describe in English. And the English for those four lines of code is "divide by 1024." That's what those four lines do.

Comment by wmorgan on Automatic programming, an example · 2012-02-01T22:13:40.730Z · score: 4 (4 votes) · LW · GW

Very interesting demonstration. Thanks for sharing this; it was fun to read through! I think I have a pretty good idea of how it works.

As a professional programmer:

That code it really, really shitty. It's unreadable, and for that reason, a human cannot look at the generated code and figure out "what's going on," i.e. Kepler's laws. Insofar as it works, it's much more reminiscent of 0x5f3759df, but that algorithm was optimizing for speed, not correctness or elegance.

I'm not surprised that the algorithm does worse on the control group, for the same reason that I'd question the assumption that it will do better on future generations. It could easily be over-fitting, partially because there is no selection pressure for an elegant solution. Empirically, elegant code does better in novel contexts.

Comment by wmorgan on Automatic programming, an example · 2012-02-01T22:10:13.652Z · score: 9 (9 votes) · LW · GW

The generated code is bizarre. I refactored it as well as I could, and it still doesn't make much sense:

aphelion = (aphelion + perihelion) >> 10;
aphelion = aphelion - (aphelion / 12);
guess = ( ( (aphelion | 12) * (int)sqrt(aphelion) ) ^ 12 ) / 12;

"To get the orbit time in days from the aphelion and perihelion in Kkm, first sum them and divide by 1024. Then from that, subtract one twelfth. Then, to the value, perform a bitwise OR with 0x0C, multiply by the square root, and bit-XOR 0x0C again. Finally, divide by 12, and that will give you the number of days."

Comment by wmorgan on Tell LessWrong about your charitable donations · 2012-01-24T17:46:05.895Z · score: 11 (11 votes) · LW · GW

I buy my utilons from SIAI. $4531, about 10% of my net in 2011. I give for the main reasons you always hear: massive payoff, impending doom, trust in the management.

I buy my fuzzies from the following sources, around 1% of my 2011 net:

  • Wikipedia annual drive. I use WP all the time; it's an awesome idea with a pretty great execution.
  • EFF recurring monthly donation. Reading about violations of civil liberties in the tech world really riles me up.
  • Whenever someone asks for something -- a friend raising money for a marathon, a homeless guy, free software asking for a donation -- I give well. This costs a couple hundred dollars annually, i.e. not enough to even worry about.
Comment by wmorgan on [META] · 2012-01-20T14:50:16.534Z · score: 10 (10 votes) · LW · GW

LW uses that domain to serve jQuery and Prototype. This is a recommended practice. The voting and posting code both rely on these libraries.

It sounds like what we want is failover: "if the user can't get jQuery from Google, then give it to them from LessWrong." Here is how to do it.

CDN failover is a best practice in general because it keeps the site working if Google ever goes down.

Comment by wmorgan on Holiday giving thread · 2011-12-29T17:22:55.583Z · score: 0 (0 votes) · LW · GW

My plan is just to read IRS 1040 Schedule A and the instructions for it. The tax code itself isn't too horrible either, from what I've seen, but this is coming from a guy that reads computer programs for fun and profit.

Yeah, lock up that $531 for SI.