Sunday, July 31, 2011

Being a brilliant coder does not one a philosopher king make

I am periodically given cause to reflect on the bizarre attitudes that quite a lot of science and computer science types have towards finance.

There is a thread on slashdot where a programmer at a high frequency trading finance firm explains what he does:
I work on the algo and core infrastructure. I wrote price feeds that take 1/5th of a microsecond in C++ and (a little slower) in Java. I understand in fine detail how cache and the the PCI-e bus works.

blah blah blah technical details to show I'm really good at what I do.

And then, of course, the punch line

I also hope to make $500,000 this year.

You always hear about Google programmers being the best in the industry, but I've been to a couple Google interviews and turned them down both times because the engineering quality just isn't there. I'd put the average HFT programmer up against the best in Google anyday.

My response? Good for you, mate. I have very little basis to distinguish whether you're actually as good as you say you are, or whether you just have a very inflated opinion of yourself. Frankly, I doubt anyone else does either. Not that it matters, really. Your employers feel that you earn your salary, and the rest is nobody else's business.

But witness the strange and impotent rage that this fairly innocuous post generates. Let's start with the merely stupid:
What could possibly change in the underlying value of a corporation made up of flesh and blood humans and capital with decades of depreciation in a fucking microsecond? Here's a hint: nothing. You are not investing, or trading, but simply racing other gamblers. Investing doesn't benefit from microsecond response times, and trading doesn't need it either. People could buy IPO shares just fine over the phone. Nobody ever needed a microsecond response time to buy a thousand bushels of wheat, and never will, because bread is baked daily, not a million times a fucking second.

If politicians had two braincells to rub together, they'd enact a law to prevent trades faster than some tick, say, an hour. Your 'trading' company would go out of business in a week, and nobody would care. Farmers would still sell their wheat, and bakers would still buy it, but without you leeches skimming off the top.

Thank you, patriotic comrade! The Party has determined that your skills are not being allocated in a way most beneficial to the glorious People's Republic of San Francisco. Under the new 5 year plan, you will report to your new assigned socially optimal task, or will be transported to the Gulag.

This turkey just can't wait to unleash his inner totalitarian. If what you are doing is judged to not be socially optimal by some nebulous calculus, then it is to be outlawed, even if someone else was freely willing to pay you for it and there was no obvious social harm. Coming soon, a ban on Playstations, gossip magazines, and movies over 90 minutes long!

Also witness the complete lack of understanding of how markets work. Person A has an outstanding order to sell IBM stock for $80. Person B has an order to buy at $78. Person C comes along, more anxious to sell, and places an order to sell at $78.20. Along comes a high frequency trading firm, and 2 microseconds later agrees to buy the share at $78.20 off Person C. This is clearly exploitative, how? Oh, presumably because the HFT firm might sell the share a minute later for $78.22. According to this nitwit, the HFT firm is 'skimming something off the top'. So what? Your supermarket buys apples in bulk at $1 per kilo, and sells them at retail for $2 per kilo, 'skimming something off the top'. Your antiques dealer buys a nightstand at $100, and sells it a week later at $150, 'skimming something off the top'. Do you rage against them too? And you, noble untainted computer programmer, will hire out your underlings at $200 per hour, while only paying them $100. You know why? Because the alternative to people 'skimming something off the top' is the 'All Good Must Be Sold At Cost Act of 2011', also known as 'shutting down all business immediately by mandating profits to be at most zero, and negative if you can't actually sell the item you bought'.

Bt believe it or not, that' not the worst comment of the thread. That honor goes to clown #2:

I am most likely better than you at each and every aspect of software (and HDL) development you have mentioned.

I would be intrigued to hear you flesh out the details of how exactly you came to this conclusion.

Except, of course, "debugging in minutes" -- that kind of irresponsibility would get me fired.

No shit, eh? Perhaps that's because you're working in a job that DOESN'T REQUIRE THINGS TO BE DEBUGGED IN MINUTES. If you were, and you decided that you just couldn't in good conscience debug something in 5 minutes, then you'd be COMPLETELY FUCKING USELESS IF THEY ACTUALLY NEEDED THE TASK FINISHED IN 5 MINUTES TIME.

I also have to work long hours, and have to have clear understanding of complex issues unrelated to software.

Well, bully for you.

Except I do embedded software and FPGA development for professional audio equipment. Each device I worked on, each firmware release, each line of code, does something useful for many, many people. Some of those people don't even know that audio equipment, leave alone software, is involved with what they are hearing. Large fraction of my work ends up being free/open source, too -- platform, drivers, etc.

To which I keep asking, so what? Nobody's taking pot shots at what you do. But as long as you're up on your high horse, making audio software and doing a bit of open source doesn't exactly make you Mother Theresa. Johnny Totalitarian in the first quote may well decide that the world has quite enough audio software already, and you'd be better off cleaning garbage. And when he did, I'd tell him to piss off them as well. Your employer pays you good money for what you do, and the other guy's employer pays him for what he does. Good. If you want to take a lower paying job that gives you more satisfaction, because you produce something tangible, I applaud that choice. If the other guy doesn't, I'm fine with that too.

And so from this carefully constructed argument, comes the obvious conclusion:
I also don't have any problems with posting here under my real name. Or with telling you, and people like you, to die in a fire.

I'm going to assume that you're just throwing this out there as a gratuitous insult, not as something that readers should be concluding based on the premises you've laid out.

You work as a programmer for a finance firm, ergo you should die in a fire.

You, sir, are a pompous fuckwit. You rage against an industry you don't understand, and against the fact that the world does not accord you the income and status that you feel is your right. But unfortunately for you, the finance industry doesn't actually give a rat's ass what you think of it. There is not a single employee at a finance firm that is going to lose a minute's sleep because you happen to not approve of their vocation, and your fury is all the more fierce because you know this is true.

George Bernard Shaw was a brilliant writer.He was also a Communist who liked eugenics and star chamber executions of people who couldn't prove their social worth. Being smart doesn't stop you believing stupid things.

[Edit]: Clown #2 uses his real name as his post, but on reflection I decided not to post it. If you, like me, don't like the trend of personalising internet attacks, you need to resist the urge to take part. If he changes his mind, his dumbass earlier comments should haunt his reputation.

No comments:

Post a Comment