Check out this paper from my friend Ronen, and Prof. Fateman, putting Lisp into Excel:
"A paper written with Ronen Gradwohl on Lisp and Symbolic Functionality in an Excel Spreadsheet: Development of an OLE Scientific Computing Environment, August, 2002. (code available on request) "
For those who might want a fuller description of IBM's active facilitation of these kinds of crimes, you should read Edwin Black's book, "IBM and the Holocaust".
Those tattoo's on Holocaust victim's arms? They were serial numbers directly tied to IBM punchcards designed by IBM for the Third Reich.
It gives context to former NSA chief Michael Hayden's comment, "We kill people with metadata".
To clarify, the scenario isn't that the Nazis just picked up existing technology-- They had to have direct dealings with IBM for the scope and implementation of the process, which was largely involved with sorting census data to figure out who the Jews and other targeted ethnicities were, shipping them to various concentration camps, and determining where and how to "exhaust" these resources. Just imagine being one of the programmers tasked with that.
The book details how Thomas Watson was directly involved in all this, and when the US made Nazi dealings illegal, he handed over direct control of his Nazi business to local branches instead of halting the relationship. After the war, those local branches all rejoined greater IBM.
It's kind of crazy to see how IBM has avoided scrutiny and continues to celebrate Watson through their naming conventions.
I've read the Edwin Black book - he makes a reasonably compelling but nearly completely circumstantial case.
The case against IBM could be made against any multinational of the era, like Ford and General Motors. The fact that IBM's business was information processing does not add or subtract to their level of supposed conspiracy.
From the time of declaration of war (against the US), all american companies were hands off - even before that the relationship between Dehomag and IBM NY became more and more distant from 1933 on.
Beyond that, the technology was not held by IBM alone, Powers/Remington-Rand and Siemens and Halkse also had similar equipment and technology - so while IBM may have been the market leader, they were by no means alone - and choosing IBM over Powers in my mind is different than buying a Ford-werke truck over an Opel one.
I haven't read the book, but I did read the EFF's brief (https://www.eff.org/document/eff-amicus-brief-ibm-ats-claim) which seems to rely a lot on the alleged Nazi connections. Based upon what I have read so far, there is no "smoking gun" that indicates IBM did anything to knowingly aid the Holocaust or Apartheid.
In the case of South Africa, it seems IBM aided in the creation of South Africa's national ID system. What I can't tell from the evidence presented is if this aid was illegal or unethical at the time it took place. As a reminder, the United States didn't officially outlaw segregation until the Civil Rights Act of 1964.
I really haven't made up my mind one way or another about this, but I do think people have a tendency to interpret historical events using the knowledge and ideology of the present day.
Anyone who is tempted to believe that "we were just doing our jobs" should be a reasonable moral dodge should keep in mind that "I was just doing my job" is EXACTLY IDENTICAL to saying "I just did it for money."
Which really isn't that despicable of a stance; money is a dependency of survival (or at least survival with decent physical and psychological health) in all but the most anarchic environments (where money is trumped by "I have a gun and will kill you if you don't give me what I want, and only someone with a bigger gun can stop me").
There are many cases where people have done something they knew was wrong, but were afraid to stop doing them (or refuse to do them in the first place) because the risk of not being able to eat (or - worse - their children not being able to eat) was far greater than the risk of being punished for committing such a moral atrocity.
This is probably not a reasonable context for IBM's actions, but to paint all people who "were just doing [their] jobs" or "were just doing it for money" with the same brush of indignation and scorn is incredibly unfair to those who actually needed the money.
Quite ironic that now IBM has a role in the occupation of Palestine [1]. IBM is sometimes mentioned in the BDS movement (Boycott, Divestment and Sanctions).
I don't think it's ironic at all, at least when looking at the bigger picture. The trend in IBM's dealings is not a propensity to go after customers with poor human rights track records, but to go after customers that will make them a lot of money. Governments - like those of Germany and South Africa - are a big target of IBM's sales, whether they're literally genocidal maniacs or poster-children of world peace.
"The use of punched cards in the Jacquard loom influenced Charles Babbage, who decided to use punched cards to control the sequence of computations in his proposed analytical engine. Unlike Hollerith's cards of 50 years later, which were handled in decks like playing cards, Babbage's punched cards were to be strung together like Jaquard's. Despite this and the fact that he never actually built an analytical engine, Babbage's proposed use of cards played a crucial role in later years, providing a precident that prevented Hollerith's company (and its successors) from claiming patent rights on the very idea of storing data on punched cards."
"Auschwitz historians were originally convinced that there were no machines at Auschwitz, that all the prisoner documents were processed at a remote location, primarily because they could find no trace of the equipment in the area. They even speculated that the stamped forms from Auschwitz III were actually punched at the massive Hollerith service at Mauthausen concentration camp. Indeed, even the Farben Hollerith documents had been identified some time ago at Auschwitz, but were not understood as IBM printouts. That is, not until the Hollerith Büro itself was discovered. Archivists only found the Büro because it was listed in the I.G. Werk Auschwitz phone book on page 50. The phone extension was 4496. "I was looking for something else," recalls Auschwitz' Setkiewicz, "and there it was." Once the printouts were reexamined in the light of IBM punch card revelations, the connection became clear."
"And in this day and age of high resolution bitmapped displays with millions of colors, driven by the supercomputer-crushing performance of modern graphics hardware, your xterm window emulates an 80 column VT100 in order to provide some semblance of compatibility with 80 column Hollerith punched cards that date to the 1920s and were common on the IBM 1604."
Windows command prompts and xterm windows have a default width whose lineage traces back to 1801 (or earlier if the loom's history is considered).
It is painful to learn how our industry (software and computational hardware) can and have been abused for such unfathomably despicable, misguided purposes.
> An intelligence agency that keeps a list of demographic minorities for the purposes of spying & persecution is Holocaust-precursor-grade stuff
Exactly. And that's how Jacob Appelbaum sees it too:
“There is just a very real historical awareness of how information can be used against people in really dangerous ways here,” Poitras says. “There is a sensitivity to it which just doesn’t exist elsewhere. And not just because of the Stasi, the former East German secret police, but also the Nazi era. There’s a book Jake Appelbaum talks a lot about that’s called IBM and the Holocaust and it details how the Nazis used punch-cards to systemise the death camps. We’re not talking about that happening with the NSA [the US National Security Agency], but it shows how this information can be used against populations and how it poses such a danger.”
I used blueproximity successfully with my Linux laptop. I bought the smallest bluetooth headset I could find ($25), removed all extraneous parts, and carried it on my person (not my bag). It was so small that I didn't notice it. Effectively like two-factor authentication for unlocking my laptop.
It's unwise to use your phone for this purpose, because a phone and laptop might both be swiped if you're not holding on to both. This has happened to folks at cafes or on mass transit in the Bay Area.
I've tried to use blueproximity at some point (mostly for convenience because I sometimes forget to lock my screen), but the range of BT devices is too large for comfort. I could be anywhere in my flat or in the medium-sized open plan office at work and the phone in my pocket would still be in range.
Have you tried configuring it? It has a slider that you can adjust to set a minimum power level, so that if the device is too far away it locks anyway, even if it can still detect it.
This is a great exercise of how to take a Unix command line and iteratively optimize it with advanced use of awk.
In that spirit, one can optimize the xargs mawk invocation by 1) Getting rid of string-manipulation function calls (which are slow in awk), 2) using regular expressions in the pattern expression (which allows awk to short-circuit the evaluation of lines), and 3) avoiding use of field variables like $1, and $2, which allows the mawk virtual machine to avoid implicit field splitting. A bonus is that you end up with an awk script which is more idiomatic:
Notice that I got rid of the printing out of the intermediate totals per file. Since we are only tabulating the final total, we can modify the 'reduce' mawk invocation to be as follows:
mawk '
{games += ($1+$2+$3); white += $1; black += $2; draw += $3}
END { print games, white, black, draw }'
Making the bottle-neck data stream thinner always helps with overall throughput.
A problem with these wall charts and the KEGG diagrams is that not only do you not know which enzymes or pathways are active in which tissues within a single multi-cellular organism, you don't know which organisms they come from. These pathway charts are actually mosaic pathways, trying to show a summary of metabolism across all domains of life. This can be misleading, in that no one organism contains all parts as displayed.
KEGG filters at the MAP or MODULE level, but it merely highlights the enzymes of the mosaic MAP/MODULE that it inferred is present in the organism, rather than display the subset of the network that is actually present.
I agree with you regarding their mutual incompleteness. There's plenty more literature to curate! See my systematic omparison of KEGG and MetaCyc for more details:
Using Pathway Tools, the pathways are automatically laid out for you in a rational manner, organizing pathways and super-pathways based on a manually-curated ontology. For example, all biosynthetic pathways are displayed side by side. Wall charts dazzle with their complexity, but it isn't the best layout for organizing information.
The Roche Biochemical Pathways charts were the inspiration for the MetaCyc family of pathway/genome databases, all enabled by the Pathway Tools software (itself written with 400,000+ lines of Common Lisp):
Example pathway: Super-Pathway of glycolysis, pyruvate dehydrogenase, TCA, and glyoxylate bypass
MetaCyc has an order of magnitude more information integrated into it than most wall charts. Plus, you can get true interactive metabolic overview maps, where you can click on the enzymes and compounds (example from the E. coli database):
The Pathway Tools software, and the metabolic networks, are freely available for academic use, and you can use it to construct your own metabolic networks.
Full disclosure: I'm a former full-time bioinformaticist on the project.
"A paper written with Ronen Gradwohl on Lisp and Symbolic Functionality in an Excel Spreadsheet: Development of an OLE Scientific Computing Environment, August, 2002. (code available on request) "
https://people.eecs.berkeley.edu/~fateman/algebra.html