Goldman Sachs sent a computer scientist to jail over 8MB of open source code
blog.garrytan.com
blog.garrytan.com
Justice as it is practiced: "Legitimising the expectations of the entitled."
[1] http://www.vanityfair.com/business/2013/09/michael-lewis-gol...
http://www.goldmansachs.com/investor-relations/financials/cu...
On page 58 of the document (page 91 of the footnotes, since it starts at 34) revenues from "Other principal transactions" is $6+ billion for the year. Revenue from "Market Making" is $13+ billion. It can be murky where this activity falls, but it's definitely one of those buckets.
On page 69(102) you get a breakout of which product areas these come from. Without going too deep, it's just worth observing that it's multiple billions of dollars of risk across each of these area.
Going to another source, on page 3 of this paper (http://repository.upenn.edu/cgi/viewcontent.cgi?article=1689...) they quote Goldman estimating the size of High Frequency Trading to be $0.5 billion in revenues, with others estimating it to be $1.5 to $3 billion.
Do I know enough to say how much of this he was accountable for? Enough that he would get a big offer to work somewhere else. And I am very confident that he knew that copying this model was against the law. Everyone in this type of environment knows this.
“Did you take the strats?” asked one (meaning Goldman’s trading strategies).
“No,” said Serge. That was one thing the prosecutors hadn’t accused him of.
Proprietary code that wasn't developed and tested with generic requirements in mind can rarely be economically re-used outside of the original company context, as it reflects the structure and the processes of the mother-company. In fact most organisations I know decided to throw away their code base entirely when restructuring or upgrading their internal systems as re-work was deemed uneconomic, because the gap between the code and changed environment is too great.
Data is salvageable and immediately valuable; however re-using the code requires a considerable effort, it would also be very hard to keep in secret. The news of their platform being fully or partially re-used at competitor's would have quickly reached GC and they could have shut down the competitor entirely whilst suing them for all of the profit.
Of course one could steal the code for analysis so they could try and exploit the technological weaknesses in GC trading patterns, however this is not the argument given by the article or GC.
Although it may not be the case here, one can imagine that this source would let you fingerprint the Goldman algorithms, and give you an idea of the way they make decisions. That might allow one of these automatic con man algorithms to steal a huge amount of money.
In this instance, the case is more likely that Goldman payed the programmer a million a year to deliver software that gave them a competitive advantage (of significantly more than they paid). By taking that software, he removes the competitive advantage they bought from him.
Let me ask a question:
Imagine you paid an online contractor to write you software. Maybe you paid them to make an Ap idea, or a website. Under what circumstances would you object to them putting the whole thing on a public github? What harm could it do you? That harm, amplified by the money involved, is Goldmans case.
1) As was mentioned by Shubb, there is a predatory aspect to algorithms. If I know how your algorithm will work, I can create one that will be it. You can think of it as programming robots to fight. If I've seen the source code for your robot, I may be able to program one that can exploit it's weaknesses. (Worked against the Death Star!)
2) The HFT world works best when the ideas aren't well known. Let's say I identify a mispricing. It could be, "When this Mutual Fund moves, this similar ETF moves 0.1ms later, and these stocks react to the EFT and move 0.2ms later, but they forget these other 3 stocks 0.3ms later, so actively long those stocks for 0.3ms, and short the rest, and reverse after the time is up." No need to dwell on the details, just understand that it exists. If only one person has identified this mispricing, there are a lot of pennies to be swept up. As soon as two people know about it, the game is up.
While this type of competition could conceivably be good for the market as a whole, it's definitely not good for ther person with the algorithm.
If I have the code, perhaps I can deduce the algorithm.
If it did, then Goldman's reaction would be well justified (to the extent that sub-millisecond arbitrage that siphons billions out of the markets each year and into the hands of a few firms can be justified).
A SSL key can be smaller than 1k (ok, today more like 4k maybe more) and be very valuable
Not to mention older source code that was smaller but very valuable (think IBM PC bios, or the first Apple II ROM)
Now would be a good time to highlight the cases of hackers that Michael Lewis doesn't have time to write about: Bo Zhang, Michael Meneses, the Madoff programmers, John Kane (has had most charges dropped now), the Liberty Reserve guys and almost everybody ever charged with Computer Fraud and Abuse Act
http://en.wikipedia.org/wiki/United_States_v._Jerome_O'Hara_...
This case contradicts the FBI findings from the Madoff case, and relies on the programmers having of had to know that their system could also be used to print out fake trades.
That is probably a breach of contract but I don't think it should be a crime punishable by jail time (unless someone can prove that said code was used to aid another company).
The major problems raised by the story lie firstly in the technological ignorance that the authorities displayed; secondly in the developer's legal ignorance (in trying to correct the authorities' technical ignorance) and finally, and perhaps most importantly, in the breathtaking arrogance and conceit displayed by GS in it's handling of the case -- yet more evidence (as if we needed it) of the vile, corrosive, and fundamentally corrupt culture that infects our financial services.
Which third line of the post is this? I don't see anything about him releasing the source. And if you read up on the case, you will find that what he actually did was to upload encrypted archives that he then downloaded from home. I don't believe there's any allegation that he publicly distributed any of this source.
They're gonna want to protect their IP - particularly when it could give a competitor a huge advantage. It's not surprising they went after him.
It does if you're careless enough to type them out in clear text, e.g. when connecting to a mysql database:
mysql -h host -u user -pMyPassword database HISTCONTROL=ignorespace
in your .bashrc, if you start a line with a space, it won't be entered into your history.Little carefully inserted details such as pain-the-back side of having to mow the lawn, all these details should be creating a picture of life-unsavvy coding reclude in reader's mind. The reader supposed to chuckle "how naive, anyone who is on $270K can just hire gardener to take care of the lawn!"
I have personal knowledge of programmers taking the code with them when leaving employment for no particular reason except for "in case I might need it as a reference" and then never ever looking at it again. In my mind it's very much akin to hoarding.
I have very little doubt that the code would be unusable outside of GC infrastructure.
What does seem unusually harsh is the punishment for the crime when no damage was ever done to the victim; to me this is an attribute of a show-case trial.
I actually did try to submit the original article myself earlier today, and noticed that it had already been submitted several days ago. So at least I did upvote that.
If the article has already been submitted then why try to resubmit it after copying and pasting the content into another URL?
The best way to do this on HN is to take the stance of the opposition and write an inflammatory headline, "I support (unpopular position) X, because (popular position) Y is considered harmful"
Also that sort of title is editorializing, and that's not encouraged.
I completely misunderstood your initial comment.
If Lewis' portrayal is accurate, then Aleynikov is pretty clearly an otherworldly technical type. That doesn't mean he should be exempt from laws, but it's not irrelevant either. For one thing, to anyone who knows the type, it says something about intent: his intent was likely not to exploit someone else's secrets, but to work on interesting things. A programmer like that wouldn't download code because it contained secrets; he'd download it because it contained library routines that he didn't want to have to rewrite someday. Why would he steal secrets? Anything important, he could just derive later. He probably thought that Goldman's technical designs were all wrong and would make a point of not copying them anyway.
There are countless stories of otherworldly technical types, including many heroes to people here, running afoul of laws or regulations and having to be rescued by the more worldly members of their scientific/technical community. I expected this technical community to recognize that pattern in Aleynikov and react with some empathy, because we all know someone like that or have a little of the type in ourselves. Instead we got a bit of a Colonel Blimp chorus. I hope that was just sample bias.
I wish we could see that source code. After reading Lewis' article, I would be shocked if it contained anything of nontrivial value to Goldman.
If he did copy such algorithms with the intention to use them at the new job, that would contradict both my comment and Lewis' portrayal.
And you are only hearing Aleynikovs side of the story obviously he and his lawyers going to portray himself as doing nothing wrong.
I don't care about the "autistic spectrum", but I know this type of programmer, and if Lewis' portrayal is accurate (note the if, here and in what I said above), then this really is a mitigating factor. As a "legal ploy", it's far from obvious. Do you think Fabulous Fab could have used it?
One 'trade secret' I worked on was about 30 lines of code, in C#. I later turned it in to about 100 bytes of x86...
Some of the trade secrets in quant models can just be the weights.
"I worked literally side by side with Serge while at Goldman Sachs, so I have substantial perspective on this. Let's be clear -- Goldman Sachs did not pursue him, the relevant district attorney of NY did. Goldman's job is not to prosecute, it is to provide the facts of the case to the judicial system, which decides whether to go after him or not. We can argue about whether the punishment was excessive but let's stop blaming a firm that is a private company which has no ability to prosecute. And I can tell you that what Serge did was incredibly against the terms of his employment agreement. The open source aspect is overblown, obviously if it were freely available and not substantially different he would have no need to upload it days before he left. The fact of the industry is people steal code all the time, he just happened to be one of the unfortunate programmers to be caught and made an example of. But it certainly doesn't mean he's a victim here. When a company is paying you 500k+ a year to write code on its time, the understanding is that they have the say as to what happens to it, not you. You can't just say, I don't think this is that materially different so I'm going to send it to myself before I work for a competitor."
The main problem with this situation is educational: "brilliant scientists" and "smart developers" (especially from ex-USSR countries) are not paying enough attention to the legal issues related to their jobs. They do not try to secure their rights and do not consider the possibility that they violate the other's rights by their technical actions. It would be great if CS courses in universities will include a short talk about what's good and what's bad in legal field. For now, the more attention will be paid to such cases, the better for everyone.
"He pulled up his browser and typed into it the words: Free Subversion Repository. Up popped a list of places that stored code, for free, and in a convenient fashion. He clicked the first link on the list. The entire process took about eight seconds."
Pushing "proprietary" code to a repo without knowing that it is a) secure and b) allowed feels like a great way do not follow a NDA.
This justice system didn't decide out the blue to go after Aleynikov one day. G.S. asked them to do it. I suppose if you work for G.S. you need to be very good at rationalizing things in order to sleep it at night.
If I worked for G.S. I would probably tell myself: "G.S. doesn't cause the starvation of millions of people, we just speculate on food commodities." (Google "goldman sach starvation")
Source: http://online.wsj.com/public/resources/documents/021110aleyn...
1. If you work for a company which (as I'm sure GS does) has a policy forbidding you from uploading company data to the public cloud, don't violate that policy. Especially if it's source code you wrote while working there. (The open source argument is a red herring. It doesn't matter.). And super especially if you're about to leave for a competitor.
2. If you work in an industry and for a company that is being scrutinized by the Feds and is heavily regulated, really REALLY don't violate policies like this arbitrarily and on your own, because you might go to jail.
Is it "fair" what happened to him? No. But lots of unfair things happen. He paved the way with his thoughtless actions.
People who work in IT tend to be smarter, richer, more inclined to be left leaning in their politics and so on. They have expertise to understand the problem but they don't necessarily represent the views of the country which is what a jury is meant to do.