Leaving your company means leaving your language.
One should not have have to leave your language behind just because you leave your people.
"A good implementation beats a good design "
How do you do MATH with Java?
a complete answer would be Python and C++, because numpy/scipy can't do everything and Python is still very slow for number-crunching.
The problem with using the mix (when you actually write the C++ code yourself) is that debugging it is a major pain in the ass
+1 "I just spent three days chasing down build error that uses numpy/scipy"
I have a friend who works for a company that does gene sequencing and other genetic research and, from what he's told me, the whole industry uses mostly python.
I work in a Gene Sequencing company and the current debate is: Python vs Clojure vs Scala:
Python unquestionably has the best bioinformatics support. Period. No debate. But the lack of language features has irked many programmers, myself included.
Clojure is gaining attention as a pure functional language with an R-like environment for large scale machine learning tasks. (Bioinformatics is machine learning applied to biomedicine). This makes porting Matlab/Octave/R code much easier, or so the thinking goes.
Scala has its backers. Java is nearly invisible in the bioinformatics world, but the JVM is hard to ignore. Scala has excellent support for Machine Learning but terrible support for "biological and medical applications". Hat tip: you can hire scala programmers or teach Scala to Java programmers in short time
BIG DATA is a bigger problem for us today than previously:
"genome wide arrays" used to mean all ~25,000 gene transcripts or 500,000 single DNA changes (SNP).
These revolutionary technologies are already considered "old".
The rise in performance and drop of cost of DNA sequencing is much faster than the commodification of CPUs during the internet dot-com race .
How would they detect any shared properties?
Perhaps Covariance analysis? (mutual information, pearson, svd, etc).
Input: 3 data streams A,B,C each which are not truly random
Correlate: A&B, A&C, B&C
Subproblems: given A&B predict C
Subproblems: given A&C predict B
Subproblems: given B&C predict A
NSA has mathematicians better than I, for sure. My guess is that if an agency has altered an RNG then they have done so in a way that is systematic. These kinds of problems are common in analysis of complex systems -- given three non random variables with characteristic variance can you predict the output variable from the covariance? I dont think I could, but it seems feasible to me that the NSA could.
NSA uses linux for their data farms.
NSA is a code breaking agency.
NSA has worked with many tech companies, from wintel to google, stellar wind to TIA, etc, etc.
Occam's razor: which is more likely?
A) NSA worked with intel to provide a known hardware key OR
B) NSA did not work with Intel and chose instead to work with Microsoft, Google, Yahoo, Verizon, ISPs, etc, etc, etc
A is more likely.
I would have never thought
MSS+KGB+NSA = privacy IFF every agency provides a mutually distrusted hardware key
But is this mathematically true? (honest question)
Shannon entropy also applies to mutual information , which formally includes joint entropy, eg...."detecting when values change together".
If these same agencies were able to detect any shared properties (such as joint entropy), the encryption would be EASIER to break, not harder.
PostgreSQL can do the vast majority of what Oracle can do at no cost
And PG year after year is much, MUCH easier to install,backup,and maintain.
Candidate Obama debates President Obama on Government Surveillance
This is more about democratic process than privacy.
Tice (NSA whistleblower to NYT in 2004) claims that the NSA is wiretapping members of congress, federal judges, FISA judges, appropriations committees,
Lets hope this is all one elaborate lie or we have a KGB in america.