Before I ramble, let me sum up my feelings about MongoDB:
Good: easy to install, easy to start using, easy to dump a metric crapload of loosely-structured data into, easy to write basic queries and indexes, rapid high-quality (free!) support from the core development team, phenomenal cosmic power.
Bad: hard to install some drivers (Perl in particular pulls in an amazing number of poorly-specified dependencies), hard to get a metric crapload of data back out quickly, hard to write advanced queries and indexes, easy to reach “here there be dragons” territory outside the scope of documentation and guarantees and available tools, easy to lock up a server process for minutes or hours with simple operations, easy to lose everything unless you replicate to at least one other machine that has independent power, eats RAM like you wouldn’t believe.
It is, if you like, the Perl of databases, immensely powerful and versatile, but extremely dangerous in the hands of amateurs. And, like early releases of Perl, it is a rapidly-moving target that grows new functionality every time you turn your back on it.
The past few weeks have been a heady mix of excitement, frustration, satisfaction, and annoyance, as my first large-scale use of MongoDB has moved from simple prototype, to initial production version, through major bugs and poorly-documented limitations (often “already fixed in next release”), to what I hope is finally “stuff I can just leave running and go work on other projects again”.
“I will not laugh. I will not laugh. I will not laugh.”
At this.
I suppose there’s a chance that he’s being deliberately vague about his actual project and the scale of the data involved, but he sounds so earnest.
“I cried because I had no salt, until I met a man who had no entropy.”
Good: Sony’s SPUDownloadManager. Lost the install CD for a Sony product, or is it old enough that Microsoft has released two new operating systems since you bought it? Plug the device into your computer, run this tool, and it installs the latest versions of all the relevant software and drivers.
Bad: Lenovo’s VeriFace. This is a biometric authentication system that uses your laptop’s built-in camera to scan your face as your password, and record the faces of people who fail to login. It includes an optional check to make sure that it isn’t being fooled by a photo, but it’s still useless, because it only works under excellent lighting conditions. You can spend upwards of a minute finding good light and staring at the screen until it recognizes you, or you can just type your password.
The comment said, “calculations done in base 16”. The code said, “n % 12”.
The code wins, always.
At least it wasn’t done in a base-11 substitution cipher, because that would stump dozens of highly-intelligent alien races for centuries.
Are you sure you want to use this slogan on the look-but-don’t touch display model of your just-announced super-thin, ultralight laptop?
(via Engadget)
Cuba is creating its own Linux distribution. Everything’s backwards-compatible and memory is free, but there are no drivers, and everyone has to share the same library.
Networking support, is, of course, limited to the CCCP protocol.
As a general rule, one does not expect to find that replacing a single server with several significantly faster ones has reduced performance by a factor of four. On reflection, however, perhaps it is inevitable that the word “cluster” must be followed by the word “fuck”.