hacker news with inline top comments    .. more ..    22 Jun 2011 Best
home   ask   best   8 years ago   
Ooops. github.com
1100 points by peteretep  6 days ago   237 comments top 49
chops 5 days ago 5 replies      
I've done a similar thing a few years ago when I was first starting work on my guild hosting company's code.

At the time, the main thing hosted on that machine was my WoW guild's website, which I had been working on for close to a year, and was beginning work on converting the site over to a general purpose guild hosting site.

I was doing some work for a client, setting up a mirror of sorts for some kind of yearbook thing I had built for them. For that, I made a script that would mirror the online yearbook with wget, zip up the whole directory, then clear out the mirrored pages (all I cared to store and serve was the zip file).

All of my websites were stored in /www on the server, and the raw yearbook was located at /www/clientname/www. Inside the clientname directory, I had the mirror script which was something like this:

  wget -whatever_options http://whatever.address www
zip yearbook.zip www
rm -fr /www

Unfortunately, because of how frequently I type / before www to get to my web dev directory, I instinctively put "/www" in the script where I just wanted to do "www". I ran the script, checked to make sure and it looked good, and deployed it to a cronjob.

My heart sank when I tried loading my guild page a few minutes later (just to see what was going on on the forum, if anything), and it served up a bunch of 404s.

I went to /www/guildsite and saw it completely empty, and almost immediately figured out what had happened. At that point, I had to get my composure and figure out what I was going to do (I did not have backups or source control). I unmounted the directory, and went off to lunch with a friend, shaking with anxiety.

Upon return, I started writing out a perl script to scour the device byte for byte looking for PHP scripts, looking for instances of <? and then capturing the following 2000 lines or so, assuming that would be a sufficient buffer. When the script was done, I set it to run on the partition, and 45 minutes later I had a few hundred files to work with.

I had to manually go through every file (which were named numerically in the order they were found in the filesystem) and determine if it was the most recent (or recent enough) copy of the code, clear off any trailing bytes, and rename it to the filename it used to have. Luckily I could remember the name of almost every file in the system. It took about 8 hours to go through the few hundred files and recover them.

Needless to say, I learned my lesson after that, but the feeling of victory I got from recovering those files from the device was epic.

6 years later, I realize that that's a rather trivial thing to do, but at the time, I didn't know what I was going to do, and remembering that the file system doesn't clear all the bytes of the a file just it's reference gave me tons of hope.

srean 5 days ago  replies      
I learned a rather unusual trick to keep myself safe from unintended glob matches. It is not "fool"-proof, but it will probably dilute an unmitigated disaster into an incomplete disaster: Keep a file named -i in the sensitive directories. When glob picks it up, which should be fairly early, it will be treated like a command line argument. Has saved me on occasions.

I also had a friend in school who used to, for whatever reasons, name his files using characters drawn from a pool of only two characters. One being "." the other "*". Please don't ask me why. He would then try to delete some particular file. You can well imagine what would happen next. This happened multiple times, till I went ahead and populated his directories with "-i" files. That worked great.

I usually keep rm aliased to 'rm -i', but once I did get burned. It was not because of hitting return early but because of having a space between a directory and the trailing "/".....while running rm as root. It was taking a bit longer than I had imagined, so I looked again at the prompt to see what had I typed..$#@!&~ :)

crikli 5 days ago 4 replies      
The reason we all know to be careful with rm -r is because of that one time we weren't.

Me, it was the time I rm r'ed the MySQL data directory for my company's customer service management system. Oops. Thankfully we had a backup from the month prior, but I learned two things that day: a) be really careful with rm and b) take it on yourself to make sure IT is backing up stuff that you're messing with.

You gotta hedge against your own stupid.

What about you, how'd you learn the hard way?

shrikant 5 days ago 7 replies      
Perhaps because I'm not a GitHub user, and because I've only ever peeked at HNers' GitHub accounts, but I was always under the impression that given the nature of the service, it would have an early-days-of-HN feel wrt to user behaviour.

It was a little disheartening to see the number of Reddit-esque comments that are simply a couple of words along the lines of "omfg" and a constant stream of meme abuse. I expected better from the programming community.

Sigh. Am I just becoming old, jaded and too elitist for my own good?

tlrobinson 5 days ago 1 reply      
I've started quoting arguments in shell scripts even when it's not technically necessary to avoid problems with spaces. I can't count how many scripts I've written/encountered that didn't work with a path containing a space (apparently much more common with OS X users than Linux users)

This wouldn't delete the correct directory, but at least it won't delete "/usr" either:

    rm -rf "/usr /lib/nvidia-current/xorg/xorg"

There are lots of other pitfalls associated with not quoting things in shell scripts, like this common one:

    if [ $foo -eq "bar" ];

will cause an error if $foo isn't set or is an empty string, while this will work correctly:

    if [ "$foo" -eq "bar" ];

Bonus that your syntax highlighter can highlight the arguments. My rule is that flags aren't quoted, but paths and other parameters are.

bradly 5 days ago 3 replies      
Here is the original bug report. https://github.com/MrMEEE/bumblebee/issues/123

I've never heard of BumbleBee, but it must be great if a user can have their machine wiped out and still thank the library author for their work.

jrockway 6 days ago 3 replies      
I don't remember the exact details, but a few years ago there was a Perl module that did something like:

   my $path = something_that_can_return_undef_on_failure;
`rm -rf /$path`;

during the execution of its test suite. The author didn't catch it in testing because he never ran "make test" as root (who would?). But people on the Internet ran "make test" as root, with disastrous consequences.

earl 5 days ago 1 reply      
A decade ago, I worked on a DNA sequencer / aligner product. This produced easily 1GB+ raw data files, and they typically exploded by a factor of ten by the time you performed a bunch of cleaning, smoothing, filtering, etc on them. For several reasons, not least of which was a 4GB file size limit in fat32, this software had to use a directory as a pseudo file.

I was working on some file saving logic. A customer had a problem where they'd overlaid a new logical file on top of an old logical file. Where these actual files, this would just have overwritten the old file, but since these were directories, we got a mishmash of pieces of two different logical files overlaid in the same directory, and of course our software got confused as hell. So, I wrote code that, in case you saved a new file as an extent filename (really directory name), would perform the equivalent of

  rm -rf $dirname; mkdir $dirname;

You can see where this is going... Some grad student didn't understand this, and named a pseudo file as the root directory of a tree of research. Two years of research vanished into the ether, despite a dialog box that had red text in it. That sucked.

tomkarlo 5 days ago 0 replies      
Back in the late 90s I worked on a small Windows product... our CEO complained that when the uninstaller ran, it left the empty directory behind along with some small temp files created by the software (that the package hadn't put there during install). So the guy making the package added a command to remove the directory and its contents...

... and the first reporter to try software, for reasons I'll never totally understand, chose to install it in C:\. Worked great until he went to uninstall it.

jefffoster 6 days ago 2 replies      
I use the safe-rm (http://freshmeat.net/projects/safe-rm) package to help me avoid doing this kind of thing.
phaedrus 6 days ago 2 replies      
rm is like a knife where the handle has a sharp edge too...
JoachimSchipper 5 days ago 0 replies      
It's a pretty messy script anyway - rm'ing /usr/lib/nvidia-current/xorg/xorg doesn't strike me as the most delicate approach to the problem.
delinka 5 days ago 1 reply      
Never use rm's -f flag while operating as the root user. Never. Replace with -i until you are absolutely 100% certain the script you're writing works as expected. Always doubt yourself; be humble.
yesimahuman 6 days ago 3 replies      
This terrifies me now of every single install script that refuses to run if not root.
mootothemax 6 days ago 2 replies      
This release fixes the install script; it no longer deletes the /usr directory in its entirety. But how on earth did this get through even basic testing? Absolutely shocking!
JonnieCache 6 days ago 3 replies      
While we're on the subject, has anyone successfully found/created a replacement for rm on OS X that moves files to the trash, but doesn't break the interface of rm for use in scripts?
Jach 5 days ago 0 replies      
A couple months ago I had to recover some rm'd files by basically grepping 512-byte blocks on the file system for the file headers then writing out the next few KB to a file on a separate partition to manually go through..

My command sequence was more like this though, rather than a straight rm:

    find -name '*.java' | xargs grep --color 'something'
# guh, get rid of these old copied .svn dirs polluting output
find -name '.svn' | xargs rm -rf
# now what was that..
find -name '*.java' | xargs rm -rf

Forgot to edit the right side of the pipe back to the grep. Zealous use of the up-arrow burned me...

levesque 5 days ago 0 replies      
I actually ran that piece of code. Sure was glad it was only on a test partition. I did lose some trust in the developers after this, but I tried bumblebee again later and am happy I did because it works great!

I forgive them.

shabble 5 days ago 0 replies      
I only recently discovered molly-guard:


which prevents you from running halt/shutdown etc. via SSH without first confirming the hostname.

I've done that before with pretty traumatic consequences, so it's now on my list of must-have's for any important remote box.


hackermom 6 days ago 0 replies      
<rm -rfi> -i interactive mode man is here to save the day - now you can put up to 50% more blame on the end-user!
getsat 5 days ago 2 replies      
Looks like someone never read the Unix Hater's Handbook. Another fun thing is rm + shell expansion. A file named * or / can cause extremely unintended deletions.
leif 5 days ago 0 replies      
I keep /usr in a squashfs, mounted with aufs over top of it, for the 0.01% speedup I probably get (I grew up on gentoo, forgive me). Periodically, I need to rebuild the squashfs to reclaim space in the aufs writable directory.

I once had a script something like this:

    mksquashfs /usr /squashed/usr/usr_tmp.sfs -b 65536
umount -l /usr
umount -l /squashed/usr/ro
rm /squashed/usr/usr.sfs
mv /squashed/usr/usr_tmp.sfs /squashed/usr/usr.sfs
rm -rf /squashed/usr/rw/*
mount /squashed/usr/ro
mount /usr

Guess what happens if you hit Ctrl-C during the mksquashfs? That's right, bash runs all the rest too, including the deletion of the old squashfs file. I was left without a /usr, and it was brutal. Managed to recover (it's incredible how resilient a linux system is, as long as /bin and /lib are intact), and immediately put "set -e" in almost every bash script on my machine (I also fixed the script to keep the system in a recoverable state at all times...).

cool-RR 5 days ago 4 replies      
Is there a good reason why Linux doesn't have a recycle bin?
DenisM 5 days ago 0 replies      
You get in trouble not at the moment this happens, you get in trouble much earlier than that - when you allow yourself into a situation where a single typo leads to ruin.

Myself, I use TimeMachine and bitbucket on my Mac, and every-15-minutes snapshots on all Amazon EC2 EBS volumes. Similar solutions can certainly be found for your platform of choice.

monological 4 days ago 0 replies      
1000 points really? This is on par with initial tsunamii news.
sambeau 5 days ago 2 replies      
Unix could really do with a command that you can wrap around this type of call. Either a sanity check on the path part or a safe rm alternative that contains it. I would gladly give up full rm access to know that I can safely (or safer-ly) delete in scripts.

It could be something as simple as a file with paths on each line it - match one path or a path with a glob - and the script fails before destroying anything important.

Overriding it might involve adding a --override=/path/to/something but at least then it would be very explicit

dools 5 days ago 0 replies      
The two sure fire ways to live a long and happy life:

1. find . -name "pattern" <enter> <look carefully> <up arrow> | sudo xargs rm -f

2. WHERE some_id = 36; <home> DELETE FROM table_name

sigil 5 days ago 0 replies      
This tip only applies to interactive shells: I often prefix potentially dangerous commands with '#' while I edit them. Tab-completion still works (with bash at least, so I assume also with certain other vastly superior shells).

    # rm -rf /path/to/^I

orenmazor 6 days ago 4 replies      
just tried to explain this to a few of my windows using coworkers.
TheEzEzz 5 days ago 0 replies      
(I'm not a Linux user, forgive my ignorance)

Is there no way to prevent bugs like this at the source, by modifying Linux, rather than hoping there isn't any extra white space in a command that might delete your usr directory?

creativeembassy 5 days ago 0 replies      
I had a hard drive crash on me once, and I wasn't that worried about it, because I had setup network-based backup to the server in a different room. I remember thinking, "Restoring this backup will be sooo much easier if I can just connect it directly to the PC." Que me walking with the backup HDD towards the PC in question, when I drop it on the floor. When I plugged it in, it literally bounced inside of the chassis (platters fell off motor or something).
rektide 2 days ago 0 replies      
linux can still boot without a /usr. this was a commit; how many people ran it?

on the other hand, delete the boot.ini[1] and most windows systems cant even boot. now deploy that boot.ini deleting build on an MMO (eve online) and watch the fur fly. that, ladies and gentlemen, is how you earn a :golfclap:.

[1] http://google.com/search?q=ccp+boot.ini

hyperbovine 5 days ago 1 reply      
That's pretty heinous, but deleting /usr shouldn't cause you to lose any irreplaceable data.
wladimir 6 days ago 0 replies      
Reminds me of some slackware install script back in 1999 or so, I think it was for the gnome documentation.

Anyway, it accidentally removed rm-rf'ed /, I only discovered it in time because it gave errors about removing nodes in /proc...

fmx 5 days ago 0 replies      
The designer of rm is the greater culprit here, not the author of that install script. A single mistyped character should not lead to such drastic consequences.

"Usability? What's that? I'm really smart, so I don't make mistakes. If lesser humans do - that's their problem". That seems to be the attitude of many Linux programs and rm is among the worst of them. No doubt I'll get downvoted for saying this, but I've rarely, if ever, heard of such things happening in Windows. (And people still manage to delete files in Windows without too much difficulty.)

ch0wn 5 days ago 0 replies      
That poor guy. But I appreciate the reminder to double-check any rm command.
damoncali 5 days ago 0 replies      
This would be a lot funnier if there was anything preventing me from doing exactly the same thing... ouch.
eran 5 days ago 0 replies      
Once we got catastrophic backup

rsync -a --delete /home/project/ /mnt/backupDisk

Left unnecessary slash after "project" and rewrite all content on "backupDisk" by project files (instead of sync project folder on it)

indrora 4 days ago 0 replies      
Oh man.

an RPM I had at one point had / as one of its trees. There's a reason I moved to debian.

fedd 5 days ago 0 replies      
and it was 666 points a second ago. symbolic.
jcarreiro 5 days ago 0 replies      
I wonder if this is what the founders of github expected from "social coding"?
ltamake 5 days ago 0 replies      
That's quite a big bug. :/
yoyoyogi 4 days ago 0 replies      
glad it wasn't me..
danso 5 days ago 2 replies      
I hate languages with significant whitespace
Yhippa 5 days ago 0 replies      
Das ist nein gut.
malux85 6 days ago 0 replies      
OHHHHHHHHHHHH wow .... great link, passed around the office for a few laughs ... this is one of those heart sinking moments ....
gm 6 days ago 0 replies      
lol, f*ckups don't get any bigger than this
Advice From An Old Programmer learnpythonthehardway.org
624 points by FraaJad  5 days ago   220 comments top 53
jdietrich 5 days ago 3 replies      
Once upon a time, I played poker for a living. The most important thing I learned was that the least important factor in how much I earned was my skill at poker. The most important skill was table selection, my decisions over which games to get involved in and who to sit next to. A close second was managing my resources, making sure I was playing within my financial and emotional means.

If you want to be world champion or mix it up with the legends in Bobby's Room, you need to be a phenomenal player, but being great at poker won't stop you from being broke and miserable. Everyone in poker knows a 'That Guy', a bona fide poker genius who keeps fucking their life up because they care too much about the game. The archetypal example is Stu Ungar; He won three world championships and over $30 million, but died aged 45, penniless and alone in a crappy motel because he just couldn't get his life in order.

Like poker, software is intrinsically meaningful only as an intellectual puzzle. It can be fascinating and beautiful and it can send you mad. Fall into the trap of believing that poker is a worthwhile pursuit of itself and you end up in the trap - living out of your car or on the crappy end of the Vegas strip, some weeks a millionaire, some weeks a bankrupt. You see them come and go, the bright-eyed but slowly dimming college dropouts who could be living the life of Riley if only they knew something outside of poker, if only they stopped trying to beat the hardest games for the sake of it.

Your usefulness as a developer is only indirectly related to your ability to code. There are bona fide geniuses working in poverty and obscurity, there are utterly mediocre programmers doing amazingly useful and important work. Github is overflowing with brilliant, painstaking solutions to problems that just don't matter. Your most important skill as a developer is choosing what to work on. It doesn't matter how lousy a programmer you are, you can still transform an industry by simple merit of being the first person to seriously write software for it. Don't spend good years of your life writing the next big social network or yet another bloody blogging engine. Don't be That Guy.

onan_barbarian 5 days ago 3 replies      
My guess is that I've been coding for longer than Zed, and I don't remember _ever_ thinking it was boring, and a lot of the stuff he says might be true for Zed, it sure as hell isn't true for the rest of us:

"Programming as a profession is only moderately interesting. It can be a good job, but if you want to make about the same money and be happier, you could actually just go run a fast food joint."

If this is actually true for you, and you can actually code, you really need to be making brighter career moves.

"People who can code in the world of technology companies are a dime a dozen and get no respect. People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines."

Well, maybe. But this sounds like random riffing from someone who hasn't held a senior, stable position in an actual tech company nor worked as a programmer in any of the long list of disciplines. I've met plenty of people who were the duty programmer in a non-CS area who were treated like shit.

But what would I know? At around the time I was messing around with software pipelined SIMD string and pattern matchers, Zed was pursuing the real business of a Working Programmer, which is to say, writing rants and offering to rent a boxing ring to fight people who made physical threats to him (which, I admit, is kinda cool).

rdouble 5 days ago  replies      
People who can code in the world of technology companies are a dime a dozen and get no respect. People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines.

This is a nice sentiment but as someone who has been a programmer for biology and medical research, it's not true. It's just like any other mediocre programming job, but your office is a folding table under a decommissioned fume hood. Physicists and mathematicians who program are so underpaid they dream about the glamour and glitz of working in a cube on Wall Street. There are bad jobs with technology firms, but by far the programming jobs with the most "respect", most fun and usually highest pay are with tech firms and well funded startups.

singular 5 days ago 1 reply      
Though there is some wisdom in what Zed says here, I am getting quite tired of the 'actually, programming itself (especially as a job) is boring' meme, as if saying that marks you out as some sort of world-weary but insightful practitioner of the arts who has somehow risen above the mere trivial and seen it for the dull plod it really is.

Please stop telling me what I think + feel about my craft - you feel that way, you want to do it down, fine, but don't act as if it is some sort of immutable truth, especially when you are talking to people new to the craft which I think is quite unethical, frankly. Why assume your own experience/opinion is somehow necessarily correct and ought to be dictated as hard-won truths, when your entire schtick is 'dissecting others' logic'?

No matter how many times I read these sorts of things, nothing changes the fact that I find programming a joy, the whole thing of being able to render machines of such incredible power + complexity to do stuff at all a miracle and know it is something I want to spend as much time doing as I can for the rest of my life - no jaded naysayer, not even an 'internet famous' one can change my personal experience of the thing, and I am absolutely nowhere, a nobody in a CRUD job, and not even that good of a programmer, but my passion and love for it remains.

A funny thing about this is that no matter what pursuit you can think of, there are always those in it who say 'actually the reality of this is horrible', people who take that attitude exist everywhere in every field, no matter how wonderful and joyous it seems and often actually is. I think that's something to contemplate - if it were all true then nothing would be worth pursuing.

There is a lot of bullshit spoken about programming, lots of crap aspects to the reality of it, lots of crap aspects of dealing with other people in trying to get things done, but people seriously - this thing is amazing, let's be grateful and celebrate it for once, please.

programminggeek 5 days ago 2 replies      
You know, half the reason Zed Shaw is so well known is not just that he is a prolific coder, but that he is quite an excellent writer as well.

Well done Zed. I always appreciate what you write.

shin_lao 5 days ago 5 replies      
Programming as an intellectual activity is the only art

Programming isn't an art.

Programming is a craft.

The difference is that you can use a craft to make art, but crafting isn't always artistic.

Let's not get over our heads and consider ourselves artists because we can code...

mattdeboard 5 days ago 5 replies      
>Finally, I will say that learning to create software changes you and makes you different.

This is so very true in my experience. The way I think has fundamentally changed since programming became the primary professional/pastime activity in my life about two years ago. I'm 32, and everything from my politics to my decisions about where to live has been effected. (Whether I'm using the proper choice between 'effect'/'affect' is still a challenge...)

Programming has taught me more about critical thinking in two years than I learned in the previous 30. I can't stand many of the things I used to because of it, but thoroughly love many of the things I used to find painfully boring.

zwieback 5 days ago 4 replies      
Some good points buried among juvenile posturing, I guess the "old" part must be irony. Would you take programming language advice from someone who has learned the language in "a day or a week"? I realize the point is the language doesn't really matter but statements like that and the general tenor of the post don't inspire me.
simonsarris 5 days ago 2 replies      
> Programming as an intellectual activity is the only art form that allows you to create interactive art.

What about oral storytelling? Or just (re)telling jokes? Improv and related performing arts? Stage magicians? Mimes? Community murals?

Johngibb 5 days ago 0 replies      
I have to admit, I came into this discussion in support of the chapter and the author (http://news.ycombinator.com/item?id=2664502 for example), but after reading Zed's replies I'm turned off by his elitist replies, such as on multiple occasions telling people that they "can't read".

Clearly there's a lot of support (443 votes and counting), but resorting to this sort of insulting just doesn't lend anything to the conversation. And I think it's a worthwhile conversation to be had.

Peaker 5 days ago 2 replies      
If he thinks he can learn any programming language in a week, he's still ignorant about programming languages.

I challenge his knowledge of/about Haskell, Agda, etc.

Also, I am sure there are plenty of "old programmers" who are still excited about programming languages, and think they matter.

kbob 5 days ago 0 replies      
Who is the old programmer that Shaw interviewed for this section? He should have credited him.
Rickasaurus 5 days ago 1 reply      
I got bored with programming so I started to break out into more mathy things like machine learning and computational linguistics. It's the best of both worlds.
sunchild 5 days ago 0 replies      
I'm just going to start linking to Shoshin every time I see a weary, old coder blogger post: http://en.wikipedia.org/wiki/Shoshin
ihodes 5 days ago 1 reply      
While I'm yet a young programmer, the primary paid experiences/internships/jobs I've had with programming have been in the biomedical/bioinformatics field. My first day on the job? Did probably all the work they'd expected of me the entire summer (all using a simple "programming" trick with Excel) then proceeded to write them a few program to make their data-entry/processing jobs a lot easier and more precise. I was like a magician.

It was pretty cool.

I've had nowhere near as much experience as Zed or many of the people replying on here, but my experience in different labs and situations has been similar.

On another related note; I was talking with an international finance/investment profession when I expressed my dual interests in finance and neuroscience. She immediately made the point that I'd be infinitely more valuable in finance with a hard science background (particularly in financing the field my background was in).

Moral: Domain knowledge and niche/cross-discipline expertise is valuable.

astrofinch 5 days ago 0 replies      
It seems likely to me that the dual specialization strategy Zed describes is beaten by the strategy of being an opportunist who has the ability to code as one of the tools in their toolkit.


caryme 4 days ago 0 replies      
Programming as an intellectual activity is the only art form that allows you to create interactive art.

I would venture to say that music composition is also interactive. Music, to me, is art twice: first in the composition and second in the performance. Somewhat like programming, composers create something and send it out into the world so that others can use it, give it life, perform it.

flocial 5 days ago 0 replies      
The piece is definitely tainted by the author's personal experience but the closing message is uplifting and empowering,

"Finally, I will say that learning to create software changes you and makes you different. Not better or worse, just different. You may find that people treat you harshly because you can create software, maybe using words like "nerd". Maybe you will find that because you can dissect their logic that they hate arguing with you. You may even find that simply knowing how a computer works makes you annoying and weird to them.

To this I have one just piece of advice: they can go to hell. The world needs more weird people who know how things work and who love to figure it all out. When they treat you like this, just remember that this is your journey, not theirs. Being different is not a crime, and people who tell you it is are just jealous that you have picked up a skill they never in their wildest dreams could acquire.

You can code. They cannot. That is pretty damn cool."

marcamillion 5 days ago 1 reply      
For all the flack that Zed gets, this is actually one of the sanest/most inspiring things I have seen him write.

Truer words have never been said.

goldmab 5 days ago 0 replies      
Programming as a profession is only moderately interesting. It can be a good job, but if you want to make about the same money and be happier, you could actually just go run a fast food joint.

Zed appears to be saying that he isn't happy as a professional programmer. Some people really enjoy it.

JoshTriplett 5 days ago 0 replies      
I found the book that contains this chapter quite impressive. It represents the only attempt I've seen to document the procedure many self-taught programmers followed to learn programming by exploring. At first, reading the instructions about carefully typing in the exercises, it took me some time to realize the point (and I don't think someone would get much value out of only typing in the exercises); however, once I read some of the "Extra Credit" exercises it made perfect sense as an introduction to learning by exploration. If typing in the exercises and running them doesn't give you an irresistible urge to tweak them and see what happens, you probably won't find programming fun.
starpilot 5 days ago 0 replies      
> People who can code in the world of technology companies are a dime a dozen and get no respect. People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines.

So true. I'm a aeronautical engineer and notice things everyday that could be revamped through coding. The problem is the vast majority of aeronautical/mechanical engineers aren't comfortable with code, and if anything broke or any improvements were needed after I left, no one could do anything with it. So we're back to our "database" of 200+ Excel files and nested folders for CAD "version control."

paufernandez 5 days ago 0 replies      
"they can go to hell"

"people who tell you it is are just jealous that you have picked up a skill they never in their wildest dreams could acquire"

As much as I get worked up by his writing, I think Zed Shaw always goes a little over the line...

code_duck 5 days ago 0 replies      
>People who can code in the world of technology companies are a dime a dozen and get no respect.

That may be a bit exaggerated, but...

>People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines.

This is quite true. I'm involved a bit with a few circles outside the whole web-tech sphere, and it's quite different. Someone who understands the web and technology can create things that others cannot. Being involved in a certain field gives you knowledge and social contacts in the field. Put those together, and the business ideas you can come up with can be ones that can really change things.

schiptsov 5 days ago 1 reply      

Coding and software engineering are not the same knowledge. Coding is just a small part of the big discipline. The difference between software engineer and a coder with even years of practice is the same as between a poet and a full-time typist.

Memorizing syntax (and may be even some standard idioms) of 20 different languages doesn't make you a software engineer, and of course, you can code something after a day to week of practice, but it will be a mere amateur coding, not a programming.

Of course, such kind of coders are dozen for a dime, because having a dictionary doesn't make you a translator or even speaker of the any human language. After memorizing some basic words and you can use some very basic vocabulary and copied sentences from a phrasebook, but you cannot read even a news paper, let alone a non-fiction or a scientific book. You cannot even watch a TV - they're speaking too fast.

The idea behind reading other people's code is not about finding familiar syntax or code blocks, or even use Ctrl-C, Ctrl-V it is about appreciating and understanding the ideas which leads to this exact code and not the other, why this and not that, which is impossible without engineering knowledge.

No amount of memorized syntax can compensate the lack of practice. You may learn the syntax of 50 programming languages, it is not a substitute for years of practice with at least one of them.

Memorizing standard idioms also does not make you a programmer. You should understand why there idioms emerge and remain here, which ideas are behind them, which technology, what are advantages and disadvantages. This knowledge makes you a software engineer, and this knowledge will give you respect of others.

Producing yet another python tutorial, without ever realizing that keeping it short, full of idiomatic examples, and ability to grasp the big picture in an couple of hours is a huge advantage of the classic tutorial http://docs.python.org/py3k/tutorial/ doesn't make you a teacher of humanity.

And of course, language matters. just look at this http://hyperpolyglot.org/scripting and try to appreciate the differences in readability and self-explanatory between PHP and Python/Ruby. Try to grasp why carefully chosen syntax of Python/Ruby is different from chaotic approach of PHP. Unfortunately we can't see the bloatedness of Java syntax on the same page.

rhdoenges 5 days ago 0 replies      
For all his faults, Zed Shaw is really a great personality to have in the programming world. He loves to code, but doesn't get caught up in the minutia and cargo-culting.
KeyBoardG 5 days ago 0 replies      
I think this becomes apparent to anyone with experience with multiple languages and multiple platforms. The language is just the tool you use to accomplish the goal. Its good practice to learn new and different languages and paradigms just to see how they work and how you can take the good and add it to your arsenal.
Quiark 5 days ago 0 replies      
I'm surprised than in this whole wall of critique, almost nobody has pointed out about the last 3 paragraphs.

I don't think "They can go to hell" is a good enough advice. There are nerds out there who are struggling socially, may be even virgins and I think they deserve better advice.

donaq 5 days ago 0 replies      
People who can code in the world of technology companies are a dime a dozen and get no respect

Wow, where have you been coding? I am not as proficient (and DEFINITELY not as prolific) as you are, but I've only had that feeling once working as a programmer in Singapore, and that was because the boss in question happened to be an asshole.

swah 5 days ago 0 replies      
I just don't like when he calls himself an old programmer. He is only like 10 years older than me - oh, wait..
richcollins 5 days ago 1 reply      
mohsen 5 days ago 0 replies      
the first time i read this i remember thinking to myself, "oh boy, i wish i'd read this 8 years ago. i would have still been a programmer, but i would have chosen a different degree..."
MichaelReed 5 days ago 0 replies      
I think a craftsman is entitled to reflect upon his work and profession and not have that introspection be neat an clean for everyone else's consumption.

There are moments of doubtful introspection and unwelcome truths that are insightful and illuminating. Stop and listen to the perspective and perhaps just spend a moment with it... That is want it means to be human.

Spouting of some knee-jerk reaction shows you are not even beginning to listen and haven't begun to hear what this person is emoting. There is a lot more here that is heartfelt and true than simply what is written.

olalonde 5 days ago 0 replies      
Isn't this the same guy who complains about not being able to find work and how pissed off he is that Google only offers him "junior system administrator" jobs?[1]

Not sure I'd want to get my career advice from him.

[1] http://techcrunch.com/2008/01/01/zed-shaw-puts-the-smack-dow...

adsr 4 days ago 0 replies      
I found the discussion about domain experts interesting, as if there is no domains within CS. Wouldn't domain expertise in networks, machine learning, DSP, data bases, operating systems etc. be of any value.
russellperry 5 days ago 1 reply      
Zed's a strong cup of coffee and guys like him generally play a really healthy role in the community they are a part of, driving discussions in directions they might not have taken and playing the part of Gadfly at Large -- every community needs a Zed to keep from becoming complacent.

"Rails is a Ghetto" notwithstanding, Zed's writing is always worth engaging even when you strongly disagree. In that respect he's always reminded me of Steve Albini.

What Albini would do with Fret Wars, however, is another question entirely.

jeggers5 5 days ago 1 reply      
This is a fantastic piece of writing. Was actually very inspired by it.
crasshopper 5 days ago 1 reply      
Oh please. You can't make as much money running a fast food joint and you will not be happier, unless that's in your blood. (I know one of the owners of a super-high-grossing KFC and have run a small business myself.)

Programming is a cushy, stimulating, high-paying job - and don't you ever forget it.

brooksbp 5 days ago 0 replies      
> At the time that I wrote this book I knew about 20 programming languages and could learn new ones in about a day to a week depending on how weird they were.

Funny. I've been programming quite a bit too and feel comfortable in a handful of languages. Knowing what's happening in the compiler and in the hardware or vm (runtime) is a different story. Being able to understand what programs do no matter what language they're written in is also a different story. We all know 20 different languages.

astrofinch 5 days ago 1 reply      
"People who can code in the world of technology companies are a dime a dozen and get no respect."



russellperry 5 days ago 0 replies      
If you haven't watched Peepcode's Play by Play with Zed Shaw, you should. Really insightful stuff.
jerryr 5 days ago 0 replies      
As someone who's been trying to hire good software engineering professionals for some time now, I'm going to tentatively agree with, "people who can code in the world of technology companies are a dime a dozen"; however, I'm going to posit that, in the world of technology companies, good software engineers who are passionate, diligent, and bent on improving themselves and their field are rare. So, please do not despair because you've read the Old Programmer's advice and you're not fluent in biology, medicine, government, sociology, physics, history, or mathematics. I can say that even as a generalist, you can help advance the field of software engineering, and I represent one technology company that will value you for that.
boscomutunga 5 days ago 0 replies      
I like the point mentioned that we should avoid being allied to a particular language and reflect on solving the problem.
shevegen 5 days ago 0 replies      
Zed Shaw is trolling again. His ego is so boring.

Good that I stopped reading the rant when I found out it was him.

rlobue 5 days ago 0 replies      
Lovely end to a book. To say other forms of art are not interactive however is a little short sighted.
delpinoman 5 days ago 0 replies      
I agree that it's more important to have some additional domain knowledge than to be some superprogrammer. I'm not the best programmer but I have some (human) language learning knowledge and thus could set up my own business at http://www.chinese-course.com/
Best thing you can do as a programmer is be your own boss.
joyarubica 5 days ago 0 replies      
Since the best programmer, the most intelligent person or the best working people can be the lowest paid person, I think that what you must learn is to sell your skills.

Compare Linux to MS, is not about what you do but about how you sell it.

hiesenburg 5 days ago 1 reply      
you're the man, Zed
rimmjob 5 days ago 1 reply      
zed shaw taught me python, cured my hemorrhoids and showed me a how to be a real man.
whalearmy 5 days ago 0 replies      
hah, well shit way to spoil the end of the book for me!
CedriK 5 days ago 0 replies      
I'm clapping my hands right now!
Good text :)
jhuni 5 days ago 0 replies      
What I discovered after this journey of learning is that the languages did not matter.

This sounds a lot like my journey. I was overwhelmed with the details of ~20 programming languages and data formats. Eventually it actually got rather frustrating to work with all of them. Then I discovered Lisp.

mclin 5 days ago 2 replies      
> People who can code in the world of technology companies are a dime a dozen and get no respect. People who can code in biology, medicine, government, sociology, physics, history, and mathematics are respected and can do amazing things to advance those disciplines.


Myths About Introverts jerrybrito.org
417 points by Teckla  6 days ago   188 comments top 46
dkarl 6 days ago  replies      
Just somebody (presumably an introvert) denying common negative generalizations about introverts without providing any supporting references or analysis. Turns out (thank you, oblique63) it was an off-the-cuff list thought up by someone who read a self-help book and was inspired to "redefine [his] entire life in a new and positive context."

Seeing introversion as a preference or identity is fine as long as you have a nice consistently introverted life and that's exactly what you want, but it harks back to the day when everybody had their place and accepted their limitations and anyone who felt any conflict or frustration about it was "maladjusted." If you're introverted and want some of the benefits of extroversion, such as a bigger social network for locating jobs and meeting women, or if you discover that you really enjoy a hobby that has a large incidental but unavoidable social component, then you're supposed to realize those things are "just not you" and go home and read a book.

Introversion as an identity is a nice explanation when you really don't want to do something. "What, you don't want to go to the Nicki Minaj concert?" "Let me explain. You see, I'm an introvert...." But what explanation do you give yourself when you really want to go see a certain band but you think the social aspect will drain you so much it will be hard to enjoy? There's no simple "I like this" or "I don't like this." There's a conflict that can't be resolved. What do you do when you realize it's nice to have a big diverse circle of friends sometimes -- for trying to round people up for certain activities, or so you aren't limited to the tastes of your one or two really close friends -- but maintaining that social network is intimidating and draining and you don't know if you're up to it? Introversion starts to seem less like a matter of taste and more like a limitation you're fighting against.

It's nice to say you're a picky person who doesn't like superficial relationships, who only wants a handful of close friends you can engage with in a meaningful way, but then you plan a backpacking trip and realize there's some climbing involved and it isn't safe to go alone. You could limit yourself to whatever your friends like to do. But the trip sounds really cool, and now that you think about it, you're pretty sure you'd enjoy rock climbing in itself. Wait, there's a problem. Learning basic rock climbing doesn't intimidate you, but you will have to meet people who like climbing, meet enough of them and cultivate enough social connections to put together three or four people to do this hike. What would sound fun to an extrovert -- meet a bunch of new people who share my interests, yay! -- poses a tough decision for the introvert. Do I really want to do this? Will it be worth it? Am I even capable of doing it? It will involve a lot of social interaction, and I don't know if I can muster enough smalltalk and conviviality or if I'll get tired, zone out, fail to engage and be engaging.

That brings up another matter of "taste." It would be nice to say I'm simply bored by smalltalk, but I can't kid myself; it isn't that simple. I know that once in a while I do like smalltalk, and when I think about it my ability to enjoy a social situation has more to do with my mood going into it than the situation itself. I get bored when I'm not engaged, and I have difficulty engaging with people because anxiety and stress make me shut down. When I'm overflowing with positive feelings, I have no problem engaging with people and enjoying smalltalk. So the problem isn't smalltalk, unless I want to say that I'm stupid to enjoy it when I do, and right to be bored when it bores me.

I could resolve all these problems by having a consistent life and molding my tastes to coincide with my comfort zone. I could just happen to prefer hobbies that shelter me from social situations or bring me together with other introverts instead of forcing me into uncomfortable situations. It's great when it works out that way, and it's certainly a major factor in how I manage to enjoy life! But I chafe against it. I'm maladjusted. I don't like tailoring my life to my natural limitations any more than I like tailoring my life to other people's expectations. My introversion messes with me, so I mess with it right back. Sometimes, when I can afford the energy.

parfe 6 days ago 5 replies      
This article is nothing more than a chain-mail style bullshit list and it's sad to see it voted up so highly. I suppose it's a nice ego-stroke for all the self described introverts, but most of the "myths" are actually supported by their counter-descriptions.

The Original Source appears to be: http://www.carlkingcreative.com/10-myths-about-introverts

They hate small talk.

Small talk is a social skill. and when meeting a new person small talk is generally all you have. This basically affirms the "myth".

They want everyone to just be real and honest. Unfortunately, this is not acceptable in most settings

Talk about a value judgment on non-introverts. Being polite is more important than being pointlessly honest.

If you are lucky enough for an introvert to consider you a friend, you probably have a loyal ally for life.

If only I could find myself a loyal friend who can't make idle talk, will talk for days about things that only interest him and won't want to do much out in public.

They take in data and experiences very quickly, and as a result, don't need to be there for long to “get it.”

Ah yes, pity those non-introverts that take weeks to figure "it" out.

Introverts are perfectly comfortable with their own thoughts. They think a lot. They daydream. They like to have problems to work on, puzzles to solve.

Introverts are often individualists. They don't follow the crowd. They'd prefer to be valued for their novel ways of living. They think for themselves and because of that, they often challenge the norm. They don't make most decisions based on what is popular or trendy.

Non-introverts are mindless slaves to culture and advertising!

it's just that their inner world is much more stimulating and rewarding to them.

Or said in a way to not flex the ego "Their inner world is comforting and welcoming without challenge from outside stimulus."

Benjo 6 days ago 4 replies      
I feel compelled to share my current process of understanding and dealing with my own introversion. Maybe this will resonate with others, maybe not. Where I am right now, it's more important for me to be able to share this than anything else.

I ended a relationship recently, partly because we had huge communication issues. Her thoughts were always close to the surface, I tended to think about things for hours before finding the courage or words to express ideas that were important to me. When I finally managed to say out loud what I'd been mulling over, she didn't always take me very seriously or even let me finish my thought before jumping in with hers. This of course made it even harder to open up to her again. I tried earnestly to explain to her that I needed quiet time daily to process my thoughts and that interruptions were lethal to my ability to communicate. In the end she never seemed to accept that this was a fundamental part of my personality and not some excuse I was giving her. Often she would make sarcastic comments like "Have you had enough quiet time today?" These relatively innocuous comments hurt me more than most of our arguments, simply because it communicated to me that she truly didn't understand me or what I needed to be happy. Maybe we could have established that communication, but the relationship had gone on too long for that kind of refactoring.

After the relationship ended, I suddenly had ten times the social energy. I thought I was burnt out of performing comedy, but suddenly had more then enough energy. I took the time to study social skills and took a hard look at my life and my emotional state. It became clear to me that being introverted had closed me off to not only her, but to all my friends and even family. I realized that my closest friends actually made me LESS social, simply because of the attitudes they held towards meeting new people and society in general.

So I started cutting them out of my life. I began a new effort of being more social. I limited my "deep thought introverted" time to when I was actually alone. When I was socializing, I made sure that I extroverted the entire time. If I felt the urge to check my phone or zone out of the conversation, I recognized that my energy had run out, excused myself and left. I made new friends who viewed me as a social, outgoing person. Their expectations of me helped my momentum. I forced myself to be open with people. I ignored my tendency to withhold personal information, embarrassing stories, or questions that might make me look stupid. I started bantering more with coworkers that I hadn't been close to before. I started reinforcing the believe that I shouldn't feel the need to hide anything about myself.

I was a little confused by the new amounts of social energy I had. My girlfriend had taken up a lot of my time, but after our breakup, I was able to maintain a schedule with at least twice the social hours as previously. Where was I getting all this energy? I realized that what was draining me wasn't being social, it was being uncomfortable. It was the awkward situations, not social situations in general, that were sapping my energy. I couldn't tell the difference because I was in a situation where 90% of my social interactions were uncomfortable for one reason or another. In my relationship, I was constantly worried about giving her the time she wanted to spend with me while giving my time to process my thoughts and work on projects. In general, I was always trying to follow a train of thought in my head, even when out with friends, or in a meeting, or in a friendly conversation, instead of being present and happy to interact with someone else.

The biggest benefit to this change in my life has been the increased sensitivity to my own emotional state, including how much control I had over my own happiness at any given time by means of my own posture, facial expression and state of mind. I realized that just wearing a stupid grin on my face made my happier than any of my academic or professional accomplishments. It was as if my introversion had muted me to my own emotional state. I began to recognize that humans are essentially emotional antennas. Evolution has conditioned us to subcommunicate volumes of information to each other. The emotional state of a person is broadcast and received by everyone around them. Extroverts are much more sensitive to this than introverts. Suddenly I realized why smalltalk, politeness, and so many other things I had never given much value were so important. Other people felt the effects of these things a hundred times more than I had. And they couldn't help it anymore than I could help being introverted.

The reverse of this is also true, by learning to recognize this, I began to pick up much more how other people were feeling. Connecting with people and making them happy begin to give me as much satisfaction as I've ever had from programming or making something work. I'm beginning to reconsider whether technical work is good for my emotional state, or if I am even cut out to be happy while doing it.

Am I truly an introvert? Yes, I still believe I am pretty strongly introverted by nature. Do I think all introverts are closed off? No. I think most introverts, even those more introverted than me, are more successful than I was at maintaining at least a few close friendships. I do believe that learning how to be comfortable in ones own skin is critical to being a happy person. I certainly didn't give this problem nearly as much attention as I should have. If you take anything away from this, I hope that you will consider if you should be giving it more attention in your life as well.

jhamburger 6 days ago 1 reply      
Here's a myth held by introverts. Introverts (rightly) believe that extroverts don't understand them, but they don't understand extroverts as well as they think they do. Case in point, the commonly held belief on HN that extroverts mostly BS their way through life while the introverts are doing the real work. In reality we introverts probably don't understand how incredibly nuanced seemingly superficial relationships and conversations can be.
tcskeptic 6 days ago  replies      
Myth #3 " Introverts are rude.
Introverts often don't see a reason for beating around the bush with social pleasantries. They want everyone to just be real and honest.

Yes, this is often called being rude. It may be true that by this guys definition introverts don't mean to be rude, but if a person (introvert or otherwise) acts as described above, that is rude.

drblast 6 days ago 3 replies      
The assumption that there's something wrong with not interacting with other people eagerly and often strikes me as oddly egotistical. Other people aren't alive solely for the enjoyment of extraverts.

The "problem," if there is one, is that extraverts are uncomfortable and find it difficult to interact with introverts. But this is as much the fault of extraverted people as it is of introverted people. They speak a different language and need to meet halfway to interact effectively.

Due to the personality type, however, the extraverts see this as a huge problem while the introverts really don't care all that much.

What if we asked the obvious counter-question: Why are extraverts so threatened by anyone who won't interact with them on their terms?

Nobody asks that because extraverts get a pass on this; it's the introvert's fault when social interaction between and extravert and an intravert is uncomfortable.

I can see why that would happen but it's odd.

agentultra 6 days ago 0 replies      
Myth #11: all introverts are exactly alike

I think it is worthwhile to note that not all introverts are alike. I can tick off some similiarities in this list with myself, but my experience of being an introvert is quite different. ymmv.

AlexC04 6 days ago 0 replies      
I did a degree in Psychology and one of the advanced topics in personality theory that came up when discussing the Introversion/Extroversion spectrum was the concept of 'Pseudo Introversion' and 'Pseudo Extroversion'

The general crux is that there exist people who are what you might call 'biologically' introverts (or extraverts) but who have made a conscious decision that there is something that they love more than their base trait in the I/E personality dimension.

Examples of pesudo-extroverts might be a very shy actor, singer or performer. Socially they'd be considered an introvert, but they love their craft so much that they pretend to be an extrovert in order to do the thing that they love.

I thought it was pretty interesting.

(More reading: http://carletonnow.carleton.ca/february-2004/personalities-a...)

And more, this is a good one too: http://harvardmagazine.com/2003/07/introversion-unbound.html

Shenglong 6 days ago 2 replies      
Myth #10 " Introverts can fix themselves and become Extroverts.

I don't know if "fix" is the right word in the complete, but they can definitely change. I used to follow that list pretty closely - and while there's nothing intrinsically wrong with that, I realized that it can be extremely socially disadvantageous. Regardless of how smart someone is, it's an undeniable fact that in this world, almost all the time, you need the support of other people to make your desires come true. I'll cite the academic community on this one: even if you make a great scientific discovery, you'll never get a Nobel prize if all the other academics think you're a jerk.

I really think the primary talent any intelligent person should learn is adaptation - and that includes adapting to your social surroundings. For example: although I played a lot of sports semi-professionally, I have never enjoyed watching sports... especially team sports. Yet, when I go to a hockey game, I make a ton of noise, and force myself to get into the spirit and have a good time, even though I still haven't bothered to learn the rules.

Don't like idle gossip? Well, it's the fastest way to permeate a new group of people. Now I'm an active gossip and drama seeker (although I make sure the gossip is harmless).

In any case, I feel his point needs to be refined a bit.

latentflip 6 days ago 0 replies      
This list is taken from this article: http://www.carlkingcreative.com/10-myths-about-introverts
which is based on the guy reading this book:

I read the book myself recently, and I can highly recommend it if you feel that you sit anywhere on the introvert spectrum.

It covers the "science" behind introversion, how introverts vs. extroverts think and respond to stimuli and neurochemicals. (I put science in quotes as I don't know enough about the brain to know how scientific the discussion is but I found it useful and interesting nonetheless).

It then goes on to look at how this affects introverts' interactions with themselves, others, and in social situations - with some thoughts and guidance on how to better integrate into an "extroverted world" without just trying to be more extroverted.

I have definitely found it helpful and it's made me think a lot about who I am and how I react to life as an introvert.

scythe 6 days ago 1 reply      
Why do we need this silly choice between being an 'introvert' and being an 'extrovert' and some fifty-cent words to hang around our necks with some attached activities we're supposed to like or dislike? I joke about how awesome it is to be "ENTP", but I don't really take that shit seriously.

This whole "*-trovert" obsession drives people away from understanding conversation because they try to categorize it solely as 'necessary' and 'unnecessary'. What sort of life is it when things are solely necessary or unnecessary?

crux 6 days ago 0 replies      
I have to agree with some other commenters that although this article is accurate enough, it establishes a view of introversion that's so rigidly determined, so reified, and so self-perpetuating and self-justifying that I find it hard to recognize and certainly hard to endorse as a lifestyle. The personality type and lifestyle here is a sort of baseline tendency for introverts (like myself), but there's so much more leeway and growth possible within the most introverted soul that it makes me a little sad to see something so pat about these tendencies (and the whole dopamine thing"well, let's just say I Am Not A Neuroscientist but I suspect that Dr. Laney isn't one either).

A couple commenters have suggested that instead of wholly embracing these practices"especially the ones about being rude to people"it's advantageous, for job purposes, to meet women, to learn to at least put up with talking to other people. To be honest it's been kind of entertaining to hear from introverts who view the great extroverted mob like an enemy camp, to be infiltrated"at great personal expense, but to great personal reward"by learning to mimic their ways.

I want to suggest that it's possible to actually learn to enjoy being social and meeting people. You know, for its own sake. While it's true that eventually one will find that they might need to make relationships with other people so they can do camping trips and get laid and such, I have found that actually humanizing people, rather than treating them as ends to means, is more satisfying and healthy in the long run. Further, while it's nice to try to maintain a few close relationships, I think it's more satisfying and healthy to learn to get beyond a simplistic superficial/real binary with your human relationships"and by extension, with other people.

There are lots of ways to be introverted without seeing nearly the whole raft of humanity as psychic vampires, or insensitive extroverts, or simply resource repositories that you need to interact with. If you treat a work relationship or a bank teller with this attitude of, 'I'm not interested in superficial small talk. You only exist to me for the purposes of sending and receiving information or resources', you will not ONLY be alone when you want to go camping, but you will also be spiritually and emotionally impoverished.

The good news is, it IS possible to learn to enjoy talking with other people, even if it's ultimately tiring. I mean, most things in life are tiring. That's the nature of energy"we spend it on doing things. But you can be mindful of your energy level (and I might suggest, blood sugar) without having to abstain from all human contact. In fact, you can even enjoy human contact. The last 8 or so years of my life has been in a large part about learning to enjoy human contact"and I've learned to enjoy it by learning to be _good_ at it. I am now, I am glad to say, a pretty charming guy. I tell good stories, I meet people well, I dress well, I make a good impression. This means that I don't have trouble meeting women or finding partners for the activities that I like, but it also means that I derive actual satisfaction from the practice of social skills. I like exercising my expertise, like most people, and I like the rewards I get"social reinforcement, positive feedback, that sort of thing. And I think that's been the key for me. I didn't decide to embark on a project of self-improvement and socialization because it was necessary for my eventual professional success. I learned to get off on doing a good job at social behavior. Introvert or not, it still _feels good_ to be a charming, likeable person. It just means I take a nap afterwards.

Goladus 6 days ago 0 replies      
The definition of introvert is already so vague it's hard to take this seriously.
MetaMan 6 days ago 1 reply      
Sorry but I can't take the article seriously. The notion that everybody can simply be divided into either being an "Extrovert" or "Introvert" is very doubtful for me.

Even if you accept this one dimensional personality description as being useful by itself;

- is it constant (the same in all circumstances),

- does it vary over time?

- Is everyone either an "introvert" or an "extrovert" OR do people fit on a sliding scale between the two extremes?

I'm guessing that the author feels he is an introvert. IMO, rather than trying to redefine or clarify what it means to be an "introvert" just don't accept the "introvert/Extrovert" labels. Its a pseudo-scientific term which is used in a lazy way to put people into neat boxes.

I'll bet most people can think of situations where they will act "extroverted" and others where they'll be "introverted".

We are neither a number or a label!

jamesaguilar 6 days ago 0 replies      
I love his myth #3 response. "Introverts often don't see a reason for beating around the bush with social pleasantries" reduces to "Introverts are rude."

Personally I don't think the average introvert is rude. I think that not because I redefine what "rude" means, but simply because on average introverts are polite people just like extroverts. Sure, there are socially maladjusted introverts who think that communicative efficiency scales with bluntness. (Hint: making someone feel insulted or defensive is likely to slow you down a lot more than the taking the effort to word criticism cautiously.) Just like there are extroverts that think it's ok to shout someone down or make fun of them until the acquiesce to whatever the extrovert wants. But I don't know that rudeness is more common in either of intro- or extroverts.

jfruh 6 days ago 1 reply      
I consider myself pretty introverted but I'm also pretty conflict-averse, which means that myth #3 doesn't apply at all, at least to me -- if anything, I tend to be overly polite with people. And I know lots of introverts who are the same way.

The introvert-extrovert axis is a great tool for understanding behavior, but don't just assume that every angle of your personality arises from where you are on that spectrum.

T_S_ 6 days ago 0 replies      
Instead of the "War Between the 'Verts", it would be useful to hear some comments about successfully interfacing with the other type. Seems to me the two types complement each other well in business as long as there is mutual respect.
petenixey 6 days ago 0 replies      
Why is this being dressed up as introvertedness v. extrovertedness?

Introvertedness and extrovertedness are different directions on a scale, not absolute points. Introvertedness covers a far milder set of characteristics than those described here.

What the author describes is an extremity of the spectrum and characteristics more usually associated with Asberger or High functioning Autism.

oblique63 6 days ago 1 reply      
original, slightly more detailed article: http://www.carlkingcreative.com/10-myths-about-introverts
mcantor 6 days ago 1 reply      
Am I the only person who just can't figure out whether I'm an "introvert" or an "extrovert" no matter how hard I try? I hate small talk (and love Smalltalk), but love meeting people. I value unfiltered honesty, but prefer effective communication. I love to be alone with my thoughts, but sometimes I just need to go out and make an idiot of myself at a party. Am I really the only person in the universe with a mutant 'vert-agnostic brain, or maybe, perhaps, are we creating some unnecessary binary distinctions here?
jkuria 6 days ago 0 replies      
I just read a very interesting book called The Art of SpeedReading people that supports this article. According to the book the main distinction between an introvert and extravert (yes, not a typo, the term used in the book) is that introverts re-charge by being alone while extaverts recharge by being around people. Even introverts who are socially adept and can thrive in public gatherings, feel drained by the experience and need some time alone afterwords. Extraverts are the exact opposite. Also there are shy extaverts and highly talkative introverts! I highly recommend the book!
zyfo 6 days ago 0 replies      
This is a much better article to pass along to non-introverts, if understanding is the goal: http://www.theatlantic.com/magazine/archive/2003/03/caring-f...
thomasgerbe 6 days ago 1 reply      
What about ambiverts?
a3_nm 6 days ago 1 reply      
"Their brains are too sensitive to the neurotransmitter called Dopamine. Introverts and Extroverts have different dominant neuro-pathways. Just look it up."

This seems surprisingly simplistic. Is there actually any serious science to back this?

jinushaun 6 days ago 0 replies      
Pretty much describe me, and I consider myself an introvert.
john2x 6 days ago 1 reply      
Most of the explanations pretty much equate to its corresponding myth, more or less.

P.S. being a shy introvert sucks.

kenjackson 6 days ago 0 replies      
The thing that is interesting about introverts (of which I am one) is that they will often say very little in person. But in email will write a rant that goes off in 20 different tangents to ppl they've never met.
Hisoka 6 days ago 1 reply      
Myth #6 describes me. I prefer authentic one on one connections rather than spreading myself "too thin". I think that's a problem w/ people with too many friends. Having too many friends is good but it also means you can't be great friends to all of them.
sambeau 6 days ago 1 reply      
I'm often surprised at how many performers are introverts. I have known people who while barely saying a word and make eye contact in close social contact are able to get up on stage and sing, perform and show-off in front of hundreds.

A few famous examples: Michael Stipe of R.E.M., George Harrison of The Beatles, Jimi Hendrix.

dholowiski 6 days ago 0 replies      
That's great - it's like a user manual for Me. If I wasn't such an introvert, I'd print it out and give it to everybody I work with!
mattiask 6 days ago 0 replies      
You know being an introvert or extrovert isn't a binary thing but rather a spectrum. If you want to find out how you are on that scale you can get do a Myers-Briggs personality test to get a rough estimate.

I'm squarely in the middle myself, I enjoy being by myself for periods of time working on my own stuff but after a while I need to socialize, and when I've socialized I need some me-time again :)

I just hope people think they're introverted because they lack social skills, being uncomfortable and not enjoying certain social situations doesn't mean one is introverted it only means one has to improve one's social skills.

They're like any skill, something you learn by experience and practice. Perhaps the reason that people think many computer-oriented people are introverted is because they choose to spend time in front of their computer instead of interacting with people (irl) and therefore don't develop their social skills as much.

cmurdock 6 days ago 0 replies      
I hate this sort of stuff because it's so binary. I consider myself a definite gray area and I think a lot of people are in there as well.
amosson 6 days ago 0 replies      
Here's an anecdote.

My first job out of collage was with a Big 6 accounting firm as a IT consultant. As part of training, we took the Myers-Briggs test (which places you on the Introvert/Extravert spectrum) and spent an entire day discussing the results. The message of the day was any of the different personality types can thrive and people should be aware of other's personality styles and taylor their interactions given what they know about themselves and what they know about the people they are interacting with. This was/is an important lesson and has been helpful in my career.

They ended the day with a set of two slides that broke down the population of the firm as a whole and the population of the partners in the firm. 80% of the firm were extraverts and >95% of the partners where extraverts. So the other lesson I learned that day, was that if you want to be in a sales-y leadership position, you better learn to behave like an extravert.

thret 6 days ago 0 replies      
#5 is the only one that doesn't apply to me. I quite enjoy observing crowd activities and can do this for long periods of time. I don't know how to 'let go' and join in with the crowd but it is precisely that release I find so fascinating to watch.
ChrisMac 6 days ago 0 replies      
A site I read on social skills has a post explaining why it doesn't use the words Introvert and Extrovert. The main points it gives are:

* There are no agreed upon definitions of the terms

* Just bringing up the terms can derail conversations and turn them into debate on what the words really mean (e.g., like what is happening in this thread)

* The terms cram too many sub-concepts into one

* False dichotomy

* Tends to ignore context (i.e., people act differently in different situations)

* Associated with a bitter Us vs. Them mentality

* The terms can make people feel defensive and closed off

* The words can be self-limiting labels

Full post: http://www.succeedsocially.com/introversion

scelerat 6 days ago 0 replies      
A lot of this rang true for me. I'm an introvert, always have been. From a very early age I tended towards internal activities: reading, programming. Even the sport I ended up focusing on (running) is a very solitary activity. Social interaction drains me and I need lots of alone time, often preferring it.

I play in bands too though, and get a serious, addictive rush from making noise and performing for a lot of people. And I genuinely like people and making friends, but I don't really feel like I'm sharing "me" in a meaningful way unless it's one-on-one or with a very small group. Parties sap my energy, but I go to them because I get to interact with so many people. The only point I take issue with is #9, because I definitely have a thrill-seeking, adrenaline-junkie streak.

There's no script.

rokhayakebe 6 days ago 0 replies      
Cheap shot: "The loudest one in the room is also the weakest"
uniclaude 6 days ago 0 replies      
This article does not seem to describe Introverts, but more INTJ/INTP types. Neither all introverts like to solve problems or puzzles, nor they all take data and experience very quickly.
int3rnaut 6 days ago 1 reply      
Why can't we all just get past labels and respect one another for who we are and act--there wouldn't be a need for this blog post if that was the case which is reason enough to try for that better future.
rapind 6 days ago 1 reply      
#1 Introverts are not introverts. It's a generalization and simplification that's more often wrong than right.
protagonist_h 6 days ago 0 replies      
Judging from responses, the topic resonates well here. Therefore a more interesting question to ask is • why so many hackers are introverts/shy/anti-social etc? Or more precisely, which one causes the other? Is it spending too much time in front of your computer which makes you introvert? Or is it that introverts are more inclined to take up solitude activities like programming?
schiptsov 5 days ago 0 replies      
vladoh 6 days ago 2 replies      
I think it will be very interesting to see a poll for introverts vs. extroverts. Unfortunately I don't have enough karma to create it...
known 5 days ago 0 replies      
Can introverts become good sales man?
Macro 6 days ago 0 replies      
So true!
MatthewPhillips 6 days ago 0 replies      
This is relevant to my interests.
JavaScript mp3 decoder allows Firefox to play mp3 without flash jsmad.org
402 points by phoboslab  5 days ago   94 comments top 22
RyanMcGreal 4 days ago 3 replies      
If imitation is the sincerest form of flattery, feature requests must be the next-sincerest. With that out of the way, I'd love to see:

* Standard playback widgets: volume, position slider, etc.

* A way to link songs, e.g. http://jsmad.org/play/114578

Fantastic work!

kellysutton 5 days ago 2 replies      
As a wise Keanu Reeves once said, "Woah."

Is there any upper limit you've found with bitrates, etc.? Also, what was the most difficult part in building this?

sandGorgon 4 days ago 2 replies      
Doesnt work for me (no audio): Chrome 12 on Ubuntu 10.10 64-bit
Youtube is playing fine.

Here's the Chrome debugger log:http://pastebin.com/MwqfD1K5

nddrylliog 5 days ago 5 replies      
jsmad lead developer here, shoot if you have any questions!
nddrylliog 4 days ago 1 reply      
Firefox 4.0+ AND Chrome 13.0+ are supported.

However, Web Audio API doesn't seem enabled in Chrome 13 by default, just go to 'audio:flags', check "Web Audio", then click the "restart browser" button and it should work.

hieronymusN 4 days ago 1 reply      
Technical question: You're using goto in a do/while loop here :


How are you pulling this off? I ask because while goto is a reserved word in JavaScript I didn't think it did anything.

chops 4 days ago 2 replies      
If the site isn't loading for you (I was getting nginx errors for a bit before it finally loaded for me), here's the github repo: https://github.com/nddrylliog/jsmad
ZeroGravitas 4 days ago 0 replies      
When does mp3 playback fall out of patent protection? I know people keep digging up new patents for popular standards but assuming Mozilla and like-minded developers put some effort into patent avoidance you'd think they'd be able to include native support for some subset of mp3 playback without too much patent trouble by now.
jensnockert 4 days ago 0 replies      
Oh, and by the way. Please join #jsmad on freenode (IRC) if you want to help us make the library awesome!
mise 4 days ago 1 reply      
Awesome! But...

I'm not a JS guy. I can't contextualise this. How does this compare to HTML5 browser-based audio playing? Will this be a new way to make an audio button? Or does it go much deeper than that for JS apps?

skue 4 days ago 2 replies      
I'm curious whether you came up with the logo after the fact, or whether you named it after the mag?

I've been surprised at how blatantly some recent open source projects reference pop culture in ways that are just begging for a takedown order - cool.io is another. I suppose it may be worth it if you're primarily focused on getting noticed in the short term (perhaps to get investment or a good job offer), but long term it seems to guarantee that the project will need to go through a rename with all the confusion that entails.

Edit: Forgot to say the technology really is amazing.

netnichols 4 days ago 2 replies      
It'd be neat to have a overview of the different 'modules' in play and what they do (either in the README or a separate wiki page). Great stuff!
tocomment 4 days ago 2 replies      
How does this work? I didn't think JavaScript could read a file on a byte level.
scythe 4 days ago 1 reply      
Can this be made to work in Opera?
pistoriusp 4 days ago 1 reply      
Would have been great if it worked on mobile Safari!
tomrod 4 days ago 0 replies      
Please get on this Grooveshark. I run Linux and your client runs so slowly.
aolnerd 4 days ago 1 reply      
Thanks to all contributed to this clever hack. MP3 on all browsers, without flash, is a really worthy goal.

But I'm hearing sputtering, myself. Are you guys going to carry this to a production-capable system?

floppydisk 4 days ago 0 replies      
Couldn't get it to load in Firefox 4.x, it just says loading. Looks like a neat idea though, I'll give it a second look once the Slashdot load clears off.
Apocryphon 4 days ago 1 reply      
First HTML5, now JS? Looks like everyone's trying to make Adobe obsolete.
jovrtn 4 days ago 1 reply      
Not sure if anyone has mentioned this yet, but I'm noticing speed/pitch differences in playback when I load a file from my disk versus playing in iTunes. Billy Joel sounds more like Janis Joplin.

Edit: Horrible bug report -- I'm in Chrome 12 with the Web Audio about:flag enabled on Mac OS X 1.6.7

Edit 2: Just tested in Chrome Dev 14 and the issue is unchanged.

bartl 4 days ago 2 replies      
Does nothing on Firefox 3.6.x
evanrmurphy 4 days ago 2 replies      
Hmm... 502 Bad Gateway. Can't wait to see this!
AOL Exposed: A Former AOL Employee Speaks Out thefastertimes.com
366 points by dreambird  4 days ago   113 comments top 28
aresant 4 days ago 1 reply      
"AOL paid us as “independent contractors,"

AOL is treading a fine, fine line there.

The IRS defines an independent contractor as:

"The general rule is that an individual is an independent contractor if the payer has the right to control or direct only the result of the work and not what will be done and how it will be done."

This is a notoriously ambiguous definition but with AOL's rigorous guidelines, deadlines, and instructions it sure seems like this isn't an "independent" work force.


ChuckFrank 4 days ago 4 replies      
Creating content online is NOT a viable business model. Recent history is littered with new content creators, and they've failed. The viable business model is either to host other content - YouTube, Hulu, Pandora, GrooveShark, Earbits, etc - Or to create content that is agnostic as to their use - Hollywood Studios, NY Publishers, Music Labels. - So either AOL should transition to a creator, or transition to a online host. It can't expect to have a viable future by creating content for online only. This is true of AOL and any other business model that tries this. JustinTV - Hosts, ESPN - Hosts, The WKUK - Creators, Monty Python - Creators. So please, once and for all, let's stop imagining these Online Studios, or these Online Magazine, or even worse, these Ipad Magazines. Instead think Vice. They've got music, magazines, tv, movies, and they don't care where you see it. http://www.vbs.tv/ - http://www.viceland.com/ . Just a bunch of Canadians that thought that they could rewrite the magazine business model by giving away their magazines for free. And look where that's taken them. So to recap. Make your choice, either host or create, and abide by their distinct rules.
kylelibra 4 days ago 3 replies      
Maybe this is an idealistic thought, but I think this trend of writing SEO laden garbage is what will finally make quality journalism behind paywalls work. People will eventually be driven to pay for decent content, unable to put up with irrelevant half baked articles churned out at breakneck pace.
SemanticFog 4 days ago 5 replies      
There's nothing unique to AOL here. When I first got out of college, I interviewed at local newspapers up and down the east coast. Entry level jobs had awful pay, about $15K/yr, but it was a chance to break in to the business.

One grizzled editor chain smoked cigarettes through our interview (you could do that in the office back then). He listened to me describe why I wanted to write. Then he leaned back, blew a cloud of smoke, and told me:

"You kid come into this business thinking you're going to make a difference. Pretty soon you find out, you're just filling the space around the ads."

He was right, actually. So I got into high tech instead, and have been doing startups ever since. Not sure I always make a difference, but at least I'm trying, instead of just filling space...

IgorPartola 4 days ago 0 replies      
The OP talks about how in the age where there are more readers than ever, writers are undervalued. What the OP fails to mention is the quality of readers and writers. A reader who consumes 100,000 pages worth of Facebook statuses is not really much of a reader. Historically, reading was used as a means to communicate ideas. Think Machiavelli, Aristotle, Nietzsche. Now it is used for communicating a much larger scope of information: "Lady Gaga Pantless in Paris". You cannot compare a writer that writes the Illiad and a writer that writes TV Show reviews of shows they've never seen. They are not the same category.
dpapathanasiou 4 days ago 3 replies      
“Do you guys even CARE what I write? Does it make any difference if it's good or bad?” I said.

“Not really,” was the reply.

If he had any programming background, he missed a golden opportunity to write a markov text generator which would have let him meet his deadlines without the stress.

kylelibra 4 days ago 1 reply      
Alec Baldwin was the celebrity in question referenced in the article in case you're wondering.
MatthewPhillips 4 days ago 6 replies      
This just makes me think: why in the world would any one want to become a writer these days? There isn't much money in it, unless you get lucky and hit it big. I understanding having a passion, but this is one passion that should be relegated to hobby time. Am I wrong on this? I'm just not seeing the economic viability of writing sentences and having people (whether readers or advertisers) paying you proportionate to the amount of work you put in.
spaghetti 4 days ago 2 replies      
Just an aside: would have been awesome if the writer created an article generating program. He could feed the program a few key words (perhaps just the name of the TV show). The program could scrape or be manually fed some information from Google trends. Then add some scraping of data from existing articles. Use a markov chain to keep the content fresh and you're good to go! I'm just thinking of the sentence generation via markov chain from Programming Pearls and the hilarious auto-generated computer science papers that were submitted and accepted by some journal.
yangez 4 days ago 0 replies      
Anyone else notice how good of a writer this guy actually is? Throughout the article he takes you through an emotional journey that very effectively portrays AOL as a soulless monster. (The third-to-last paragraph is a very good example of this.)

His words may or may not have merit, but his writing style is extremely persuasive. He got his message across and certainly made an impact. If only AOL took advantage of this, we might be reading an entirely different article.

heyrhett 4 days ago 0 replies      
AOL's plan to "beat the internet" with a content farm isn't working out so well yet?
earbitscom 4 days ago 1 reply      
I am a huge supporter of creatives and artists. That being said, I have only partial sympathy for this guy. Work is work and we all need it, particularly creatives, but when you take a job writing about things you don't know anything about, you can't complain that you're being asked to do so. If he hadn't seen the most popular shows on television, he took a job he wasn't qualified for. That's fine, but then, he couldn't be bothered to research the industry he was covering - when that research required sitting in front of a TV and watching The Simpsons. That's not exactly slave labor.

It's a shame that content production has become the ad mill that it has, and writing about that from an objective viewpoint with all of this guy's internal data would have been good journalism. But I have a hard time feeling sorry for someone who got paid $35k a year to write about cartoons and couldn't be bothered to watch some of them in his spare time.

lefstathiou 3 days ago 0 replies      
FYI If you havent taken the time to read the comments posted to the actual article I strongly recommend you do. They're priceless - perhaps better than article itself.
brown9-2 4 days ago 1 reply      
Does anyone think that AOL's model here actually stands a chance of succeeding? Who wants low-quality, crap content?
wallywax 4 days ago 0 replies      
Are things really at a state where 35k is considered an impressive salary for a journalist in the US? I know programmers are spoiled, but I was kind of shocked at the implication that that was thought of as big bucks. Sad.
ck2 4 days ago 0 replies      
Not just AOL, broadcast media, like mainstream news channels seem to work that way too as far as buzzwords and what topics to cover.

Like you'd never know the US was in three wars or about to default on the deficit the past couple of weeks. Only PBS was mostly immune and BBC World.

aj700 3 days ago 0 replies      
"AOL has a plan. The plan involves the future;"

Okay, but the future has a plan. The plan doesn't involve AOL. This and the fact they refuse to cancel your account. What a pathetic company. Good job stockholders are dumb.

Every bonus taking banker raped the banks' stockholders. But nobody seems to care. Stockholders come bottom, behind customers, employees, and bigger creditors. It's not quite how capitalism was supposed to work.

mckoss 3 days ago 0 replies      
Why are advertisers paying $9 to $20 CPM to AOL when they generally pay a tiny fraction of that to advertise across most web sites and on Google?
mihar 4 days ago 1 reply      
It's a sad sad story. I love reading great content and I never had problems paying for great content.

I've been a subscriber to paid magazines/papers and I'll continue to be one to digital ones.

But I guess my kind is rare and of course the majority always wins.

hernan7 4 days ago 0 replies      
Actually, it's a former AOL contractor.
lfnik 4 days ago 0 replies      
As I as reading this I thought how eerily familiar to Huffington Post this sounded. Then I remembered who Huffington Post was sold to.
mikealle233 4 days ago 0 replies      
AOL's new "business model" is one Google algo change away from going poof. Clearly after Panda, Google is out to get rid of business models like this. Unfortunately they kind of suck at differentiating quality from non quality, but it's crystal clear they're trying.
afterburner 4 days ago 1 reply      
Side note: Lady Gaga is pantless everywhere. So, a good and safe choice of words.
Andi 3 days ago 0 replies      
Cocksuckers ...
nemik 4 days ago 0 replies      
:( Those poor old regular words. RIP.
mohsen 4 days ago 1 reply      
did any body start to lose respect for this guys about half way through the article?

I suppose we all need money, but there is a limit, by god, there is a limit.

Hisoka 4 days ago 0 replies      
AOL has a responsibility to its shareholders first and foremost. Making employees write about stuff they don't know about is not exactly slave labor... if they don't like it, then just quit, it's that simple.
Firefox 5 is now officially released mozilla.com
359 points by smash  1 day ago   191 comments top 32
tzury 22 hours ago 3 replies      
To the Mozilla developers in here:

Although I am not going to install this version on my laptop (I am a chrome guy), I would like to take the opportunity and thank you for the great work you have done for the internet users and web developers.

In the days before firefox+firebug, we were alerting all the way in order to find an undefined / unassigned variable which was causing bugs and terror.

You have made the web a better place, you have made IE a better browser, and I tend to believe, you also made chrome a better browser, and chrome developers work harder by setting the bar that high.

rradu 22 hours ago 3 replies      
Best new feature: Multiple tab closing behavior is more like Chrome's now - http://www.theinvisibl.com/2009/12/08/chrometabs/
MatthewPhillips 22 hours ago 8 replies      
Elephant in the room is the ugly and unnecessary search box. It sticks out like a sore thumb when you consider the effort Firefox has gone through to clean up the interface.

side rant: what's up with search boxes that keep your previous search term in the box. What's the point? iPad does this as well and it drives me insane. I always just manually delete the entry after searching but I shouldn't have to do that and I don't want guests to know my previous search.

hugh4life 23 hours ago 6 replies      
Better than normal update experience that's still nowhere near Chrome. The Tree Style Tabs extension still works after the update...

Chrome is absolutely unusable for the amount of windows I have open at a time and Firefox doesn't crash on me as much as it used to in order to warrant having every page take up a separate process.

atacrawl 1 day ago 4 replies      
Anyone using the Amazon S3 Firefox Organizer extension will be disappointed as I am to discover that it doesn't work with FF5.

EDIT: Luckily, I had a moment of intelligence and copied FF4 before installing FF5, so I would recommend doing that if you use S3Fox with any regularity.

andrewheins 1 day ago 5 replies      
This is a confusing feeling. The Firefox release mechanism makes this more frustrating than friendly.

With Chrome, my browser automatically updates for stuff like this. I never see it and always have the correct version.

For Firefox, I have to purposefully seek out the next version, and considering I'm still upgrading some of my machines to 4.0 from 3.5 (I downloaded 4.0 yesterday on one machine), this is kind of annoying.

I'm not sure a quick release schedule works quite as well if you've got to manually upgrade. I like Chrome for the same reason I sign up for automatic bill payments - I understand it's important, but I don't want to have to deal with it.

lux 20 hours ago 2 replies      
LOVE that pinned tabs stay open after reload, without resorting to hacks like you have to with Chrome. That's about the only thing that persistently bugs me in Chrome these days. All in all, FF5 is looking really good. Way to go!
vessenes 1 day ago 2 replies      
Does it auto-upgrade, a-la Chrome?

Update, nope, it does tell you there's an upgrade, though (at least on OS X). I think the next step for the FF team is getting those cool assembly-text-diff things like Chrome has working. Until then, there's just fragmentation.

praptak 5 hours ago 0 replies      
Congratulations. My first contact with Firefox still holds the #1 position for the greatest impression a piece of software has ever made on me (sorry, Linux :) )

It was called Phoenix (0.3 ?) then and was the pinnacle of elegance compared to the uber-crappy IE and bloat-loaded Mozilla. If I remember correctly their policy then was to make every consecutive binary release smaller than previous one.

getsat 23 hours ago 2 replies      
If I update, I'm going to have to manually edit the few extensions I actually run Firefox for to increase their "max supported version" string to 5.x. That's one downside I can see with this new release system.
angus77 17 hours ago 0 replies      
Next time could we get a link to the list of changes rather than a download page?
tathagatadg 1 hour ago 0 replies      
The IE team sent the Firefox team a cupcake poking fun at the new release cycle ... http://www.geekwire.com/2011/cupcake-firefox-5-microsoft-fun...
ineedtosleep 20 hours ago 1 reply      
Chrome user here since launch (who is also very entrenched into Chrome in terms of workflow): Ever since FF4b, I've been nearing a full switch back to Firefox, but the main deterring factor for me was performance. With FF5, the performance increase is absolutely noticeable and I commend the Mozilla team for their work. It's nearing a point where I'd like to switch back.

Now if only they can polish the Android browser a little more ;)

chrisjsmith 1 day ago 1 reply      
Using it now. Looks the same as 4. All add-ons worked fine. Seems a little faster but that might be because my previous firefox process had been up for about 3 days and had gotten all slow.
falava 23 hours ago 1 reply      
Mozilla, just call it Firefox, and make it always updated to the last version.
tnorthcutt 21 hours ago 0 replies      
For anyone who went to http://www.mozilla.com/en-US/firefox/releases/ looking for release notes and didn't find them, here they are: http://www.mozilla.com/en-US/firefox/5.0/releasenotes/

And a complete list of bug fixes: http://www.mozilla.com/en-US/firefox/5.0/releasenotes/buglis...

kellishaver 12 hours ago 1 reply      
Kind of nice to have Flash working again. It had stopped working for me when I upgraded to 4 (Ubuntu 64 bit). I'd tried a few suggested fixes, none of which worked, so I'd just resigned myself to having to open up Chrome any time I wanted to view something that used Flash, which isn't often, but I'm glad that issue is resolved.
typicaluser 22 hours ago 1 reply      
I would like to upgrade from 3.6 on the Mac, but when I tested Firefox 5 beta, it still seemed to have the same memory leak issue Firefox 4 has, i.e. I open two tabs without any add-ons and with a half hour's time Firefox is using 250+ MB of memory.
uses 19 hours ago 1 reply      
I was hoping to see the back button be clickable from the left edge of the screen. It's a large oversight, in my view.


mikecane 23 hours ago 1 reply      
OK, before I go get this, I have just one simple question: Is it as fast as Opera 11.11? I just got done bitching about how slow FF4 is on my crap PC, while Opera 11.11 is like absolute lightning on it. Why can't Firefox be that fast if Opera can?!
meow 19 hours ago 0 replies      
I hope glow.mozilla.org will be back. I really loved watching those download numbers fly by :).
unicornporn 8 hours ago 1 reply      
Yes, but now I have to wait 4 months for all the extensions I'm using to update (ie, change the "maxVersion" string) to v5.
Klinky 1 day ago 1 reply      
I need my vertical tabs on the right side of my screen, which is why I am still stuck in Firefox 3.6 land.
c4urself 1 day ago 1 reply      
Is FF planning on coming out with a auto-upgrade system?
tyng 23 hours ago 2 replies      
What the.... I just ungraded to Firefox 4 not long ago, haven't even got used to 4's interface (I use Chrome 99% of the time) and Firefox 5 is out...

I wonder what's the logic behind this release schedule

theycallmemorty 23 hours ago 1 reply      
App tabs seem like a pretty cool feature.
peapicker 19 hours ago 1 reply      
Probably won't be trying it, I've been using FF4, and then Nightly, but the memory leakage is so hideous on FF since 3.x that i finally gave up -- after 6 hours use, FF4 and nightly would use 1GB ram, even after closing all but one simple tab. Forced browser restarts.

Chrome is where I've ended up. If FF ever get the memory leaks straightened out, I may switch back.

methane 20 hours ago 0 replies      
That looks pretty cool and I want to switch from Opera to Mozilla (can't switch to Chrome as it doesn't work in Windows 7 64bit for me) and I want to import my Opera's information to Mozilla. I click File->Import...->Opera->Next and it shows just empty field. When I try to do the same with Explorer, it works. So, what is the problem, could you give me a hand? Thank you.
johnx123 8 hours ago 0 replies      
Thanks guys, but I'm not sure how you lost to Chrome
SkyRocknRoll 21 hours ago 0 replies      
Thmbs Up Mozilla Team !!
egb 1 day ago 0 replies      
Still no flash auto-update like Chrome? Then I'm still Chrome-y!
Show HN: HN Trends - like Google Trends, but for Hacker News jerodsanto.net
348 points by sant0sk1  2 days ago   106 comments top 45
solipsist 2 days ago 5 replies      
These trends are fairly interesting...





http://hntrends.jerodsanto.net/?q=android%2C+iphone vs. http://www.google.com/trends?q=android%2C+iphone&ctab=0&...



Don't forget thought that these trends include the user's own comments and submissions in addition to mentions of them in other users' comments.

suking, this is truly awesome. It immediately joined my bookmark folder of favorite HN tools. I'd be curious, though, if whether or not it would be possible to filter out user names when counting how many times a word has appeared on the site. Or would that be too much of a challenge?

matt1 2 days ago 0 replies      
Hey Jerod. I own the domain HNTrends.com, which I used for a similar project about two years back [1][2]. If you plan on keeping this project up, I'd be happy to transfer the domain name over to you. Shoot me an email: matt@leandesigns.com.

[1] http://news.ycombinator.com/item?id=810112

[2] http://www.mattmazur.com/category/hntrends/

edge17 2 days ago 4 replies      
first of all, very cool.

how is it normalized? every single thing I type in has an upward trend, which to me just suggests that interest in Hacker News has increased over the last few years... and I don't really need a chart to tell me that since I live in silicon valley :)

iamwil 2 days ago 1 reply      

I put in 5 of the 7 George Carlin dirty words. Looks like 'motherfucker' has a recent surge.


If you want to see it without the top two words dwarfing the other five.

georgieporgie 2 days ago 1 reply      
Very cool.

Amazingly, C# is talked about precisely as often as C++!



elsewhen 2 days ago 1 reply      
we may be in a bubble about talking about a bubble: http://hntrends.jerodsanto.net/?q=bubble
vijaydev 2 days ago 1 reply      


Interesting that Ruby stays below Python but Rails stays well above Django.

staunch 2 days ago 1 reply      
On an IPad1 the charts render so slowly it's watching a race between brightly colored snakes. Very suspenseful.

Please do normalize the results.

Jarred 2 days ago 1 reply      
These trends don't account for traffic increasing to the site (and therefore posts/comments) as time progresses. That makes this less useful.
foenix 2 days ago 0 replies      
An observation about geographies: http://goo.gl/4BUFL
arturadib 2 days ago 1 reply      
Is it possible to somehow normalize the numbers by the total number of posts/comments, so that trends across the years do not mostly reflect the user base/activity growth at HN?

Awesome work thus far though.

robinwarren 2 days ago 0 replies      
Hi, I created a similar tool using the search API, but with lniks to the top stories (by points) over time


Feel free to take that idea if you like, I think it's interesting not just to see the shape of the trend but also the stories which created the peaks.

ntoshev 2 days ago 1 reply      
Awesome work!

Can you normalize it against total text volume? Number of mentions always goes up with time as HN grows, % of posts mentioning will be a better measure of mindshare.

digitalnalogika 2 days ago 2 replies      
Nice work! I had the same exact idea for the contest and bought the hntrend.com domain 2 weeks ago, too bad I was too lazy to finish it :)
pvilchez 2 days ago 1 reply      
I searched for my own username expecting a flatline, but there were a few hits in the last few years. Flattering, but I'm fairly certain that hackers have not been talking about me. ;)

Perhaps you should only query titles and text, not usernames?

edit: for example, searching for pg would include his own submissions as well as mentions and Ask PG subs.

jamesbritt 2 days ago 0 replies      
Very, very slick. And now I can can graph my increasing time spent on HN :)


kristopher 2 days ago 0 replies      
I found this interesting: "Hacker News" vs. "HN"[1]

As the site gains reputation/users you can see that many switch to the abbreviated version.

[1] http://hntrends.jerodsanto.net/?q=hacker+news%2C+HN

dclowd9901 2 days ago 1 reply      
What the hell happened with Javascript in mid 2009?


kuahyeow 2 days ago 1 reply      
I like the animation, but it will be an improvement if the chart max stays and not jump up and down
noduerme 2 days ago 0 replies      
Lol. According to HN, Chrome should be the world's top browser.
http://hntrends.jerodsanto.net/?q=safari%2C+firefox%2C+IE%2C... with "IE")

Great site by the way. Nice job.

Concours 2 days ago 0 replies      
Technews trends, what are we reading and sharing here: Techcrunch vs Mashable vs Readwriteweb vs CNN vs Techmeme


cheez 2 days ago 0 replies      
It's cool but doesn't always seem to chart the trend. I have to force a refresh. Using Chrome stable.
dhbanes 2 days ago 0 replies      
Let us never forget the first great hacker news bubble.


rmk 2 days ago 1 reply      
Pretty cool visualisations. Just out of curiosity, why did you choose HighCharts? Did you look at jquery FLOT and choose HighCharts over FLOT? Or were you unaware of FLOT altogether?


csomar 2 days ago 0 replies      
For the people who says that HN discuss less about startups, the trends actually shows something else: http://hntrends.jerodsanto.net/?q=startups
tilt 2 days ago 0 replies      
(Cross-post) There could be a spike in HN Trend's traffic http://twitter.com/#!/timoreilly/status/82824209721597952
franze 2 days ago 0 replies      
swah 2 days ago 0 replies      
Is it normalized against the growth of the website?
tomp 2 days ago 0 replies      
wvanwazer 2 days ago 0 replies      
Awesome tool, but just a heads up: I tried searching for "C" and "C++", and it gave me the exact same line each time.
sdfjkl 2 days ago 0 replies      
false 2 days ago 1 reply      
I asked it about ios and android and it broke :(
pavpanchekha 2 days ago 0 replies      
Is there any way to normalize by number of users? (Or am I missing something?
mikemoka 2 days ago 0 replies      
this is awesome, it would be a dream if advanced queries could be comparable though
ysh4u 2 days ago 0 replies      
This is really great!
johnx123 2 days ago 0 replies      
From where HNSearch is pulling data? Do we have any dump for HN?
teddytruong7 2 days ago 0 replies      
this is great, awesome how its so fast.
rwebb 2 days ago 0 replies      
LulzSec: Why we do what we do pastebin.com
321 points by ssclafani  5 days ago   178 comments top 34
trotsky 4 days ago 5 replies      
OK, so for the remaining 3 people out there who were pathologically not paying attention, computer hacking is easy. The state of computer security is poor. Lulzsec deserves a medal and a chest to pin it on for breaking this news to all of the people who don't have a facebook account, have never been on irc, didn't see the movie wargames, don't know anyone who plays world of warcraft, has never read the new york times, has never heard of china and has never heard anyone utter the word "stuxnet".

For the rest of us, it's pretty tedious.

There's another situation that fits the general parameters of what they describe. Almost no one is protected against it. Being a gunshot victim.

At least in the US, pretty much anyone can get their hands on a handgun either legally or illegally. Almost anyone can use one with a bare minimum of instruction. And almost no one is protected - if you pick a name out of a hat of all america, pretty much any possible outcome will be dead easy to track down, stalk, find the right opportunity and shoot dead. And a vanishingly small numbers of shooters make an announcement about the whole incident on the Internet.

But, all that said, if you go around shooting people for no real reason and bragging about it you're assuredly a psycopathic asshole.

scythe 4 days ago  replies      
>People who can make things work better within this rectangle have power over others; the whitehats who charge $10,000 for something we could teach you how to do over the course of a weekend, providing you aren't mentally disabled.

This is a common complaint among blackhats: they see whitehats as being in the game for the money and taking advantage of the unenlightened as much as they [the blackhats] themselves do.

I don't really know what to make of it.

dgabriel 4 days ago 2 replies      
Adorable. They're bullies and proud of it. It's one thing to call out security exploits, and quite another to take great joy in causing others pain.
bh42222 4 days ago 4 replies      
And I just realized what it is about LuLzSec that's bothered me. I couldn't quite put my finger on it, but now I realize deep down they are nihilists.

That's a damn shame.

What seemed most admirable about Anonymous is that as much as they were also in it for lulz and pure chaos, underneath there seemed to be a kind of idealism. Idealism is seductive, nihilism is off-putting.

noonespecial 4 days ago 3 replies      
Why we do what we do: We're 15, unsupervised, and behaving badly.

Do they really need a manifesto?

migrantgeek 4 days ago 5 replies      
I agree with showing how poorly secured websites are and how easily our information is distributed even when we think it's private.

What I don't agree with is their use of DDoS attacks against sites like cia.gov.

DDoS attacks are pointless. All they point out is how a site has limited resources for dealing with so many concurrent connections.

Sites should deploy onto an infrastructure they feel is adequate to deal with the expected load plus some additional room for growth and spikes.

I'm sure the cia.gov doesn't get hit very hard on a normal day so they didn't go crazy on infrastructure which is understandable. A DDoS proves nothing and prevents people from accessing data.

If you're going to hack, please wear a white or grey hat.

saulrh 5 days ago 3 replies      
Might want to change the title to something like "LulzSec actually had a point after all." They do, too, an even better one than I expected. Not only are they making a point about how terrible security is ("Do you think every hacker announces everything they've hacked?"), but they've also called out the internet on its generally abysmal attention span. I wouldn't be surprised if they'd had this written on day zero.
edw 4 days ago 4 replies      
Raise your hand if you're hesitant to write what's on your mind for fear of receiving some special attention from Anonymous, LulzSec, and friends.
crux 4 days ago 0 replies      
When are the internet tough guys of the world going to tighten up their prose? This third-rate Patrick Bateman routine is so fucking old at this point. There is no easier way to mark yourself as a barely socialized child barely capable of any critical thought than to try out that ridiculous, outdated, unconvincing pose at being this cynical, wise, best-informed übermensch above all morals. It's not a good look.
diminoten 4 days ago 3 replies      
This smells to me like a hastily conjured rationalization for a series of attention-seeking acts wrought by a small group of disenfranchised industry workers who have something to say, but they're just not articulate enough to voice it so they blow shit up instead.
Djehngo 4 days ago 0 replies      
Initially I thought the disclosure argument they made was weak (we hack stuff because when we announce it similar companies will be more careful) because unless they cause enough trouble to make security an immediate priority for a given non-targeted company, then it's unlikely that they will overcome that company's inertia.

However I realised that I have become significantly more careful with password reuse now because there are no companies I absolutely trust to keep my information from leaking out.

oliveoil 4 days ago 0 replies      
This thing must be fake. I thought they were doing it for the lulz.
bwaaa 4 days ago 0 replies      
LulzSec seems to be just a group of teenagers that have actually nothing special to say. As they want to be like the grown-ups, they try to add a message behind their acts, but there is no message, no morality. If they were real hackers and not only prepubescent teens, they would not justify their action by any manifest, they would just act, no matter what people say or think. Their vocabulary is also proper teen vocabulary : "bitches" "mentally disabled" "evil bastards" "we nom nom nom, we move onto something else that's yummier" "unimpressed zombie""Watching someone's Facebook picture turn into a penis and seeing their sister's shocked response is priceless" "Receiving angry emails from the man you just sent 10 dildos to because he can't secure his Amazon password is priceless.".
They don't know how to write, their sentences are full of repetitiveness, the vocabulary is poor.

LulzSec is just a group of teenagers (or someone alone). And they are really really funny. (This is not a compliment..)

hnsmurf 4 days ago 0 replies      
This is classic psychopathic behavior. Instead of torturing people physically to see them squirm they're doing it digitally, but the same lack of empathy is there.
MatthewPhillips 4 days ago 1 reply      
Just a question: if all they were doing was manipulating URLs (and I know they've moved beyond that) would they be doing anything illegal?
Wickk 4 days ago 0 replies      
This just reeks of arrogance
_emice 4 days ago 0 replies      
From what I've been reading the attacks were not sophisticated, mainly using SQL injection. Many here on HN understand that kind of threat but it seems lots of companies and important services don't. Is it possible that the attention shone on these simple/trivial hacks will cause those less security conscious admins to get rid of that low hanging fruit?

If so, it should help reduce the impact of a broad, simultaneous attack across many sites from much more dangerous foes. I am not saying it is right, but it may be more effective than the legislation our congress comes up with to protect us, with fewer nasty side effects.

jjm 4 days ago 1 reply      
How do we enforce that these companies (such as banks) utilize proper security protocol (within reason of course)?

Some would say, "With your wallet!". But what happens when it's your wallet that gets stolen (electronically)?

What do you think?

doyoulikeworms 4 days ago 0 replies      
Their campaign is about reaching out, eliciting a response, and then reveling in the emotional connection they've created with another anonymous soul across this tangled mass of copper and silicon.

In other words, for the lulz.

SSHisForWienies 4 days ago 0 replies      
Any wall can be broken, but it doesnt mean that anyone who breaks a wall is a hero. What wonders me more why did China infiltrate the group ?
madmaze 5 days ago 0 replies      
I think we have found the LulzSec hacker manifesto.
floppydisk 4 days ago 0 replies      
When it comes to security, you run into IT departments being the red headed step children of the corporation and NIMBY (not in my backyard). It's a lot easier and cheaper to stick your head in the sand and pretend nothing is happening or you have some mitigating factor that discourages people from going after you be it size (miniscule for instance), participating in a niche market, etc. It's a lot easier and cheaper to do an ostrich than actually spend the money on decent security.
quark92 4 days ago 0 replies      
whatever is their excuse to hack companies it is illegal , it is a crime and should be punished .
if they want to pay attention for security, then they can establish organization and give away free courses about security and privacy in legal way instead of breaking laws and stealing people information .
black hat methods would never be agreed to improve security and privacy ..
Bertil 4 days ago 0 replies      
Why is this text the first one from Anonymous et al. that doesn't move me, at all? They sound odd, using a “we” to include all ‘digital natives' while I never heard anyone under 25 use “we” before; they mention (two girlfriend's) faces on MSN, but I never heard of a webcam on MSN; I never heard of anyone actually enjoying a show call it “we want our shot of entertainment”.
chmike 4 days ago 0 replies      
This seems so fishy. Perfect timing considering the last 24 months events. I think it was unavoidable and we'll have to face it and get ready for the consequences.
adamdecaf 4 days ago 0 replies      
> "suggests...our actions are causing clowns with pens to write new rules for you. But what if we just hadn't released anything? What if we were silent? That would mean we would be secretly inside FBI affiliates right now, inside PBS, inside Sony... watching... abusing..."

Isn't that happening right now and by the people with pens?

scilro 4 days ago 0 replies      
They need to bring in someone who can write without seeming like a 12 year old who grew up on 4chan.
sigzero 4 days ago 0 replies      
We don't care. Just stop please.
foysavas 4 days ago 0 replies      
Who else has a hunch they don't yet have access to Brink accounts, but instead have access to log files that would reveal password when users now change them?
tobylane 4 days ago 0 replies      
"This is the lulz lizard era"

Yes it is. What the fuck is it? Nightowl would be more believable, and true.

yters 4 days ago 0 replies      
Hey, if people really want a secure internet I believe the government would be more than willing to lock it down for us.

That's all that's going to happen as kids like Assange and Lulzsec keep up with their criminal shenanigans. Governments are going to say, "Enough is enough!" and lock it down like in China.

majmun 4 days ago 0 replies      
this kids should be punished by pulling their ear. or beating them with branch. they're too young for prison
nsomaru 4 days ago 0 replies      
The last line got me a giggle
shareme 4 days ago 3 replies      
They seem somewhat clueless..

If the NSA can partner with ISPs to scan internet traffic for phishing, viruses, etc ...the obvious next step is Lulzsec mentions or member mentions...in IRC, email, etc..

There is no such thing as hiding when attacking the internet, sooner or later you become the bitch

Fish don't know they're in water sivers.org
308 points by sahillavingia  2 days ago   109 comments top 18
brianwillis 2 days ago 6 replies      
This post borrows heavily from the famous "This is Water" speech that David Foster Wallace gave at Kenyon College. It's well worth a read. Full text of the speech available here: http://moreintelligentlife.com/story/david-foster-wallace-in...
brisance 2 days ago 2 replies      
If Derek were to rephrase the question as, "How many of you would like to work in government some day?", I would bet almost all 50 hands would go up. The reason for it is that in Singapore, many regard a government job as one with the highest job security, best pay and benefits.

Our cabinet ministers are paid millions a year[1]. Obama's allowance is about what a fairly low official would be paid.

[1] http://en.wikipedia.org/wiki/Cabinet_of_Singapore#Remunerati...

rsaarelm 2 days ago 2 replies      
There was once a wise and venerated fish who preached about water. Water, he would say, surrounds and supports us. We are all in and of the water, and where there is nothing else there is water.

Fish came from all over the ocean to hear him teach. 'I have nothing to teach,' he said, 'only enjoy the water,' but they came anyway, and some of them began to understand the water, and some of them came to understand it fully, and were called awakened.

One day a fish came and said 'Teach me of the water'. The teacher said 'I have nothing to teach. The water is all around us, above and below, and it fills the spaces where nothing else is.'

The fish frowned thoughtfully. 'You mean this stuff?' he asked, and flicked a fin so that a wave of water lightly struck the teacher's face.

'Yes,' said the teacher, bowing his head and smiling in acknowledgement 'that is the water; I see you have attainment.'

'Oh,' said the fish, surprised, 'that's it?'

'That's it.'

'Oh, okay,' said the fish, 'nice weather we're having, eh?'"

from http://www.davidchess.com/words/BrokenKoans.html

jerrya 2 days ago  replies      
Is there any evidence fish don't "know" they are in water?

I've seen plenty of fish from flying fish, to carp, to sharks jump completely out of water time after time after time.

The archer fish can accurately shoot (spit at) flies that are out of water and down them (and eat them) so something within the fish can correct for refraction.

Salmon can be seen jumping out of water, and against a strong current, they can be seen swimming very hard, and making little headway or even giving up ground.

It's not clear to me that fish don't understand they are within water.


ThomPete 2 days ago 1 reply      
I first moved to the US in the late nineties and stayed there for 4 years. I thought I would learn a lot about American culture which I did.

But what I didn't expect was how much I learned about my own (Danish) culture.

I also learned who where my friends, who did I miss, who I could live without.

I swam across the pond from one culture to another and learned that the water might be different but the fish are more or less the same.

I have to say I liked the new pond better than the old one.

kgermino 2 days ago 3 replies      
This is true even on a much more micro level. As a Chicagoan who recently moved to moved to Milwaukee (< 100 miles) I'm continually surprised by cultural differences. There's still a lot the two cities have in common but in day-to-day living the differences really start to show.

I.e. I meant ion to a random friend in Chicago that I'm bummed there's no way for me to take transit to work and I get sympathetic agreement. I mention the same to someone in Milwaukee and they look at me like I have two heads (why would you want to do that?)

shawndumas 2 days ago 0 replies      
A like question is to ask kids how they feel about the ~14.7 pounds per square inch they are experiencing? My kids where very perplexed.
runjake 2 days ago 0 replies      
If you're not familiar with Derek, which wouldn't be hard to believe as he's not a big self-promoter, you owe yourself to go read the essays on his website. At worse, you'll grab great little nuggets of wisdom.

He's also very kind and approachable. A great example of a real "rich" person in this world.

danfitch 2 days ago 0 replies      
Love his articles. They may not be 100% his ideas but with a quick article you can be refreshed and ready to look at the world differently.
happypeter 2 days ago 2 replies      
refreshing article, I love it.

I am from mainland China, a country boy actually.

but I love a bit of uncertainty out of my life. anyway, we are mortal, no one going to secure you out of death. So what can you lose?

elbrodeur 1 day ago 0 replies      
Think you of the fact that a deaf person cannot hear. Then, what deafness may we not all possess? What senses do we lack that we cannot see and cannot hear another world all around us? Frank Herbert, Dune, P.40
philthy 2 days ago 0 replies      
Entrepreneurship is of course everywhere and all around us. Look how complex and developed of a black market we have here in the U. S. of A.
hboon 2 days ago 2 replies      
I was speaking to a business school class here in Singapore. I asked, “How many people would like to start their own company some day?” In a room of 50 people, only one hand (reluctantly) went up.

I live in Singapore, and I wonder which school that is. I can't imagine 98% of students in that room not wanting to start their own company some day, at all when they are in business school.

I remember 4 of us planning to start a business when I was in school in Singapore more than 10 years ago and all 4 of us were in electrical engineering.

erikb 2 days ago 0 replies      
The interesting thing about this lecture is, that it doesn't actually help you to see the "water". You maybe understand this fact theoretically. But without outside experience you will never know in which points you actually just follow a specific culture.

Personally the lecture I learned for myself, when I made this experience in a foreign country, is that I am a lot less like "So stupid how this foreigner behaves." when I see something strange to me. I try now, not to feel too much like I am something better, because I would never do so.

thewisedude 1 day ago 0 replies      
In Sanskrit -> Koopa Manduka [Frog in the well].
I googled it up and found this link

It tries to captures the idea that it is very difficult to accept something that is very radically different from what you are used to.

For eg: In the narrative by Sivers, entrepreneurship is probably not so important to a different culture!

listic 1 day ago 1 reply      
I'm not an American and I never went to business school, but this sounds weird to me. Isn't the whole point of going to business school to start business? I guess not, then :)
JacobIrwin 2 days ago 1 reply      
It's funny. I feel like my grandparents take it the same way as that classroom with 50 students. It's a perfect comparison even.


..Two generations behind.

est 2 days ago 3 replies      
And human don't know they see the fish upside down. To a fish, the ground is the water level. The fish belly is actually their back.
ORM is an anti-pattern seldo.com
279 points by jeromegn  6 days ago   190 comments top 51
DavidMcLaughlin 6 days ago 4 replies      
This seems incredibly naive.

ORMs reduce code duplication. They speed up development, especially when you're treating the underlying data storage as a "dumb" datastore that could just as easily be sqlite or H2 as MySQL or Postgres.

As for ORMs having some sort of negative impact on the queries sent to the underlying database - it really depends on what ORM you use but any ORM I've used had support for pre-loading relationships in advance when required, removing that N+1 problem.

I also want to add that I wrote an ORM for the first company I worked for and when it was finished it was a drop-in replacement for 90% of the queries in our application - and I mean that literally the SQL generated by the ORM was exactly the same as the SQL being replaced. The queries that it couldn't replace (mainly reporting queries) already had an aggressively tuned caching layer in front of them anyway because they were so hairy.

But the real point is this: the performance of the ORM didn't really matter because we were a database driven website that needed to scale - so we had layers upon layers of caching to deal with that issue.

And that is an extremely important point - the way ORMs generalise a lot of queries (every query for an object is always the same no matter what columns you really need) lends itself to extremely good cache performance. Take the query cache of MySQL for example - it stores result sets in a sort of LRU. If you make n queries for the same row in a DB but select different columns each time - you store the same "entity" n times in the query cache. Depending on how big n is, that can cause much worse cache hit performance than simply storing one representation of that entity and letting all n use cases use the attributes they need.

Now, relying on MySQL's query cache for anything would not be smart, but replace it with memcached or reddis or whatever memory-is-a-premium cache and the same point stands.
Another example to drive the point home is a result set where you join the result entities to the user query so that you can get all the results back in a single query. In theory this is a great way to reduce the number of queries sent to your DB but if you have caching then there are many times where you could have very low cache hit ratios for user queries since they tend to be unique (for example they use user id) but where you could still get great cache hit performance if certain entities appear often across all those result sets by leaving out the join and doing N+1 fetches instead.

ORMs prevent you from scaling as much as using Python or Ruby over C does.

So I guess that leaves the point about leaky or broken abstractions. Well I would never claim that you can abstract across a whole bunch of databases anyway, I think that's a ridiculous claim that most ORMs make. These types of abstractions when people try to hide the underlying technology are really just a lowest-common-denominator of all the feature sets. So if you chose some technology because you really wanted a differentiating feature then most likely you will find yourself working against such abstractions. Interestingly enough, the dire support for cross-database queries which are perfectly legal in MySQL but not in other vendors is the reason I had to roll my own ORM. But the productivity and maintainability benefits were well worth it.

So yeah I guess what I'm saying is: premature optimization is the root of all evil, there are no silver bullets and performance and scalability is about measuring and optimising where needed. And finally: ORMs are not an anti-pattern.

mechanical_fish 6 days ago 2 replies      
My conclusion, drawn from the title alone: The term antipattern has apparently jumped the shark.

Spend five minutes decoding a particularly hairy regular expression? Regexps are an antipattern. Someone writes an inefficient SQL query? SQL is an antipattern. Stub your toe on a curb? Curbs are an antipattern.

cturner 6 days ago 1 reply      
The article makes a strong case against ActiveRecord, not against Object Relational Mapping.

Under the heading "The problem with ORM" the author writes,

    The most obvious problem with ORM as an abstraction is
that it does not adequately abstract away the implementation
details. The documentation of all the major ORM libraries is
rife with references to SQL concepts. Some introduce them
without indicating their equivalents in SQL, while others
treat the library as merely a set of procedural functions for
generating SQL.

This is true of ActiveRecord, it's untrue of object graph ORMs like Apache Cayenne.

I find two patterns to be key to effective ORM:

* Data Access Objects. This is for when you have nothing, and want to get an entrypoint into the schema. In this case, you should be able to write near-pure SQL to get what you want.

* Entity Objects. This is what the DAO will give you back - either an individual or a list. Each instance represents a row in a table, and has methods that will do lookups to foreign keys. Once you have this, you have an entrypoint into the data graph, and can use foreign keys to crawl around to wherever you need to go.

The DAO layer is a simple, centralised place where you can implement permissioning logic.

If you need to do something high-performance (usually some sort of report), you create a custom DAO, and have it return custom entities (instances of classes that don't have 1 to 1 association with a table) that fit your need.

I've found that after a certain point of complexity in an application, it becomes impractical not to use an ORM. It's like working in a type-unsafe language. You refactor something, and SQL-in-code breaks all over the place. That path leads to the hiring of dedicated DBAs, and abstraction of the schema behind stateless layers of PL/SQL in a doomed attempt to get to grips with the complexity of the problem space.

I worked on a system with a very tough customer where they repeatedly demanded major schema changes that were sitting in front of a business logic layer and frontend that had already been written. While the project had lots of problems, those particular refactorings were very straightforward. I was able to modify the ORM, and then just fix complilation problems and a few obvious tentacles from them until the application recompiled, at which point it worked again.

Some more criticism:

    This leads naturally to another problem of ORM:
inefficiency. When you fetch an object, which of its
properties (columns in the table) do you need? ORM can't
know, so it gets all of them (or it requires you to say,
breaking the abstraction).

I'm rusty but remember that at least in WebObjects EOF at least you can nominate what you want to retrieve, including automatic joins to retrieve stuff over foreign key jumps

The author's first suggested alternative "Use objects" offers worse technical debt than ActiveRecord. I anticipate there are a lot of shitty systems being on top of key-value stores. You can get fast results doing it, but it has technical debt and doesn't scale horizontally. The key-value store is becoming the next generation equivalent of "Oh we'll just build it in excel, and worry about the consequences later on". But depends what you're doing. There are situations where foreign keys are good.

The second alternative is "Use SQL in the Model" The advice of the heading doesn't match the content of the text that follows. I think the author means to recommend building a service that wraps the model by answering questions. If not, that's the point I think that should be made.

It's common for companies to create a database, and then have many entrypoints into it. This is a mistake and creates technical debt. As soon as you have multiple entrypoints like this, you lose ability to refactor your schema (because it's impractical to get multiple stakeholders to make concurrent changes) and your system rots.

Instead, you create a model service that wraps the schema, but also has stateful knowledge. For example - it knows the permissions of the user who is talking to it and can tailor its response based on their permissions. Then you return results in a transport format. I can't recommend a good, mainstream mechanism for this. JSON, YAML are fiddly because they're typed, XML is unnecessarily verbose

Anyway - there's no reason not to use a good ORM in this business logic layer. For small systems - sure - use SQL in the model. For the larger stuff, you have a more maintainable system if you use an ORM. But if it's a complicated space, steer towards Cayenne or Hibernate, rather than active record patterns.

eftpotrm 6 days ago  replies      
Personally, in developing quite a lot of different data-backed apps, I've never really found the problem ORMs are solving to be a hugely significant one; it seems like a 'quick fix' for coders who don't really understand SQL anyway, which always felt to me to be attacking the problem in the wrong place. SQL isn't that hard....

In any case, while I don't dispute that it might offer speed of startup advantages for some developers, it seems no-one is so far disputing that it simply doesn't scale and, if your project really takes off, it will be creating problems. Call me a fogey if you will but I don't like the idea of launching a project that I know will need very substantial rearchitecting too early in its life.

sunchild 6 days ago 3 replies      
What is it about coders and blogs that brings out the "cranky old man" vibe?

An ORM is an insanely convenient way for newbies to use various data stores while avoid learning umpteen different query languages. The teaching value of ActiveRecord for newbies is hard to overstate. It's also a damn nice way to move your application closer to platform independence " a valuable thing in today's PaaS integrated stacks.

If you seek efficiency and performance, don't use an ORM. Lick the freezing cold metal, if you want. Nothing is stopping you from doing what you like!

(Also, I haven't dropped down to SQL since Rails 3.x and meta_where. Yes, I realize that my applications "won't scale". They are appropriately scaled for their intended purposes.)

mgkimsal 6 days ago 0 replies      
"The whole point of an abstraction is that it is supposed to simplify"

No, it's supposed to abstract. A simplification is supposed to simplify. Often abstractions have the benefit of simplification, but it's not a requirement.

I migrated a project from MySQL to PostgreSQL last summer, and the project was built on Grails with GORM. I had to migrate the data by hand (mostly easy, save for a couple of edge cases like boolean columns), and I had to change the jdbc driver. That was pretty much it. No rewriting of SQL, no changing of escaping logic, etc. I tell a lie - the auto-sequence generation stuff of postgresql wasn't playing nice with some of the GORM identity stuff, and my code had made some assumptions that turned out not to be 100% true. Those likely would have shown up had I written my own stuff rather than relied on GORM, but it was a little bit of a pain to track those down.

All in all, using the ORM abstracted away the need to write against specific database commands and syntax. A byproduct of that was simplification of most use cases of the database, but the key use was abstraction.

mistermann 6 days ago 3 replies      
One aspect that always comes up is the "inefficiency" of doing a select * from a table with 30 columns when you only need 4 columns. 99% of the time the millisecond performance difference doesn't matter, and if it does, there is a standard non-default way to handle it in most ORM's.

However, one aspect that is usually conspicuously absent in anti-orm blog posts is that of development time and cost. ORM usage practically guarantees known coded efficiencies, but it lets you implement and pivot really quickly, the time and money saved is easily more than enough to pay for a bump in hardware to overcome the 10% slower code. But to do so is heresy for these people....selecting columns from the database that you do not use is just not done, full stop. Which is cheaper, in dollars, is irrelevant.

InclinedPlane 6 days ago 4 replies      
I've seen a lot of the problems that ORM creates with big projects. The most egregious is lack of control. You'll run into some problem caused by some quirk of your ORM system and you'll dig down into the SQL and learn precisely what's causing it, but you still won't be able to fix it because you don't know the magic voodoo incantations to change your config or the ORM client code in the right way to fix it.

When ORM starts to get in the way like that it really makes you wonder whether it's worthwhile.

perlgeek 6 days ago 1 reply      
> If your data is objects, stop using a relational database.

What does that even mean?

My data, is, well, data. Tables and rows are just ways to represent my data, as are the nested hash and array structures of document storage systems. Oh, and tables and rows are also objects.

What data is "object" and what data is "non-object"?

div 6 days ago 0 replies      
Labeling an ORM as an anti-pattern is throwing the baby away with the bathwater. Sure, you will encounter some cases in which your ORM will be a pain in the ass or even actively work against you, but most good ORM's will allow you to talk to the database directly.

For example, both Hibernate and ActiveRecord allow you to just throw straight sql to your database, returning a bunch of key value data.

Which is exactly what a good solution does: provide large gains for the common cases, and get out of the way for the edge case.

jgrahamc 6 days ago 1 reply      
One of the problems I frequently see is that people complaining about ORM and SQL are thinking mostly of some object wrapping a row (or set of rows) in a table. Then they get into trouble when they want to wrap something more complex involving joins between tables.

All these problems would disappear if people used database views. Then their nice ORM layer (say ActiveRecord) would work perfectly and the nasty joining and updating would be taken care of by the database. I've often wondered if people even realize that database views exist and how powerful they are: http://en.wikipedia.org/wiki/View_(database)

Of course, it's only relatively recently that MySQL has started supporting views properly (in 5.0).

The other nice thing about views is that it means your code using the ORM is simplified because you aren't indirecting through different objects to get at specific values you need to display. It also means that only the necessary data is retrieved from the database.

encoderer 6 days ago 2 replies      
Somebody may have already mentioned this, but there's a fantastic essay The Vietnam of Computer Science (2004) on this subject. It's long but so, so worth it.


SeoxyS 6 days ago 2 replies      
The main problems with ORMs is that they're trying to work around non-object-oriented data stores. Layers of abstractions and ORMs in particular are generally good things"but they can't do magic when it comes to dealing with SQL.

If you're going to be using an ORM, I'd strongly recommend rethinking your data store. Object databases such as MongoDB is a perfect fit, but even a key-value store like Cassandra would be a much better option than SQL. I think it's interesting to note that Core Data, Cocoa's ORM, is one of the fastest data store out there. It uses SQLite, but defines its own schemas. I believe it'll also let you store pure binary data.

Spyro7 6 days ago 1 reply      
I think that designating ORMs as "anti-patterns" is a bit strong. Perhaps my understanding of what an ORM is supposed to accomplish is different from the author's, but I think that some of the criticisms that the author levels against ORMs are a bit off.

Inadequate abstraction - I would make the argument that it doesn't make sense to expect an ORM to be able to completely abstract away from the underlying database. The reason that the documentation of the various ORMs is sprinkled with SQL concepts is that the ORM is providing a window into an SQL-based environment. I would never

Incorrect abstraction - I actually agree with this point, but this does not really seem to reflect on ORMs. This point has much more to do with the ongoing debate between the NoSQL movement and relational databases.

Death by a thousand queries - I hardly think that this is a knock against all ORMs. Different ORMs have different solutions (or a lack thereof) to this problem. I use Django a lot, and Django's built-in ORM offers a lot of "frills" that can help to protect against this (lazy loading, selective loading of columns, selected loading of related models). I know that, in the Ruby world, Datamapper seems to have some ways of dealing with this problem as well. It really isn't as simple as saying all ORMs do this therefore all ORMs are bad. The reality is more nuanced.

Ultimately, my principle problem with this piece is that it seems to conflate its argument for NoSQL and its argument against ORMs. NoSQL is wonderful, but it seems to be somewhat orthogonal to the value of ORMs.

ORMs are not perfect, and there is plenty of room for improvement; however, writing everything in SQL solely due to performance fears will usually turn out to be a case of premature optimization.

JulianMorrison 6 days ago 1 reply      
I like the iBatis (now renamed mybatis) approach: explicit queries in a separate file that say "input an object of this type reading these fields, output an object of that type setting those fields" and contain raw SQL to be thus parameterized.

This avoids the two largest flaws: live proxies with hidden state pretending to be simple data objects, and SQL being generated with no control. It also avoids a mistake I've only seen two ORMs make but they're common ones: defining its own dialect of not-quite-SQL.

You still get objects mapped in and out of DB queries, it saves you the pointless grunt work of "copy A, put it in B" and it prevents the as-bad-as-ORM anti pattern of "SQL scattered throughout your code".

adelevie 6 days ago 0 replies      
I'd be interested in the author's take on ActiveRecord's implementation of Relational Algebra with ARel[1]:

> To manipulate a SQL query we must manipulate a string. There is a string algebra, but its operations are things like substring, concatenation, substitution, and so forth"not so useful. In the Relational Algebra, there are no queries per se; everything is either a relation or an operation on a relation. Connect the dots and with the algebra we get something like “everything is named_scope” for free.

Also, if I couldn't use something like ActiveRecord in my Rails apps, I'd end up re-writing most of its functionality in my model code somewhere. If I don't get Model#find_by_some_attribute() for free, then I have to spend time writing it.

[1] http://magicscalingsprinkles.wordpress.com/2010/01/28/why-i-...

geebee 6 days ago 0 replies      
I've used two different formal ORMs, ActiveRecord and JPA (backed by hibernate), and I've never felt completely at ease with them. In fact, I was lining up to agree that ORMs suck, except that I realized I'm probably using one no matter what I do.

If I have a model object, and I want to to persist it in a relational database, then I'm going to need to do something that persists and retrieves this object back and forth from the RDBMS, right? And if I want to retain the flexibility to switch to a different database (or different persistence strategy in general), then I'm going to some way to specify the implementation details for each possible approach, and swap them in depending on which approach I take. The java world tends to handle this with an ORM and a DAO tier these days, using DI to swap in the desired implementation (sigh, Java really is a soup of acronyms these days), whereas Rails developers tend to use migrations. But either way, I'm pretty much stuck with an ORM. It may be an ORM that works at a very low level, directly with objects, sql, connections, and transactions rather than through a higher level API, but it's still an ORM... (right?)

In spite of the inevitability of an ORM (I really hope I'm defining this correctly), I'm going to agree with a lot of the points made in this blog post. If I'm using SQL, I really don't like having the SQL hidden from me. And I really can't stand languages (like HSQL) that force me to re-learn a variant of SQL. ActiveRecord and Migrations are, without question, very productive, but I like to see the objects and understand very directly how they are being persisted and retrieved. I want to see the fields and methods, and I want to see the SQL. I've found that I almost always end up changing it, and it's easier to do that when it isn't all hidden from me.

Rails offers me so much that I can get over this little issue of mine, but I don't feel the same way about Hibernate. My personal experience is that if Rails isn't going to help me, and something has pushed me to use Java, I probably need to write a lot of lowish level code anyway.

cwp 6 days ago 0 replies      
Yup, spot on analysis.

I do think he missed one thing, however. The few times I've seen ORM layers work well is when they're custom-built for a specific application. It's still not ideal, but it lets you put all the ugliness in one place, and regain efficiency by sacrificing generality.

mgkimsal 6 days ago 1 reply      
One other thing struck me reading this - it feels like premature optimization. Assuming that every ORM is going to be slow and inefficient to the point where you'll need to override or rewrite all the queries will lead to an inefficient use of developer time, and assumes you know a lot about what will matter under real world use conditions.

Yeah, sure, that ORM is adding 200% overhead to the SQL query - it's pulling back 30 columns instead of 4! And... it's taking 38 milliseconds and is run 4 times per day. So what?

And when the model changes and you have an extra few columns to represent more data? You've now got to hunt through every SQL query that could possibly reference that table and make sure it's dealing with the new columns appropriately, instead of having an ORM let the computer do what computers do - compute the changes required.

Yes, there are other ancedotes that can be trotted out to prove the opposite of my 38ms story above. Then we'll fall back to 'right tool for the right job', and ORMs are currently a good middle ground tool for many of the projects people are developing. Perfect? No. Useful? Yes.

mixonic 6 days ago 0 replies      
Embedding strings of one language in a second language is an anti-pattern.

I've been at a bunch of NYC dev events recently, and people at both Goruco and Percona Live were hating on ORMs. ORMs have gotten really good in the last few years, I think the haters just haven't been using them.

Show developers a good alternative and they will go there. Some of the basic points made in this article ring true, but the suggested alternatives are weak. ARel is a great start to a non-orm database wrapper in Ruby! Somebody just needs to go there.

Lagged2Death 6 days ago 2 replies      
I'm a noob when it comes to designing and implementing programs that interface with a relational database. Based on my small experience so far with an ORM, I'd say this post is spot-on, clearly articulating the frustrations I've felt on my project. A friend of mine even wrote a blog post about the problems I've had:


That said, though, I do wish there were more detail on this point:

The programming world is currently awash with key-value stores that will allow you to hold elegant, self-contained data structures in huge quantities and access them at lightning speed.

I'd love to know more about such libraries, frameworks, or tools, but this isn't a lot to go on.

gte910h 6 days ago 1 reply      
This is a person who doen't write many large scale systems:

You will have considerably more (sometimes serious) bugs if you write all your SQL by hand all the time in a app that uses a lot of DB queries.

Yes, you still need to understand what the ORM does when you do certain things, you still need to understand what nasty joins you're writing and all that. But you can let all the minutiae of what you DO write work out well in a rote, well tested manner.

The article smells a bit of a guy who didn't know SQL or had a team member who didn't, and they though just using and ORM would work.

If your app is successful, you will usually need to optimize things. But this is true for SQL or any time saving abstraction as well, not just ORMs

code_duck 6 days ago 0 replies      
I had a lot of problems working with ORMs when I was 1-2 years into programming. However, I also felt a lot of resistance to learning to use a framework vs. straightforward, procedural code for web apps.

It's a matter of wanting to take the time to learn another system, API, DSL, what-have-you just in order to work with something you already know - SQL. The dislike of HQL resonates with me - I was wondering why I would ever work with PHP Doctrine's DQL. Building SQL queries out of a sequence of OO method calls seems absurd, too. As the article and comments note, you shouldn't have to know SQL well to use an ORM.

There are definitely issues with the ORM/Framework working against you, too. I love the organization and features in Rails or Django, but I hate when I spend hours working out how to do something that would take 5 minutes in plain PHP. Same with ORMs. Getting them to do the right type of join, not make unnecessary calls, etc. can be a pain. Sometimes it's that I don't know the software well enough, which could either be my own problem or just a reasonable lack of desire to devote my brain to it. Other times it's that the given ORM really does have shortcomings, conceptually and at level of development.

The one ORM I've had the most luck with is Django's. It's straightforward, does what I want, is well documented, and doesn't have too many features.

Swannie 6 days ago 0 replies      
In the comments I'm noticing no one ask: when should or shouldn't you use an ORM?

Most of the discussions are over the merits of either approach, when to me it seems an ORM has many places it belongs. And a few it doesn't.

For most database of record systems, which are a large chunk of your average webapp, an ORM is a god send. When I say DBOR, I mean things like articles, posts, comments, users, products, transaction history. An ORM saves a large amount of work writing SQL, it covers 95% of your queries (particularly insert,update,delete and simple gets) with minimal effort. You create the model, and let it get dealt with by the ORM. Your objects are mainly records. The pain comes when you start wanting to do analytics and interesting reports - but stick with a reporting tool, and keep this out of your application, and you feel less pain.

But this breaks down when you move to a database that represents a complex real world system. If you're working on a model that represents, for example, an electrical distribution system, these are not really records. They represent a vast set of complex interrelations, Of course there are still records, but in isolation, away from the complex relationship of say pole->{location,type,maintenance history,conductors,insulator type}, and conductor->{poles traversed,length,a end location,a end join type,b end location, b end join type,material,material batch number,power circuit carried} etc. etc. Then your queries to "find all customers affected by the pole at these coordinates", requires joins through: pole, conductor, circuit, serviced area, customers... we're moving rapidly to lots of complex queries, where hand crafting really is the way to go.

stcredzero 6 days ago 2 replies      
Death by a thousand queries

Wait a moment here. In my experience, most problems like this can be solved by noting something like: When we get X, we also get all of the associated Y's and their Z's. Declarative association of a Batch Query with certain retrievals isn't a newbie project, but it's something a lone programmer can put together in a week in a good ORM. (I've done it.) I would expect this library feature to be common in the Ruby/Python world.

d4nt 6 days ago 0 replies      
I'd say the problem is more with OO. The author touches on this a little towards the end, but ORM fulfills the demand to put relational data into objects. The issue is with all these developers insisting that they want to think only in a limited set of types, even when the page they're rendering needs half the properties of one type and a few more from another type. Something like linq2sql can actually be the answer here, if you use it to select an anonymous type containing exactly what you want, the you only need one round trip and you haven't wasted and processing.
ianterrell 6 days ago 0 replies      
"In the long term has more bad consequences than good ones."

I would hypothesize that one of the long term good consequences of healthy ORM options is the existence of the vast majority of database backed applications we all know and love. Sure, when/if they got popular someone had to tune some SQL, but how many of those projects would have even been started without ActiveRecord or Hibernate or EJB3 or CoreData?

The opinion that "ORM is an anti-pattern" is ridiculous nonsense.

pnathan 6 days ago 1 reply      
Well, I can't speak for others, but in my small-scale use of databases, hand-coded SQL has never been an issue.
trustfundbaby 6 days ago 0 replies      
I'd like to learn more about the author's background with ORMs and especially activerecord ... I know SQL pretty well, in fact when I started using Rails, I insisted on still writing my own SQL queries by hand.

ActiveRecord might be an anti-pattern, or it might not ... I really couldn't care less, what I do know is that I enjoy dealing with the database using active record far more than error prone dynamically constructed SQL queries I was doing back in my PHP days.

It makes my life as a coder easier ... I mean, have you ever tried to construct a really complex search function on a web app using SQL? ... its a pain and a half. ActiveRecord makes stuff like that much easier (named scopes in Rails especially)

Yes, if you don't understand databases, you're going to use an ORM in shameful ways, but it works well ... very well, if you know what you're doing and you take the time to learn your craft.

I'm glad to have ActiveRecord in my tool belt every morning when I get to work and that ... is what really matters to me.

gerardo 6 days ago 1 reply      
The relational-object problem is called Object-Relational impedance mismatch, duh!(http://en.wikipedia.org/wiki/Object-relational_impedance_mis...)

For me, fast Web Application development is worth the tradeoff. I usually begin to hate sql on the second month of a project.

clistctrl 6 days ago 1 reply      
Yesterday morning I would've called this guy a cranky old man... but doing some coding last night made me want to kill something. Coming from an Active Record background I tried using Linq to SQL. My application has a WPF front end and a Windows service on the backend. Passing the same object between the 2 is driving me insane. The problems are so much more cryptic, and the code I had to write to go around it completely negates any reason for using it in the first place. I'll be ripping it out tonight.
absconditus 6 days ago 2 replies      
"If your project really does not need any relational data features, then ORM will work perfectly for you, but then you have a different problem: you're using the wrong datastore. The overhead of a relational datastore is enormous; this is a large part of why NoSQL data stores are so much faster."

I have never been able to receive a straight answer to this question: Is there a "NoSQL" database that provides the same ACID properties that major RDBMS databases do? Things like "eventual consistency" are entirely unacceptable for the software that I work on.

dasil003 6 days ago 0 replies      
I started writing a response in a comment, and then I started frothing at the mouth, and pretty soon it ballooned into a whole blog post:


jtchang 6 days ago 0 replies      
So I don't have deep experience with ORMs except for SQLAlchemy. I've worked with others such as Hibernate.

All I can say is that I love SQLAlchemy. Projects that use it make my life easier. It is easier to read and troubleshoot than pure SQL.

Just because the majority of ORMs such doesn't mean they all suck. It's like saying "web frameworks" are anti-patterns. ORM done right can be a god send. Like all patterns knowing when to apply it is key. Go around creating FactorFactoryFactoryObjectFactory and of course you'd think it is an anti-pattern.

kstrauser 6 days ago 0 replies      
I inherited an incredibly hairy, large, mission-critical database at my current job. While we're slowly phasing in its replacement, we'll be interacting with the current mess for a long time to come.

There are seemingly endless little insanities, like "this column references upper(substr(othertable.column,5))". Instead of trying to remember all such idiosyncracies, I defined them all in SQLAlchemy and added a _lot_ of unit tests to make sure I don't accidentally break one later. Now I can use programmer-friendly ORM joins in production code and not have to worry about getting all the weird rules right each time.

I'm perfectly comfortable working in SQL. I don't want to write it directly all the time, though, any more than I want to have to write assembler all the time.

andybak 6 days ago 0 replies      
Sometimes 'good enough' really is good enough.

For christ's sake, there's a zillion ways to mitigate ORM related performance hits. One of those zillion is 'stop using an ORM' but it's not likely to be your first choice.

vertice 6 days ago 1 reply      
god. thank you.

I have never met an ORM that didnt eventually rub me the wrong way.

nathanlrivera 6 days ago 0 replies      
Generalizations are an anti-pattern.
pspeter3 6 days ago 1 reply      
I think that there are definitely some valid points about efficiency while using ORMS when the queries get more complicated. However on a simpler scale, like a blog, ActiveRecord or other ORMS aren't horribly inefficient and are faster and easier for the programmer which is why people ultimately use them.
kunley 6 days ago 0 replies      
it's a pity and a sign of ignorance that people do an implicit assumption that ORM == active record pattern, while the other ORM pattern: data mapper is in fact widely used and superior for many use cases.
forgotAgain 6 days ago 0 replies      
Seems like a "horses for courses argument" but maybe that's just the sign of my being a cranky old man. More important than using an ORM is that everyone consistently uses the same toolset for the project.

Personally I can't say I'm a big fan of using an ORM. Just too many bad tastes in my mouth over the years from bad implementations. It's probably improved by now but I long ago developed tools to generate the boiler plate code I need to work with a database. This gives me a generated data layer and a bare business object layer that moves the data out of the data layer. With the metadata available from databases it's fairly simple to automate the generation of the code.

Once you have a tool that generates the code then an ORM has much less to offer.

dazzer 6 days ago 0 replies      
Interpreted pedantically, removing ORM techniques means dealing directly with resultsets or loosly typed structures. This is definitely what I DO NOT want in any of my views. If you're working with an OO language like C#.NET or Java, good luck!

Any abstraction on any level is going to add a performance hit no matter what.

If this was really an issue, wrap your ORM Framework stuff (differentiating from ORM the pattern) in a DAL layer so that your BLL does not worry about the existence of the ORM. Then as you scale, optimise your DAL with either inbuilt optimisations or when desperate write your own SQL (if you don't even know SQL then you're a poor excuse of a developer)

Think of them as like Ikea furniture - they don't look great, and they don't often fit in every household if they have complex requirements. But they're highly modular, and easy to assemble. So when you need something in a jiffy, just bring it home, fix it up and it'll perform its purpose. When it no longer fits the purpose, get something else. And every household has to just start somewhere.

danssig 6 days ago 0 replies      
>When you fetch an object, which of its properties (columns in the table) do you need? ORM can't know, so it gets all of them (or it requires you to say, breaking the abstraction).

Not true. If you take the nHibernate approach of returning a proxy argument then you can get clients to "tell you" without breaking the abstraction. You normally don't worry about this, though, because pulling 30 properties usually isn't much different then pulling 3.

rjurney 6 days ago 0 replies      
Agree. Talked about how severe ORM impedance mismatch is here: http://datasyndrome.com/post/3257282059/data-driven-recursiv...

Your model needs to fit your view.

skittles 6 days ago 0 replies      
If a project uses object-oriented programming and a relational database, it will have an ORM. Either one written somewhere else (hibernate, Entity Framework, etc.) or one written in house (whether or not it is thought of as an ORM). An ORM maps object data to relational data and back. That's all.
Bdennyw 6 days ago 0 replies      
I have felt the pain of Hibernate. It just sucks. But I think that it is possible to make an ORM like solution work. A great example is NeXT's EOF and now Apple's Core Data. The combo of awesome mapping tools and Objective-C's dynamism make for system that works very well for it's intended purpose. Mind you core data is not a database and likely would not work well for a web service, but I believe that EOF did.
tcarnell 6 days ago 0 replies      
I 100% completely agree with the article. ORM's are dangerous.

ORM's solve a problem we dont really have, but introduce a whole load of new problems we never had before (lazy loading does not work, object relations work completley different from table contraints, designing the domain layer to fit our persistance layer, learning new proprietary query languages, inability to control sql queries)

I am continuously amazed at how keen developers are to adopt them as a core part of a their product.

Thanks for the article - I feel relieved others feel the same way!

joeburke 6 days ago 1 reply      
Another mistake the author is making is calling the ORM "an abstraction".

ORM is a mapping technology: it takes input from one world and turns it into data suitable to another world. It doesn't abstract anything.

shaydoc 6 days ago 0 replies      
ORM's tend to suck, easy way out. delegating control to a custom ORM says to me, OK give me performance issues. Design your Domain model, keep it simple at the DAL and use Stored Procedures, easy life, ultimate flexibility.
gerardo 6 days ago 1 reply      
BTW, how are you working around these days the most obvious problems of an ORM?
maresca 6 days ago 1 reply      
Is this guy talking about object relational mapping or object role modeling?
500k Bitcoins traded in 1h, Mt.Gox market hacked + crash bitcoincharts.com
272 points by eis  2 days ago   245 comments top 28
buro9 2 days ago  replies      
From the mt.gox site:

  Huge Bitcoin sell off due to a compromised account - rollback

The bitcoin will be back to around 17.5$/BTC after we rollback all trades that have happened after the huge Bitcoin sale that happened on June 20th near 3:00am (JST).

Service should be back by June 20th 10:00am (JST, 01:00am GMT) with all the trades reversed and accounts available.

One account with a lot of coins was compromised and whoever stole it (using a HK based IP to login) first sold all the coins in there, to buy those again just after, and then tried to withdraw the coins. The $1000/day withdraw limit was active for this account and the hacker could only get out with $1000 worth of coins.

Apart from this no account was compromised, and nothing was lost. Due to the large impact this had on the Bitcoin market, we will rollback every trade which happened since the big sale, and ensure this account is secure before opening access again.

I'm interested in the fact that they can do a rollback... is that just a rollback of their transaction log? Are they buffering transactions for a significant period before submitting them back to the network?

trotsky 2 days ago 1 reply      
This was apparently on HN 14 hours ago:

Mtgox hacked database listed for sale (pastebin.com)


pointed to: http://pastebin.com/ui0nusuZ

which says:

  I have hacked into mtgox database. Got a huge number of logins password combos.
Mtgox has fixed the problem now. Too late, cause I've already got the data.

Will sell the database for the right price.
Send your offers to:

skrebbel 2 days ago  replies      
i must admit i'm somewhat impressed how fast the hackers and cheaters managed to take over bitcoin trading.

i think it's kind of cute. people hoped for an economy no government could control, and got exactly that: anarchy and a burning world.

eis 2 days ago 2 replies      
A little bit explanation:

Mt.Gox is the biggest bitcoin market place by far.
During the last 1h the whole volume of about 500k BTC was traded making the price drop from somewhere around $17 to virtually nothing.

Details are not available yet. It could have been a bug or an intrudor.

Rumors have it that someone with a huge wallet got hacked.

<+MagicalTux> someone with lots of coins did get hacked

MagicalTux is working on Mt.Gox

Also some other markets like btcex or tradehill are seeing problems and/or price drops.

Update: Mt.Gox have published an announcement:


nazgulnarsil 2 days ago 0 replies      
This is an "I told you so" post, but not about bitcoin, about the current exchanges.

I haven't cashed out any bitcoins because the current exchanges are a fucking joke and I've said as much many times in the IRC channel and forums. Bitcoins will remain a novelty for people with lots of disposable income until it has a real money changing service linking it to other exchanges. I can not conceive of the level of folly it would take for me to put anything more than pocket money on one of the current exchanges.

phamilton 2 days ago 1 reply      
I'm a little annoyed that MtGox effectively is bitcoin. I've been spending my mined coins on goods from various merchants and it has been working great. That's what bitcoin is designed to be, a currency. Recently there's so much speculation and people buying, holding and selling that so much focus has shifted away from the real use.
nkohari 2 days ago 2 replies      
The entire account database was also leaked:


lubos 2 days ago 0 replies      
If this was legitimate "dump" (by someone who obviously didn't care about the money), it was certainly the fastest crash of any known market ever.
crayz 2 days ago 1 reply      
That's about 7% of the total number of bitcoins in circulation. Anyone have details on how this happened?


gburt 2 days ago 1 reply      
Lower limit of $0 a bitcoin showing there, did someone really dump bitcoins at $0.01?
eis 2 days ago 4 replies      
Newest update:

Apparently someone got the whole user account database of Mt.Gox

I wont publish the link to it though for obvious reasons.

Quick analysis: the database is legit, it contains user id, username, email if set, and a bcrypt hash. The hashes seem salted with a global salt.

Tichy 2 days ago 3 replies      
Does anybody have a link to instructions for reading that kind of chart (or the name of the chart type)? I used to know, but it has been many years.

I suppose green bars means the price went up and red down, and the bar extends between the high and low price. But what does the chunk in the middle mean? And where can I see that 500k were traded?

Tichy 2 days ago 1 reply      
I like the looks of this chart of the crash, haven't seen that kind before: http://leanback.eu/bitcoin/plots/20110619195756-mtgox.png found via @zedshaw on Twitter
citricsquid 2 days ago 4 replies      
So for someone who doesn't understand economics that much, what does this mean? Have bitcoins finally failed?
pnathan 2 days ago 1 reply      
I'm on record here as saying a few weeks ago that a BTC bank needs to be established.

I reiterate my position. A BTC bank needs to be established, with appropriate data protection features.

omarchowdhury 2 days ago 0 replies      
<CorvusCorax> poor bot had a division by zero when trying to calculate the mt gox exchange rate
base 2 days ago 1 reply      
Out of curiosity, how does the Mt.Gox hold the bitcoins. Do they have a bitcoin account for every user or do they hold all the bitcoins in their account and trades are only changes in their database?
spenvo 2 days ago 0 replies      
The flash sale broke the price resistance chart: http://mtgoxlive.com/orders
funkah 2 days ago 0 replies      
I wanted to see if I could buy some on the cheap, but I wasn't already set up to do so. I would never take this currency seriously, but I'd be willing to put in a bit of money to speculate a bit.

I looked at bitmarket.eu but they have a manual verification process, which I'm sure would not complete until after the price recovers. Oh well.

ebaysucks 2 days ago 2 replies      
If the 500K Bitcoins sold are the total of the Bitcoins in all MtGox wallets, than Bitcoin is over.

Sample of one: I have for about 100 USD in Bitcoins at MtGox, if they got stolen today, I will leave the project.

Tichy 2 days ago 1 reply      
Interesting that on bitmarket.eu there are a lot of buy offers for 0.01€ suddenly. I wonder if those are already bots trying to automatically react to the mtgox price.
swishercutter 2 days ago 0 replies      
You know whats funny about that whole 25k thing...he has shown no proof, says he filed a police report but has not shown it, media went wild with it (with no evidence) and to the best of my knowledge no media outlet has interviewed the supposed law enforcement regarding the matter....I smell some FUD...there are numerous more inconsistencies with his story and many believe him to be a troll.

NO early adopter leaves his wallet.dat file unprotected on a known compromised computer. Especially one who claims to be an early adopter and saying he got in later in the same post. If you really read that whole thread you will smell a rat or troll also.

KarlFreeman 2 days ago 0 replies      
If you want to check if you've been Mt.Goxed I whipped up a little something for that


Osiris 2 days ago 1 reply      
mtgox.com is offline. Did they shut trading down?
mrkva 2 days ago 0 replies      
If you feel like complaining, check Complainr:

Some people already started :)

anonymous 2 days ago 0 replies      
aquarin 2 days ago 4 replies      
We shouldn't be surprised by this. This monetary have no authority behind it.
Y Combinator's Graham Says Startups Must Improve Lives youtube.com
268 points by justhw  5 days ago   80 comments top 20
ihodes 5 days ago 4 replies      
I'm reminded every time I watch Bloomberg I'm reminded just how high quality they are, and how intelligent their anchors are relative to any other large media corp.

Additionally, Paul, thanks for being frank and great. It makes me so happy to see you as the face of not only YC, but increasingly of tech startups in general. When I get around to implementing a good idea, I've got you to look to not only for interesting me in programming through Lisp, startups through YC, but also for increasingly the visibility and viability of tech startups.

Definitely worth watching all 14 minutes.

EDIT: Also, still a little bitter over "the real money's in hotel search"… dzoblin's & my Summer '11 (I think) YC application was that. Though admittedly not far along, and the idea was still in development. still ;)

marcamillion 5 days ago 2 replies      
It's so interesting how PG answered that GroupOn question.

He dodged giving GroupOn his stamp of approval, but hedged by approving Andrew Mason. That's definitely an interesting approach, especially for someone like him.

Edit: Also...that TechStars response...talk about awkward. Definitely good questions from both hosts though.

ntoshev 5 days ago 5 replies      
PG says the first iteration doesn't matter much as long as the founders are good and iterate quickly. Empirically, is this the case? Airbnb and Dropbox certainly didn't iterate on their concepts that much. Google's first shot was excellent. Facebook captured 90%+ from Harvard students before moving on to conquer the world. Are there real counterexamples, or even better, hard data?

(If only YC recorded and aggregated key metrics from their startups, it would be so much easier to answer such questions)

teej 5 days ago 3 replies      
The question I wanted them to ask is "How do you identify great founders?". Every question they asked led to "YC picks founders, not the business". If it's all about the people, I want to hear more about how he evaluates them.
cantbecool 5 days ago 0 replies      
First time I've ever heard the word suck on Bloomberg.

I love Graham's demeanor. Emily Chang and Cory Johnson seemed lost on air, check out 7:02 in, when Graham responded with succinct and honest answers. He didn't over-hype Y Combinator and emphasized the human aspect of startups: startups must make peoples lives better and hiring good, intelligent people are the keys to success.

yuvadam 5 days ago 1 reply      
I'd really like to hear about pg's gripes with TechStars.
qF 5 days ago 4 replies      
'Improving lives' is ambiguous, it centralizes around solving problems that people have. However if you scale these problems from 1st world to 3rd world problems it seems to me that improving lives in this context is aimed more at 1st rather than 3rd world problems. Which makes sense from a business standpoint, but the title somewhat implies that is about making the world a 'better' place.

I am not criticizing pg because I strongly believe that it is a winning strategy when talking about startups, just take improving lives with a grain of salt. I'd love to actually improve lives, but unless you can take the Bill Gates route (earn billions, do charity work), it's not easy to do so from behind a computer, writing code. Are there any startups taking the route of actually improving quality of life?

jmitcheson 5 days ago 0 replies      
I loved this quote (I'm paraphrasing)

Reporter: What kills young startups?

PG: The back button


6ren 1 day ago 0 replies      
Iteration (aka trial-and-error) occurs on three levels, with feedback from users; to pivoting; and he's elsewhere said YC was initially a way to learn about angel investing, by having many investments, turning over quickly. Like geneticists studying fruit-flies - or Christensen studying the disk-drive market.

One of the disappointing things he's elsewhere said they've learnt through this is that smartness is less important than they'd thought. I wonder why he's fallen back to "smart people" in this interview - maybe it's code for "good people".
#5: http://www.paulgraham.com/really.html http://www.paulgraham.com/founders.html

natural219 5 days ago 1 reply      
This interview defines me. Paul Graham exemplifies software entrepreneurship: "Make something people want." Cory Johnson, herald of the old guard: "Make users wade through bullshit; make ad revenue." You are dead, bullshit business man. Welcome to my century.
delinquentme 5 days ago 0 replies      
PG: ballsy enough to wear two popped collars?

i hope he won some money on that bet.

wensing 4 days ago 0 replies      
I like how PG surprises the male interviewer with his non-traditional filters for good investments.
aymeric 5 days ago 0 replies      
Loved the questions Emily Chang asked, she seems sharp.
dkrich 3 days ago 1 reply      
I liked this interview, but I found myself siding with the dude at the computer more than anybody.

I mean I fully agree that startups must and should improve lives to be viable. But then how are you in the same interview going to plug a website called "Hipmunk" that basically just displays flight info in a different way that to me doesn't really seem any more intuitive than Kayak?

Flight search has been done. A billion times. Unless you are coming with some interesting new business model, you are just shuffling around existing information and wasting a lot of time and money. You aren't really improving anybody's lives or solving a real problem. Why not try to build something that really helps people do something they can't do now?

Geekette 4 days ago 0 replies      
PG, your enthusiasm is crazy infectious. Loved the clip.
int3rnaut 4 days ago 0 replies      
What I like best about what Graham says is the idea that good people will persevere and do good things to make peoples lives better and that he's willing to bet on these good people. That's something universal, not just in the startup world that I wish more people believed in.
jasontan 5 days ago 0 replies      
ironically, we ran into PG & JL downtown right after he did the interview. while we were lugging cinema displays...
known 4 days ago 0 replies      
I agree with PG.
We need to do http://www.netmba.com/strategy/swot/ and http://www.netmba.com/strategy/pest/ analysis before doing a startup.
lhnn 4 days ago 1 reply      
Mizza 5 days ago 2 replies      
Never seen PG talk before, figured he'd be another west-coast asshole, but he seems super down to earth!! Think I might apply to YC now..
New security issue at Dropbox pastebin.com
266 points by davewiner  2 days ago   109 comments top 16
bxr 1 day ago 7 replies      
Last time the Dropbox security thing was in the news, regardless of your personal preference on what encryption keys dropbox should have been using, the issue and more importantly the way they handled it made me question their abilities. Then they sent a DMCA takedown notification notification to someone they were just trying to censor, and now they temporarily set their auth method to "allow any password".

They are showing us that they are technologically incompetent at managing their own systems. I don't know why anyone continues to do buisness with them for files they want any sort of privacy over.

I've moved to rsync.net. Its uglier, but at least they know what the fuck they're doing.

Jasber 1 day ago  replies      
A slight tangent...

I recently looked into password managers myself after the MtGox leak. I tried 1Password and LastPass. While both do what they say--I found them cumbersome to use.

I settled on a scheme like this:

E-mail: Very strong, completely unique. 2-factor auth. If you have my e-mail, it's game over.

Bank: Very strong, completely unique.

The rest of the passwords I've broken down into tiers. I've memorized a password for each tier combined with a hashing algorithm stored in my head.

The theory here being if an entire tier gets compromised (someone figures out my hashing scheme), at the very worst I lose the entire tier.

This does keep me safe from automated attacks, but not if someone singled me out individually. Which in that case, I've got other problems.

This isn't perfect, but it gives me a couple of things I really value:

- Keep all passwords in my head

- Unique passwords on each site

- Tiered passwords so if someone figures out my hashing scheme, they only get that tier

I like the idea of password managers, but in practice they were too much hassle for me.

eli 1 day ago 0 replies      
"there was a very brief glitch and this should never happen/be possible again. thanks for the email."


presidentender 1 day ago 0 replies      
For the record, Arash isn't some random support guy, he's the CTO.

That means the support team properly escalated this way up the food chain very quickly, and I'd be extremely surprised if we didn't see a response from Dropbox later today.

mike-cardwell 1 day ago 1 reply      
Dropbox owes their customers a public explanation.
georgemcbay 1 day ago 2 replies      
There's a blog post addressing this incident now on the dropbox blog:


It is very light on details of how exactly the problem occured other than saying it was due to a bug in a code update.

mike-cardwell 1 day ago 5 replies      

"Your files are backed-up, stored securely, and password-protected."

Except, apparently, you don't even need to know the password to get access to the unencrypted files.

I wish somebody would clone exactly what Dropbox does, but get the encryption/security right so that it is impossible for anyone other than the account owner to access their files. Dropbox will never get security right.

peterwwillis 1 day ago 2 replies      
It's 2011. Why are people still surprised when some blatant hole is found in a site? Does everyone just delude themselves into thinking "oh, they HAVE to be secure"? That old cliche 'nothing is totally secure' is almost right: the reality is, everything is mostly-not secure.

Tips on never getting caught with your pants down by a 3rd party service:

1. Never ever rely on a service maintained by a 3rd party to remain secure. Just assume they will be compromised in the near future (including your password).

2. Make your password strong but don't reuse it; save it in your browser password cache or keyring. Use a memorized really-freaking-difficult master password for the browser cache/keyring.

3. Use NoScript and updated browsers to help prevent XSS and other simple attacks from compromising your cached cookies.

4. Encrypt all sensitive stored information yourself using a well-vetted tool such as gpg, openssl, etc and store the encrypted files on the 3rd party service.

5. Keep hard copies of your secure files, keys, etc in a secure location. 'The Cloud' is not a backup, it's a trap.

crocowhile 1 day ago 0 replies      
Other people noticed this on the dropbox forum:
brk 1 day ago 0 replies      
People have been slamming Dropbox quite a bit, and it's not all entirely unwarranted.

I think that part of this is how Dropbox is handling things, and the fact they appear to be growing faster than they can code.

I'd love to see them offer something like a free lifetime 50GB account for anyone the submits a high security reproducible bug like this. Sure, they may end up giving out a couple of terabytes of free space, but the intense QA they would get for free would likely be worthwhile.

trebor 1 day ago 2 replies      
Well, this definitely cinches it. I had stuck with Dropbox thru the whole "your files aren't THAT encrypted" debacle because I have nothing worth hiding. But, this complete incompetence has convinced me that it isn't worth the risk!

I'm not as highly paid as the Dropbox guys are, I'm sure, but even I know to test authentication with automated tests. Oh, and not to let things that fail tests through to production!

What if I had archived my bank records there and someone go ahold of them? Thankfully I'm still just a little too paranoid for that.

I'm moving to Wuala or rsync.net; before I try the latter I want to test Wuala.

lordlarm 1 day ago 2 replies      
This is the sort of thing where the submitter (at pastebin in this case) should be absolutly sure that the bug is fixed from Dropbox' side before telling the hole world about it.

This way everyone is happy, and not to mention safe.

I'm so tired of seeing all these username/password leaks lately. It is not doing anyone anything good, except from teenagers and thieves which thinks it is funny to empty Amazon accounts or upload nude pictures on Facebook (etc. etc.)

So, in all fairness, the submitter did actually contact Dropbox first (which is great), but please wait until they definitely have fixed before telling the world about it. Or at least, that is my humble opinion.

davewiner 2 days ago 3 replies      
I haven't tried to reproduce this yet, but if it's true, it's quite serious.
jontas 2 days ago 2 replies      
I cannot reproduce.
ltamake 1 day ago 0 replies      
Doesn't work.
CWuestefeld 1 day ago 0 replies      
Shouldn't Dropbox be sued for this?

What's your standing -- how were you harmed? What are the damages?

You can't sue someone just because you don't like their behavior. You need to actually suffer a loss as a result of their behavior, before you've got any standing in court.

Pinboard.in service limited - FBI raided hosting company and pulled equpiment status.pinboard.in
257 points by rograndom  19 hours ago   81 comments top 18
idlewords 19 hours ago 1 reply      
We're not down. Our main DB server is unreachable and there is limited service (no API, search or feeds) while we run off a smaller backup server.

See http://status.pinboard.in/ or @pinboard on Twitter for updates.

noonespecial 18 hours ago 2 replies      
The FBI is just another in the list of bad things that can happen to your servers. Flood, fire, theft, law-enforcement... its all the same thing to a hosted service.

Off site backups, executed masterfully here saves the day.

There are a few services that I run on servers in separate countries. Failure of reasonable rule of law within a single country is a failure mode we consider.

marceldegraaf 19 hours ago 3 replies      
I love how Pinboard deals with this issue: site remains online (albeit with limited abilities), all data is secured and backed up, users are encouraged to use the export tool if they feel the need and there are status updates on Twitter.

Keep it up Pinboard!

mikiem 16 hours ago 1 reply      
I am the founder and current CEO of a dedicated server host. The FBI and other law enforcement agencies do often contact us regarding activity emanating from or related to our network. Its the same for any host and the bigger you are, the more often it happens. Rarely, a local law enforcement officer from within or outside of the US get cranky when you tell ask them to get a subpoena (makes work for them). However, in my experience the FBI and other three letter agencies are very professional, fair, and genuinely want to do it right. Getting a subpoena is no big deal at all for them. Usually the US Attorney is right down the hall from them, in the same building.

They do officially have policies and programs designed to befriend local businesses in the area of a field office. They just want to catch the bad guys and not mess with the innocent. They want people to like them and trust them. They count on the cooperation of businesses, especially hosting and access providers. There are civilized processes for everyone to get what they want.

There are the cases of people trying to get information who are not actually law enforcement, and that is one of the many reasons you must ask for a subpoena... To protect yourself and your customers privacy. The FBI can get one in a very short time.

Where this all goes bad is when you do not respond to subpoenas for subscriber information, when you don't hand over the disks, etc. If you do not comply, then what alternative does the FBI have but to come and get it?

My guess?... The host didn't play nice with the FBI.

EwanToo 18 hours ago 1 reply      
It's interesting to think through what would happen with AWS in the same situation.

Would the FBI turn up and say "Where's the 100 servers for customer X", then seize up to 100 different physical servers, depending on the distribution? Or even 100 racks worth of physical servers...

ldayley 19 hours ago  replies      
The brave new world of overzealous law enforcement data warehouse searches just continues to wreak havoc on "cloud" services and content. It's akin to digging up the neighborhood to search somebody's house. What can the Feds/providers do differently to prevent this from happening so often?
thaumaturgy 15 hours ago 1 reply      
Can a law-knowledgeable individual shed some light on what this means for individuals who weren't a part of the warrant?

i.e., I'm hosted on the same server as Joe, who the FBI are investigating. They seize the equipment we share. During the course of their investigation, they naturally also examine my data.

Do I then have a viable lawsuit or claim towards unlawful search & seizure, or invasion of privacy? Or, if I happened to also have illegal content on the same system, would they be able to use the evidence they encountered there in a case against me?

buzzmunk 18 hours ago 0 replies      
What I find awesome is that instead of being disgruntled or disappointed, the way in which pinboard has handled this situation has reinforced my confidence and appreciation for it's service. They are truly a case study in customer awareness and communication for the tech industry.
newobj 17 hours ago 0 replies      
Really impressed by your ability to weather this storm. Definitely going to take a closer look at the service and see if it's useful to me (I'm a kind of 'write-only' Instapaper user... could Pinboard help improve my read rate at all?)
rubergly 18 hours ago 0 replies      
I just started using Pinboard a couple days ago (mostly because of integration with Instapaper), and so far it looks great. The fact that, even with all this chaos going on, the main functionality of the service is still up and running is really great.
shrike 15 hours ago 0 replies      
I've been a Pinboard customer for a long time, I think it is an example of a well executed, very well designed service that just blends into the background even when I use it a dozen times a day.
jarek 18 hours ago 0 replies      
Can't wait to read the write-up of that.
chrisjsmith 5 hours ago 0 replies      
Here's where hosting on EC2 might actually be worth it.
toddh 16 hours ago 0 replies      
If the data was replicated in N places would they serve all N places? Just curious how that works.
JeffDClark 16 hours ago 1 reply      
I wonder if the law enforcement folks look at the "collateral damage", i.e., all the innocent servers (virtual or otherwise), as a windfall of extra data to mine. If my neighbor gets his house raided by the SWAT team they do not have access to my house only his, but with hosting this is not necessarily true. Further, I at least know who my neighbors are and can choose to not live in a bad neighborhood or even move away if I want, however with hosting this is not the case.
ltamake 18 hours ago 1 reply      
A site I visit frequently got its server raided by the FBI (the host was rewiredHost; it was unrelated to the site I visit). The site had to start from scratch except for their frontend code.

I wonder why the FBI is raiding all these servers. Another comment mentioned a few hosts they've hit.

reustle 19 hours ago 0 replies      
It seems civilian causalities will always exist.
jvandenbroeck 17 hours ago 2 replies      
Let this be a lesson to chose your hosting company wisely. You can't always predict such things, but I think if you pick a big name, with a good business reputation, you'll minimize the risk. They might do checks for abuse and have plans in place to keep everything up when something goes wrong.

Eg. I can't imagine that if you host with http://www.rackspace.com/ your website would be down if you didn't do anything illegal.

DigitalOne's site is also down http://www.digitalone.com/ so they don't even have a backup server for their own website..

Facebook PR: Tonight We Dine In Hell techcrunch.com
260 points by parth16  4 days ago   47 comments top 18
knowtheory 4 days ago 4 replies      
Wow. Techcrunch defended journalistic integrity, and i actually believe them. They're right, this is a problem, and it's being highlighted in the correct manner.

The other broader issue that has to be dealt with is that this is the face of the new media landscape. Where do you think journalists and writers have left to go in the collapse of the news media? PR flacks often times have journalism degrees, and the only people left paying for flacks are big corporates and their pr departments.

brandnewlow 4 days ago 3 replies      
Hey, HNers,

Here's something I would pay money for and maybe other publishers, as well.

Through WindyCitizen.com, I get about 40-50 press releases a day trying to get one our writers to cover some event or celebrity appearance in Chicago.

This is absurd considering our site is all user-generated content. But we're on lists somewhere and so the PR industrial complex thinks we want to hear about all their fake news. It's really annoying.

I would pay money for a gmail plugin that lets me specify the e-mail addresses of X PR people, and then responds to their press releases automatically with an e-mail from me telling them what it will cost them to buy advertising on our site that promotes the event they're touting.

If they're going to spam me, I would like to be able to spam them.

Most of them will just ignore the e-mails, but they'll get the picture eventually.

Meanwhile, some of them will convert into advertisers. If I pick up $1500/month worth of advertising from this tool, I would gladly pay $30-40/month maybe more for a service that lets me do it.

It could be free for one e-mail address, $29/month for up to 50, and so on and so on.

This way, the indie bloggers out there who can't sell an ad to save their lives but who get bombarded with PR pitches in their inbox all day can automate their sales process a bit AND get the satisfaction of annoying the crap out of the PR people bugging them.

tjogin 4 days ago 1 reply      
I actually think MG went really out of his way to look for a controversial reason for Facebook's choice of platform for Project Spartan. And I think he is wrong, this time.

Facebook could have gone with a native iOS app, granted that's what most companies do who are specifically trying to target iOS.

But is it really necessary to reach for far fetched reasons why they'd want to go with the web app approach instead? I mean, Facebook is a web app. Their developers are web developers, the vast majority of their developers are hired for their skills and penchant for web development.

As is evident from the regular Facebook.com, they have some pretty great web developers on board as well, knee deep in javascript, css and stuff like that every day, I'm sure. Wouldn't it be really practical to just leverage that expertise for Project Spartan as well, rather than have some other team work with some other code base for some other platform?

Then of course we have the slew of other good attributes of web development, to which Facebook are already accustomed. Like being able to update the app several times a day if they so choose, without Apple's adult supervision and delay.

Do we really need to look any further than that for reasons why Facebook went with the web as their chosen platform? I don't think so, I think it makes a lot of sense for Facebook to go with the web app approach. That Project Spartan uses mobile Safari, not webkit in general, as their target platform kind of shows that there isn't a hell of a lot of anger towards Apple anyways.

AllenKids 4 days ago 1 reply      
I truly do not get it.

PR exists to serve its clients. Control and spread specific messages is the job. I don't think anyone has any illusion about that.

Tech industry and tech journalism is weird. Most of the writers do not investigate or do any leg work for that matter (hauling their asses to WWDC is apparently too much work and too costly, so they demand realtime webcast). The majority of tech blog posts are dressed up PR pieces maybe with some attempt snarkiness and editorialization, the others are scoops(with fuzzy pictures!!!) or reviews or personal opinion/rant.

The gist is this: we do not get truth or plain news anymore (or ever did). The media have their angles and the companies represented by the PR firm have agendas too, but together they produce large amount of purposeful info everyday and millions of clicks. If this symbiotic relationship can be defined as war, then yes and Oceania is at war with Eurasia.

tokenadult 4 days ago 0 replies      
This reminds me too much about Henry Kissinger's comment on the Iran-Iraq war of the 1980s: "Pity they can't both lose." Leaving out the issue of the particular companies and personalities mentioned here, there seems to be considerable suspicion that journalism has deep problems, especially when reporting on the economics or technology base of high-tech companies, and meanwhile the blurring definition of what "journalism" is seems to make it easier than ever for public relations personnel to manipulate the story lines the public reads. Maybe there needs to be some other outcome for this war than one of the two sides identified in the submitted article winning the war.
DenisM 4 days ago 0 replies      
Facebook creating a new mobile app platform? I doubt they are capable of producing of high enough quality software to serve as a platform - their iPhone app is the buggiest app I have ever used on the iPhone (constant crashes, stuck interface elements, mismatch between pictures and their thumbnails), and their web site is likely the buggiest web site (duplicate items in news feed, missing items, the message counter is never correct). Basically, on Facebook nothing ever works right. I don't see a lot of people rushing to discard their iOS apps in favor of that.
nhangen 3 days ago 0 replies      
This felt like a TMZ piece, the only difference being that TMZ recognizes what they are, while TC tries to play both sides of the fence, depending on what they need from the post.

I fail to understand why anyone would take TC seriously these days, as there are much better sources of tech information where you don't have to worry about journalistic integrity.

I'm not a Facebook fan, but I don't blame them one bit. If MG is complaining about a broken unwritten rule of PR/Journalism, then he should realize that we don't care.

angryasian 4 days ago 0 replies      
I think this is a little of the pot calling the kettle black. They are one of the biggest tech blogs out there, and Michael Arrington is an active investor in the same companies they cover or lack of cover. Integrity is questionable.
endlessvoid94 4 days ago 1 reply      
How can you possibly be surprised by a company PR-spinning things that make them look weak?
cliffchang 4 days ago 0 replies      
It bothers me that TC writers, when called out on their bias, claim to just be mere "bloggers" who are supposed to be expose their bias so you know where they're coming from, but now they're claiming to be holy "journalists".
floppydisk 4 days ago 0 replies      
In other news today, giant social networking site wishes to own your data and the applications you might use to create even more of it.

Facebook's PR people have an even harder time of it after their privacy settings fiasco. More people take what they say with a larger salt pill than other companies because they have earned a reputation of saying X but doing Y. Not surprised that the TC article implies they are doing the same here.

bxr 4 days ago 0 replies      
While I like many of Facebook's PR team on an individual basis, as a whole, they are probably the worst in the industry when it comes to manipulation, double-speak, and all around slimeballishness

Their PR team are a prefect example, in Zuckerburg's words, of a "lack of integrity".

junklight 4 days ago 0 replies      
It's not just the tech industry - read Nick Davies Flat Earth News for more on PR and the massive impact it has on "news".

I wonder if this will become the norm or if there will be a backlash and people will start to prefer unspun unvarnished truth ?

tatsuke95 4 days ago 0 replies      
"Journalist" breaks story containing confidential information about a product in development. PR team kicks into damage control, trying to dismiss and deny the leak.

What is the story here? That's the job of PR! Whether journalists buy into the mess is another matter...

bsiemon 4 days ago 0 replies      
It seems like this is a war whose outcome rest solely in the minds of the readers.
yuhong 4 days ago 0 replies      
It certainly don't help that Zuckerberg is a sleazy businessman.
dave1619 4 days ago 0 replies      
MG has got to be my favorite TechCrunch writer.
anon7865 4 days ago 0 replies      
The war over the internet is intensifying. Now, why should you care? Do you think Google is going to "not be evil" for the rest of eternity? You're already seeing politicians going down for doing stupid things...the global elite fears the power of the internet, as well they should.

The internet will know what you are thinking, and it will use that against you. At some point, a tipping point, those who control the internet will be able to control the rest of society.

The internet can survive a nuclear war. Whoever controls the internet will control the future.

Instant Company nat.org
250 points by jstedfast  5 days ago   34 comments top 13
nikcub 5 days ago 4 replies      
I think these 'what products and services does your startup use' type articles are more interesting than the usesthis series about what tools developers use.

Somebody should setup a blog where they interview a startup founder each week and just ask them to list services they use along with a mini single-paragraph review of each.

Edit: after thinking about it, I might just do this as a weekend project. A quick search and I couldn't find anything similar, the closest I remember is the Ajaxian blog startup interviews which they stopped doing. If you would like your startup featured email me, ill be reaching out to a few people so if there is interest I will likely get it going

seats 5 days ago 0 replies      
Great list, but to me the last two items aren't like the others. Everything about starting tech companies has gotten easier and cheaper, but accountants and lawyers haven't really changed all that much.

He didn't specify exactly how much they are paying for those two, but it still sounds like it will be a fairly beefy hourly rate or a retainer + equity. I think for a boostrapped company these are still your two really big overhang costs where people end up weighing going without or dyi versus committing to legal or accounting as your biggest up front operating expense.

Of the two, I'd say accounting has probably changed the most, there are plenty of workable software solutions for keeping books that aren't too bad and it seems like there are plenty of people trying to build startups around that particular problem. Can't say the same on the legal item though.

there 5 days ago 1 reply      
now someone needs to make something to use the APIs of all these sites to be able to control users across all of them from a single location.

bringing on new employees or terminating existing ones and having to do it across half a dozen different sites sounds kind of tedious and error-prone.

spullara 14 hours ago 0 replies      
We don't list out all the business services, though we should add them now, but we do have our technology and services stack for production:


mcdowall 5 days ago 3 replies      
Great list! Using a few of those myself

If i can be cheeky I'd love an intro to the guys at Stripe, think it was a fair few months ago I registered my email for their Beta and would love to implement it for my startup.

benjohnson 5 days ago 3 replies      
eFAX !?!?? eFAX is evil when you try to close your service - you have to go through their horrid 'chat' system and even then I had to cancel my credit card to get them to stop charging.

And no... it's not just me: http://daviddahl.blogspot.com/2006/05/efax-sucks.html

athst 5 days ago 0 replies      
Interesting list, I'd be interested to see what other "stacks" companies are running on.
statictype 5 days ago 1 reply      
What advantage do these group chat apps have over something like Skype?
clistctrl 4 days ago 0 replies      
I didn't really find the article that interesting, however looking at this http://xamarin.com/ company I'm extremely intrigued by the product.
kinkora 5 days ago 0 replies      
For a web-based company, I would add Amazon Web Services(AWS) at the top of the list.

AWS is relatively expensive but if you are a startup with a limited amount of capital and need to scale quickly, it allows you to utilize a corporate grade web/computing/server/database infrastructure without having to build one yourself.

timsally 5 days ago 0 replies      
It's an interesting contrast how cheap the technical tools are compared to the financial and legal skills retained. I'm not sure if Ropes & Gray does something special for early stage companies, but they are a top and expensive firm.
vijaymv_in 5 days ago 0 replies      
Amazing list. I am wondering how do you handle signatures
omouse 5 days ago 0 replies      
Their committment to free/open source software is astounding! </sarcasm>
MIT professor's hack to recruit students harvard.edu
241 points by iamwil  3 days ago   41 comments top 9
ScottBurson 3 days ago 3 replies      
Ah, so Jerry Lettvin died.

I took a couple of courses from him as an undergrad. He was quite a character. Here's a Jerry quote for you: "The brain is not a computer. The brain is a gland." I don't even know if he believed that, but he loved to stir controversy -- and announcing this at the MIT AI Lab c. 1982 certainly accomplished that!

I would say "RIP", but he probably already has his lab set up and is hard at work, wherever he is :-)

Joakal 3 days ago 1 reply      
Argh, this reminds me of my frustration with the university library. Students were 'hoarding' books that I wanted in other sections of the library so that they could effectively bypass 1 hour or 3 day lending limits (short/long term borrowing). While a nice hack to get what you want, it's depriving others from using the resources in the meantime. There was even up to three very helpful librarians try to even find one book over three days. I'm even paranoid that it was stupidity that someone decided to mix Economics among Medicine books.

At least it's known who has the book in this case.

ajkessler 3 days ago 2 replies      
I bet many people's first reaction to this story is something along the lines of "Look what we're losing if print dies!" or "This is why print will never die!"

But, think about Kindle's bookmarks. You can see highlights and notes from everyone who has ever read the book. That's insane! That's Lettvin's hack, scaled to the max. The problem is obviously filtering all that data, but look how much larger the pool gets: now the professor doesn't just have the pool from MIT to choose from, he might have the whole world to choose from.

What an awesome time we live in.

zaidf 3 days ago 2 replies      
I checked out some esoteric books and every now and then would look through the previous due dates and wonder how much in common I may have with some of these locals I'll never know about. It's easy to meet likeminded folks on the web and yet with locals who've checked out physical books, there is that identity disconnect--in some cases for good reasons(I don't want everyone to know about every book I've been checking out).
ScottBurson 2 days ago 2 replies      
I've just come across a QuickTime video of Jerry's famous debate with Timothy Leary about LSD. I found it quite fascinating to hear both Leary's argument and Jerry's rebuttal. As I understand, Jerry accepted the debate invitation on very short notice and so had little time to prepare his remarks, and that shows; he rambles a little. But he makes his point.

Here's the link: http://neuron.duke.edu/Lettvin/Lettvin_Leary_Deb.mov

If you find Leary's mysticism tedious and you just want to see Jerry's rebuttal, skip to about the 60% point. (Don't miss Leary's brief reply at the end, though.)

Oh, and in an interesting bit of synchronicity, Jerry mentions the Charles Whitman case, which figures prominently in another article on HN at the moment ("The Brain On Trial").

jamesgagan 3 days ago 1 reply      
well - to play devil's advocate, it's clever but if a student hoarded books, he'd have the book thrown at him/her and academic standards should apply to all equally.
orijing 3 days ago 2 replies      
In theory, why can't some student who wants to work in that professor's lab just request the books that the professor checked out (or are likely to check out)?

Seems like hacking the hack.

signa11 3 days ago 0 replies      
seems like physical version of delicious to me :)
jamesgagan 3 days ago 0 replies      
if you are doing this shit at 11 you don't need a "life lesson", you are already ahead of the pack no matter the outcome.
Google discontinues support for IE7 in Google Apps google.com
236 points by Yrlec  1 day ago   142 comments top 17
jarrett 1 day ago  replies      
I'm quite grateful to Google for this. As a web developer, I'd always hoped that some big industry player would start forcing people to use modern browsers, and now it's happening.

As small players, dropping support for older browsers kind of pulls us into the morass of a Nash equilibrium. Everyone would benefit if all web developers could agree on requiring modern browsers. We'd all be saved the pain of supporting old browsers, and users would upgrade because every site forces them to. But as an individual web developer, I can't very well just make that call and hope others will follow suit. Because until everyone else does the same, I'm stuck telling my clients they're giving up visitors with older browsers "for the greater good." Not workable. So my current best strategy is to support older browsers, and the same is true for each other developer. Yet as a whole industry, we'd be way better off dropping old browsers.

But a huge player like Google can afford to do it unilaterally. And when they do, they create an opportunity for countless small developers like me to do the same.

I'm not going to jump on the bandwagon just yet. I plan to embrace this cautiously. We still don't know when it will be safe for freelancers and small companies to drop IE 7 and other dinosaurs. But I predict that day will come much sooner thanks to Google.

ggchappell 1 day ago 4 replies      
Yes, dropping support for IE 7 is fine. But the recently weird-ified FF release schedule is going to make this new Google Apps policy have strange results.

FF 4 was released 3 months ago. It's just now looking confidence-inspiring enough that I'm considering upgrading to it on my Mac this week. But now Google is going to drop support for it when FF 6 is released in a couple of months???

Another issue: if I'm not mistaken, the fact that Ubuntu releases stick with a particular browser version, means that the LTS releases (and 10.04 in particular) will stay with a version of FF long after Google Apps has stopped supporting it.

Both of these strike me as serious problems. Perhaps the Google Apps people have not really thought through the ramifications of this policy?

melling 1 day ago  replies      
Do you think they'll really drop IE8 once IE10 is released next year? Firefox 5 will be released tomorrow. FF 3.6 support will be discontinued? Actually, it would be great if Google could nudge everyone to keep upgrading.
r00fus 1 day ago 0 replies      
Coincident with the debut of admin-less ChromeFrame support, this makes sense.
fierarul 1 day ago 0 replies      
I like how they don't even put a version number on Chrome.
rglover 1 day ago 0 replies      
This is excellent news. I think those who don't really understand the importance of upgrading will finally see the light when a company like Google encourages, nay, forces it. This is a great day, especially for app developers.
HaloZero 1 day ago 1 reply      
A lot of people are talking about oh, what will happen with IE / Firefox support. You know what's a better way to address all these problems? (Especially for Firefox). Why not just do the auto-update process Chrome does for Firefox? I can understand why IE doesn't, but why doesn't Mozilla expend significant effort into just doing that and solving most of these issues of "outdated" firefox versions
msy 1 day ago 0 replies      
This also means they're dropping IE8, which generally is considere to have largest market share at the moment when IE10 comes out, which is already in Beta.
pizzaburger 1 day ago 1 reply      
I'm all in favor of anything that puts upgrade pressure on users of IE 6 and 7, but this rolling "current and previous major releases" idea is silly. They should simply establish minimum browser requirements like everybody else and update them when it makes sense to, not arbitrarily leaving it to whenever the browser makers release new versions.
dfischer 1 day ago 0 replies      
Thank you so much! I love you Google.
technogeek00 1 day ago 1 reply      
To me it seems Microsoft needs to take a leaf from Google's book and incorporate the automagical browser updating. IE, sadly, has always controlled the browser market because if comes prepackaged and most users are novice and oblivious to updating and system requirements. Sure people will say they are copying Google, but in doing this, they might finally be able to keep up with web standards as they are released instead of supporting new standards 2 years after everyone else does creating this entire version fiasco to begin with.
mey 1 day ago 2 replies      
Does this mean if I'm running Google Chrome 10 I won't work with Google Apps?

I notice there is a lack of effective major version numbering in Google. When does Google stop supporting it's own browser?

It'd also be interesting to see what they intend to do about mobile browsers. How long will an old OpenWave XHTML browser be supported? How long will an Android 1.5 browser?

Tomis 1 day ago 0 replies      
In other news, I've been waiting for Opera support for years and I still don't see it in the list of supported browsers.
veyron 1 day ago 1 reply      
Does anyone have statistics regarding browser usage in the wild?
Steko 1 day ago 1 reply      
The old Microsoft would respond by pushing out 2 major releases in 6 months to reduce Google Apps penetration.

Ballmersoft? Notsomuch.

cypherpunks 1 day ago 2 replies      
This is what really irks me about Google Apps. You don't have any control over this kind of thing. They can (and do) yank the rug out from under you whenever they feel like it. A while back, they forcibly transitioned all accounts to also be normal Google accounts, with no user input. They did this before they figure out how to transition users who already had Google accounts, so now my users are split into first class and second class citizens.

It really doesn't feel like it should be the hard for Google to have some infrastructure where the user can control version transitions. Google makes a new version, but barring security issues, keeps all old versions in their cloud. At that point, you transition when you're ready.

Amen: the world's most famous sample and the rise of the musical copyright youtube.com
232 points by mgeraci  3 days ago   56 comments top 14
J3L2404 3 days ago 1 reply      
"Overprotecting intellectual property is as harmful as underprotecting it. Culture is impossible without a rich public domain. Nothing today, like nothing since we tamed fire, is genuinely new. Culture like science and technology grows by accretion. Each new creator building on the works before. Overprotecting stifles the very forces it is supposed to nurture."
sixtofour 3 days ago 0 replies      
The author's own site (including the video), Nate Harrison:


parenthesis 3 days ago 1 reply      
Another ubiquitous break is the `Apache' break:


pash 2 days ago 0 replies      
Glossed over in the video, and in the discussion here so far, is that even when a court rules a derivative work to infringe a copyright, there's no need to obtain a license so long as the derivative work is "creative enough" to qualify as fair use under US copyright law (and similarly in many other jurisdictions). So while it's true that the Sixth Circuit ruled in 2005 [1] that unlicensed samples of any duration constitute copyright infringement, what's left unsaid is that samples still may be used without bothering about licenses so long as they're used as part of a sufficiently creative new song.

But what's "creative enough"? Ah, there's the rub.

The real story here is how copyright owners are able to abuse a quirk of the law in order to strong-arm musicians into paying licensing fees, even when everybody knows full well there's probably no legal obligation to pay them. "Sample trolls" exist precisely because fair use is only a defense to litigation, which means it can only be invoked in the course of a lawsuit. So there's no sure way to know whether you need to license your use of a sample until you get sued, you claim fair use, and a judge tells you whether you should have (past tense) bought a license or not. It's much cheaper, of course, just to pay for a license up front and be done with it.

Unfortunately, its hard to imagine a way to resolve this conundrum if copyright holders are still to be granted monopolies over derivative works [2]. Consider the canonical law-school example of a derivative work, Marcel Duchamp's goteed Mona Lisa (LHOOQ) [3]. If Leonardo had been around to defend his copyright, would Marcel have been able successfully to invoke the fair-use defense? It all depends on how creative the judge thinks it is to give old Lisa a mustache. Reasonable judges may disagree.

And then consider Andy Warhol's colorful posterized Mona Lisa silkscreens, or Kazimir Malevich's collage-cum-painting Composition with Mona Lisa, which incorporates a small copy of Leonardo's painting. Even if you thought Marcel's work was a blatant rip-off, you might think Andy's or Kazimir's is fair use. (Then there's Salvador Dali's Self Portrait as Mona Lisa.) Point is, it's impossible to draw a bright line on fair use, even for a particular work.

But that's not to say there's no bright line anywhere. When it comes to recorded music, one such line is whether a work actually incorporates a copy of the recording. If it's not a sample, but a new recording that happens to sound the same, there's no issue. (A ruling that duplicating any portion of a musical composition constitutes infringement is nigh unimaginable.) So just go record your own version of the beat you want to use and there's no issue.

1: See http://en.wikipedia.org/wiki/Bridgeport_Music,_Inc._v._Dimen... ; a good write-up on the case is at http://www.ivanhoffman.com/fairusemusic.html .

2: And maybe they shouldn't be. But then the debate would probably turn back to what constitutes a derivative work.

3: This and other riffs on the Mona Lisa are shown at http://www.aiwaz.net/gallery/mona-lisa-as-modern-lisa/gc234 .

By the way, for those of you who doubt the ubiquity and permutivity of the Amen Break in today's hip-hop, here are a few tracks I picked out in a quick once-over of two albums by The Roots. From almost-a-sample to you-gotta-be-paying-attention, these all use the Amen Break:

- "Rolling with Heat" (slowed down, but otherwise almost unchanged)

- "Thought @ Work" (syncopated by dropping a beat)

- "Duck Down!" (very slow, syncopated)

- "I Don't Care" (syncopated)

- "Web" (very syncopated)

- "Boom!" (very syncopated)

If you can hear the signature "bum bum BAH, buh-DUM buh-DUM" in those last few, you can see why people call it the most ubiquitous break. It truly is all over the place, albeit often in heavily manipulated form.

CrazedGeek 3 days ago 1 reply      
jinushaun 3 days ago 4 replies      
That's why drum and bass all sounds the same to me.

Reggaeton also has a similar situation, where everyone uses the exact same beat for the rhythm. It's called the "Dem Bow" beat.

Figs 3 days ago 2 replies      
Interesting video. I wish the narrator didn't sound so robotic though.
fedd 3 days ago 0 replies      
i found the presented samples different from the original.

it would be better if the drum lines from different songs were showed as notes, or i can't believe that they are derived.

i think it's a stretch to make a beautiful statement, that somebody invented some loop in 60-s. i even thought the author wants to tell that if i wrote a little break bit myself, i used that amen sample (just rearranged and manipulated in any number ways). but i didn't i swear. never heard of this before today.

p_monk 3 days ago 1 reply      
The "Amen Brother" drum break is far from the most sampled or most famous drum break in history. Check out a list of more heavily sampled breaks here: http://the-breaks.com/stats.php

The above list is far from complete, obviously. If I had to put my money on it, id say the most sampled drum break is "Impeach The President" http://www.youtube.com/watch?v=wqbEsS5kFb8

quinndupont 3 days ago 0 replies      
Weirdly melodic and somber, but interesting video nonetheless.
code_duck 3 days ago 0 replies      
Strange, I just happened upon this for the first time 3 days ago seemingly at random.
fuddle 3 days ago 0 replies      
Checkout the Amen Break iPhone app too:
bobstobener 3 days ago 1 reply      
The break started here (at :05 sec)
thepumpkin1979 3 days ago 7 replies      
This is an interesting video, but how does this has anything to do with Startups, Technology, Development, UX or Tech Business... This is the why I think HN is becoming another Reddit. It's a shame...
       cached 22 June 2011 15:11:01 GMT