hacker news with inline top comments    .. more ..    22 Jun 2011 Best
home   ask   best   8 years ago   
Ooops. github.com
1100 points by peteretep  5 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 5 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 5 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 5 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 5 days ago 3 replies      
This terrifies me now of every single install script that refuses to run if not root.
mootothemax 5 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 5 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 5 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 4 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

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

orenmazor 5 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).
hyperbovine 5 days ago 1 reply      
That's pretty heinous, but deleting /usr shouldn't cause you to lose any irreplaceable data.
wladimir 5 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 4 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 4 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 3 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 5 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 5 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 4 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.

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 4 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.

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.
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 3 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 4 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 4 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.
Quiark 4 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.

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.
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 4 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.

adsr 3 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.
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...

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 4 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 4 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 4 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 4 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.


DuckDuckGo: Escape your search engine filter bubble dontbubble.us
522 points by senko  1 day ago   207 comments top 43
Matt_Cutts 1 day ago  replies      
If I had to tackle the notion of over-personalization in ~5 minutes, I'd say:

- If someone prefers to search Google without personalization, add "&pws=0" (the "pws" stands for "personalized web search") to the end of the Google search url to turn it off, or use the incognito version of Chrome. Personalization tends to be a nice relevance improvement overall, but it doesn't trigger that much--when it launched, the impact was on the order of one search result above the fold for one in five search results.

- personalization has much less impact than localization, which takes things like your IP address into account when determining the best search results. You can change localization by going to country-specific versions of Google (e.g. search for [bank] on google.co.uk vs. google.co.nz), or on google.com you can click "change location" on the left sidebar to enter a different city or zip code in the U.S.

- We do have algorithms in place designed specifically to promote variety in the results page. For example, you can imagine limiting the number of results returned from one single site to allow other results to show up instead. That helps with the diversity of the search results. When trying to find the best search results, we look at relevance, diversity, personalization, localization, as well as serendipity and try to find the best balance we can.

I saw Eli Pariser's talk at TED and was skeptical, although I did enjoy his example of Facebook starting to return only his liberal friends because he only ever clicked on the links his liberal friends shared. I had a number of concerns browsing through Pariser's book, but I would encourage anyone interested in these issues to pick up a copy; it's a thoughtful read.

yanw 1 day ago  replies      
Shame on DDG for endorsing this nonsense.

I understand the quest for a larger userbase but please don't use this sort of FUD that is being peddled by those who don't understand the technical aspects of search and are trying to sell their books.

A search engine's prime function is to filter the millions of results for each query down to the most relevant results for each individual user, and never the same 10 results are relevant to each and every user.

There is little difference between personalization and the relevance of search results.

How would you go about ranking then? alphabetically?! it's a matter of tuning the relevance 'dials' and it's all in early stages so a solution to this imaginary problem is more research and not to hide behind bullshit terminology.

And as a bonus a user (regardless of any personalization) can dig through any initial set of results if she seeks more information.

So please don't buy into this misleading and ignorant bullshit that is being disguised as a real issue.

mquander 1 day ago 4 replies      
The purpose of search engines is filtering content to give you what you want, which might be information, or it might be discussion, or polemics, or gossip. If you want to learn about some topic that has some element of subjectivity, familiarize yourself with the different points of view and read the writing of whoever you are interested in. There are lots of tools on the Internet to facilitate this -- Wikipedia, for example, is built around an ideal of giving people an objective survey of different things. If you type "climate change" or "Barack Obama" into Google and form an opinion based on the top results then fuck you.
igorgue 1 day ago 2 replies      
I heard about this book on NPR a couple of weeks ago [1]. I really don't like this biased view of ML.

In summary what he said on the show was something like: At least the news shows (and news pappers, radio) gives the same information to everyone, so instead of showing Kardashians news they do show you Bin Laden news, even though, they know the Kardashians are more profitable... this is not the case with Google Search or Netflix, Yahoo, Bing, etc (all attacked by this author).

I think that ML helps more than it hurts and viewing it in a non-technical way is wrong, the author gives the impression that Google (the company and their execs) manually (via algorithms, but very manageable in his opinion) change the search results to not show things that they don't like, then it raises the question "do we really trust one company?".

Its arguable that the search results in Google or Netflix are optimized for profits, but how do you make profits in the customer industry? IMHO you do that by making their happier, showing useful results, for them, not for everyone.

I'm waiting for the time when I google: "what channel and time is Conan on" [2] and I get "channel 43 11pm" as the result. Of course that is very personalized, and the result will be just for me... but again I'm the one searching and I'm the one needing the results.

[1] http://thedianerehmshow.org/shows/2011-05-17/eli-pariser-fil...

[2] At the moment I get this 1st result: http://articles.boston.com/2010-11-10/ae/29330376_1_conan-an... which is not what I searched for nor wanted...

ryanisinallofus 1 day ago 3 replies      
I spent a few hours using Duck Duck Go before commenting. It's been my Chrome default search for 4 hours.

• The results are less relevant. Bubble or no, it was harder to find things I look for all the time. For example I had to constantly add the word Seattle to my search terms.

• It felt like an old search engine. The results, the display, the choice of Mapquest maps all made me feel like I was using Yahoo or even early Google.

• At first the feeling of not being watched was liberating but I forgot about it very quickly.

I'm going to continue using it as my default search for the lack of tracking but Iv'e already had to go to Google a few times to find what I was looking for. Convenience over privacy right?

retube 1 day ago 3 replies      
Yeah this is an important issue. Google apparently ranks results (for you personally) based on some 57 inputs, even when not logged into Google services. In short results suffer from a self-reinforcing feedback loop, forever constraining what you see.

I wonder how easy it is to get "clean" or "default" results from Google?

And I know it's been discussed many times , but just how easy would it be to maintain real anonymity across the web?

alexandros 1 day ago 1 reply      
What about the filter bubble of me only searching for what i am interested in? Will DDG throw in some random results in every search to save me from myself?
loup-vaillant 1 day ago 3 replies      
Confirmation bias is bad enough already, it's really a shame that powerful companies like Google reinforces it just for the sake of giving you more pleasing search results. (Pleasing and Good overlap, but they're not equal.)



Edit: I didn't intend to bash Google specifically. But they are faced with a choice in which their own interest conflict with those of their users. And as Capitalist Bastards are more and more accepted in our society, we don't blame them for the selfish choice. Maybe not a shame then, but at the very least a pity.

Kylekramer 1 day ago 2 replies      
It is well known that people seek out information that reinforces their own beliefs. And while it may not be ideal for an enlightened population, why should Google/Bing fight this natural inclination? Their job is to ultimately give their users what they are searching for, not challenge their users' opinions. Especially since there are tons of benefits to personalized search, and it may be hard to not throw the baby out with the bathwater.
groby_b 1 day ago 0 replies      
Of course, I might want my search results to be filtered. To take but one example: Neither FOX nor CNN are providing any valuable insights at all, so filtering them out is a good idea for me.

Or, to get all pithy about it, the problem is not the filter bubble, it's the crap bubble.

If there's a problem with relevance sorting at all, it's the issue that it is based on history, not intent.

balloot 1 day ago 0 replies      
This entire argument is simply without merit. Google is, and always has been, a filter.

If I type in "Barack Obama", it will not show me links about The Green Bay Packers NFL team. This is not because Google is conspiring to keep me from reading about the Green Bay Packers. It is because it is most likely that I am not looking for Packers links and will not click. The general idea is that Google starts with every single piece of content on the internet and filters to get the content it thinks I am looking for.

Now, this article complains that Google is flawed because it will more likely show some MSNBC over Fox News, or vice versa. The implication here is that you never click on Fox News when it is presented. Because if you did click on Fox News and its ilk from time to time, Google wouldn't start filtering it in the first place. The problem isn't that the search engine creates the "bubble", it is that the user does!

So if the scenario presented in this article offends you, then start changing your behavior and browsing more diverse
sites. Otherwise, don't blame Google for noting that you hang out in a very narrow corner of the internet, and presenting you links from that corner. It's just doing its job correctly in that case.

markkat 1 day ago 1 reply      
I think this is a real issue, and I am glad that DDG is addressing it. This is a more-compelling take on the tracking issue IMO.

What I'd really like to see, is a search engine to allow me to do both. I'd like to have a profile (that didn't use my name), and when I wanted to, I could click a result as 'useful'. This would go into my personal algorithm. I could then toggle between filtered search, or unfiltered search, whenever I like.

It might even be useful to build search filter categories. But I'd keep that a bit buried for the power users.

derwiki 1 day ago 0 replies      
Sorry to be pedantic, "beg the question" is being used incorrectly. See http://begthequestion.info/ "This begs the question: what are you missing?"). Doesn't detract from the overall post.
btipling 1 day ago 4 replies      
Except duckduckgo can't find my project and Google can:



hollerith 1 day ago 2 replies      
I heard you can add "&pws=0" to a search query to turn off personalization:


tomlin 1 day ago 0 replies      
It almost seems like DDG is trying to get me to think personalization == censorship. Sorry, but that ain't gonna fly.

You've just undermined your own search engine's potential to use such a feature in the future -- people will be spitting quotes back at DDG about how opposed on this feature they were. Know your audience.

davidmat 1 day ago 0 replies      
In all seriousness, this is actually my main use case for the private browsing mode in chrome: to search google without the filter bubble(1)

It's quite shocking to see just how much those results differ from the ones I'm usually served, actually.

I know it's actually supposed to be 'awesome' to have every search tailored to _you_, but it just makes me feel uncomfortable that I'm not seeing the internet "the way it's supposed to be seen" - if that makes any sense.

(1): Or at least a smaller bubble, considering it still knows my location - even though i use google.com, my os, my browser, etc...

yanw 1 day ago 2 replies      
This assumes that 'filter bubble' is something more than a nonsense term.

There is little difference between personalization and the relevance of search results.

How would you go about ranking then? alphabetically?! it's a matter of tuning the relevance 'dials' and it's all in early stages so a solution to this imaginary problems is more research and not to create bullshit terminology in order to sell some books.

mathly 1 day ago 0 replies      
We often forget that, although it's obvious search engines filter results, the information we see on social sites is also filtered.

Consider users of Reddit. Now most of them would consider themselves very open minded and enlightened, yet their is active discouragement for radical ideas without due consideration as to their merits. It's just easier to downvote and look at Mario cake.

Overall, I think in a way we NEED filters to remove the faff, but be careful to keep a social circle which encourages radical ideas to be bought out into the light of logic and due consideration,

Uchikoma 1 day ago 1 reply      
People that don't want "filtering", also want their search results in German, Chinese or Japanese? Or is "filtering" on language ok?
elb0w 1 day ago 0 replies      
I noticed this a long time ago. Suddenly I could ask general programming questions and it popped up results in the language I use primarily as the top results (Without me specifying it).

While some may think that this is hiding, do we not often create algorithms to asses and aide? It seems like disabling this would be against the advancement of a learning system.

I for one think its a great feature and have no desire to disable it.

yalogin 1 day ago 2 replies      
DDG is quite good in regular search. I like their commitment to privacy and so switched my default search engine to DDG. But I noticed more and more that I use google maps almost as much search. I search for places and directions on maps end up going to google a lot. That is brilliance of Google. They built search verticals and so its tough to not use them. If only DDG could do something about that.
chaselee 1 day ago 0 replies      
I just had to explain this to my co-founder last night after he freaked out because our old site with a different name was showing up first in his search results with our new name as the query . With web history off the old site wasn't even on the first page.Now I just have to explain that no one searches for early-stage startups let alone cares if they change their names :
Luyt 1 day ago 2 replies      
I noticed a while ago that a collegue and I got different results when we googled for our company name, but I didn't know that it's now happening in such an extent.

I've added DuckDuck to my FireFox search engines.

ThomPete 1 day ago 3 replies      
It is the ultimate quest for serendipity.

If you filter by what you want you don't get what you didn't know you wanted.

I will give DDG the benefit of the doubt and try it out for a couple of months.

Starting now.

the-kenny 1 day ago 1 reply      
The first example is totally borked. They first search for "climate change" (notice the ") and then search for climate change (without quotes). Of course the search engine shows different results for different queries.
mkr-hn 1 day ago 0 replies      
I've been using DDG exclusively for a little while. Half the time the results are identical to Google. The other half is usually a collection of links from sites I would have searched on to research the topic.
mitcheme 1 day ago 0 replies      
I have Google Web History turned off and I'm seeing a pretty good mix of things in my results. E.g., I'm heavily left-wing, somewhat pro-gun control, with no personal interest in shooting, but my results for 'gun' are pretty much all gun shops and fansites. For Barack Obama I get mostly official sites, although some of the top news is critical (I'm Canadian, if it matters). Egypt gives me a mix of travel, protests, general info and ancient history. I don't recall ever turning it off, so is it off by default? And if so, what's the problem here?
aghilmort 5 hours ago 0 replies      
widget 1 day ago 0 replies      
Any filter at all will result in a "Filter Bubble" as defined here (except, I suppose, returning a randomly sorted list of all sites on the internet). Whether the filter is personalized or not doesn't change that fact. What is the actual benefit of everyone getting the same search results when looking for a particular term? Search engines are not news sites or research papers: biasing towards relevant results is not a bad thing.
ZoFreX 1 day ago 0 replies      
You're missing a trick by that near-final slide of the DDG input just being an image - would be neat if it were a fully functional DDG search form.
taylorbuley 1 day ago 0 replies      
Does hitting the logout button pop the filter bubble?
m_feuz 8 hours ago 0 replies      
in our research study, we found the impact/presence of personalization very strong: after about 3'000 search queries, in some cases more than every search query received personalised search results. out of the 10 blue links in some cases we found 6.4 personalised: see for yourself
(search for Hypothesis 1 to get to the data)
cfontes 1 day ago 0 replies      
I would like to use it as default, but I tryed it and it's very very slow... takes me 5 secs to get a search back. in Google I take 0.035s

So I will stay information sided for a while

pilooch 1 day ago 0 replies      
There's a personalization / privacy trade-off that needs to be considered. It is annoying that personalization cannot be achieved locally on the user machines or browser. Filtering / re-ranking results at home offers much privacy. My little personal project is to have the ML for personalization done at home, seeks the Seeks Project, http://www.seeks-project.info/
Personal control over the personal bubble matters...
Hisoka 1 day ago 0 replies      
I suspect DDG is having trouble making money hence the need to make a commotion about filter bubbles and generating some linkbait. No surprise... < 1% of a search engine market is not gonna even make you much at the end of the day.
tathagatadg 1 day ago 1 reply      
From the search engine revenue perspective, how much can be the loss in case they provide a preference option to show "generic results" (like "safe search option off") - with an easy to switch ui between the two?
yhlasx 1 day ago 0 replies      
Personally, not convinced at all. Looks like saying "We are better because we cannot do it yet"
jerrya 1 day ago 0 replies      
How does duckduckgo.com compare with startpage.com?
c4urself 1 day ago 0 replies      
In the end (1) technical people will find a way around in when they need to, (2) The conspiracy-theory loving will use the "Filter bubble"as an argument for their own ends, and (3) The rest-most people will just not care... I think the more interesting question is whether this third group will veer off to become more biased to their own world-view as the article suggests.
KristianSerrano 10 hours ago 0 replies      
Google should invite Pariser for an Authors@Google event with Cutts conducting the interview.
jlft 1 day ago 0 replies      
I don't like the direction Google is taking with Search. My view of "improvement" is very different from Google's view. I have the feeling that the more features they add to Search the worst the service gets. I miss the old simple Google Search. I think there is a big oportunity here for another search engine focused on: simplicity, speed, relevance (algorythm) and unfiltered. Back to basics.
malaka 1 day ago 1 reply      
"But aren't you a part of the relevance equation? The ideal results for a search like [bitcoin crash] should be different for a Japanese-speaking searcher in Tokyo vs. a German-speaking searcher in Munich vs. a bitcoin expert vs. a programmer trying to diagnose why compiling bitcoin is crashing vs. my Mom who has never heard of bitcoin before, right?"

Maybe, but that is not the point.

Besides, you are mixing localization (japanese vs german) with personalization (expert vs naive), and what is worst is that you are assuming that Google knows so well each user so as to be right (and that is either impossible, either extremely creepy), at every single instant of his life (a person can change interests).

Furthermore, to grab your example, how can Google know that an expert in bitcoin and expert in bitcoin compilation and crash solver, is not just interested in hearing about the "market" crash of bitcoin?

Google CANNOT read the users' mind. And even if it did, there would not be a need for "personalized search", as the "mind reading" would give enough search criteria to nail the results more easily (albeit, most people do not know exactly what they want, so it will still be an iterative process, which is good, as randomness is the seed for evolution).

So, back to the point, it is that in the quest for "adequate results" for each person, Google is turning web search into a non-deterministic event ().

Imagine the web being a library, and the search being searching for the library's book database, why would the search for a given book return different results to different persons? It should always return the same results, if the person doing the search is not satisfied with the results, then she/he will add more criteria. In other words, let the person do the filtering!

Once that Google accepts that in his quest for "better results" (where 'better' is a concept decided by solely Google and whose ranking parameters and algorithm are unknown) there is a potential (probably demonstrable already) for a "filter bubble" with positive feedback loop on user behaviour, which, as with any positive feedback loop, can go out of control, exacerbating certain ideologies and fueling extremisms.

And there is a fundamental difference between a "self guided" (as in self controlled) filtering, where users would knowingly filter out results in order to find those that they like, and a "google guided" (as in externally controlled), filtering.

() strictly speaking, search will not be deterministic as the web is a dynamic system and it grows, so search results can vary with time, but they should not vary from person to person at a given time.

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 5 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.
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.
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.

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 5 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 5 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.

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.
rokhayakebe 6 days ago 0 replies      
Cheap shot: "The loudest one in the room is also the weakest"
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 4 days ago 0 replies      
Can introverts become good sales man?
Macro 5 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  4 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 4 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 4 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 3 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 3 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 3 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 3 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   112 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 4 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...

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.

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.
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 2 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 3 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 2 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 3 days ago 0 replies      
Actually, it's a former AOL contractor.
lfnik 3 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 3 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.
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.
robinwarren 1 day 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.

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.

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 :)
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.

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
Concours 1 day ago 0 replies      
Technews trends, what are we reading and sharing here: Techcrunch vs Mashable vs Readwriteweb vs CNN vs Techmeme


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.

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?


tilt 1 day ago 0 replies      
(Cross-post) There could be a spike in HN Trend's traffic http://twitter.com/#!/timoreilly/status/82824209721597952
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
franze 2 days ago 0 replies      
swah 2 days ago 0 replies      
Is it normalized against the growth of the website?
wvanwazer 1 day 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 1 day ago 0 replies      
tomp 2 days ago 0 replies      
false 2 days ago 1 reply      
I asked it about ios and android and it broke :(
pavpanchekha 1 day 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
johnx123 1 day ago 0 replies      
From where HNSearch is pulling data? Do we have any dump for HN?
ysh4u 2 days ago 0 replies      
This is really great!
teddytruong7 2 days ago 0 replies      
this is great, awesome how its so fast.
rwebb 1 day ago 0 replies      
LulzSec: Why we do what we do pastebin.com
321 points by ssclafani  4 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 4 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 4 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 3 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 3 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 3 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

Firefox 5 is now officially released mozilla.com
315 points by smash  11 hours ago   165 comments top 27
tzury 9 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 9 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 9 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 10 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.

lux 7 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!
andrewheins 11 hours 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.

atacrawl 11 hours 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.

angus77 4 hours ago 0 replies      
Next time could we get a link to the list of changes rather than a download page?
vessenes 11 hours 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.

getsat 10 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.
ineedtosleep 7 hours ago 0 replies      
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 ;)

falava 10 hours ago 1 reply      
Mozilla, just call it Firefox, and make it always updated to the last version.
tnorthcutt 8 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...

chrisjsmith 11 hours 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.
typicaluser 9 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.
meow 6 hours ago 0 replies      
I hope glow.mozilla.org will be back. I really loved watching those download numbers fly by :).
mikecane 10 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?!
uses 6 hours ago 0 replies      
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.


c4urself 11 hours ago 1 reply      
Is FF planning on coming out with a auto-upgrade system?
Klinky 11 hours 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.
tyng 10 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

peapicker 6 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.

theycallmemorty 10 hours ago 1 reply      
App tabs seem like a pretty cool feature.
methane 7 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.
SkyRocknRoll 8 hours ago 0 replies      
Thmbs Up Mozilla Team !!
egb 11 hours ago 0 replies      
Still no flash auto-update like Chrome? Then I'm still Chrome-y!
Fish don't know they're in water sivers.org
308 points by sahillavingia  1 day ago   109 comments top 18
brianwillis 1 day 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 1 day 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 1 day 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 1 day 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 1 day 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 1 day 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 1 day 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 1 day 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 1 day 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.
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
happypeter 1 day 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?

philthy 1 day 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 1 day 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 1 day 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 1 day 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 1 day 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 5 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 5 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 5 days ago 0 replies      
Generalizations are an anti-pattern.
kunley 5 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.
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.
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 5 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 5 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 5 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 5 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 1 day 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 1 day 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 1 day 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  4 days ago   80 comments top 20
ihodes 4 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 4 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 4 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 4 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 4 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 4 days ago 1 reply      
I'd really like to hear about pg's gripes with TechStars.
qF 4 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?

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

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

Reporter: What kills young startups?

PG: The back button


natural219 4 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 4 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 4 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 4 days ago 0 replies      
ironically, we ran into PG & JL downtown right after he did the interview. while we were lugging cinema displays...
known 3 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 4 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
265 points by davewiner  1 day 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.

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 1 reply      
Dropbox owes their customers a public explanation.
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.

crocowhile 1 day ago 0 replies      
Other people noticed this on the dropbox forum:
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.

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 1 day ago 3 replies      
I haven't tried to reproduce this yet, but if it's true, it's quite serious.
jontas 1 day 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.

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 3 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 3 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 3 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 3 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   32 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

spullara 1 hour 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:


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 0 replies      
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.

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 3 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 4 days ago 0 replies      
Amazing list. I am wondering how do you handle signatures
omouse 4 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  2 days ago   41 comments top 9
ScottBurson 2 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 2 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 2 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 2 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 2 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 2 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 2 days ago 0 replies      
seems like physical version of delicious to me :)
jamesgagan 2 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
233 points by Yrlec  1 day ago   140 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 23 hours 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 23 hours 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 12 hours 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 2 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 2 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...
CSS Lint csslint.net
231 points by nephics  6 days ago   72 comments top 25
telemachos 6 days ago  replies      
The About[1] page, which explains the linter's rules, should be more prominently linked I think.

I am very much an amateur at CSS. I know the basic rules (I hope), but I'm definitely not a designer or an expert. After running some CSS through the linter, though, and reading the About page, I have a few questions.

First: Why are IDs bad? The About page says:

>> Don't use IDs in selectors

IDs shouldn't be used in selectors because these rules are too tightly coupled with the HTML and have no possibility of reuse. It's much preferred to use classes in selectors and then apply a class to an element in the page.

I don't quite follow. Isn't the whole point of an ID that it is like a class, but unique? Why exactly would it be better to change all ids to classes with only one member? (I don't even see how that would be different, except for making it less obvious to me that they're unique.) Edit: the context about OOCSS which Jacobr mentions below helps explain this.

Second: Why is it so important that heading styles be declared in exactly one spot. Again, the About page:

>> Heading styles should only be defined once

Heading elements (h1-h6) should have exactly one rule on a site. CSS Lint warns if it finds more than one.

I ran into this because I had one ruleset for h1, h2, h3, etc. to make all the headings use the same font and color, but then I had distinct blocks for settings that I wanted to be different. (Example, I wanted the h1 to be larger and have a different bottom margin from h2 or h3. And so on.) I could easily duplicate things so that each set of rules was in exactly one block, but that would make the stylesheet less DRY.

(Edit - putting my cards on the table, here's the CSS I checked: http://ithaca.arpinum.org/css/screen.css. I definitely don't doubt it could be improved.)

[1] http://csslint.net/about.html

spc476 6 days ago 1 reply      
Curious. Running csslint.net's CSS through itself resulted in 65 warnings. I would expect them to use their own tool on their own code.
kenjackson 6 days ago 4 replies      
Using float for layout isn't a great idea, but sometimes you have to. CSS Lint simply checks to see if you've used float more than 10 times, and if so, displays a warning. Using this many floats usually means you need some sort of abstraction to achieve the layout.

Why is using floats bad, and what are the abstractions one would use in place of floats? Tables? Or grids?

benologist 6 days ago 0 replies      
The rules are too frivolous and personal-standards flavored, it's difficult to care enough to look for anything actually wrong amongst the ton of "I don't do it like this" warnings.
rorrr 6 days ago 1 reply      
It's useless, too many stupid or plain WTF rules, like

1) "Don't use IDs in selectors"

2) Most "Overqualified Elements"

3) "Broken box model: using height with padding"

calloc 6 days ago 1 reply      

    Heading (h1) should not be qualified.

Yes it should, especially if you are using HTML 5 and are using different heading sizes for different parts of your site... Otherwise an h1 in a header (tag) would look the same size as a h1 in an article (tag).

tjogin 5 days ago 1 reply      
The biggest problem with CSS today is that the source code is the product. One possible solution to this problem is to use SASS (http://sass-lang.com), thereby separating the concerns of the quality, structure, reusability (etc) of code from the aspect of browser rendering efficiency.

Many of the aspects of CSS Nicole is trying to improve with OOCSS/CSSLint simply vanishes when you use SASS (though some still stand). Some of the points as they pertain to CSSLint: https://github.com/stubbornella/csslint

Take for instance the issue of reuseability. Nicole's solution to that is less CSS selector specificity, to not use IDs, and to sprinkle containers with several modular CSS-classes. By using SASS functions, mixins and extends you can achieve that without doing either of those things.

I much prefer using SASS to manage my source code and the related concerns, without resorting to these kinds of sacrifices.

rbxbx 6 days ago 1 reply      
I know it's just picking nit, but seeing as that's basically the entire point of CSS Lint...
The entire library is in a single ~4700 line file with ~80 line long functions... Ugh.
mscarborough 6 days ago 0 replies      
During their presentation at Velocity today, they made the github project public:


ars 6 days ago 0 replies      
Well, that was impressive. 82 warnings, and every single one was wrong. This is not a useful tool.
igorgue 6 days ago 0 replies      
I don't see any reference to a CSS standard, for example pylint follows PEP 0008. This looks like the experience of a developer.
richard2me 6 days ago 2 replies      
I'm entering the CSS found on major websites. The following is a rough feel for how many errors and warnings csslint is detecting.

this page = 1 errors and 2 warnings

craigslist.css = 4 errors and 340 warnings

facebook's css files' = 0 errors and 140 warnings

google home page: 0 errors and 0 warnings

ebay = 0 errors and 64 warnings

Are these results meaningful? I don't know. Thoughts?

alexnime 6 days ago 0 replies      
Linting (where you're going wrong) without explaining why (you're going wrong) is one of the most pointless exercises ever.

Maybe too much attention put on aesthetics, less on code (nice start though)

spjwebster 5 days ago 1 reply      
Owing to the lack of options, this is only useful for linting CSS written by the authors or anyone who happens to agree with their opinions on what constitutes good CSS.

Crockford may be an opinionated cantankerous old goat, but at least he gives you options to dial down some of the crazy he's baked into JSLint.

* He's also awesome, but anyone who's worked at Yahoo! or glanced at the JSLint Issues list or Pull Request queue can attest that he has strong opinions.

Skywing 6 days ago 0 replies      
The rules that this tool follows appear to be based on the creator's own personal opinions. Personally, I'd advise against at least several of the rules.
BasDirks 5 days ago 1 reply      
"Don't use IDs in selectors".


I need my CSS fast, Ferrari fast.

I don't need toddlers to be able to have a mental model of all my style rules.

georgefox 6 days ago 0 replies      
width: x; padding: 0 produces "Broken box model: using width with padding." Same for height. Isn't it exactly the opposite of using padding?
spoold 6 days ago 0 replies      
"CSS lint found 0 errors and 0 warnings. How can you fix it? See the details below." Um, right. Whatever.
Hovertruck 6 days ago 0 replies      
Hah, I was just sitting in the talk at Velocity where they announced and open-sourced this.
dw0rm 5 days ago 0 replies      
I've been using paddings and left and right margins on inline elements and this tool tells me I can't.
Pistos2 6 days ago 0 replies      
An obvious next feature is to allow submission of a URL, and it parses out the linked stylesheets and runs itself on those. i.e. lint my site
alexwallace 6 days ago 0 replies      
Reading "JavaScript: The Good Parts" is an excellent crash course in writing decent JS but JSLint regularly ensures that you stay on the right track. Reading through CSSLint's guidelines, I agree with the bulk of it and am excited to have CSSLint keep my stylesheets on the right track. Hopefully an analogous TextMate "run csslint on save" bundle is right around the corner!
gue5t 6 days ago 0 replies      
It seems like this is useful in generating critiques of CSS for web pages in development, but user-style CSS (the primary sort I work with) has a different set of priorities that lead to selectors that seem to be considered poor style and warned against accordingly. It did point out several valid points I hadn't noticed and should fix, though.
bromagosa 5 days ago 0 replies      
I like it, but it'd be really nice if it linked each rule to some kind of explanation on why is the rule right.
piranha 5 days ago 0 replies      
Eh, command line output is a bit weird. Still, trying to get it work in Emacs... :)
The alternative Internet, WiFi based omegasdg.com
226 points by tawm  3 days ago   81 comments top 34
SMrF 3 days ago 4 replies      
This was my first startup. We were going to use wireless mesh networks to "bridge the digital divide" and provide broadband to the (at the time -- 2005) 40% of Americans in rural America that didn't have it.

I've always lumped this under the "too idealistic" startup destined to be a nonprofit. Rural America is broke, for the most part, and our margins were going to be razor thin -- even using commodity wifi gear. I only ever got one angel interested, mainly because they all thought the market was bad. We never really got it off the ground. Perhaps skipping the backhaul altogether, (like the linked article), would have made it viable. But honestly I'm not sure I could have sold faux-internet, which is what most people are going to think of this. As it was the only way we were able to get a town interested was to uncover grant money that would have covered most of the costs and let us subsidize prices (see non-profit thing above).

But there were other challenges. Mainly wifi is just not that great over big distances. And it's absorbed by water -- so trees are a big problem. Also one of the most requested apps was VOIP, and the latency on a mesh network makes VOIP kinda crummy. As we built out the financial model, we learned that there was a lower limit to the density of a community that would support a profit. It ruled out most markets. And to make matters even worse, when we did find communities that met our already ridiculous criteria we usually had problems finding a backhaul. For our pilot town we were going to create a point to point wireless connection over 20 miles from the nearest major population center. Yeah, we gave up, graduated, and got jobs.

It's also worth knowing that wifi in major urban centers doesn't really work. There just isn't enough frequency to go around, so the interference makes it pointless. At the time Clearwire (now just Clear) was buying up spectrum in city markets. I thought it was genius, but I always doubted the wimax standard would live up to the hype. I remembered we had a point-to-multipoint wireless 56K connection back in the mid 90's and that was shit. I figured things would get better, but the basic problem remains the same: you can only really jam so many connections into one point, and you need LOS. Of course cell phones seem to work fairly well, so I probably don't know what I'm talking about. But Clear doesn't exactly have a stellar reputation.

Alright, so here are some links to other mesh networking projects that have been around for a long time and have software that is actually deployed:

http://pdos.csail.mit.edu/roofnet/doku.php seems to be slightly broken, but working mostly)

http://www.cuwireless.net/ (interned here, really smart guys built this and they have a running network in Champaign-Urbana).

Also recently the feds opened up a bunch of spectrum, so I'm really hopeful about what we can do with it. 2.4 just isn't enough.

Edit: Highly recommend following @saschameinrath He's a genius and has been a champion of community wireless internet since the term was invented. He also started CUWIN.

runjake 3 days ago 1 reply      
I don't mean to be insulting, but this looks like it was hatched up by a high school teenager with no experience or skills in setting up metropolitan-scale networks, let alone a "second" Internet.

No security, & contrary to the webpage's claims completely touchable and jammable. Unless you had a ridiculous amount of wireless access points deployed, destroying one node would have a significant effect (again, contrary to what the webpage sees).

sliverstorm 3 days ago 1 reply      
If you're serious about global wireless mesh networking, you need to switch to different tech for inter-node links. Offer WiFi taps into the network to support the commonly available hardware, but use HF or VHF to link nodes.

Sure, the bandwidth will be really poor, but you have to make a few sacrifices, and the robustness of the network explodes as the range of each individual node increases. Besides, in that kind of doomsday scenario nobody will be using a darknet to watch Hulu.

scythe 3 days ago 0 replies      
It sounds really cool. The first question I'd try to address is to make sure the protocol is really up to the task, because if you implement this and it doesn't work...

Can a typical router running an ad-hoc wifi network like this really handle provision of Internet to an entire city, and furthermore, is the current 'repeater' protocol the most efficient way to do this?

One of the biggest structural problems with darknets is that of "necking", where one large subset of nodes is only connected to another large subset of nodes through a relatively small subset of nodes. Usually the problem is compounded by the the difficulty for nodes in either subset to discover each other in a network which attempts to be anonymous. Freenet and WASTE both encountered this.

The ability to automatically find Kleinrock routers within a certain distance of you might mitigate this, but it could also affect the security of the network.

dstein 3 days ago 6 replies      
For a mesh network like this to succeed there has to be a killer app built on the platform. And I'll tell you what it is -- a free wifi telecom network. A complete replacement for the telecom networks run by megacorps could be the technology disruption of the century.
willidiots 3 days ago 0 replies      
The major problem with this proposal is scalability.

"Repeater mode" is usually WDS or a logical client bridge+AP. This is entirely layer 2, has no routing, no useful path metrics, and is completely unsuited for a network larger than a few nodes if you want any sort of reliability/usability.

True meshing algorithms like 802.11s or BATMAN can optimize the mesh topology, but you're still on one huge broadcast domain. The proposal needs to establish a means to restrict the size of these domains - convert each node (or a subset of supernodes) into "routers", and roll out a routing protocol which is optimized to this type of ad-hoc, organic deployment.

The other problem with scaling (no matter what your meshing algorithm does) is the half-duplex nature of RF - if you're doing this with single-radio SOHO routers, you're going to lose half of your throughput per hop. I run two 500-node muni WiFi nets, and we try never to exceed 2 hops between a node and its backhaul gateway - any more and you're in the sub-1Mbps range on 802.11g rates.

Fix these problems and you may be on to something. Of course you also need to bridge geographic gaps somehow.

sbierwagen 3 days ago 1 reply      
Seattlewireless.net has been trying to do this for eleven years. Progress has not been enormously fast.
nextparadigms 3 days ago 1 reply      
I think Wi-fi mesh networks are the only way we can have close to fully decentralized Internet. Ideally the new "Internet" would work completely P2P from one user to the next, either from router to router or from mobile phone to mobile phone. But the technology will probably not be very practical this decade, but I could see it catching on in "niche" markets, like in oppressed countries, and then grow organically from there.
JoachimSchipper 3 days ago 1 reply      
Ignoring all the other problems: where is the uplink? Are you really going to try to get from, say, NYC to Mountain view over this network? (Nevermind crossing any oceans...
marcamillion 2 days ago 1 reply      
This is interesting...it's also something I have always thought about. Ever since the green revolution of Iran when the gov't shut down the networks, I had thought that the solution might be some sort of large scale mesh network that can be built en-masse.

The problem is, ok say we can get a mesh network using commodity routers within Iran up and working...how do the packets get out of Iran ?

Do you then setup mesh nodes/connections with the surrounding countries and then route traffic through their backbones ?

But what if those networks are also taken offline ?

I am not being sarcastic, but this is something that I have seriously thought about and haven't found a solution. If someone has a suggestion, that would be awesome.

Also, how do you build cross-Atlantic mesh networks with commodity hardware ?

i.e. say the underwater fiber cables to India are cut again, like they were last year or the year before, how does this system work in that case ?

maeon3 3 days ago 0 replies      
The alternative internet will take off like wildfire when the existing internet is locked down, and you can't do what you need to do on it. It's only a matter of time before we lose our Internet. We must make a new one that cuts out the middle man. If not then we will usher in a new era of slavery, and our children will curse our generation for allowing such a powerful instrument to be destroyed.
zokier 3 days ago 0 replies      
Wireless community mesh networks are really cool stuff. The problem I think is that there seems to be very little cooperation between different networks. Many seem to run completely custom/unique software/hardware/protocols -combinations. Of course I realize that this is quite bleeding edge stuff, so some experimentation and exploration is necessary. But I just hope that some day (not too far in the future) the necessary hardware/software -combination to connect to such networks would be commodity and for that we need standardization.

edit: http://en.wikipedia.org/wiki/Ad_hoc_routing_protocol_list

staktrace 3 days ago 2 replies      
Although I absolutely love this idea, I don't see it taking off without a critical mass of users (i.e. right now there is no Kleinrock router nearby that I can connect mine to). The only way I see this gaining critical mass is to piggyback it on some other device that people buy. e.g. build an open-source box that you sell to people, and that basically becomes your local email/calendar/webhosting/social network hub/file sharing/whatever server, and then hook it up to others who have bought similar servers. I feel that there's enough demand for that kind of a server now that people realize the pitfalls of having everything under Apple/Google/Amazon control. And if there isn't yet, there soon will be.

(Edited a few times for clarity)

venti 3 days ago 0 replies      
We also have a big community Germany that has been using wifi mesh networks and ad-hoc routing protocols since 2003: http://wiki.freifunk.net/Kategorie:English

Though all of these networks are very impressive, I don't think they can replace the big ISPs in case some one shuts down the Internet completely.

dcposch 2 days ago 0 replies      
Why not start simple? I would really like to see wireless mesh networks replace Comcast and co for last-mile connections. The backbone works fine, and there is plenty of competition among Tier 1 ISPs. It's the last-mile providers which are often abusive local monopolies (or duopolies).

That would solve a real, current problem and save consumers money, instead of trying to preempt the highly speculative possibility that our government would want to shut down the internet.

Also, just local wireless mesh has plenty of technical challenges. As other posters have noted, significant challenges stem from both sparsely populated areas (link distance) and densely populated ones (interference, spectrum limitations). There has been significant research into overcoming these limitations--see, for example, MIT's RoofNet and UIUC's CuWIN.

One project I think is especially interesting is Phil Levis' research at Stanford, studying full-duplex wireless. For the first time, they have nodes that can receive and transmit on the same channel at the same time. This (almost) doubles max throughput, but more importantly, it solves a lot of difficult interference problems (particularly the "hidden node" problem: http://en.wikipedia.org/wiki/Hidden_node_problem).

There's also a hard, unsolved software problem: how to route traffic effectively on a large mesh of unreliable, low-throughput routers. No existing routing protocol that I know of (RIP, OSPF, BGP, etc) is well-suited for this.

I would love to see a startup built around last-mile wireless. They could, for example, use commodity PicoStations along with high-gain antennas. The hard part would be nailing the business model and the software. Both are fascinating problems.

morphle 2 days ago 1 reply      
This was my third and fourth startup. Having failed twice by lack of funding I learned to do without and what people want.

Free anonymous internet you want to pay for: Ambient Connectivity.
After 20 years of hard work I am about to roll out a much more ambitious approach:

(1) free gsm for mobile phones in a square mile. (2) free Wifi for smartphones/tablets/laptops. (3) 'campus' network with your neigbours with 1 - 10 Gb/s ethernet links over optical fiber or UTP cable. (4) free shared storage of tv, movies, music. (5) end-to-end encryption and anonymity in the clients, not the network, no logon. (6) users buy the routers $100 ($1000 rural) and the 2-4 cables.(7) Open ISP sells 1000 Mb/s traffic at to pay for the backbone and the free traffic (1 Mb/s per user). (8) Open ISP can not control anything and proves this by allowing the community to audit their routers

A first-mile network with free mobile and wifi traffic on top of a 1-10 Gbps optical fiber (and UTP) last mile with an non-profit ISP behind it. Crucial is the $100 mesh router I designed, a 10 GBps optical 8 core router with wifi and picocell built in, capable of software radio with. We also use off the shelf DD-WRT and PicoBSD based $50 routers.
Without the cheap 10 Gb/s the community network will be too slow. We must compete with FTTH and the telco's. Stringing optical fiber over private property (farms, backyards, roofs, between appartements) is key to the freedom part.
This will be my fourth commercial internet provider, one is now big. merik@eigenglasvezel.net Co-fonders wanted.

morphle 2 days ago 0 replies      
This was my second and third startup. Having failed twice (no funding) I learned to do without. After 20 years of hard work I am about to roll out a much more ambitious approach:

Free anonymous internet you want to pay for: Ambient Connectivity.

- free gsm for mobile phones in a square mile
- free Wifi for smartphones/tablets/laptops
- 'campus' network with your neigbours with 1 - 10 Gb/s ethernet links over optical fiber or UTP cable
- free shared storage of tv, movies, music
- end-to-end encryption and anonymity in the clients, not the network
- users buy the routers $100 ($1000 rural) and the 2-4 cables
- Open ISP sells 1000 Mb/s traffic at $4 to pay for the backbone and the free traffic (1 Mb/s per user).
- Open ISP can not control anything and proves this by allowing the community to audit their routers

A first-mile network with free mobile and wifi traffic on top of a 1-10 Gbps optical fiber (and UTP) last mile with an non-profit ISP behind it. Crucial is the $100 mesh router I designed, a 10 GBps optical 8 core router with wifi and picocell built in, capable of software radio with. We also use off the shelf DD-WRT and PicoBSD based $50 routers.
Without the cheap 10 Gb/s the community network will be too slow. We must compete with FTTH and the telco's. Stringing optical fiber over private property (farms, backyards, roofs, between appartements) is key to the freedom part.
This will be my fourth commercial internet provider. merik@eigenglasvezel.net Co-fonders wanted to built a viral website and unix (routing) code.

morphle 2 days ago 0 replies      
This was my third and fourth startup. Having failed twice by lack of funding I learned to do without and what people want.

Free anonymous internet you want to pay for: Ambient Connectivity.
After 20 years of hard work I am about to roll out a much more ambitious approach:

- free gsm for mobile phones in a square mile
- free Wifi for smartphones/tablets/laptops
- 'campus' network with your neigbours with 1 - 10 Gb/s ethernet links over optical fiber or UTP cable
- free shared storage of tv, movies, music
- end-to-end encryption and anonymity in the clients, not the network
- users buy the routers $100 ($1000 rural) and the 2-4 cables
- Open ISP sells 1000 Mb/s traffic at $4 to pay for the backbone and the free traffic (1 Mb/s per user).
- Open ISP can not control anything and proves this by allowing the community to audit their routers

A first-mile network with free mobile and wifi traffic on top of a 1-10 Gbps optical fiber (and UTP) last mile with an non-profit ISP behind it. Crucial is the $100 mesh router I designed, a 10 GBps optical 8 core router with wifi and picocell built in, capable of software radio with. We also use off the shelf DD-WRT and PicoBSD based $50 routers.
Without the cheap 10 Gb/s the community network will be too slow. We must compete with FTTH and the telco's. Stringing optical fiber over private property (farms, backyards, roofs, between appartements) is key to the freedom part.
This will be my fourth commercial internet provider, one is now big. merik@eigenglasvezel.net Co-fonders wanted.

hackermom 3 days ago 0 replies      
In 2001 the fictive persona John Titor (http://en.wikipedia.org/wiki/John_Titor) described the Internet of his future just like this.
sixtofour 3 days ago 1 reply      
Depending on the country and region, this will only be regional networks separated by distance and non-connectivity, except where these networks tie into the Internet. Not to say it wouldn't be good to communicate with your neighbors or fellow freedom fighters, but I can't see it competing noticeably with the Internet.
anthonyb 2 days ago 0 replies      
Isn't this sort of thing already happening, and has been for a while? Here's the one in my city: http://www.melbournewireless.org.au/
hamoid 3 days ago 0 replies      
I don't see in that wiki references to similar projects, for example http://en.m.wikipedia.org/wiki/Freifunk which is used in areas of Germany. I heard the traffic in such networks can slow them down until barely usable.
NHQ 3 days ago 0 replies      
See here, in a democracy we can tell our federal government, which is made up of our citizens, and employs a good number of them, to build an "information interstate" system. Or even better, we can induce our states to build a federation of networks, and just keep that one less thing out of the federal 10-gallons.
vladoh 3 days ago 0 replies      
I don't think this idea has a real potential for several reasons.

You cannot connect the networks of America and Europe with a WiFi router, so you'll need some more serious hardware. This hardware should be maintained by somebody. And so you have the ISPs again.

In the moment only a geek can setup a Kleinrock router. Imagine your neighbor who can barely coupe with the simple task of opening "the Internet" (or "the blue E") setting up the router, installing and configuring a firewall.

I seriously doubt that home routers are enough for a bigger traffic than couple of computers. Just look what cheap pieces of shit the ISPs are giving now. Of course you can buy a better one, but that's not what the majority of people will do...

trout 3 days ago 0 replies      
To create another internet you need another medium. Today everything that is connected to the internet shares a physical cable or a short wifi hop to a cable.

Unless you want to build out an entire secondary network of cables (fiber, copper) there will not be a 'second internet'.

Their idea is to have the shared medium be airspace. This would almost be feasible with a ton of satellites, but not using peer-to-peer repeaters and ad-hoc networks.

Now - if you could figure out how to do communication over power lines through major power grids, you would be onto something. There are some household devices that can do this, but not between households.

mikemoka 3 days ago 0 replies      
a similar project was born in 2005 actually ... http://netsukuku.freaknet.org/?pag=faq
simon_weber 3 days ago 3 replies      
"Switch your router into open mode (no password or encryption)": I feel like the lack of encryption really needs to be addressed here. I'm not going to use a network where anyone on it can see my information as they pass it along, and I think many other users would feel the same way.
kgen 3 days ago 1 reply      
I'm not sure I fully understand -- what is the internet without the services that you use on it? If common sites like youtube and facebook aren't directly connected to this network, will this work? And if not, then what makes this the internet and not just an adhoc mesh network?
dasrecht 3 days ago 1 reply      
I simply love and embrace ideas like this.

But why creating something new when there are projects available like OpenWRT or DD-Wrt or Freifunk Firmware wich creates a Mesh-Network that works quite good? The only thing you need is standard Wi-Fi routers and those firmwares.

chrisjsmith 3 days ago 1 reply      
Warning: if the government decide to take out the Internet, that will be the least of your worries.
noduerme 3 days ago 1 reply      
That's pretty sweet, except that when "they" declare martial law (which this project assumes), why can't "they" bust down your door and take your routers? I mean, if they can come arrest you now for eating too much power with grow lights or bitcoin mining, don't you think it'll be pretty trivial to smash down any door with a wifi signal behind it, when the tanks are out in the streets?
littlebrother 3 days ago 1 reply      
Did anyone notice how this is similar to the Xnet proposed in the cory doctorow novel Little Brother. Actually this is exactly that but just not running on an array of XBoxes.
pavel_lishin 3 days ago 1 reply      
Reminds me of Daniel Suarez's Daemon and Freedom.
closedbracket 3 days ago 0 replies      
Paranoia. Maybe we could use dialup to some random number as backup. Oh wait, then they can tap the line. What if we launch our own satellite? Then, there's the Russians...maybe Osama isn't dead.
Show HN: roll.io eats txt files and shits youtube videos. Useful? roll.io
225 points by hafifuyku  4 days ago   103 comments top 57
ssdsa 4 days ago 3 replies      
I wonder why everyone seems to get what this does from reading the description. When I read "eat and shit", I assume that the "food" is "transformed" into ... youtube videos. So I thought this would generate new videos and upload them to youtube automatically, maybe showing the txt files as a huge StarWars scroller, or something.
mgkimsal 4 days ago 2 replies      
i misunderstood it at first. i thought you meant it would parse out a text file looking for meaning/relevancy and give you videos based on the text.

It's nice what you've done, just wasn't my first reaction to the Show HN text.

yellowbkpk 4 days ago 1 reply      
When I clicked on a "Death Cab For Cutie" video in the list I was shown a 50-minute academic video about search engine quality. Slightly ironic.
jaysonelliot 4 days ago 0 replies      
Once you get what it does, it becomes addictive.

I hope this idea stays as focused and bloat-free as it is right now, I just love it.

miguelpais 4 days ago 3 replies      
WOW! I had exactly this idea at a Hackaton festival called Codebits in Portugal in November last year and presented it[1] to the audience but didn't receive that much excitement from them about my implementation done in 12 hours using JS and Rails3.

Now I see I should have stick to it. Deep inside me I knew if the service would be useful to me, it would be to some other folks, but I was a bit disappointed and didn't correct the bugs that the project had.

Here is the website if you guys want to check:

[1] http://youtubemyplaylist.heroku.com/

It is buggy, sometimes doesn't change to the next video and it lacks the controls and the display of the playlist as this site does and it is a lot slower. It also lacks the upload of a text file. But I had other ideas in mind, the mode implemented was supposed to be the "feeling lucky" mode, where you just typed each video one per line and hoped it would match to the video you wanted, but you'd also have a way to create playlist more carefully by passing the exact urls of the videos you wanted, like this site does.

How do you overcome this feeling when you know you should have sticked to your guts?

Anyway, good work guys! This is exactly what I wanted.

p4bl0 4 days ago 0 replies      
YouTube's playlist management is a PITA, so this is really a great idea. And it's done following the KISS principle, kudos!
atacrawl 4 days ago 0 replies      
Definitely gets an upvote from me. Probably the neatest music site idea I've seen since the now-defunct Muxtape.
rmc 4 days ago 0 replies      
I was a bit confused at first. You should have more details on how it works
PaulJoslin 4 days ago 1 reply      
I really like this, I had a similar idea a few years ago with 'YouLink' - essentially solving the playlist problem of YouTube - but I didn't think of making such a simple and clean execution. Mine was more Youtube meets iTunes style - pre Spotify days.

Plus back then, bandwidth was not so great / YouTube often buffered causing breaks in the music. So I abandoned the project.

However Roll.io is a great solution, often I have the situation where I have a track listing for something that I can find individual songs for on youtube, but need to quickly make a playlist out of it, but don't due to the horrible youtube playlist interface.

This is especially true when it comes to 'Remixed' music where the songs have particular unique names. e.g. http://roll.io/#4fvjsj!0

Thanks for making it. The only request I would have would be to automatically remove or recognise track listing numbers at the start of the tracks.

E.g. if I copy a track listing I often have:
1. SongA
2. SongB
3. SongC
4. SongD

- It is a slight pain to manually remove the 1., 2., 3., 4. from the front and may cause incorrect matching on the songs if I leave them on.

rsbrown 4 days ago 0 replies      
Feature request: show the current playlist entry in the page title. I have your site running in a background tab and I want to quickly glance up and see the song name without switching tabs.
krig 3 days ago 0 replies      
A similar idea to the linked text file (not to roll.io itself) is http://www.tuneset.com/ disclosure: made by a friend of mine).

roll.io is awesome though. Just making and sharing lists of talks broken up in several videos, things like this.. I wanted this exact thing just yesterday without knowing it.

jannes 4 days ago 1 reply      
Do you think this would also work with Grooveshark? The problem with YouTube is that most music videos are geo-blocked outside the US, or at least for my country they are. (So are Pandora, Spotify, etc.) Furthermore I believe that Grooveshark's song library is bigger anyway, so it would be an improvement for everyone.

Grooveshark offers widgets, so in theory it could work.

johnrob 4 days ago 0 replies      
Mobile version please!!! (for my flash enabled android phone)

For some reason the page is very slow to interact with and type on while using my Motorola Atrix (supposedly a fast device). Ideally, the home page would have just a textarea and no video playing by default.

pclark 3 days ago 0 replies      
This is a great idea and your elevator pitch on hacker news is brilliant, except you should have said "text" rather than txt.

I assumed you meant you took a .txt file of text and extracted any and all videos from it.

"Show HN: roll.io eats text and shits relevant youtube videos. Useful?"

The proposition is so obvious you should just spell it out on your home page, like, have a text box with some pre-populated text and a big arrow that says "becomes" and then a playlist of youtube videos.

rsbrown 4 days ago 0 replies      
Huh. That was one of the quickest "how fuckin' stupid" => "how fuckin' brilliant" turnarounds my brain has experienced.

Nice work.

superasn 4 days ago 0 replies      
I had a similar idea for a winamp/itunes plugin a while back. Basically it turns your mp3 playlist a plays the music video of it from YouTube. You can find more about it here: http://techcrunch.com/2008/09/27/songrefernce-turns-your-mp3...
mrcharles 4 days ago 0 replies      
This is a great idea, and amazing for previewing new albums! However, sometimes when it fails to search and substitutes, it would be nice to be able to hand edit the playlist.
follower 4 days ago 0 replies      
A different approach for YouTube playlists I was introduced to recently: http://www.youtify.com/

More useful for building playlists on the fly rather than having a prepared list of songs as roll.io does.

retube 3 days ago 1 reply      
Apart from (annoyingly and without warning) playing the best matching track to your query/text line, how is this different from youtube search?
marcocampos 4 days ago 0 replies      
This is great. Congrats!
For me the killer feature is Grooveshark support :
karolist 4 days ago 1 reply      
Thanks for sharing, this looks useful, though not sure the shit mantra is necessary.
noob007 4 days ago 1 reply      
just thought of something else. It would be quite cool if we could direct roll.io to play files via url parameter. Say we want to play 3 songs. We could type something like this in a forum:


With '-' as delimiter or some other char/word

resdirector 3 days ago 1 reply      

Ability to enter in wikipedia track listing URL, e.g.: http://en.wikipedia.org/wiki/The_Freewheelin_Bob_Dylan#Track...

noodle 4 days ago 1 reply      
i'd like to see a list of most common songs. which is probably not simple to do per se, based on how this probably works, but i think it'd be neat to see, at least
zem 4 days ago 0 replies      
not what i was expecting (i thought it'd be some sort of programmatic generation of presentations that were then converted to video) but a very neat idea indeed.
johnrob 4 days ago 0 replies      
Excellent. I hope this doesn't go the way of atdhe.net. They built the equivalent of this, but for live sports video instead of music.
spydertennis 4 days ago 0 replies      
You should let people save playlists to a custom url. roll.io/bestplaylistever
swaraj 4 days ago 0 replies      
Holy shit, this is amazing. I'm really into electronic music, and when I am listening to new music online (youtube, music blogs, etc.) I don't always take the time to download songs right then. Instead, I simply record the artist and title in a txt file. I uploaded my electro.txt file to roll.io and out came a perfect playlist for all the music (~500 songs) I liked, but haven't downloaded.

This is awesome

chetan51 3 days ago 0 replies      
Suggestion: Have the option to switch the embedded YouTube player to an embedded Grooveshark widget for higher-quality audio.
tobylane 4 days ago 0 replies      
It's most useful if a) Always (settable option?) HD videos, b) uses less cpu time/battery/memory than playing the video (when hiding the video) c) youtube playlists.

Mostly b. Even on an imac youtube can take 10% of cpu I'd rather be used for something else, like a lagging game.

minikomi 4 days ago 0 replies      
Wow.. Did something similar for mp3s and markdown while back... http://texttape.heroku.com
ses 3 days ago 0 replies      
I wasn't sure about this when I read your tag line here but I have to say that is pretty nifty. I think its the sheer simplicity that makes it a pleasure to use, typing a bunch of song titles seems to actually be quite a natural way to get a playlist together.
hbz 4 days ago 0 replies      
I think it's useful and very well made. Nice job!
tnajdek 4 days ago 0 replies      
I love how simple yet functional it is. If I can suggest just a few minor things:

1. We have the 'hide video' options, can we please have 'hide list' option which makes video bigger?

2. Can we have the 'always select best quality' switch?

With these features roll.io would make it to my favorite music players list.

jannes 4 days ago 1 reply      
Very useful. I always wished for something like this.

I was a little disappointed to see that it didn't work on the iPad, though. The page just tells me (in grey text on a black background btw) that the flash player is needed, although embedded YouTube videos usually work without the need for flash on this thing.

zem 4 days ago 1 reply      
feature request: allow me to append to a playlist without resetting
noob007 4 days ago 1 reply      
very nice idea! would be nice if we could type out playlist in textboxes and then open them via roll.io so that those boxes are easy to emded in forums when someone wants to list out a few viddys without going to youtube to expressedly look & link for them.
kolinko 4 days ago 0 replies      
Wow, brilliant.

I'd love to read about the technology behind. It works well even on names I typed in in Polish.

bochi 4 days ago 0 replies      
Really nice idea. I have created something similar but I try to create a playlist for those who have last.fm accounts: http://lastvj.appspot.com
vld 4 days ago 1 reply      
Right, interesting.
Some problems tho: removed as requested
BonoboBoner 4 days ago 0 replies      
Awesome idea. Drap and drop upload oft txt files would be nice.
kraymer 4 days ago 0 replies      
I fed it with my lastfm charts, good job.

Empty lines are currently displayed and link to a random video. A quick improvement would be to just skip these empty lines.

sokolski 4 days ago 0 replies      
Nice. Doesn't youtube api have limits on number of requests?
kdeberk 4 days ago 0 replies      
Finally! A good replacement for radioblogclub. I was so unhappy when they took that down since it was my main source for discovering good artists.
matthewcieplak 4 days ago 0 replies      
Interesting. Seems like a less flashy version of instant.fm:
cjstewart88 4 days ago 0 replies      
I had a feature similar to this on www.tubalr.com, you could type in several bands and given a playlist.
peterwwillis 4 days ago 0 replies      
I have been using this all afternoon. Thank you.
jvoorhis 4 days ago 0 replies      
Quick, someone write a bookmarklet that posts tracklists from discogs
kri5 4 days ago 0 replies      
Great idea and very promising application. I've exported my favourite tracks via foobar2000 and last.fm statistics via softplaylist plugin (it creates XPSF playlist) et voila! my videoplaylist was created en instant.
c4urself 4 days ago 0 replies      
much better than youtube, clear and to the point, simple. great job!
pyUser 4 days ago 0 replies      
simple and great idea! vote up it is.
firatdemirel 4 days ago 0 replies      
it works & sounds great. but i'd like to close video part completely. also a browser extension could be nice for it.
mayk 2 days ago 0 replies      
it's very useful. good luck...
edshadi 4 days ago 0 replies      
LOVE it...I would completely use it and I got it from the first look!
schizophrenia 4 days ago 0 replies      
very clear and good idea, congrats guys
instakill 4 days ago 0 replies      
Voted up if only for the title.
csertoglu 4 days ago 0 replies      
firehose of a firehose. i like it. one day, there will be some semantic sense made out of this.
Pinboard.in service limited - FBI raided hosting company and pulled equpiment status.pinboard.in
218 points by rograndom  6 hours ago   74 comments top 17
idlewords 6 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 5 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 6 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 3 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.

thaumaturgy 2 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?

EwanToo 5 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 6 hours ago 5 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?
buzzmunk 5 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 4 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?)
shrike 2 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.
rubergly 5 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.
jarek 5 hours ago 0 replies      
Can't wait to read the write-up of that.
toddh 3 hours ago 0 replies      
If the data was replicated in N places would they serve all N places? Just curious how that works.
jvandenbroeck 4 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..

JeffDClark 3 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 5 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 6 hours ago 0 replies      
It seems civilian causalities will always exist.
PDF Reader in JavaScript github.com
217 points by swah  6 days ago   65 comments top 15
rdamico 6 days ago 6 replies      
At Crocodoc we tested out a similar approach using the Canvas element to render pages, but ultimately opted to go the @font-face route for a number of reasons, including:

- Near-instant client-side rendering (albeit a one-time ~5 second wait during server-side processing)

- Native font rendering (Canvas rasterizes all text and doesn't benefit from technologies like ClearType)

- Native text selection (which is important for overall UX and our annotation tools such as highlighting)

- Better performance on mobile devices (this is an ongoing project)

Here's a comparison of the test file micheljansen links to (thanks!) compared with the same PDF in Crocodoc:

- Canvas rendering: http://bit.ly/kU0mlW

- Crocodoc rendering: http://bit.ly/je2wcv

Edit: By the way, we're really impressed by this canvas implementation :-)

micheljansen 6 days ago 3 replies      
I couldn't find a demo online and was too lazy to deal with Chrome Local Policy madness, so I temporarily put one up here:

It has some obvious flaws, but it already works surprisingly well!

mbrubeck 5 days ago 0 replies      
Here's a blog post by the authors (members of Mozilla's graphics and JavaScript teams) explaining the motivation and direction of the project:


tiddchristopher 5 days ago 1 reply      
Typographic ligatures (character combinations such as ff and fi) are being displayed as gray rectangles in Firefox 4 on Windows 7.
ChrisArchitect 6 days ago 0 replies      
nice technology demo -- I like using google quick view for pdf reading...this is a nice alternative... dreaming up uses for it - immediate display and download of pdf receipts that sort of thing?
tomp 6 days ago 0 replies      
bnewbold 5 days ago 0 replies      
I've been having very good results with the Inkscape SVG renderer (inkscape -z input.pdf -l output.svg). Not pixel-perfect, but handles images and vector diagrams pretty well, and text is selectable/searchable.
This would be a server-side solution, not client-side.
neovive 5 days ago 0 replies      
Very interesting. Is there a performance benefit to using "const" instead of "var" to declare variables in JS?
Gerdus 6 days ago 1 reply      
Sweet. Scribd has an HTML5 document viewer so a PDF viewer is certainly doable. Maybe this will be included someday as a minimal PDF viewer in firefox.

Now all we need is a proper javascript printing api and almost all business application can be done in the browser.

bennytheshap 6 days ago 1 reply      
I think it's not just the Chrome local policy that's getting in the way, but that the code does an XHR request and I don't think any browser passes that through straight to the filesystem.
ChrisArchitect 6 days ago 1 reply      
speaking of google ..... so much for Chrome's built in pdf viewer..heh.
singingfish 5 days ago 0 replies      
Does this library provide the potential to extract the text out of the PDF for further processing?
johnx123 5 days ago 1 reply      
Correction: It's not "reader", but "writer" (rendering)

There are other libs out there:
WPS: PostScript for the Web http://logand.com/sw/wps/index.html
jspdf http://code.google.com/p/jspdf/

albb0920 6 days ago 2 replies      
Cant find a link to working demo, I'm just too lazy to git clone.
swah 6 days ago 7 replies      
I also hoped this submission could trigger a discussion about the code style.

This guy is a Mozilla contributor, probably what other posts mean when they talk about "great programmers", right?
Yet, for now, his implementation is a single 3000 line file.

[edited for alternate ending]

So there is this guy who writes a PDF viewer in a 3000 line file, and the guy who writes another simple web app neatly organized in 42 files... Which one would you want on your team?

I wonder how jslinux source code is organized.

I don't program in my spare time. Does that make me a bad developer? stackexchange.com
215 points by wrrice  4 days ago   145 comments top 46
reedF211 4 days ago 10 replies      
A good programmer should wake up at 6 am in the morning get a solid 2.5hrs of coding done by 8:30 am, at 8:30 leave for work, work till 6 (it goes without saying that the lunchbreak must be spent trying to learn the Haskell or if you are feeling lazy answering questions on stackoverflow). Commute from 6 to 6:30 (it's a bonus if you listen to a technical podcast during this time and no stuff like TWIT does not count, perhaps audio lectures from the Advanced Algorithms course on MIT OCW). 6:30 to 7:00 time for supper and excellent time to catchup on r/programming and hackernews. 7-8:30pm is the time for relaxation by doing some recreational mathematics, doing problems from project Euler and that proof from The Art of Computer Programming excercises which you have been itching to get a go at! 8:30pm to 1 am code contribute to that open-source project, write patches for the Linux kernal and continue working on your startup.

Anyone who does less programming that what is mentioned above cannot call himself a "good programmer", I would have serious reservations in calling that person even a mediocre programmer.

raganwald 4 days ago 2 replies      
Correlation does not equal causation. Asking whether not programming in your spare time makes you a bad developer is the wrong question. The right question is, What is it about certain/many good developers that leads them to program in their spare time?

Pursue that something and you may end up programming in your spare time. Or starting a company such that your side project is your job. Or finding something really exciting to do at your current job. Or whatever. In words much older than our civilization: "Do not follow in the footsteps of the Sages. Seek what they sought."

DanI-S 4 days ago 3 replies      
Unless you have a super-awesome job (and lots of people do), programming in your own time may be the only way to discover and play with new things. If you work backend at a C# shop but would like to start writing Ruby, you're unlikely to get the opportunity to learn unless you do it in side projects.

Practically, you may be totally happy in your current niche, but you're at higher risk from technological obsolescence unless you diversify.

This is as much an argument for '20% time' as it is for programming at home.

impendia 4 days ago 3 replies      
I am a research mathematician. I work hard, but I also spend a lot of time pursuing other interests such as yoga, swing dancing, and improv comedy. This takes away from the time I do math.

Does this make me less of a mathematician? Of course it does. This is a tautology. I am a mathematician to the extent which I devote my time and energy to learning and doing math.

Sometimes I feel guilty about this, but on reflection, this is a sacrifice I am willing to make. We only get one shot at life, and we have to balance all of the activities we find valuable.

unshift 4 days ago 12 replies      
when i'm working a 9-5 job, the last thing i want to do is go home and program more. i'd rather throw the ball around with the dog or rock out on my guitar.

in my experience the people who say "you have to have side projects to be a good developer" are either people who do program in their spare time, or people who want to hire the type of programmers who voluntarily chain themselves to their desk.

this is one myth i'd really like to see die. good accountants don't balance checkbooks in their spare time, do they? lawyers don't hold mock trials, doctors don't do surgery on their friends as side projects, and construction workers don't pour concrete for kicks on the weekend.

trustfundbaby 4 days ago 1 reply      
"Not programming in your spare time does not make you a bad developer, however, programming in your spare time can make you a better developer."


Just about sums it all up

Vitaly 2 hours ago 0 replies      
Short answer - yes.

But it's more complicated.

You are not supposed to do programmng all day long, but ifbyou don't feel a need to expand beyond what you do at work its one of the following:

1) you work is so great and diversified that you simply get all the programming you could ever need. For most people it's not the case
2) you are already extremely great. I think Linus probably doesn't need to learn yet enother language/framework (although I wouldn't be surprised if he does sometimes). For most people it's also probably not the case
3) you just don't like it that much

For most people that don't program at home (3) is probably the reason.

mirkules 4 days ago 2 replies      
I mentioned to someone that in my spare time I made iPhone games. They asked, "as a hobby or you trying to make money?" I replied that sure, I'd like to make a few bucks. He said to me "If you let your hobby become your job, what will you do for a hobby then?"

At that point, I realized that making a distinction between a hobby and a career path is a good move, and you have to know what you are pursuing. For example, I tinker with arduino in my spare time, as a hobby, and I don't intend to sell or make money off anything I make with arduino. There is nothing wrong in learning, say, Ruby in your spare time because you know that it will come in handy and that you could make money with it. But that's not a hobby.

Doing iPhone development (among other things) is my full-time job, and I am loving it -- mobile app dev was never my hobby, but a career choice, and I'm ok with that because I am happy at the place I work.

ohyes 4 days ago 1 reply      
Not programming outside of work is an indicator rather than a cause of 'bad programmer'.

Programming outside of work indicates that you like programming. If you are bad at programming you will not like programming, as it will be frustrating.

It also indicates that you are reasonably smart, probably get bored watching television, and are at least a little intellectually curious. If you are specifically programming something 'fun' to unwind after a long day of work, you are clearly comfortable programming, and you have interesting (enough) ideas about what to program.(It also indicates that there are no decent pubs within walking distance).

If you are programming in your free hours because some guy on stack overflow said 'this is what you must do to be the greatest programmer,' you are probably an idiot. No amount of outside work programming will help you.

modoc 4 days ago 0 replies      
No, but it probably keeps you from being a great developer.

I've worked with a large number of people at a large number of companies, and the difference between the solid "B" developers and the amazing "A" developers is that the amazing developers are passionate about technology and coding, and always have a side project of some sort going on. They are excited to learn new languages/frameworks/ideas and bring that added knowledge to their day job with great effect.

code_duck 4 days ago 0 replies      
I could see someone who only programs for work or school becoming a competent developer, and a good employee.

So, do you have to program for joy to not be a bad developer? No. But if you don't love what you're doing, it's unlikely you'll ever be great. People who are the best at anything reached that point through a combination of natural talent and vast amounts of work. Chris Broderick ( http://www.youtube.com/watch?v=xkpZ645ztl0 ) wasn't born this way... when everyone else was hanging out with high school buddies or going to college, he had a guitar in his hands 4-8 hours a day. Loving what you do is more powerful than desiring the rewards. If you love what you do, learning to do it better can feel effortless.

On the other hand, having a passion for a topic to the extent that it consumes your work and personal time isn't always a good thing. When you do it in lieu of things friends, a romantic life, spending time with your children or simply resting your mind, you may regret that later on.

16s 4 days ago 0 replies      
I'll preface this by saying that this is my personal opinion.

Github (and the like) are becoming prerequisites. You should have a portfolio of personal code you've done that you can freely share. Stuff you are proud of and passionate about (or not so proud of, but are deeply interested in) and stuff you want to learn more about.

Would you hire a wedding photographer without seeing personal samples and talking to them about their interests and opinions on how to photograph your wedding? You'll interview a slew of photographers who just do it to make a buck (and that comes through very clear), but you'll also find a few guys (and gals) who do it with a passion.

seanalltogether 4 days ago 0 replies      
It doesn't mean you are a bad developer, it means you are a satisfied developer. Some people however have so many things rattling around their heads that not exploring those ideas makes them unsatisfied.
MattGrommes 4 days ago 0 replies      
When I look at resumes and talk to candidates, seeing that they don't at least read about programming outside isn't an automatic no-go but as natch says, it's a red flag. I've worked with people who have no interest in programming, they just do it because it's what they do and they need a paycheck. Not programming or showing an interest outside of work is an indicator of this kind of person to me. Of course it's not 100% but it leads me to ask other questions to make sure they will want to learn. That said, there are plenty of corporate places that are perfectly fine with this kind of person, I just don't work at those places anymore.
keyle 4 days ago 0 replies      
I used to code the night away. Then be unable to sleep too excited about what I was doing.

Now I have a fiancee and we live an exciting new city (Brisbane, AU).

I've just outgrown it. I think both ways are normal. However, the dude that doesn't program during the day and yet paid to do so IS WRONG... Whoop, that would be me. Back to work!

lparry 4 days ago 0 replies      
Back in first year uni, when I felt like everything I was supposed to be learning was a bit of a walk in the park I'd program in my free time a whole lot. later in uni when I was swamped with engineering maths and compulsory management subjects I didnt program in my spare time at all (I suck at analog maths and ROTE learning so it sapped my enthusiasm to do anything in general).

when I finished uni and got my first job, I was back in the position of being given boring menial tasks and I programmed in my spare time for fun again. I left that job for something a lot more interesting and was quickly given enough responsibility that at the end of the day I didnt feel like programming so I didnt. After a few years there I'm on top of things at work again and I'm back to coding for fun in my spare time again.

I dont think that not coding in your spare time is a sign that you're a bad developer; it's more a sign that you're getting enough mental stimulation elsewhere. That said, I think if you've never coded for fun it's possibly a sign you're in the wrong career. You should love what you do enough that you'd do it even if you weren't being paid to do it; not necessarily the exact same work, but at least the same domain. No point spending 1/3rd of your waking life doing something you dont enjoy

andrewvc 4 days ago 0 replies      
It is very hard to push your skills forward without side projects. Do accountants balance ledgers in their spare time? No. But good ones do read up on their craft and push their knowledge forward off the clock. It just so happens that pushing your knowledge of code forward usually involves coding.
protomyth 4 days ago 0 replies      
I wasn't really interested if someone programmed in their spare time. I was more interested if they had written a program, at some point in their career, to solve a non-work / non-school problem or scratch a personal itch. I just wanted to know they had used their skills without outside direction. I always wanted people that saw their skills as useful outside the office / classroom.
wallywax 4 days ago 1 reply      
Programming in your spare time is much less attractive when your employer claims to own all the code you write.
natch 4 days ago 0 replies      
As an outsider (not being you), I would consider it a red flag, nothing more. Additional evidence would be needed to draw any conclusions.
Tsagadai 4 days ago 0 replies      
If you enjoy programming do some development in your spare time. Find a project that interests you. Programming is a tool, master it by all means if that is what you want. However, don't lose grasp of the fact that there are numerous other pursuits you can take up. Learn a language, build a house, learn chemistry, send a rocket into orbit, make an erotic film, excel in martial arts, whatever it is that you want to do, do it. Have a diverse range of experiences and regret nothing in life. Don't just be a developer.
msort 4 days ago 0 replies      
To continue coding in your spare time, you must have a real exciting project to work on: to learn a new technology, or to build something you really love. Without that passion, you won't have the extra energy to do that and it won't necessary to be beneficial.

So try follow your passion. If your passion is to write a novel, play guitar, do that. If your passion is to build a new web app, do that. Don't code just for the sake of coding. You cannot lie to yourself.

JonoW 4 days ago 0 replies      
No of course it doesn't neccessarily mean that. Like most things in life; it depends. If you feel that your day job is fulfilling your interest and happiness as a developer, I'd say you don't need to work on side-projects, you're probably learning plenty during the day.

But if your work gives you restricted oppurtunities to try new technology, or burdens you with outdated tech and boring work, working on a side-project can reignite your enthusiasm in programming, which can never be a bad thing for your career.

Also, theres nothing to say you need to spend huge amounts of time on a side-project, maybe a few hours a month just to try a few new things. Sure, you won't become an expert in those things, but you'll get a feeling of what it's about.

And choose something fun to inspire you, nothing is more mind-numbing that coming home to work on a side-project that actually bores the hell out of you.

younata 4 days ago 0 replies      
For my internship this summer, I actually write code!
I've found that I do little to no non-work programming during the week. However, I do spend a lot of time during the weekend programming.
sjs 4 days ago 0 replies      
It comes down to caring enough to do it right. You have to love it and be a pedant who pays stringent attention to detail. You can be smart and motivated but unless you really want to know why and how it all works and fits together it's hard to excel.

That type of person will always be reading and writing code and solving problems. Spare time and work time all blurs if you are focused on a problem.

ankimal 4 days ago 0 replies      
As long as you re learning, be it newer technologies, languages, frameworks, patterns or whatever it is that interests you most during work time, spare time, any time, you would always be a better developer today than you were yesterday.
lhnz 4 days ago 0 replies      
I think the idea that you must program in your spare time and contribute to open-source has a sociocultural benefit. It might be more 'pure' to devote all of your time to your fellow developers and improving your art.

Yet the quality of your work has nothing to do with the time you spend on it. Quality over quantity, as they say.

Either way, there is certainly some benefit to be had in being passionate about your work and in keeping on the bleeding edge of technology.

zwieback 4 days ago 0 replies      
Has anyone else noticed that doing totally unrelated activities outside of work often inspires programming solutions? Practicing a musical instrument or other creative activities seem particularly useful to put my brain into a state where solutions or at least new ideas come more freely. This seems more pronounced now that I'm in my forties and I couldn't code the night away even if I tried.
astrofinch 4 days ago 0 replies      
It occurred to me the other day that writing a lot of code might actually be a bad thing if it caused one to become bored with programming.
georgieporgie 4 days ago 0 replies      
Something I've noticed over the years is that my productivity and ability peaks don't correlate with time spent programming, but rather with time spent reading other people's code.
hippich 4 days ago 0 replies      
Nope. But coding in spare time make you better developer. And.. If you do not like coding - it's wrong career.. But who knows, code monkeys useful sometimes too..
biafra 4 days ago 0 replies      
For me it is the other way round. When I program in my spare time, I do it because I need a certain piece of software and no one else (I know of) is building it. I even switched jobs to become better at a specific platform because I was frustrated how slow I am programming for it only in my spare time.
themal 4 days ago 2 replies      
Most developers I know - in real life - don't program in their spare time, never mind going to conferences or evening meet ups. If you work as a developer and your hobby is developing then there's a good chance that you'll burn out.

That's not to say that it is bad for people who do it, just try to expand your hobbies to something outside of technology.

argimenes 4 days ago 0 replies      
I don't think it does necessarily, although it might be a symptom of lack of confidence or dissatisfaction with your work programming. I think having a broad range of interests - reading, playing music, drawing, socialising, sports - makes you a complete human being but programming for yourself, at home, should probably also be something that gives you joy. Rather than asking whether you're a 'bad developer' maybe start from the other end: 'What is preventing me from hacking at home? What spoils it?'

The other thing I recommend is to do the kind of programming that YOU enjoy and NOT the kind of programming that you think is necessarily 'important' or 'difficult'. All you need is that ONE opening, that ONE gap into accessing the joy of programming.

Fluxx 4 days ago 1 reply      
Sure there are programmers that don't program in their spare time that are great programmers, but I think the general theme is that doing side projects in your spare time is generally a strong signal you're adventurous, self-reliant, eager to learn, interested in broadening your skills and have a strong desire to get better -- all very important things in anyone hoping to get better at your craft.

When I'm interviewing people, side projects (especially successful ones) are _strong_ signals of a candidates value as a good programmer. This doesn't mean I won't want to hire someone without side projects, but candidates having them 90% of the time are very strong.

macournoyer 4 days ago 0 replies      
I've been coding in my spare time in and out since I got my first computer. I didn't do it because I wanted to be a good programmer, but because I love creating stuff and programming is the easiest way I know to create stuff. I'm not happy if I'm not creating something.

Also, a few months ago I quit my job and I'm now making a living teaching people what I've learned during my "spare-time". I now have more free time than I could ever imagine, and the notion of spare-time is starting to disapear.

notatoad 4 days ago 0 replies      
do you code for fun? as long as you do, it doesn't matter whether you do it at work or at home. if you can experiment with new technologies and learn new things at work, your skills are going to improve and it's probably healthier to spend your free time doing something other than coding.

if your work is drudgery where you are maintaining old stuff and it isn't helping you keep your skill set current, then you should be programming in your free time as well.

shaydoc 4 days ago 0 replies      
I find that the less time you spend programming, more time solutioning the better developer you become. reading and learning how other folk are solutioning is where its at for me. anyone can program, not everyone can design a good solution for a problem.

If you enjoy programming as a job, then in your spare time you allow for tech, take the time to read a couple of pages here and there. If you don't read or get exposed to other talented programmers/architects then yeah, you are destined to be a bad developer!

error 4 days ago 0 replies      
Yes, you are a very bad programmer!
just follow reedF211 advice to improve yourself, and be prepared to loose everyone around you.

good programmers do not have friends :)

and by the way do not forget to meditate on sarcasm, always make the other feel bad for being alive.

matan_a 4 days ago 1 reply      
Interesting post! I posted one not long ago saying the opposite. The reactions were staggering and felt the need to update my post to clarify my point.

Regarding your post though, i think that no one is assuming extremes - you can easily manage a few hours a month to do some mad science experiments. You might even surprise yourself with the outcome or renew your passion that made you take up development in the first place.

You also don't always get the full perspective in your day job - even if you work at an amazing place.

Development isn't a music skill. It isn't about repeating a piece over and over to train your mind, motor skills, and dexterity until you can reproduce it perfectly.

Every day people are pouring tons of new and interesting ideas into this discipline and more often than not, they have excellent ideas which can be shared and studied to your benefit. Take advantage of it.

karolist 4 days ago 1 reply      
Programming is my hobby. I work on a startup product in my spare time, one question I'm faced with - is it possible to balance corporate work, startup idea and have time for side (hobby) projects? If startup product is not my main task when out of work, is it a sign that the thing will fail?

I'd like to learn 3d, develop simple games, learn new languages and algorithms while still working on the startup product and maintain my corp job. Do you think it's possible?

dtreacy 4 days ago 0 replies      
No. Just means you write more code. If you spend that time learning different languages and design patterns, it can make you a better developer.
jonthepirate 4 days ago 0 replies      
Is there a site where programmers can post their side projects for the rest of us to look through? I am always working on a side-project... usually something built on Facebook platform. I'd love to see what you other hackers are working on in your spare time.
known 4 days ago 0 replies      
I don't stitch in my spare time. Does that make me a bad tailor?
johnx123 4 days ago 1 reply      
Yes, you're a bad programmer as you do it for earning.

Good programmer code if for satisfaction, contributes to open source, /., HN....

keeptrying 4 days ago 1 reply      
I'm sure that 98% of programmers who are of indian origin dont code in their spare time. They do it because its a good living and nothing else.

And a lot of them are good at what they do.

The Clock in the Mountain kk.org
209 points by michael_nielsen  4 days ago   36 comments top 20
te_platt 4 days ago 3 replies      
A much more interesting read than I was expecting. My first reaction after a few sentences was "What a waste of time and effort." Then just spending a few minutes thinking about what around me is more than a few years old kind of got to me. What around me is more than 100, 1000, 10000 years old? Where I live in Salt Lake there are hardly any human made structures older than 100 years, and none more than 160. The oldest building I've been to personally was in London, on the order of 1000 years old. It's humbling to think about how short of a span that is in human history. Almost disturbing to think about what I will do or make that will last 100, 1000, or 10000 years.

In 100 years I hope to have grandchildren who knew me still living.

In 1000 years it's a stretch that there will still be an accurate note of my existence.

In 10000 there may not even be a myth about the existence of any of us here.

michael_nielsen 4 days ago 1 reply      
I also recommend Stewart Brand's book about the (then-hypothetical) Clock: http://www.amazon.com/Clock-Long-Now-Stewart-Brand/dp/produc...

In the book, Brand argues that: (1) it's very difficult to have a general conversation about the 10,000 year future without descending into vapid generalities; but (2) with a concrete engineering goal like building a clock, it's possible to have much more focused and interesting discussions.

The Long Now seminar series is also excellent: http://longnow.org/seminars/

jdludlow 4 days ago 1 reply      
I went in search of "what happens if vandals try to destroy the thing?" and ended up reading Bruce Sterling from 2000 touching on that issue and many others.


mturmon 4 days ago 0 replies      
A related, but more poetic, clock was done by the artist Tim Hawkinson in the early 2000s. It's a 24-foot long series of gears, driven by a toy motor. The last wheel rotates once every ~100 years.


This has been shown in several places, including in retrospectives at LACMA and the Whitney.

Tim's work has a homemade aesthetic.

To me, the piece is about the inspiration and the folly of engineering. We build these systems which have design elements that can last for 100 years. We plan for it as if it will really happen. But because we have such a tenuous understanding of made objects at such time scales, there's an element of hubris, folly, fore-ordained failure.

Another, quite different piece of Tim's is this minute bird sculpted from his own fingernail clippings:


jberryman 3 days ago 0 replies      
This is beautiful, wonderful, hopeful, and sad all at once. Stuff like this, the voyager probes... I dont know, really get to me.

I was also reminded of reading Asimov's Foundation novels in middle school.

And how about that solar synchronization mechanism. I mean Jesus, how amazing.

wpietri 4 days ago 0 replies      
Those interested should stop by the Long Now's offices in San Francisco's Fort Mason area. They have various pieces and prototypes there, as well as fun things from their other projects. It's first on my list of great places for nerds to visit in San Francisco:


ctdonath 4 days ago 1 reply      
Consider what wild theories may be concocted when knowledge of it is lost then rediscovered (a la "aliens built the pyramids!").
colson04 4 days ago 1 reply      
What an inspiring undertaking. I hope to visit the project when it is complete as it is only a few hours drive from where I live.

Favorite picture in the article: Stuart Brand standing in front of the 8-foot replica wearing what can only be described as a Tibetan Monk's robe / Snuggie hybrid. He looks like an old, very comfortable wizard.

Splines 4 days ago 0 replies      
I think it's fascinating that someone can construct something so long-lasting. It synchronizes itself to noon and powers itself using thermal energy. Amazing.
ColinWright 4 days ago 1 reply      
A meta comment - this is unreadable on my mobile. The nav bar or something keeps insisting on overlaying itself on the page, and I'm screwed. Most annoying.

Web developers have known for a long time that they need to deal with a plethora of browsers, and now mobile as well. I don't underestimate the difficulty, but please keep the mobile user in mind, and if you screw them, at least be aware you're doing it.

chernevik 4 days ago 0 replies      
Anyone seeking an intelligent speculation of how such clocks might work in human society should read Stephenson's "Anathem". Outstanding, if challenging stuff.
JacobAldridge 4 days ago 0 replies      
I was reminded of Doc from The Power of One. No spoilers- just a strong recommendation that you read this book.
killerswan 3 days ago 0 replies      
Given the roughly 1 million year species lifetime of typical mammals, and the fact that our descendant species are also likely to be quite intelligent, ten thousand years may only be a short time. :D
rimantas 3 days ago 0 replies      
Reading the description of the visit I got some strange and vaguely familiar feeling and only later realized that was the feeling I got playing Myst
minikomi 3 days ago 0 replies      
This is about as close to a universal notion of spiritualism as I can imagine... A very profound and moving project which has already touched me surprisingly deeply on the idea of what it is to be part of our society. Wow.
MattGrommes 4 days ago 0 replies      
I've been following design and construction of the Clock for years now and it's great to see such progress being made. I can't find them now but there have been a number of very interesting articles through the years looking at finding 10Kyear-capable materials for the clock, the process of finding/creating things to put into the chambers the clock will live in, etc. It's been a great process to watch and I look forward to getting to go see the clock when it's complete.
nazgulnarsil 3 days ago 1 reply      
I would have preferred that money going to sens. let's beat death, not build monuments to it.
code_scrapping 3 days ago 0 replies      
I love the idea, and hope that Siera Diablo doesn't have too many earthquakes. With all of it's size and robustness, it still looks like a fragile thing.
bartb07 3 days ago 0 replies      
This clock is the most inspiring thing I've seen in a long time. I love it... Which I could be part of it.

I think this project is like the opposite of Lulzsec (short term and hedonistic) ;-)

gnosis 3 days ago 0 replies      
"How do you become one of those time-conscious beings who visit and wind the Clock? Jeff Bezos has just launched a public web site, 10000-year-clock, where interested folks can register their desire to visit the Clock in the Mountain when it is finished many years from now. Bezos has said he will give some kind of preference to current members of the Long Now Foundation because the purpose of the Clock is to promote what the Foundation promotes: long-term thinking."

It's kind of sad that the clock is on private property and in the hands of some business man. It would be pretty pathetic if he tries making a profit from its operation, or tries to make it in to a theme park.

Jedberg leaves reddit reddit.com
207 points by kacy  4 days ago   89 comments top 13
blhack 4 days ago 3 replies      
IMHO, this is a major, major loss for reddit. Jedberg, I know you read HN -- you were a hugely important part of that community; any time there was about to be a user revolt, it seemed like a red-lettered Jedberg would pop up in the thread to calm everybody down.

I don't think you were technically a community manager (were you?) but you did a damn good job at it anyway.

kacy 4 days ago 2 replies      
He was employee number one and I think the last remaining link to the founding team (not sure). I've got a lot of respect for him, especially after meeting him in person when I toured the office earlier this year. His commute was over 2 hours each day, and he had to deal with all the scaling issues with amazon almost single-handedly, not to mention the Saturday nights that were devoted to keeping the site up.

I wish you the best, dude. Hopefully you'll join hipmunk! :-)

eggbrain 4 days ago 8 replies      
The biggest question I have is: why are so many people leaving Reddit?

Over the past few months, the site has grown continuously yet the people that have been the driving force of the site seem to be leaving just as the site is hitting its peak. What has changed?

starnix17 4 days ago 1 reply      
What are the odds he ends up at Hipmunk?

It's not mentioned at all in the post, but it seems like a lot of ex-reddit employees end up there.

staunch 4 days ago 2 replies      
From someone that spent years sysadmining very high traffic systems: Well done sir. Well done.

Been using Reddit since launch. Somewhat nervous that the new people running Reddit will get overrun by the corporate overlords now that they see the "hockey stick" traffic charts.

I can see some bean counter doing the math:

  Slap 4 teeth whitening ads on every page
= 4 ad impressions
* 1.2 billion page views
= 4.8 billion ad impressions
* $0.30 - $0.50 eCPM
= $17 - $28 million/year.

antirez 4 days ago 1 reply      
There is something sounding very wrong about that: the work of a sysadmin that is of value for a big site should never reach the point to be so stressful that you have to wake up on alerts too many times.

It may happen 4 or 5 days every year maybe, if it is worse than that then there is something wrong. It is not impossible that jedberg is actually leaving because that kind of condition is not good in the long time. But here the problem is, a better employer would fix the root cause instead of letting good people go.

I'm saying that as I think this happens in many places actually, and is a huge mistake. A lot of work and traffic should never turn into a nightmare for a few guys.

Hovertruck 4 days ago 1 reply      
Wow, I just watched him give a presentation on reddit architecture at Velocity yesterday. Shame to see him go.
wccrawford 4 days ago 0 replies      
While I'm not nearly so famous as he is, and the job wasn't either, I know how he feels... I had the same routine as him. Check things all day from the time you wake until you go to sleep, and when you do sleep, fear that you'll be woken up by a problem.

And I know what a relief it was when it was gone. It really does feel like a weight has been lifted from your shoulders.

fragsworth 4 days ago 1 reply      
4 years, I wonder if his shares just fully vested and he's been waiting for it.
ivanbernat 4 days ago 1 reply      
A guy with so much knowledge about running such a huge site probably has hundreds of job offers. Best of luck Jedberg, wish you all the best!
ohashi 3 days ago 0 replies      
What would you like to do now Jedberg?
fourply 4 days ago 0 replies      
i actually got a little teary-eyed about this. i know i'll "see him around" as much as anyone can in communities like these but it really is sad.
sidcool 4 days ago 0 replies      
Jedber will be missed.
ICANN Approves generic top-level domains icann.org
199 points by gert  1 day ago   136 comments top 23
tristanperry 1 day ago  replies      
Meh, I doubt it'll have any major effect.

The vast majority of TLDs that are introduced fail very quickly (.name, .biz, .pro, a range of ccTLDs whose country's citizens opt for the 'big 3' - .com, .net and .org - regardless, etc)

All that'll happen here - IMO - is that a few of the bigger names will waste $185k on their unique TLDs, realise that their users get confused by them (never underestimate the ability of big companies to misunderstand it's users..) and either switch back or stick ridgidly to using them with no positive effect.

So yep, I'm not too concerned about this. ICANN aren't a great organisation, and they seem to mainly bring out new TLDs to get more money.


nbpoole 1 day ago 3 replies      
I wonder who's going to register "localhost" or "mail"? ;-)

EDIT: There's a list of reserved TLDs that won't be allowed to be registered. It includes localhost (but not mail)!


(example and www have asterisks next to them because "in addition to the above strings, ICANN will reserve translations of the terms “test” and “example” in multiple languages. The remainder of the strings are reserved only in the form included above.")

Xuzz 1 day ago 2 replies      
How possible would it be for an individual to register one of these, assuming they had the $185k figure I've seen floating around in articles related to this? I doubt it would be a useful or smart investment, but I just wonder how theoretically possible it would be for someone (or a small company they setup, if ICANN requires that) to buy one for personal use (e.g., for myself, me.grantpaul or something similar). Edit: this appears to be impossible, according to the guidebook: "Established corporations, organizations, or institutions in good standing may apply for a new gTLD. Applications from individuals or sole proprietorships will not be considered."

Or, alternatively " could a (funded) startup buy one? E.g. could AirBnB buy .bnb and then have sanfrancisco.bnb direct to the relevant San Francisco AirBnB page?

michaelpinto 1 day ago 2 replies      
Maybe I'm just a hippy at heart, but that $185k really rubs me the wrong way. It's a step back to the bad old days of broadcasting licenses that only big companies can afford to buy " and given the stagnation of old media that makes me a bit glum.
trezor 1 day ago 2 replies      
The necessity of this, the price for which it is offered and all those other matters aside...

Iirc if you run your own DNS-server/bind-instance (for DNS lookups, not just responding to internet DNS requests), you have a options file which contains references to forwarders for all the TLDs.

How will managing new TLDs from a server/bind-perspective play out? Will there be a new, hidden ".global" TLD you can forward, or "default" forwarder you can configure to handle this?

Basically I'm not sure how this will play out with my bind-setup and if it will require any action from me as a server-admin, apart from "apt-get update". Anyone here have any inside info?

fletchowns 1 day ago 2 replies      
We might as well just go to an AOL Keywords system.
shii 1 day ago 1 reply      
Alright, who has the cash for .yc TLD? Let's do news.yc, paul.yc for all our yummy essays, apps.yc for applications, and search.yc for the purrfect HN search.

Srsly ICANN will make more bank than it ever has now.

tzury 1 day ago 0 replies      
if you used regular-expression to validate websites (and/or emails), you better be prepared.
ignifero 1 day ago 1 reply      
Anyone think it's a coincidence that ICANN does this just after plans are announced by major browsers to eliminate the URL address bar? Are they rushing to sell-off?

Also, what about the possibility of disputes? What if both Facebook and twitter want to purchase '.social'? Who will resolve the dispute and on what grounds?

jacques_chester 1 day ago 1 reply      
Losing the latin-1 restriction is a mixed bag.

The main advantage is that it's respectful to folks of other writing systems.

The main disadvantage is that unicode characters that look visually identical, but which are logically distinctive, will be inevitably be used for more elaborate phishing attempts.

Aloisius 1 day ago 0 replies      
From a purely marketing perspective, non-standard top-level domains (heretofore referred to NG AOL keywords) are a problem. If I see an ad for http://cameras.canon, I'm not sure I recognize that as a URL.

If your email address is joe@sony.electronics, I'm not sure people are going to understand it. Oddly, if it were just three character gTLDs, I think people would be fine by it.

Still, I want .local. That way I can break every Mac on the planet all at once.

emilis_info 1 day ago 2 replies      
First thought: will have to rewrite my email regexps...
danielsiders 1 day ago 0 replies      
Are we applying for .hacker or .yc? it'd be cool to be able to identify all yc companies instantly by domain.
aj700 1 day ago 1 reply      
Doesn't linking to icann's front page mean that nobody can submit it again without being sent to this item id?
vsearch 1 day ago 0 replies      
The question is will the consumer buy into any new TLD's?

Seems to me that this is in part just a mechanism for ICANN to setup new revenues for all concerned. And let's not forget with search engines trying to make you, the average consumer, forget about TLD's altogether it seems a battle is shaping between TLD's and the search engines.

pavpanchekha 1 day ago 2 replies      
I wonder what the process for getting a new one approved would look like. For example, would Google be able to say, hey, we've got a large online presence, can we have the "google" gTLD?

If not, we have problems like it being possible to continuously create new TLDs and domain-squat on google.whatever or such.

If so, well, that's interesting, I actually can't wait for Google's url to be http://google. Maybe one day even //google.

Good times, good times.

romaniv 1 day ago 0 replies      
This would be a good thing if new TLDs represented the types of organizations, e.g. .news, .reviews, .cars, .health...

I'm afraid the real TLDs will be either more random and meaningless or trademarked.

rhdoenges 1 day ago 2 replies      
So much for neat and clever url hacks. Now everyone can do something like del.icio.us or script.aculo.us. :(
mjy78 1 day ago 0 replies      
I'm going to miss the Chrome (IE9 too) combined search/address bar. No more will I be able to type in "haircut" or "bank" and have my browser know to kick off a search as there's no clear distinction from TLDs anymore.
panschk13 1 day ago 2 replies      
"The Board approved a plan to dramatically increase the number of Internet domain name endings [..] from the current 22, which includes such familiar domains as .com, .org and .net"

Where do those 22 come from? doesn't each contry have its own TLD?

ignifero 1 day ago 0 replies      
...Brought to you by ICANN(R), the organization that managed to make misspellnigs a viable business.
metaprinter 1 day ago 0 replies      
So for a few hundred thousand dollars I can actually buy clownpenis.fart ? Of course i'd have to hit the lotto first and even then saturday night live might sue me... maybe i should have gone into IP Law?
oinopion 1 day ago 3 replies      
Cool, they have just broken most of email regexps.
       cached 22 June 2011 02:11:01 GMT