Because the FFT in python is almost certainly implemented in C, and probably more cleverly done than a naive FFT that I/you/someone would whip up as part of a C program.
Is this a joke? Something written with the same algorithm in c will be faster than python. Why not use someone elses non naive FFT impl in c then as well?
I think the argument isn't that Python code out performs C code, it's that code written by mediocre Python programmers often outperforms code written by mediocre C programmers. C code is fast enough the mediocre programmers get used to letting the language bail them out. Python programmers know that their language is slow and that they have to work around it.
I've encountered this several times in my own career. A co-worker who writes in C will be implementing a process in parallel with my Python implementation. A week later, my O(N) Python code is outperforming my colleagues O(N^3) C code, since I chose a more complex algorithm which is trickier to get right. The C programmer then re-implements my method in C, which would completely trounce my own code, except I've spent that time leaning on BLAS and LAPACK, speeding up my operations again. The C programmer then starts using fast libraries instead of her own code, again beating my old source, only to find that I've now pushed a good chunk of the processing onto the GPU.
Eventually, I will run out of tricks. The final draft of the C code will trounce the final draft of my Python code. However, during most of the creation process, my Python usually out performs their C. Also, a truly talented C programmer would write my colleague's final draft as her first draft, negating every advantage that I had in the process. However, that's not a situation that I'm likely to run into, because places hiring truly talented programmers aren't likely to be hiring me.
Makes literally no sense. The c developer would simply use the same c/fortran library the python implementation is based on. You are creating a false dichotomy for the sake of it.
The c developer should use the same c/fortran library that the python implementation is based on. A good C developer would use that library. In my experience, mediocre C developers will not use that library and will implement their own, naive version.
As I wrote in the FAQ, I decorated my own units.dat (units.lib in some implementations) with lots of stuff because I like easily editing units. (Nowadays I use Emacs Calc, but I still add a bunch of my own units, like the binary prefixes like mebi, gibi, etc.)
I suspect that a lot more can convert millilightseconds to miles out-of-the-box now at least in part because of the popularity of this story over the past 13 years.
I don't know of human games that do this (except for practice), but this is done in computer games. See the Thoresen Chess Engine Competition (TCEC) where the first 8 moves for both sides are played by the book and then the engines take over. This is good as it ensures the engines are tested over a wide variety of positions.
As much as I enjoy and watch almost every video, chessexplained is not very educational unless you're pretty high rated, it's very entertaining nonetheless.
As a senior at Yale right now, and seeing what most of my fellow students are going into next year, the Ivy League is great at pumping out over paid worker bees. See here http://yaledailynews.com/blog/2012/02/13/finance-continues-t... for the numbers going into finance (~20%) and just anecdotally I would guess there are only slightly less going into consulting. Finally, there are a not insignificant number (maybe 10%) doing some sort of engineering.
I graduated from Harvard, and like chris_b said with Yale, a not insignificant number of people went into some sort of engineering. It's not the plurality career choice, but it's not like the field is some sort of pariah at Ivy League schools.
It can be if you want to use tools not designed for linux. I use keepass (http://keepass.info/) on linux and android and find it to be equivalent to 1 Password on Mac. It is in the Fedora repos (and I assume most others) and so easy to install.
The problem I have with KeePass is that it doesn't integrate with my browser well. LastPass does marginally better (it has an extension but I'm not loving it). There's a Firefox extension for KeePass called KeeFox, but it needs KeePass to be open and running all the time, which is annoying to me because it needs an extra window.
I've used keepass ona a daily basis. Auto type failed with my usage patterns - essentially I have multiple entry points per site (enterprise app) and each has a different titlebar text.
I've switched from OS X a few months ago and I'm actually happier with KeePassX than with 1Password. I hated AgileBits for the 4.0 bloat redesign which made everything slower (this is a constant on OS X it seems). I have a pretty simple use case with KeePassX (no sync) and here are the solutions I've found to problems mentioned in this thread. Hope they're helpful!
Hide KeePassX's window:
Just open the settings, click the first two checkboxes ("system tray icon", "minimize to tray instead of taskbar") and add `keepassx -min` to your login script. It'll ask for your password and disappear.
Title bar:
KeePassX does use the browser title bar and it's sometimes not reliable. It's easily fixable, though. Install a Greasemonkey plugin to your browser and add scripts such as this one:
I like how I could type "gmail" in Alfred and have 1Password do everything for me. I was able to reproduce that with a bash script that I call from my own launcher and it works just as well, if not faster.