Hacker Newsnew | past | comments | ask | show | jobs | submit | chris_b's commentslogin

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.


This has not been my experience.


He's making shit up to stroke his own ego, ignore him.


Yeah, I really don't see the GP's point.


Because there are people who will pay those economists a percentage and they would rather work there?


works exactly as in the blog post in fedora.


And Debian.

For Mac, try brew install gnu-units and then run gunits.


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.


That's true. Consultants and bankers are also overpaid worker bees.

Edit: but at least they report to other consultants and bankers.


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.


Because Ivy -> high social status

engineering -> relatively low social status


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.


I like Keepass. It is NOT equivalent to 1Password on the Mac.


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.


KeePass works better is you set it up to use Auto-Type, which sends keystrokes to the window manager to type the passwords into the fields.


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:

// ==UserScript==<br>// @name Google<br>// @namespace google<br>// @include https://accounts.google.com/*<br>// @grant none<br>// ==/UserScript==<br>document.title += " | Google";

Browser plugin:

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.

#!/bin/bash<br>nohup xdg-open "https://example.com/" >&/dev/null &<br>wmctrl -a Opera<br>sleep 1<br>xte 'keydown Hyper_R' 'key dollar' 'keyup Hyper_R'

Last line simply simulates my KeePassX Auto-Type shortcut (which I got from OS X, yes).

Update: <br> are newlines, can't believe it's this hard to post code snippets here.


I do use that, but I like having the fields pre-filled, like Firefox does, so I can just press login.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: