hacker news with inline top comments    .. more ..    23 Jun 2011 Best
home   ask   best   8 years ago   
Ooops. github.com
1101 points by peteretep  6 days ago   237 comments top 49
chops 6 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 6 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 6 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 6 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 6 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 6 days ago 3 replies      
Here is the original bug report. https://github.com/MrMEEE/bumblebee/issues/123

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

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

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

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

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

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

jefffoster 6 days ago 2 replies      
I use the safe-rm (http://freshmeat.net/projects/safe-rm) package to help me avoid doing this kind of thing.
phaedrus 6 days ago 2 replies      
rm is like a knife where the handle has a sharp edge too...
JoachimSchipper 6 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.
yesimahuman 6 days ago 3 replies      
This terrifies me now of every single install script that refuses to run if not root.
mootothemax 6 days ago 2 replies      
This release fixes the install script; it no longer deletes the /usr directory in its entirety. But how on earth did this get through even basic testing? Absolutely shocking!
JonnieCache 6 days ago 3 replies      
While we're on the subject, has anyone successfully found/created a replacement for rm on OS X that moves files to the trash, but doesn't break the interface of rm for use in scripts?
Jach 6 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 6 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.

delinka 6 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.
shabble 6 days ago 0 replies      
I only recently discovered molly-guard:


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

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


hackermom 6 days ago 0 replies      
<rm -rfi> -i interactive mode man is here to save the day - now you can put up to 50% more blame on the end-user!
getsat 6 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 6 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 6 days ago 4 replies      
Is there a good reason why Linux doesn't have a recycle bin?
DenisM 6 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 5 days ago 0 replies      
1000 points really? This is on par with initial tsunamii news.
sambeau 6 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 6 days ago 0 replies      
The two sure fire ways to live a long and happy life:

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

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

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

    # rm -rf /path/to/^I

orenmazor 6 days ago 4 replies      
just tried to explain this to a few of my windows using coworkers.
TheEzEzz 6 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 6 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 6 days ago 1 reply      
That's pretty heinous, but deleting /usr shouldn't cause you to lose any irreplaceable data.
rektide 3 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

wladimir 6 days ago 0 replies      
Reminds me of some slackware install script back in 1999 or so, I think it was for the gnome documentation.

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

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

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

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

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

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

indrora 5 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 6 days ago 0 replies      
and it was 666 points a second ago. symbolic.
jcarreiro 6 days ago 0 replies      
I wonder if this is what the founders of github expected from "social coding"?
ltamake 6 days ago 0 replies      
That's quite a big bug. :/
yoyoyogi 4 days ago 0 replies      
glad it wasn't me..
danso 6 days ago 2 replies      
I hate languages with significant whitespace
Yhippa 6 days ago 0 replies      
Das ist nein gut.
malux85 6 days ago 0 replies      
OHHHHHHHHHHHH wow .... great link, passed around the office for a few laughs ... this is one of those heart sinking moments ....
gm 6 days ago 0 replies      
lol, f*ckups don't get any bigger than this
I'm the guy who bought 259684 Bitcoins for under $3000 yesterday bitcoin.org
651 points by wmf  2 days ago   311 comments top 50
kwantam 2 days ago  replies      
The poster makes some good points about the inconsistencies in Mt. Gox's handling of things, but it seems to me that he's ascribing to malice what is well explained by incompetence on the part of the person or people running the site.

The security practices are appalling, and their lack of clarity on the counter-party issue is damning. If I were Kevin---or, indeed, any customer of that exchange---I'd take my money and go elsewhere.

Still, it's pretty astounding how myopic the rest of the Mt Gox forum users appear. They're taking a situation that's beyond a doubt the fault of the Mt Gox admins and getting ready to lynch a dude who seems to have acted rather reasonably (intentionally not exploiting a known loophole to exceed the withdrawl limit, reporting his disposition immediately to the site's maintainer, et cetera).

haberman 2 days ago 8 replies      
The community that for months has been preaching the virtues of the currency nobody can control is suddenly arguing that a middleman should roll back a bunch of free-market transactions.

I decided a while ago that arguing against the "bitcoin has no problems" crowd was futile: people are too enamored with the idea to see problems like this until they happen.

wiredfool 2 days ago 3 replies      
So, There's something like 21 million bitcoin possible, and 6 million 'in circulation' now. A sell order comes in for 1/12 of total amount of outstanding bitcoin. And the system processes it, flashcrashes, and. 3) Profit, I guess. or 4) rollback.

That's something like what would happen if someone dumped 1 trillion USD onto a bond exchange. There are only a couple entities who could do this.

So how did 1/12 of the value in this ecosystem wind up in one account at Mt Gox? I'd have to think that it's likely an insider/early adopter. (or Mt Gox itself?) There's a limit on the number of entities who could amass that sort of 'fortune'.

sliverstorm 2 days ago 4 replies      
What on earth is all this talk about "attacks" and "rolling back the market"? This is how currency works; we've just been witness to one of the darker parts. Just because you don't like it doesn't mean it's not legitimate.

Even if it's illegal to manipulate the US Dollar, it is most certainly legal to manipulate the BitCoin, whose express purpose was to be wholly unregulated!!!

evgen 2 days ago 0 replies      
Reading through the forum posts is really quite illuminating. The childishness of the bitcoin miners/traders is understandable given the demographic that this system appeals to at the moment, but the stunning naivete and downright ignorance of the law that is on display from the Mt. Gox admins is the most remarkable thing to me. At this point I am expecting bitcoin to die not due to its inherent failures as a currency but due to the incompetence of the major bitcoin exchange.
johnzabroski 2 days ago 1 reply      
Very good synopsis by Kevin.

However, he has two technical mistakes in his post from a security perspective:

1) We don't know the attack vector. For example: If Mt Gox has a SQL injection vulnerability, then a sophisticated attacker will not waste their time doing a rainbow attack on a random user. Instead, if the account balance is not encrypted and the key kept secret, then the attacker simply needs to do a SQL injection attack that returns the account with the largest balance:

select top 1 t1.account_id, t1.balance from Account t1 order by t1.balance desc

Instantly, the attacker knows the largest balance. This automatically reduces the attack space. This is a standard trick attackers use to bypass even needing to guess a password.

2) Compounding this issue, it seems Kevin is right, the attacked account had a naive password susceptible to a rainbow attack. According to rumors, this attack was a pooled account that mediated all the assets traded on the exchange. This implies that MtGox used a password susceptible to a rainbow attack to secure the master account. To answer Kevin's question, what user would amass $8M in bitcoins and use a bad password? The system administrators. 0xDEADBEEF.

Postscript: I have never traded or owned bitcoins, or even signed up for an exchange. I just find the security breach fascinating!

lubos 2 days ago 1 reply      
he claims that $1,000 daily limit at MtGox is broken and you are able to withdraw as many times as you want as long as each withdrawal is under $1,000.

the most interesting part I think is that he was actually able to withdraw 643.27 bitcoins (much more than usual daily limit) when they were for around $1.55 each which means withdrawal limit for BTC was calculated at current market prices.

If this is all true, then hacker is probably banging his head against the wall now because he was likely able to steal millions without any hope being ever caught. or did he?

MtGox claims he got away with only $1,000 worth of bitcoins however if he took them out of the exchange right after the crash when their market value was around $0.01... oh well, there is something very fishy going on here. I suspect MtGox doesn't have enough bitcoins to back their accounts now. If you see in upcoming days people complaining about MtGox not willing to physically transfer bitcoins back to their traders, it will be more than obvious.

sunchild 2 days ago 1 reply      
Sounds to me like the admins at MtGox are, at the very least, amateurish, and shouldn't be trusted with millions of dollars in escrowed funds.
brown9-2 2 days ago 1 reply      
Why would anyone keep $8,000,000 USD in an account where you can only (according to the operator's "rules") withdraw $1000 USD a day?

It would take 21.9 years to withdraw the full amount of that account.

illumin8 2 days ago 2 replies      
This guy doesn't really have a leg to stand on. Just like when the flash crash happened on the real stock market, transactions are going to be rolled back.

One thing that has become abundantly clear from reading all of the comments on the Bitcoin forums is that the investing knowledge of most BTC traders is much less than your average equities, fixed income, or ForEx trader.

MtGox is a pretty low budget operation, but even a low budget operation isn't just going to let someone steal the equivalent of $10,000,000 USD and not reverse the transactions. It would be like your bank telling you "sorry, someone transferred money out of your account without your authorization, but we're just going to let them keep it because, hey, they won it fair and square by hacking your account."

(As I write this last line I realize there was recently a court case regarding this exact issue, ETF fraud, but it occurred over many days and the company had authorized an agreement that they would check their account balance daily for fraudulent transactions.)

nupark2 2 days ago 2 replies      
If there is real money in bitcoins, then there should be a real engineering staff running a real, secure trading platform.
juiceandjuice 2 days ago 1 reply      
"Every major exchange breaks trades. Too bad for you, consider yourself lucky if you don't get sued for the 643 btc."

I'd love to see how this would go down in the courts.

cpeterso 2 days ago 4 replies      
> Two months ago we migrated from MD5 hashing to freeBSD MD5 salted hashing. The unsalted user accounts in the wild are ones that haven't been accessed in over 2 months and are considered idle. Once we are back up we will have implemented SHA-512 multi-iteration salted hashing and all users will be required to update to a new strong password.

I'm quite surprised that a service with accounts holding millions of dollars would store passwords without salt or a stronger hash algorithm than MD5!

gte910h 2 days ago  replies      
A thief can't pass good title on stolen goods: If you buy a stolen item, it is not yours, it is still the original owner's. Doesn't matter if it's a bitcoin, a car, or a quarter.

The sale was not legit, it should not stand. The rest of the rollback is fuzzier, but on this gentlemans coins, a seizure should occur.


ISeemToBeAVerb 2 days ago 0 replies      
I think people trading in Bitcoin need to keep perspective on what they are actually doing, which is participating in an experiment.

No investor with a sane mind would consider Bitcoins a solid investment decision. Unfortunately, ideas like this tend to attract both extremely savvy people as well as a bunch of lazy people who would otherwise be lapping up "Make 10,000 a week with Clickbank" e-books.

There will likely be many more stories in the same vein as this one.

In my mind, the wealth of this discussion isn't who is right and who is wrong, it's the fact that we're recognizing the current faults in a new and ambitious system, in the hopes that we can make a better one in the future.

mbreese 2 days ago 0 replies      
If I were this guy, I'd have my attorney try to get an immediate injunction in place. It seems like mtgox is just making this up as they go.
blhack 2 days ago  replies      
This reminds me of a conversation I was having with a friend a couple of days ago about network affects. Once a system gets too big, the nice people that started it start getting screwed by the people who don't understand (or care about) the founding ideals.

The problem with a trading house like Mt. Gox is that some people assume that all of the players are altruistic (these "some people" being "me", somebody with a technical, non-financial interest in bitcoin).

What happened here is just natural selfishness: the person that executed this buy order knew that the market was crashing, and that something was going wrong, but decided to exploit it regardless.

Then trying to withdraw $5 million USD from Mt. Gox?

I guess it's just crowd psychology. "If I don't exploit this market, somebody else will!"

It's sad, and it's just my naivety showing here, but bitcoin looks like a nerdy sandbox from the outside (casually reading about it on HN); it's a place for crypto/economics geeks to play around with finance.

Of course it isn't, and the actions of this [very greedy] person demonstrate that.

So why do I want to use bitcoin? What advantages does it offer me over USD right now? Before seeing this crash for the last couple of days, it felt like the advantage was that bitcoin users were mostly geeks, and mostly trustworthy. The regulation that bitcoin is avoiding is starting to look pretty darn appealing.

How stupid/childish of me is it to daydream about a world where somebody saw this crash happening, did exactly what he did (or maybe put in the buy order at exactly $0.02), held the bitcoins until the crash ended, then just gave them back to the sellers at cost?

swah 2 days ago 1 reply      
The stolen user hasn't reported until now, it seems. From one of the comments:

"It was definitely all our bitcoins that mtgox had in one account! I remember a few days before, people saying that some big bitcoin movements on bitcoin monitor were from mtgox, and the quantity being moved was around 400 000 to 500 000 bitcoins. No single user lost that quantity, it was our coins, from all of us!"

ersmith 2 days ago 0 replies      
What I find interesting is that everyone is saying what needs to be done when no one seem to be sure what really happened. The first thing that needs to happen is an investigation into what really happened (perferably by some outside party). At the same time Mt. Gox needs to undergo a security audit and overhaul as it seems like no matter what happened, they have some major security issues.

I also find it interesting that the person who supposedly initiated the trade has yet to be heard from. Their story would really help clarify things, not to mention that they have not been heard from yet makes it seem as if there is no such single user...

pash 1 day ago 0 replies      
Canceling trades disincentivizes traders to fill the dry side of the order book during a liquidity crisis.

That alone makes cancellations bad policy. If you're worried about so-called erroneous trades, you should disallow market orders; make all traders provide an explicit buy or sell price and there is no such thing as a bad trade except in the event of systems failures.

marckremers 2 days ago 2 replies      
"If I had to store that much there, even temporarily, I would use a password so long it would make War and Peace look like a Twitter message." - Brilliant
alvarosm 1 day ago 0 replies      
You should have moved the coins out. Now they're reverting the trades because the alternative is accepting liability for their awful security (which is probably, well, still awful). Bitcoin trading is the wild west, if you behave like Jesus Christ you're just going to get nothing out of it. What I mean is that in such a risky business you shouldn't feel guilty ripping people off, they had it coming after all, it was their choice.

UNLESS, of course, you're having second thoughts because you're related to the hacking and backed off when you got nervous, seeing how far the prices went down and how the massive buy order did manage to go through... just a possibility, no offense. The fact that you gave them your id and didn't behave like a shady guy is irrelevant as long as it's impossible that you be proven guilty, in fact that's exactly how the clever shady guy should be behaving... like "not guilty", because money is usually traced in the end, and you want to look like a saint when that happens. So, their position about contacting you is perfectly reasonable and natural; to them you might be related to the hackers anyway and anything they say to you (nothing they could say would be good- a conversation with them would be full of unanswered questions) is likely to end up in a public forum. Not good pr.

drivebyacct2 2 days ago 0 replies      
Sounds like a good reason to be as anonymous in your interactions with mt.gox as you are with anything else when using BitCoins (no judging here).

If I was on a public IP, it'd be very hard for me to not sprint with that much coinage.

RockyMcNuts 1 day ago 0 replies      
sure seems like the best of all possible worlds... a currency based on nothing of tangible value, no central bank to try to keep it stable and stem panics, no real economy or legal infrastructure behind it or army to protect them if they existed, transactions easily traceable (even reversible), prone to speculative fever and vulnerable to security issues.
danssig 1 day ago 0 replies      
Wow, Mt. Gox sound like a bunch of criminals. Did everyone see the link (posted 2 or 3 times) where something shady happened before and they just moved jurisdiction so they couldn't be sued? I wouldn't be surprised to find out that they did this whole thing themselves to steal some bit coins.
kees 2 days ago 1 reply      
A bitcoin exchange is a shady business, no regulation exists. So it is a freespace for criminals and hackers. You hustle or you will be hustled. This guy should have made a withdrawal by any means. In the bitcoin business only your wallet file counts, the rest is just a big hustle. And please forgot that you're able to sue somebody over a bitcoin dispute.
muyyatin 2 days ago 1 reply      
Interesting, MagicalTux said earlier they would not rollback transactions of this type:


unreal37 1 day ago 1 reply      
The law clearly is on the side of rolling back the transactions. Just like Amazon.com can refuse to fulfill an order for an 50 inch LCD TV that was accidentally priced for $1[1], and a bank can withdraw money from your account that was accidentally deposited there[2], and just like the NYSE can nullify mispriced orders[3], its clear Mt Gox can legally do the same. Transactions can be rolled back and are in the real world all the time. It has to be that way, to maintain fairness in the system.

Do you think this guy deserves $5 million worth of bitcoins because of the work of a hacker? Uh no.

His rationalizations for his behavior are astonishing. Assuming he is not the hacker, he got caught up in the excitement of buying cheap bitcoins (as we all would have), realized after the fact he probably did something wrong, and through contacting Mt Gox and coming out to the community he was hoping to get away with at least some profits. He shouldn't be able to keep any of it. Sorry Kevin.

[1] http://www.amazonsellercommunity.com/forums/thread.jspa?thre...
[2] http://articles.moneycentral.msn.com/Banking/BetterBanking/B...
[3] http://www.thestar.com/business/markets/article/806459--regu...

Astrohacker 2 days ago 4 replies      
There are two sides to this story. Here is Mt Gox's response: https://forum.bitcoin.org/index.php?topic=20250.0
perfunctory 1 day ago 0 replies      
Regulating the exchange has nothing to do with regulating the currency. I don't see how exchange regulation contradicts the bitcoin philosophy.

Having said that, regulatory rules should not have retroactive effect.

jrs235 1 day ago 1 reply      
Has it occurred to anyone that the reason Mt Gox may want to rollback the transactions is because the account that was hacked belonged to Mt Gox or someone affiliated with Mt Gox???
ignifero 2 days ago 1 reply      
I wonder what's the next coin when people get bored of playing with bitcoins?
swah 2 days ago 1 reply      
Is there a place one can play with HFT (or just automated trading) in the bitcoin market?
Tichy 2 days ago 2 replies      
I don't see the problem with a rollback. Couldn't the legal users just redo all their transactions?

It sounds to me, as the first commentator on bitcoin.org says, that someone would like to keep their fat booty.

benedikt 17 hours ago 0 replies      
Since there is quite a bit of money involved one might wonder if someone is trying to profit. One could take this even further, put up his best tinfoil hat and ask how much control MtGox has or had over the market. Is that possible scenario?
charlesju 2 days ago 1 reply      
This is largely irrelevant. As long as Mt. Gox has the capacity to do option 1, the impacts of option 1 exist or should exist already.
napierzaza 1 day ago 2 replies      
TL;DR Bitcoins are possibly even more flawed than any other kind of currency. There is one person who controls the flow of Bitcoins and can unmake transactions it doesn't like.
noduerme 2 days ago 0 replies      
I don't think o' Kev needs to worry about Mt. Gox thinking he hacked their site. They know who executed the sale; it was them. I don't know why nobody mentions this, but it seems rather obvious that Mt. Gox just dumped all their own bitcoins and bought them back supercheap, apart from a relatively minor 500k worth that they can now "roll back" from his account.

I had a thread last week on HN where I was downranked severely for asking what mt. gox was, i.e. if it was a mountain, in what was a sort of snarky, derogatory tone (I'll admit it). I would like that thread upranked now thx.

elb0w 2 days ago 0 replies      
I work at the NYSE, anytime something like this happens there would be a roll back. You cannot have a functioning stock market without this feature it would be chaos.
nextparadigms 2 days ago 1 reply      
Didn't MtGox say they'll rollback all transactions from that time period, including the legit ones?
ZipCordManiac 1 day ago 1 reply      
That was a great read. If I was Kevin I would give the coins back and not do business with MtGox any longer. It's clear their systems are not secure enough to handle these kind of transfers. It wouldn't surprise me if MtGox was influenced by organized crime, they are in Japan and the Yakuza love these kind of quasi-legal schemes as of late.
swah 2 days ago 0 replies      
And then Authority came and forced him to give it all back...
bonch 2 days ago 2 replies      
What's with all the sudden HN coverage of these silly internet fun bucks?
rorrr 2 days ago 0 replies      
I don't get it. Who was did he buy the coins from at such a low price?
ignifero 2 days ago 0 replies      
I 've seen people spending even more on useless novelty items, so no big deal.
johnx123 1 day ago 0 replies      
I'm lost. Can somebody please brief what is bitcoin?
DiabloD3 2 days ago 0 replies      
As a Bitcoin forum moderator, I'm debating if I should nuke the thread, or move it to the comedy section
rick888 2 days ago 9 replies      
The problems here with Bitcoin come across as the same problems with piracy:

Bitcoin are just bits on a computer.

Just like piracy, when we copy bits from one place to another, is it really "stealing"?

Anyone that says "yes", better double-check their stance on software piracy as well.

cbpavel 2 days ago 0 replies      
how about buying some miles from wwww.getAmile.com ? :)
zbanks 2 days ago 2 replies      
Although I can completely understand why this guy (the sumbitter?) disagrees with MtGox's solution, I thought it seemed perfectly reasonable.

Even though MtGox never stated they'd interfere, being hacked is unexpected enough to allow some leeway with follow-up. If the flashcrash happened organically, I doubt MtGox would revert the trades.

Advice From An Old Programmer learnpythonthehardway.org
624 points by FraaJad  6 days ago   220 comments top 53
jdietrich 5 days ago 3 replies      
Once upon a time, I played poker for a living. The most important thing I learned was that the least important factor in how much I earned was my skill at poker. The most important skill was table selection, my decisions over which games to get involved in and who to sit next to. A close second was managing my resources, making sure I was playing within my financial and emotional means.

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

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

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

onan_barbarian 6 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 6 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 6 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 6 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 6 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 6 days ago 5 replies      
>Finally, I will say that learning to create software changes you and makes you different.

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

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

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

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

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

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

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

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

donaq 6 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 6 days ago 0 replies      
I just don't like when he calls himself an old programmer. He is only like 10 years older than me - oh, wait..
richcollins 5 days ago 1 reply      
mohsen 6 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 6 days ago 0 replies      
I think a craftsman is entitled to reflect upon his work and profession and not have that introspection be neat an clean for everyone else's consumption.

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

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

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

adsr 4 days ago 0 replies      
I found the discussion about domain experts interesting, as if there is no domains within CS. Wouldn't domain expertise in networks, machine learning, DSP, data bases, operating systems etc. be of any value.
jeggers5 6 days ago 1 reply      
This is a fantastic piece of writing. Was actually very inspired by it.
crasshopper 5 days ago 1 reply      
Oh please. You can't make as much money running a fast food joint and you will not be happier, unless that's in your blood. (I know one of the owners of a super-high-grossing KFC and have run a small business myself.)

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

brooksbp 6 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 6 days ago 1 reply      
"People who can code in the world of technology companies are a dime a dozen and get no respect."



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

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

rlobue 6 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 6 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 6 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 6 days ago 1 reply      
you're the man, Zed
rimmjob 6 days ago 1 reply      
zed shaw taught me python, cured my hemorrhoids and showed me a how to be a real man.
whalearmy 6 days ago 0 replies      
hah, well shit way to spoil the end of the book for me!
CedriK 6 days ago 0 replies      
I'm clapping my hands right now!
Good text :)
jhuni 6 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 6 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
526 points by senko  2 days ago   211 comments top 43
Matt_Cutts 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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.

markkat 2 days 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.

balloot 2 days 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.

derwiki 2 days 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 2 days ago 4 replies      
Except duckduckgo can't find my project and Google can:



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


tomlin 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 2 days 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 :
ThomPete 2 days 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.

Luyt 2 days 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.

the-kenny 2 days 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 2 days ago 1 reply      
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 2 days 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?
widget 2 days 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 2 days 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 2 days ago 0 replies      
Does hitting the logout button pop the filter bubble?
aghilmort 1 day ago 0 replies      
cfontes 2 days 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

tathagatadg 2 days 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?
Hisoka 2 days 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.
pilooch 2 days 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...
yhlasx 2 days ago 0 replies      
Personally, not convinced at all. Looks like saying "We are better because we cannot do it yet"
jerrya 2 days ago 0 replies      
How does duckduckgo.com compare with startpage.com?
m_feuz 1 day 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)
c4urself 2 days 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.
jlft 2 days 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.
KristianSerrano 1 day ago 0 replies      
Google should invite Pariser for an Authors@Google event with Cutts conducting the interview.
malaka 2 days 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.

Why I've built an alternative to Github codeplane.com
457 points by fnando  2 days ago   187 comments top 58
mechanical_fish 2 days ago 6 replies      
I don't understand this use case:

These projects are mainly side projects, or small freelance jobs I've done through the years, and I want to save them for posterity; who knows when I'll need them, right?

My solution to this problem is called tar. Just clone the Git repos to /tmp, tar up the results, and push the tarball to S3. Done. Archived for posterity for a few cents per month.

This isn't SVN anymore: It doesn't take special voodoo to host a repo. If nobody needs to push or pull from a repo, tar it up and archive it. If one person needs to push and pull from a repo, store it on that person's local hard drive (with backups, of course). If two people need to push and pull from a repo... Well, this is no longer an archive for posterity, this is an active project, and can the team really not afford to pay Github something like $5 per month per repo?

mrcharles 2 days ago 6 replies      
I just use bitbucket.org + Mercurial. More than enough for personal projects, or more, given that it's unlimited. The only limit is amount of users.

Switching to Hg was a bit of work, but I've actually learned to like it more than Git. Really though, it's the same kind of thing and I just use both. So I ended up at bitbucket for the same reasons OP built a new site.

My way was quicker though.

micheljansen 2 days ago 4 replies      
While I do agree that Github leaves space for a model like this, I think the value of Github is that it offers a great community and awesome toolset (online and offline). Then I read this:

"I also wanted to do almost everything from my terminal, so I built a CLI, that you can use to manage repositories, public keys and collaborators. For daily usage, you probably won't have to go to our web interface ever again, and that's awesome!"

And I think "that's what I have with Gitosis on my VPS" (Gitosis uses git to manage user accounts and keys, so it pretty much doesn't get simpler than that). Companies pay for Github for the tools, developers who use CLI are probably not that interested in forking $9 a month for something they already have. Just my two cents, but I wish you the best of luck :)

masnick 2 days ago 4 replies      
You can set something like this up on any VPS with gitolite (https://github.com/sitaramc/gitolite) pretty easily. gitolite lets you set up very fine-grained per-user/repo/branch permissions, manage your users' SSH keys, and gives you nice clean git@git.you.com:repo-name access to your remotes.

I've done this for myself with a $48/year VPS from prgmr.com specifically because I needed more private repos than Github could offer (my setup instructions are here: https://gist.github.com/1035834).

Granted, if codeplane.com existed six months ago I probably wouldn't have bothered with gitolite. It appears they do nice things for you like backups.

fizx 2 days ago 1 reply      
From another perspective, Heroku has unlimited free git hosting that happens to optionally serve webapps.
nicpottier 2 days ago 1 reply      
Github's pricing model really is a painpoint for little consulting shops. We drive next to no traffic and storage on there, but we do a few projects every quarter. Haven't quite outgrown our paid plan yet, but we will in a bit.

Just wish Github would revise their pricing to support peeps like us, I hate to use different interfaces. May choose to just archive things to codeplane until then, keeping things we are actively developing on github.

angrycoder 2 days ago 3 replies      
Maybe I'm not fully understanding this.. If I don't need the web interface and public code sharing, why would I use this verse getting a Linode instance and installing git there.
zck 2 days ago 0 replies      
It's Mercurial, not git, but bitbucket offers unlimited private repositories: https://bitbucket.org/plans
senthilnayagam 2 days ago 0 replies      
I run a services company. I am near my limit for 125 private projects with mega plan.

I have 100+ private repositories,with about 100 collaborators(many are my clients) and consume just 2.3 gb and pay 100$/month, about 15-20 of the projects are live/active, others are projects which have been delivered or on hold.

Organization as a concept was brought pretty recently on github, my account dates 2008, charging double for just that is not attractive.

I love github, they are coming with awesome features, but in terms of certain features many service firms need, a way to archive the project not counting them for active projects. github is lacking. instead of doubling the service plan every 6-9 months I am willing to give the competing git hosting services a try

arturadib 2 days ago 3 replies      
I think CodePlane is very cool, but it seems to solve a different problem than the one advertised on the blog.

To save my repos "for posterity" on Github without incurring a $100/month bill, I simply create a master repo (say old-projects/) with all my unused repos in it.

On the other hand CodePlane seems to be a great solution for collaborative work on lots of private repos. This can save big bucks.

I love to see projects like this. I hope it gains some traction and forces Github to change their business model to a more manageable per-GB price.

jamesgeck0 2 days ago 2 replies      
What does the UI actually look like? Is it just the list of repositories? I'd be more likely to spend money if there was a tour, or an example project I could look at, or an annotated example session with the CLI tool.
pdenya 2 days ago 4 replies      
Same feature set as http://repositoryhosting.com with a higher price point (they're at $6/month now for 2GB). They don't have a CLI or anything as far as I know but they do offer more storage space at $1/GB/month which is pretty nice if you just need a little extra.
programminggeek 2 days ago 1 reply      
Good for you for building this and then charging for it. There certainly is a place in the market for what you are doing and the price you are doing it.

Good job.

grandalf 2 days ago 0 replies      
This is a very desirable use case. For those who don't get it, I'd say the following:

- it's nice to use git for all the small side projects one creates, but putting all of them on github is crazy expensive if you like keeping your musings private (though not necessarily b/c you're committed to a closed source ideology :)

- the cost factor creates an incentive to misuse git (not using submodules where appropriate) just to save money.

- There are a lot of awesome Git UI programs that run locally on my laptop, gitk is one.

- FWIW his fills the niche between github and gist.

xbryanx 2 days ago 1 reply      
I am currently frustrated with Github's private repository hosting plans. When I switched from SVN to Git, what was initially one repository became six, because of Git's "you can't checkout part of a repo" philosophy. So now, I have to buy a fairly expensive plan even though my usage is pretty small.

Cheers, to you for adding some competition to the marketplace. I hope it provides some pricing pressure on Github one of these days.

kgtm 2 days ago 1 reply      
Is it really necessary to disguise a Linode referrer link using bit.ly in the homepage? I would be more inclined to click it if it wasn't masked...
flocial 2 days ago 0 replies      
I've always wondered about this. The real expenses are disk space and bandwidth. I don't understand how they can't just provide a space-based plan (oh yeah, that would cut into high margins).

It's a wonderful service and they've done so much to keep many open source projects from stagnating. They outshine SourceForge and Google Code by a large margin. Still, if BitBucket was git, I might migrate my stuff.

The thing is "social coding" isn't that big of a plus for your own private stuff. I definitely see value in a service like this.

edw 2 days ago 0 replies      
I hadn't gotten around to commenting, and I'm glad it took me a while, because while I first went to Codeplane and set up a trial account, pushed my Github private repos therem and downgraded my account from a paid to an unpaid account " thereby netting myself a free cheap beer a month " I went on to read some of the comments here, set up gitosis, and am now free of any sort of paid git hosting fees beyond my existing Linode virtualized server " upgrading my free monthly drink from a PBR to a Hendrick's martini.

Thank you, fellow Hacker News citizens.

gcb 2 days ago 0 replies      
30 day trial for a long term usage pattern?

give me free accounts with a few MBs and you have yourself a user base.

github didnt get that size with 9/mo plans...

sirn 2 days ago 1 reply      
Your blogpost mentioned using Git with Dropbox was too much of a hassle, could you elaborate why? I want to know since all my private repos are `git init --bare` within Dropbox directory, which works very well so far. What's the main benefit if I were to switch to Codeplane?
yakto 2 days ago 5 replies      
Anyone else happy with Assembla? 2GB, unlimited repos and users, source browser, etc.: http://offers.assembla.com/free-git-hosting/
brown9-2 2 days ago 3 replies      
The title of the page at www.codeplane.com is "Unlimited private Git hosting", yet it appears that you are limited to 2GB of repositories for your $9/month.

How is this unlimited? Are there other plans that you can sign up for? If so they seem impossible to find on the site.

veeti 2 days ago 0 replies      
Looks like a more polished version of http://repositoryhosting.com, which I'm using at the moment. Will definitely give this a try!
taphangum 2 days ago 1 reply      
I REALLY don't think that github's plan is unreasonable. I pay for it quite happily. But good on you for DOING something about how you felt
selectnull 2 days ago 1 reply      
One plan, one price seems like a good tagline, but what if a user needs more than 2GB? I guess you'll want to charge them more money for more space, and eventually will have more plans, or will charge per GB?

Btw, I like both the idea and execution. Good luck... :)

bad_user 2 days ago 0 replies      
I configured a Git server on my EC2 micro-instance and just use that.

I was a paying GitHub customer until I decided that I spent too much money on online subscriptions. But when I'll pay for a Git hosting service again, I'm going back to GitHub, as I'm still a happy user of their free account. GitHub rocks.

Sure, competition is good, but I don't get what codeplane.com is offering, considering that configuring your own in-the-cloud repository is so easy on a VPS (that you're likely to have anyway and be left unused to its full potential otherwise).

cool-RR 2 days ago 5 replies      
I think that anyone who complains about GitHub's price has gotten way too spoiled, or perhaps underestimates the amount of effort required to maintain a service of that quality and reliability. I find this to be another symptom of HN tunnel vision.
jarin 1 day ago 0 replies      
I just use Assembla for "dead" projects. Unlimited free Git repos, as long as you don't need any of the fancy management stuff: http://offers.assembla.com/free-git-repo/
trustfundbaby 2 days ago 0 replies      
More screenshots of the web interface (or a walkthrough video) would be nice.
rs 15 hours ago 0 replies      
There is http://xp-dev.com for unlimited repos as well
sktrdie 2 days ago 2 replies      
how do these startups get beautiful page designs? hiring those level of designers would require lots of $$ if you ask me.
comechao 2 days ago 0 replies      
The "one price" is an awesome feature for indie developers and small companies.
udoprog 2 days ago 1 reply      
I don't get it, why is setting up a private git repository on your own server a hassle?

Assuming you have ssh access (compacted for clarity):

  ssh server "git init --bare repo/project.git"
git clone server:repo/project.git

Am I missing something?

EDIT: mkdir superfluous

happypeter 1 day ago 0 replies      
Thanks for building a low cost alternative.

Here is my advice. What github looks charming to me is the wonderful service for free plan users. I think this is wise, build a huge audience, and then "out-teach" them to be their potential customer. Success comes after the fame.

jjm 2 days ago 0 replies      
Must admit I do like the price.
patrickod 2 days ago 0 replies      
Great looking product and very much like your way of thinking in assigning space and not a set number of repos. I'm a github user and have been for a while but such competition would make me reconsider in the future. best of luck with it.
rsobers 2 days ago 1 reply      
Fog Creek has a product called Kiln, which is like Github, but is based on Mercurial. It's very polished and has lots of great features that focus on private repository management (but has public repos, too).

It's free for up to 2 users. Unlimited repos and disk space.

js4all 2 days ago 1 reply      
I like the idea. If there is a niche for a git hosting alternative, you guys have found it at the right time. I wish you all the best.
tommoor 10 hours ago 0 replies      
Great idea, well executed - im sure you will do well!
whather 2 days ago 0 replies      
I would make the dotted homepage background a little fainter. It makes the text a little hard to read and I find myself squinting.
adharmad 2 days ago 0 replies      
I use rsync.net with git:

Works pretty well.

oceanician 2 days ago 0 replies      
I think this site is better value: http://www.svnrepository.com

However you may well have something on the keeping it simpler approach.

I'm very happy that more people are going to compete with github :)

kevinburke 2 days ago 0 replies      
Bitbucket offers unlimited numbers of repos for free (they only care about number of committers).
hunvreus 1 day ago 0 replies      
Interesting; I actually have an Github organization account for my company but I could definitely see myself using that service. I could easily Gitosis or Gitolite on one of my instances but tend to prefer focusing our sysadmin man power on our products and clients.
jvandenbroeck 2 days ago 0 replies      
The Github price structure might not be the best for this use case. But Github is simply the best to manage your repo's, I don't think this is going to change anytime soon.

It might be a better idea for Github to allow projects to be archived.

dlikhten 2 days ago 0 replies      
please note: slsapp.com already has features you ask for. You have lots of archive repos. You are allowed (even on free account) unlimited view-only repositories and they charge mainly by space/active repos.

However I still see the value in this service, and I like it.

atrain34 2 days ago 0 replies      
(honestly afraid to comment, but what the hell.)

i know its not git, but bitbucket (mercurial, same type of dvcs as github) has free private and unlimited repository hosting.

swah 2 days ago 2 replies      
Just curious... are you brazilian?
guivinicius 2 days ago 0 replies      
I'm using codeplane for quite a month ... it's really good.

I think the only thing i will miss from github, is the feature to view your code online.

j15e 2 days ago 0 replies      
I like repositoryhosting.com for 6$/month you get unlimited users/repositories and support for git, svn, hg
n9com 2 days ago 0 replies      
fyi - it's already been done few years ago, http://repositoryhosting.com/
shapeshed 1 day ago 0 replies      
Git is simple enough to set up with some basic unix skills and with something like gitosis you can manage access to repos. GitHub has added many more features and make collaborating super simple. Totally worth it IMHO. Git is not just Github though.
veyron 2 days ago 1 reply      
Is there a way to link this with a project management tool like basecamp?
tuna 2 days ago 1 reply      
I liked that I dont need to do this setup myself and that I can integrate with S3.
Limes102 2 days ago 0 replies      
Really beautiful and easy to use. Very impressed!
andrewnez 2 days ago 0 replies      
If your developers are spending more than 5 minutes a month managing, monitoring and looking after their repositories then you are doing it wrong.

Github's monthly fees are so much cheaper than the cost of your developers time and happiness.

Myths About Introverts jerrybrito.org
417 points by Teckla  7 days ago   188 comments top 46
dkarl 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 days ago 1 reply      
Why do we need this silly choice between being an 'introvert' and being an 'extrovert' and some fifty-cent words to hang around our necks with some attached activities we're supposed to like or dislike? I joke about how awesome it is to be "ENTP", but I don't really take that shit seriously.

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

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

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

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

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

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

Goladus 7 days ago 0 replies      
The definition of introvert is already so vague it's hard to take this seriously.
MetaMan 7 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 7 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 7 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_ 7 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 7 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 7 days ago 1 reply      
original, slightly more detailed article: http://www.carlkingcreative.com/10-myths-about-introverts
mcantor 7 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 7 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 7 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 7 days ago 1 reply      
What about ambiverts?
a3_nm 7 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 7 days ago 0 replies      
Pretty much describe me, and I consider myself an introvert.
john2x 7 days ago 1 reply      
Most of the explanations pretty much equate to its corresponding myth, more or less.

P.S. being a shy introvert sucks.

kenjackson 7 days ago 0 replies      
The thing that is interesting about introverts (of which I am one) is that they will often say very little in person. But in email will write a rant that goes off in 20 different tangents to ppl they've never met.
Hisoka 7 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 7 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 7 days ago 0 replies      
That's great - it's like a user manual for Me. If I wasn't such an introvert, I'd print it out and give it to everybody I work with!
mattiask 6 days ago 0 replies      
You know being an introvert or extrovert isn't a binary thing but rather a spectrum. If you want to find out how you are on that scale you can get do a Myers-Briggs personality test to get a rough estimate.

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

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

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

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

* There are no agreed upon definitions of the terms

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

* The terms cram too many sub-concepts into one

* False dichotomy

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

* Associated with a bitter Us vs. Them mentality

* The terms can make people feel defensive and closed off

* The words can be self-limiting labels

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

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

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

There's no script.

rokhayakebe 7 days ago 0 replies      
Cheap shot: "The loudest one in the room is also the weakest"
uniclaude 7 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 7 days ago 1 reply      
Why can't we all just get past labels and respect one another for who we are and act--there wouldn't be a need for this blog post if that was the case which is reason enough to try for that better future.
rapind 7 days ago 1 reply      
#1 Introverts are not introverts. It's a generalization and simplification that's more often wrong than right.
protagonist_h 7 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 6 days ago 0 replies      
vladoh 7 days ago 2 replies      
I think it will be very interesting to see a poll for introverts vs. extroverts. Unfortunately I don't have enough karma to create it...
known 5 days ago 0 replies      
Can introverts become good sales man?
Macro 7 days ago 0 replies      
So true!
MatthewPhillips 7 days ago 0 replies      
This is relevant to my interests.
JavaScript mp3 decoder allows Firefox to play mp3 without flash jsmad.org
402 points by phoboslab  5 days ago   94 comments top 22
RyanMcGreal 5 days ago 3 replies      
If imitation is the sincerest form of flattery, feature requests must be the next-sincerest. With that out of the way, I'd love to see:

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

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

Fantastic work!

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

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

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

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

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

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

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


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

chops 5 days ago 2 replies      
If the site isn't loading for you (I was getting nginx errors for a bit before it finally loaded for me), here's the github repo: https://github.com/nddrylliog/jsmad
ZeroGravitas 4 days ago 0 replies      
When does mp3 playback fall out of patent protection? I know people keep digging up new patents for popular standards but assuming Mozilla and like-minded developers put some effort into patent avoidance you'd think they'd be able to include native support for some subset of mp3 playback without too much patent trouble by now.
jensnockert 5 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 5 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 5 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.

scythe 5 days ago 1 reply      
Can this be made to work in Opera?
netnichols 5 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 5 days ago 2 replies      
How does this work? I didn't think JavaScript could read a file on a byte level.
pistoriusp 5 days ago 1 reply      
Would have been great if it worked on mobile Safari!
tomrod 5 days ago 0 replies      
Please get on this Grooveshark. I run Linux and your client runs so slowly.
aolnerd 5 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 5 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 5 days ago 1 reply      
First HTML5, now JS? Looks like everyone's trying to make Adobe obsolete.
bartl 5 days ago 2 replies      
Does nothing on Firefox 3.6.x
jovrtn 5 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.

evanrmurphy 5 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  5 days ago   113 comments top 28
aresant 5 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 5 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 5 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 5 days ago 5 replies      
There's nothing unique to AOL here. When I first got out of college, I interviewed at local newspapers up and down the east coast. Entry level jobs had awful pay, about $15K/yr, but it was a chance to break in to the business.

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

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

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

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

“Not really,” was the reply.

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

kylelibra 5 days ago 1 reply      
Alec Baldwin was the celebrity in question referenced in the article in case you're wondering.
MatthewPhillips 5 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 5 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 5 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 5 days ago 0 replies      
AOL's plan to "beat the internet" with a content farm isn't working out so well yet?
earbitscom 5 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.

brown9-2 5 days ago 1 reply      
Does anyone think that AOL's model here actually stands a chance of succeeding? Who wants low-quality, crap content?
lefstathiou 4 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.
wallywax 5 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 5 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 4 days ago 0 replies      
"AOL has a plan. The plan involves the future;"

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

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

mckoss 3 days ago 0 replies      
Why are advertisers paying $9 to $20 CPM to AOL when they generally pay a tiny fraction of that to advertise across most web sites and on Google?
mihar 5 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 5 days ago 0 replies      
Actually, it's a former AOL contractor.
lfnik 5 days ago 0 replies      
As I as reading this I thought how eerily familiar to Huffington Post this sounded. Then I remembered who Huffington Post was sold to.
mikealle233 4 days ago 0 replies      
AOL's new "business model" is one Google algo change away from going poof. Clearly after Panda, Google is out to get rid of business models like this. Unfortunately they kind of suck at differentiating quality from non quality, but it's crystal clear they're trying.
afterburner 5 days ago 1 reply      
Side note: Lady Gaga is pantless everywhere. So, a good and safe choice of words.
Andi 4 days ago 0 replies      
Cocksuckers ...
nemik 5 days ago 0 replies      
:( Those poor old regular words. RIP.
mohsen 5 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 5 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.
Revolutionary "Light Field" camera tech - shoot-first, focus-later allthingsd.com
359 points by hugorodgerbrown  1 day ago   91 comments top 29
sbierwagen 23 hours ago  replies      
The downsides, which, of course, this press release doesn't mention:

- Greatly, greatly reduced image resolution. Great big dedicated-camera sized lens and image sensor, cellphone-camera sized pictures. 1680-1050, at most. (1.76MP)

- Color aberration. The microlenses have to be small, of course, so they're going to be made of single physical elements, rather than doublets.[1]

- Various amusing aliasing problems. (note the fine horizontal lines on some of the demo shots)

- Low FPS. Each image requires lots of processing, which means the CPU will have to chew on data for a while before you can take another image.

- Proprietary toolchain for the dynamic images. Sure, cameras all have their particular RAW sensor formats, but this is also going to have its own output image format. No looking at thumbnails in file browsers. Photoshop won't have any idea what to do with it. Can't print it, of course.

- - You can just produce a composite image that's sharp all over, but why not use a conventional camera with stopped-down[2] lens, then?

- It's going to be really thrillingly expensive. This is a given, of course, with new camera technology.

[1]: http://en.wikipedia.org/wiki/Doublet_(lens)
[2]: http://en.wikipedia.org/wiki/F/stop#Effects_on_image_quality

pgbovine 23 hours ago 1 reply      
FYI Ren Ng (the founder of this company) won the 2006 ACM Doctoral Dissertation award for the research that turned into this product:
schwabacher 22 hours ago 0 replies      
One awesome use for this technology is in microscopes! Instead of having to focus on each slide, slides can be run through much faster, photographed once, and interesting objects (like cells in a culture) can be found by processing afterwards.

And even cooler IMO, is that a display panel with proportionately sized microlenses can be used (after a little image processing) to recreate the light field for a glasses free 3d display.

ricardobeat 22 hours ago 1 reply      
I remember seeing this "news" years ago...

edit: here's the article from 2005 http://graphics.stanford.edu/papers/lfcamera/

The company that flourished from this research in 2008: http://www.crunchbase.com/company/refocus-imaging

And another startup already doing this for mobile phones: http://dvice.com/archives/2011/02/pelican-imaging.php

ggchappell 1 day ago 7 replies      
Very nice. But it leaves me wondering about a couple of things:

(1) Given the info captured by the camera, can we, without further human input, create an image in which everything is in focus?

(2) What the heck are these people thinking? Going into the camera business? That means that, in order to get my hands on this technology, I am stuck with whatever zillions of other design decisions they made. One product. No competition. No multiple companies trying different ways to integrate this idea into a product. And if this company goes belly-up, then the good ol' patent laws mean that the tech is just gone for more than a decade. <sigh> Please license this.


> Once images are captured, they can be posted to Facebook and shared via any modern Web browser, including mobile devices such as the iPhone.

Surely there must be a more straightforward, but still understandable to non-techies, way to say "the result is an ordinary image file".

DanielBMarkham 16 hours ago 0 replies      
Now just give me this in full stereoscopic, hi-res, for my cellphone. With video.

Of course (hopefully), that's version 4 or 5. This initial roll-out is looking great! Can't wait to play around with one of the units in the local photo shop.

Looking at the demos, I wonder what the depth-of-field is? Is it entirely calculable, or is it just a few feet and then the user sets the target? It looks like it is tiny, but I'm guessing it's set that way to show off the cool features of the technology.

ugh 12 hours ago 0 replies      
It's possible to buy a light field camera right now, for example from a German compamy named Raytrix (http://raytrix.de/index.php/home.181.html). I don't know whether they are the only example or whether there are other companies.

They don't name a price on their website (write them to find out) and, looking at the applications they are naming on their website (http://www.raytrix.de/index.php/applications.html), they certainly do not target consumers.

Here are their camera models if you are interested: http://www.raytrix.de/index.php/models.html

erikpukinskis 17 hours ago 0 replies      
Once it can capture high speed video of the light field, so that you can actually change the timing and exposure of each shot, as well as the focus... then we'll really be somewhere. Then you can just aim the camera, click the button some time shortly after something cool happens, and go back and get the perfect shot. Hell, capture a 360 degree panorama and you can even aim after the fact!
shadowpwner 1 day ago 0 replies      
The ability to focus afterwards is at the tradeoff of image size and quality, assuming they use a microlens array similar to the study located here: http://graphics.stanford.edu/papers/lfcamera/. However, this is cleverly marketed towards the social media crowd, which has little use for high resolution photos.
mortenjorck 11 hours ago 0 replies      
How closely is Lytro's method related to Adobe's Magic Lens demonstrated last summer? http://www.youtube.com/watch?v=-EI75wPL0nU
sajid 20 hours ago 0 replies      
Raytrix already have a plenoptic camera on the market:


MasterScrat 1 hour ago 0 replies      
I think some kind of Ken Burn effect with transitions between the different planes would make a good screensaver.
EdgarZambrana 23 hours ago 2 replies      
Imagine it being combined with technology that tracks your eyes motion, focusing the part of the image you're looking at automatically.
jianshen 22 hours ago 0 replies      
Looking forward, I see interesting applications of this tech in motion graphics and film. Where 3D movies have failed in forcing the user to focus on something, I can see this bringing photos and eventually film to life in ways that let the audience control more of what they want to experience.

On the motion graphics side, I imagine all kinds of creative potential in compositing photography together with procedural or rendered graphics.

gmatty 23 hours ago 2 replies      
I'm not an optics expert, but couldn't this be used to generate 3d depth maps? By stepping through each field depth you could find the edges of objects (by how clear they were at each depth) and map those edges onto a mesh. Effectively, doing what the kinect does but without any of the infrared projections...
sp332 23 hours ago 0 replies      
This is much more useful than a simple depth map, since it works with translucent and amorphous things like steam, and other things that are hard to model with meshes like motes of dust. Also, if you have a shiny object, focusing at one depth might show the surface of the object in focus, but focusing at a different depth would show the reflection in focus.
revorad 20 hours ago 2 replies      
This sounds very exciting. To play the devil's advocate however, on most of the example photos on Lytro's site, you really only need two points of focus - roughly near and far. Clicking on those two shows you everything there is to see in a picture.

If someone comes up with software to allow refocusing on two distance points with existing photos, they could eat Lytro's lunch. Can Picasa do something like this?

ralfd 17 hours ago 0 replies      
See also the discussion three weeks ago on hn:

There is also an (unrelated) iPhone App by the inventor for playing with depth of field:

mikecane 14 hours ago 0 replies      
Foveon was supposed to revolutionize digital photography too. Hell, there was even a book written about it.
epo 14 hours ago 0 replies      
Another Segway? Lets see if any reviewers ever get their hands on one.
humanfromearth 20 hours ago 0 replies      
Doesn't Magic Lantern already do this? I mean the Focus Bracketing shoots 3 (or maybe more) pictures as fast as the camera is able to do it at different focal distances. You just make sure the depth of field is wide enough to cover the distances between those points and you should have a similar effect.
benjoffe 21 hours ago 0 replies      
Combine this with eye tracking (to the level that my focal depth can be detected) and an automatic lens over my monitor and you'd have a pretty immersive picture.
dennisgorelik 21 hours ago 1 reply      
These guys clearly target investors money, not consumers.
1) Lots of hype long before the product is released.
2) Ignoring market trend (consumers prefer smartphone integration over picture quality).
3) Instead of focusing on refining and selling technology, they want to reinvent the wheel and produce their own camera.

I'd say that investors would lose lots of money on that venture.

romansanchez 14 hours ago 0 replies      
Props to the innovation, but in terms of reaching the consumer market I doubt the appeal will suffice for widespread reach. Even if it did, a licensing deal would be more appropriate just for the sake of them investing in the innovation which is what they're good at, not distribution.
clc 23 hours ago 2 replies      
This is a very interesting concept, I would be doubly interested to see this technology used for video in camcorders. However, I'm curious to see if they have the resources available to go toe to toe with Nikon, Canon, and Olympus. The camera industry is so competitive... and the life cycles on digital cameras are so quick nowadays. They may find it difficult to keep up.
SocratesV 14 hours ago 0 replies      
Didn't Adobe showcased the same technology in September 2009?

Of course they haven't delivered a consumer product with it yet... But neither has this company.

Let's wait and see...

jaekwon 21 hours ago 0 replies      
can this light field tech be used in reverse to create 3d holographic images?
DLarsen 22 hours ago 3 replies      
As a geek, I think this is totally awesome. As a casual photographer, I'm less excited. I've pretty much got the hang of focusing my shots as I'm taking them. Why focus later what I can focus now?
hdeo 23 hours ago 0 replies      
There may be an opportunity in 'doing something' with all the data collected ..
Show HN: HN Trends - like Google Trends, but for Hacker News jerodsanto.net
348 points by sant0sk1  3 days ago   106 comments top 45
solipsist 3 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 3 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 3 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 3 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 3 days ago 1 reply      
Very cool.

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



vijaydev 3 days ago 1 reply      


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

elsewhen 3 days ago 1 reply      
we may be in a bubble about talking about a bubble: http://hntrends.jerodsanto.net/?q=bubble
staunch 3 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 3 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 2 days ago 0 replies      
Hi, I created a similar tool using the search API, but with lniks to the top stories (by points) over time


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

foenix 3 days ago 0 replies      
An observation about geographies: http://goo.gl/4BUFL
arturadib 3 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.

ntoshev 3 days ago 1 reply      
Awesome work!

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

digitalnalogika 3 days ago 2 replies      
Nice work! I had the same exact idea for the contest and bought the hntrend.com domain 2 weeks ago, too bad I was too lazy to finish it :)
pvilchez 3 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.

kristopher 3 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 3 days ago 1 reply      
What the hell happened with Javascript in mid 2009?


kuahyeow 3 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
jamesbritt 3 days ago 0 replies      
Very, very slick. And now I can can graph my increasing time spent on HN :)


noduerme 3 days ago 0 replies      
Lol. According to HN, Chrome should be the world's top browser.
http://hntrends.jerodsanto.net/?q=safari%2C+firefox%2C+IE%2C... with "IE")

Great site by the way. Nice job.

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


cheez 3 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 3 days ago 0 replies      
Let us never forget the first great hacker news bubble.


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


csomar 3 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 3 days ago 0 replies      
tilt 2 days ago 0 replies      
(Cross-post) There could be a spike in HN Trend's traffic http://twitter.com/#!/timoreilly/status/82824209721597952
swah 3 days ago 0 replies      
Is it normalized against the growth of the website?
tomp 3 days ago 0 replies      
false 3 days ago 1 reply      
I asked it about ios and android and it broke :(
sdfjkl 2 days ago 0 replies      
wvanwazer 2 days ago 0 replies      
Awesome tool, but just a heads up: I tried searching for "C" and "C++", and it gave me the exact same line each time.
pavpanchekha 2 days ago 0 replies      
Is there any way to normalize by number of users? (Or am I missing something?
mikemoka 3 days ago 0 replies      
this is awesome, it would be a dream if advanced queries could be comparable though
ysh4u 3 days ago 0 replies      
This is really great!
johnx123 2 days ago 0 replies      
From where HNSearch is pulling data? Do we have any dump for HN?
teddytruong7 3 days ago 0 replies      
this is great, awesome how its so fast.
rwebb 2 days ago 0 replies      
LulzSec: Why we do what we do pastebin.com
321 points by ssclafani  5 days ago   178 comments top 34
trotsky 5 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 5 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 5 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 5 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 5 days ago 3 replies      
Why we do what we do: We're 15, unsupervised, and behaving badly.

Do they really need a manifesto?

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

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

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

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

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

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

saulrh 5 days ago 3 replies      
Might want to change the title to something like "LulzSec actually had a point after all." They do, too, an even better one than I expected. Not only are they making a point about how terrible security is ("Do you think every hacker announces everything they've hacked?"), but they've also called out the internet on its generally abysmal attention span. I wouldn't be surprised if they'd had this written on day zero.
edw 5 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 5 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 5 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 5 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 5 days ago 0 replies      
This thing must be fake. I thought they were doing it for the lulz.
bwaaa 5 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 5 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 5 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 5 days ago 0 replies      
This just reeks of arrogance
_emice 5 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 5 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 5 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 5 days ago 0 replies      
Any wall can be broken, but it doesnt mean that anyone who breaks a wall is a hero. What wonders me more why did China infiltrate the group ?
madmaze 5 days ago 0 replies      
I think we have found the LulzSec hacker manifesto.
floppydisk 5 days ago 0 replies      
When it comes to security, you run into IT departments being the red headed step children of the corporation and NIMBY (not in my backyard). It's a lot easier and cheaper to stick your head in the sand and pretend nothing is happening or you have some mitigating factor that discourages people from going after you be it size (miniscule for instance), participating in a niche market, etc. It's a lot easier and cheaper to do an ostrich than actually spend the money on decent security.
quark92 4 days ago 0 replies      
whatever is their excuse to hack companies it is illegal , it is a crime and should be punished .
if they want to pay attention for security, then they can establish organization and give away free courses about security and privacy in legal way instead of breaking laws and stealing people information .
black hat methods would never be agreed to improve security and privacy ..
Bertil 5 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 5 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 5 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 5 days ago 0 replies      
They need to bring in someone who can write without seeming like a 12 year old who grew up on 4chan.
sigzero 4 days ago 0 replies      
We don't care. Just stop please.
foysavas 5 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 5 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 5 days ago 0 replies      
Hey, if people really want a secure internet I believe the government would be more than willing to lock it down for us.

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

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

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

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

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

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

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

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

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

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

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

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

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

'That's it.'

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

I am from mainland China, a country boy actually.

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

philthy 2 days ago 0 replies      
Entrepreneurship is of course everywhere and all around us. Look how complex and developed of a black market we have here in the U. S. of A.
elbrodeur 2 days 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
erikb 2 days ago 0 replies      
The interesting thing about this lecture is, that it doesn't actually help you to see the "water". You maybe understand this fact theoretically. But without outside experience you will never know in which points you actually just follow a specific culture.

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

hboon 2 days ago 2 replies      
I was speaking to a business school class here in Singapore. I asked, “How many people would like to start their own company some day?” In a room of 50 people, only one hand (reluctantly) went up.

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

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

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


..Two generations behind.

est 2 days ago 3 replies      
And human don't know they see the fish upside down. To a fish, the ground is the water level. The fish belly is actually their back.
My Life as an Undocumented Immigrant nytimes.com
281 points by yarapavan  9 hours ago   187 comments top 21
nick-dap 6 hours ago 8 replies      
I'm in the same boat. It's been difficult. I cannot express how grateful I am to Jose Vargas for writing this story.

I was brought here as a kid 13 years ago. I'm 24 now. I also graduated from a "top" university -- like that matters. I guess my parents weren't smart enough to get a fake social security card for me back then, I wish they were. I've also been fighting for the Dream Act for what feels like an eternity. I made a site and still maintain it, have met with Senators, protested in front of the White House, several times, other things. I'm loosing hope. I lost hope in Congress long ago. I lost hope in this President in December, when he failed to stand by us and the vote. I don't have anything left to wait for.

I'm still "hiding," most of my friends have no idea, but I see less and less reason to do so every day. I just can't take it anymore. I'm worth _something_. I'm competent coder, and fuck it all, at least I got that, my mind, and my family.

Anybody who wants to debate the pros and cons of immigration reform can go to hell. I'm done reading the hate mail. I'm done debating. I am done listening to those masked bigots. I know what it is like to live like this having done nothing wrong. I know that I don't deserve the punishment. If we can't agree on the fact that I am American and should have basic rights, then we have nothing to talk about. I'm not asking for anything except recognition.

Btw, people who were brought here on fake documents, as me and Jose, can't get married for papers. So even if Jose wasn't gay, he wouldn't be able to adjust based on marriage. It's unfortunate that people who come here on student visas get married -- assuming they have enough money -- and have a green card in six months. People like me and Jose, homebred Americans if ya will, are forever tarnished with this inherited title. Hello, my name is "illegal immigrant." That's what I feel like every single day. Every morning in the shower, I utter the words "I am so fucking tired." And I am.

haberman 6 hours ago  replies      
I have no beef with this guy who was basically forced into breaking the law before he could have responsibility for his actions.

But overall I just feel that the compassion about immigration is misplaced. I don't understand why all the pro-immigration people say "look at these poor undocumented immigrants -- we should make life better for them." I think the people we should have compassion for are the people who are trying to do things the right way but running into headaches. Those are the people we should make things easier for, not the people who are willing to break the law to get what they want.

I really don't think we want a situation where breaking the law is the best way to get ahead. If I was waiting to get into the US, I would be pretty upset to see all the benefits going to the people who cut in line.

I don't understand why it's so controversial among the pro-immigration crowd to say that people shouldn't come here illegally. Naturally more leniency should be extended to children.

EDIT: It is stories like this that I feel we should be solving with immigration reform: http://news.ycombinator.com/item?id=2685261

gdilla 56 minutes ago 1 reply      
Go wait in line, Vargas. You ain't special. You think because we should feel sorry for you, that you deserve a greencard or legalization or whatever? Do you know the shit LEGAL immigrants have to go through to get and stay here? What makes you so damn special to skip the fucking line? I waited 7 fucking years for my greencard - all the while working and paying more taxes than you and any goddamn teabagger alive. I was stuck in h1B hell as a modern day indentured servant. I actually gave up and decided to go back home. I decided that America wasn't a place where hardworkers who followed the rules could make it. I told myself that as soon as I finished grad school, which I was putting myself through part time, I was out of here. Fuck this. Then it happened. Some fucked up debacle in 2007 at immigration where the waiting lists all became "current" for a month. I yelled at the company lawyer to get my shit done and ran around getting all my docs. 90 days later, I had a greencard. Things changed. I could do shit. I applied to techstars in Boulder in 2008 with my idea for syncing browsing sessions between desktop and mobile (I got rejected - David Cohen told me it was too easy to knock off and too hard to make money. He was right. I couldn't execute anyway, and then instapaper showed up like a month later anyway).

You think I have sympathy for you, Vargas? I married my wife, who was on H1B while I was on Greencard. She got laid off. Were we permitted to live together as a family in the USA? Nope. Even though she'd been here close to 10 years herself - doing grad school and then working. Yes, legally, and paying taxes all the long. You would think America would try to make it easy for english speaking, educated (in the US, no less), LEGAL immigrants who waited in line. Nope. Our son was even born in America. Proof to all the stupid republicans and teabaggers that there's no such thing as "anchor babies", not like we gave a fuck about that. Kids can't sponsor their parents till 21 years of age. So my wife and son had to go to Canada, to live with my parents, while I sorted shit out. I'm sponsoring her - but the waiting list is fucking what, 4 years long?!! Ya, the short wait times for sponsoring a spouse only applied to citizens. I have to wait till sept 2012 before I can apply for that. Jesus christ. America rocks. So now my wife visits on a vistor visa, with our American son, good for only 3 months at a time. Each time she's interrogated for an hour when she crosses the border because of this fucked up situation (US immigration are supposed to keep out visitors who they think are trying to live in america). She's been warned to not push it and not to come back too often. This is fucked up. I'm ready to fucking give up if it wasn't for all the shit we've been through to get here. I've always got my eye on potential opportunities back in Canada or abroad. I've got a good gig here that I actually like, but fuck, is it worth all the hurdles and bool shit of being separated from family and crossing borders every other weekend? Just to be LEGAL? My wife could have stayed here illegally. But we're not like that. We followed the fucking law and basically got fucked. So screw off vargas. No tears for you.

sliverstorm 6 hours ago 0 replies      
She understood. So the choir toured Hawaii instead, with me in tow. (Mrs. Denny and I spoke a couple of months ago, and she told me she hadn't wanted to leave any student behind.)

Sometimes teachers seem to me like the downright best humanity has to offer.

trustfundbaby 7 hours ago 1 reply      
Properly formatted link http://www.nytimes.com/2011/06/26/magazine/my-life-as-an-und...

The guy came out as gay but wouldn't let people know he wasn't a citizen ... that's deep.

Shenglong 8 hours ago 2 replies      
Even if I weren't open to letting educated members of society earn a legal green card, I think this would've changed my mind.

The inability to obtain US citizenship even though I was attending a consecutively #1 rated program on the continent, at one of the best schools in the country really dimmed my own hopes. I remember wanting to apply for an internship at MIT Lincoln labs for anti-ballistic missile defense, and being crushed when I realized I couldn't.

joelhaasnoot 6 hours ago 0 replies      
Good to hear this issue raised. In The Netherlands where I live this has been an issue several times: the immigration process is so long (can take 8-10 years) that kids grow up here, and for instance girls would be rejected by everyone if returned to their native Afghanistan. Several high profile cases were handled and several have been allowed to stay, or atleast finish high school / college.

The issue is just getting bigger however: I find it scary that policies have gone so far that a Dutch citizen has to go live in Belgium or Spain once married so that their spouse can get a work permit and eventually gain EU citizenship...

rajdevar 34 minutes ago 0 replies      
Many people who commented here have never attended an interview in a US consulate. It is a 3 step process and it is not an easy one.Some times the process can last more than 5 hours .it was one of the nervous moments of my life. To get a visa extension every 2 years I need to provide a letter from my employer ,tax documents and the last 3 pay stubs. Although, I have every document my visa could be rejected for no reason or sent for an audit or RFI(Request for more Info).This process can take around 2-3 months with re- submissions and RFIs.The Visa extension process became more rigorous in Obama's administration. The bar has been set really high which is good.some of my friends did not get an extension and so they had to leave the country .The petition fee has been hiked to $5000 from $1800 with an extra $1500 for the attorney's fee.Very few employers are willing to sponsor a work permit ,Hardly any one is willing sponsor a GC in this economy.Even if they are willing ,the backlog is almost 6 years.so if I apply now there is a chance I might get a GC in 2017.The bottom line is, I don't support illegal immigration of any kind.Immigration should be based on qualification .Although,what kind qualification is debatable .Thats a different story.If you guys are empathetic to illegal immigrants go look at the US consulates across the world where thousands of people stand every day to get an "Approved" stamp on their passports.
patrickgzill 3 hours ago 0 replies      
The unmentioned flipside is that other countries love to export people to the USA in order to get foreign remittances back to the home country up.

The elite , about the top 2-10% in those countries own most of the businesses, and like things the way they are - no need for political change, as the remittances take some of the pressure for change off, while they eventually end up pocketing a large portion of the remittances due to those monies being spent for products and services (at the businesses they own).

jeffreymcmanus 7 hours ago 2 replies      
Terrific story. I can't understand how even the most heartless xenophobe could possibly support the deportation of a someone who graduated from a US university. Utterly self-defeating from a social and an economic standpoint.
emiranda 5 minutes ago 0 replies      
adolph 7 hours ago 2 replies      
I convinced myself that if I worked enough, if I achieved enough, I would be rewarded with citizenship. I felt I could earn it.

Has that ever happened? Reading this gives me a sense of cognitive dissonance between the US as a place 'where anyone can make it' and the US as a legalistic bureaucracy.

[Edit to clarify]

lurchpop 6 hours ago 0 replies      
He's the main story on Huffpo right now: http://www.huffingtonpost.com/2011/06/22/jose-antonio-vargas...

I doubt this will change many people's minds about immigration though. The "what part of illegal don't you understand" crowd is also the "fuck you, i've got mine" crowd, and they've already got theirs.

VladRussian 7 hours ago 2 replies      
quick google on statute of limitations:


6 or 20 years for most crimes, except murders.

Immigration violations seems to not have the statute of limitations, just like the most heinous crimes.

anigbrowl 7 hours ago 1 reply      
If anyone is interested in investing in a project to legally provide work opportunities for undocumented immigrants who were brought to the US as children like this journalist, you can send me a message via gmail and I'll pass it on to a law professor I know who is working on this issue with various legal and business leaders in the Bay Area.

Serious inquiries only please, this project is likely to require a significant commitment of financial and/or political capital.

Aloisius 5 hours ago 5 replies      
How difficult is it really to have a green card wedding? The only knowledge I have of it is from TV, but surely in a country where a good chunk of the population doesn't take marriage seriously, finding someone to marry you for citizenship wouldn't be difficult.

You could even build a startup out of it... USMailOrderSpouses.com.

sandipagr 7 hours ago 1 reply      
It's really courageous of him to come ahead with his story. I really hope he gets to stay in the country.
davidw 6 hours ago 0 replies      
Much as this is a fascinating story about a hot political subject... well, it's about a hot political subject. This is not the place for politics.
maxwin 4 hours ago 0 replies      
Like His facebook page. Show some support.


lupatus 6 hours ago  replies      
It's really courageous of him to come ahead with his story. I really hope he gets shipped back to the Philippines.

Go ahead and call me a xenophobe now. Whatev.

I think it is in poor form for the NYT to print this manipulative article that tries to make me feel bad for the gay, minority, do-gooder author and excuse his years of criminally fraudulent behavior.

Sure, call me heartless. But, this guy is cheating you, and not in the "Oh cool hack" kind of way. He is cheating you in a Bernie-Madoff-conned-me-out-of-my-money-for-ponzi-investments-so-that-he-could-live-a-cushy-life kind of way.

ORM is an anti-pattern seldo.com
279 points by jeromegn  7 days ago   190 comments top 51
DavidMcLaughlin 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 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.

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


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

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

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

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

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

trustfundbaby 6 days ago 0 replies      
I'd like to learn more about the author's background with ORMs and especially activerecord ... I know SQL pretty well, in fact when I started using Rails, I insisted on still writing my own SQL queries by hand.

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

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

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

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

pnathan 7 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.
gerardo 7 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 7 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 7 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 7 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 7 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 7 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 7 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 7 days ago 1 reply      
god. thank you.

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

nathanlrivera 7 days ago 0 replies      
Generalizations are an anti-pattern.
pspeter3 7 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 7 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.

kunley 6 days ago 0 replies      
it's a pity and a sign of ignorance that people do an implicit assumption that ORM == active record pattern, while the other ORM pattern: data mapper is in fact widely used and superior for many use cases.
dazzer 6 days ago 0 replies      
Interpreted pedantically, removing ORM techniques means dealing directly with resultsets or loosly typed structures. This is definitely what I DO NOT want in any of my views. If you're working with an OO language like C#.NET or Java, good luck!

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

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

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

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

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

rjurney 7 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 7 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 7 days ago 0 replies      
I have felt the pain of Hibernate. It just sucks. But I think that it is possible to make an ORM like solution work. A great example is NeXT's EOF and now Apple's Core Data. The combo of awesome mapping tools and Objective-C's dynamism make for system that works very well for it's intended purpose. Mind you core data is not a database and likely would not work well for a web service, but I believe that EOF did.
tcarnell 6 days ago 0 replies      
I 100% completely agree with the article. ORM's are dangerous.

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

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

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

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

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

shaydoc 6 days ago 0 replies      
ORM's tend to suck, easy way out. delegating control to a custom ORM says to me, OK give me performance issues. Design your Domain model, keep it simple at the DAL and use Stored Procedures, easy life, ultimate flexibility.
gerardo 7 days ago 1 reply      
BTW, how are you working around these days the most obvious problems of an ORM?
maresca 7 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  3 days ago   245 comments top 28
buro9 3 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 3 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 3 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 3 days ago 2 replies      
A little bit explanation:

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

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

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

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

MagicalTux is working on Mt.Gox

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

Update: Mt.Gox have published an announcement:


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

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

phamilton 3 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 3 days ago 2 replies      
The entire account database was also leaked:


lubos 3 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 3 days ago 1 reply      
That's about 7% of the total number of bitcoins in circulation. Anyone have details on how this happened?


gburt 3 days ago 1 reply      
Lower limit of $0 a bitcoin showing there, did someone really dump bitcoins at $0.01?
eis 3 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 3 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 3 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 3 days ago 4 replies      
So for someone who doesn't understand economics that much, what does this mean? Have bitcoins finally failed?
pnathan 3 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 3 days ago 0 replies      
<CorvusCorax> poor bot had a division by zero when trying to calculate the mt gox exchange rate
base 2 days ago 1 reply      
Out of curiosity, how does the Mt.Gox hold the bitcoins. Do they have a bitcoin account for every user or do they hold all the bitcoins in their account and trades are only changes in their database?
spenvo 3 days ago 0 replies      
The flash sale broke the price resistance chart: http://mtgoxlive.com/orders
funkah 3 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 3 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 3 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 3 days ago 0 replies      
You know whats funny about that whole 25k thing...he has shown no proof, says he filed a police report but has not shown it, media went wild with it (with no evidence) and to the best of my knowledge no media outlet has interviewed the supposed law enforcement regarding the matter....I smell some FUD...there are numerous more inconsistencies with his story and many believe him to be a troll.

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

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


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

Some people already started :)

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

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

Definitely worth watching all 14 minutes.

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

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

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

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

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

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

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

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

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

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

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

Reporter: What kills young startups?

PG: The back button


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

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

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

i hope he won some money on that bet.

wensing 5 days ago 0 replies      
I like how PG surprises the male interviewer with his non-traditional filters for good investments.
aymeric 5 days ago 0 replies      
Loved the questions Emily Chang asked, she seems sharp.
dkrich 4 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 5 days ago 0 replies      
PG, your enthusiasm is crazy infectious. Loved the clip.
int3rnaut 5 days ago 0 replies      
What I like best about what Graham says is the idea that good people will persevere and do good things to make peoples lives better and that he's willing to bet on these good people. That's something universal, not just in the startup world that I wish more people believed in.
jasontan 5 days ago 0 replies      
ironically, we ran into PG & JL downtown right after he did the interview. while we were lugging cinema displays...
known 4 days ago 0 replies      
I agree with PG.
We need to do http://www.netmba.com/strategy/swot/ and http://www.netmba.com/strategy/pest/ analysis before doing a startup.
lhnn 5 days ago 1 reply      
Mizza 5 days ago 2 replies      
Never seen PG talk before, figured he'd be another west-coast asshole, but he seems super down to earth!! Think I might apply to YC now..
New security issue at Dropbox pastebin.com
266 points by davewiner  2 days ago   109 comments top 16
bxr 2 days 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 2 days 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 2 days ago 0 replies      
"there was a very brief glitch and this should never happen/be possible again. thanks for the email."


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

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

mike-cardwell 2 days ago 1 reply      
Dropbox owes their customers a public explanation.
mike-cardwell 2 days 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.

georgemcbay 2 days 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.

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

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

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

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

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

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

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

crocowhile 2 days ago 0 replies      
Other people noticed this on the dropbox forum:
brk 2 days 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 2 days 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 2 days ago 2 replies      
This is the sort of thing where the submitter (at pastebin in this case) should be absolutly sure that the bug is fixed from Dropbox' side before telling the hole world about it.

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

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

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

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

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

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

Pinboard.in service limited - FBI raided hosting company and pulled equpiment status.pinboard.in
261 points by rograndom  1 day ago   81 comments top 18
idlewords 1 day 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 1 day 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 1 day 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 1 day ago 1 reply      
I am the founder and current CEO of a dedicated server host. The FBI and other law enforcement agencies do often contact us regarding activity emanating from or related to our network. Its the same for any host and the bigger you are, the more often it happens. Rarely, a local law enforcement officer from within or outside of the US get cranky when you tell ask them to get a subpoena (makes work for them). However, in my experience the FBI and other three letter agencies are very professional, fair, and genuinely want to do it right. Getting a subpoena is no big deal at all for them. Usually the US Attorney is right down the hall from them, in the same building.

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

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

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

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

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

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

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

buzzmunk 1 day 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 1 day ago 0 replies      
Really impressed by your ability to weather this storm. Definitely going to take a closer look at the service and see if it's useful to me (I'm a kind of 'write-only' Instapaper user... could Pinboard help improve my read rate at all?)
rubergly 1 day ago 0 replies      
I just started using Pinboard a couple days ago (mostly because of integration with Instapaper), and so far it looks great. The fact that, even with all this chaos going on, the main functionality of the service is still up and running is really great.
shrike 1 day ago 0 replies      
I've been a Pinboard customer for a long time, I think it is an example of a well executed, very well designed service that just blends into the background even when I use it a dozen times a day.
jarek 1 day ago 0 replies      
Can't wait to read the write-up of that.
toddh 1 day ago 0 replies      
If the data was replicated in N places would they serve all N places? Just curious how that works.
JeffDClark 1 day 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 1 day 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.

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

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

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

Facebook PR: Tonight We Dine In Hell techcrunch.com
260 points by parth16  5 days ago   47 comments top 18
knowtheory 5 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 5 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 5 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 5 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 5 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 5 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 4 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 5 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 5 days ago 1 reply      
How can you possibly be surprised by a company PR-spinning things that make them look weak?
cliffchang 5 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 5 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 5 days ago 0 replies      
While I like many of Facebook's PR team on an individual basis, as a whole, they are probably the worst in the industry when it comes to manipulation, double-speak, and all around slimeballishness

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

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

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

tatsuke95 5 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 5 days ago 0 replies      
It seems like this is a war whose outcome rest solely in the minds of the readers.
yuhong 5 days ago 0 replies      
It certainly don't help that Zuckerberg is a sleazy businessman.
dave1619 5 days ago 0 replies      
MG has got to be my favorite TechCrunch writer.
anon7865 5 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  6 days ago   34 comments top 13
nikcub 6 days ago 4 replies      
I think these 'what products and services does your startup use' type articles are more interesting than the usesthis series about what tools developers use.

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

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

seats 6 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 6 days ago 1 reply      
now someone needs to make something to use the APIs of all these sites to be able to control users across all of them from a single location.

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

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

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


benjohnson 6 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 6 days ago 0 replies      
Interesting list, I'd be interested to see what other "stacks" companies are running on.
statictype 6 days ago 1 reply      
What advantage do these group chat apps have over something like Skype?
clistctrl 4 days ago 0 replies      
I didn't really find the article that interesting, however looking at this http://xamarin.com/ company I'm extremely intrigued by the product.
kinkora 6 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 6 days ago 0 replies      
It's an interesting contrast how cheap the technical tools are compared to the financial and legal skills retained. I'm not sure if Ropes & Gray does something special for early stage companies, but they are a top and expensive firm.
vijaymv_in 5 days ago 0 replies      
Amazing list. I am wondering how do you handle signatures
omouse 5 days ago 0 replies      
Their committment to free/open source software is astounding! </sarcasm>
MIT professor's hack to recruit students harvard.edu
242 points by iamwil  3 days ago   41 comments top 9
ScottBurson 3 days ago 3 replies      
Ah, so Jerry Lettvin died.

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

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

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

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

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

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

What an awesome time we live in.

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

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

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

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

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

Seems like hacking the hack.

signa11 3 days ago 0 replies      
seems like physical version of delicious to me :)
jamesgagan 3 days ago 0 replies      
if you are doing this shit at 11 you don't need a "life lesson", you are already ahead of the pack no matter the outcome.
Google discontinues support for IE7 in Google Apps google.com
236 points by Yrlec  2 days ago   142 comments top 17
jarrett 2 days 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 2 days 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 2 days 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 2 days ago 0 replies      
Coincident with the debut of admin-less ChromeFrame support, this makes sense.
fierarul 2 days ago 0 replies      
I like how they don't even put a version number on Chrome.
rglover 2 days 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 2 days 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 2 days 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 2 days 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 2 days ago 0 replies      
Thank you so much! I love you Google.
technogeek00 2 days 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 2 days 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?

veyron 2 days ago 1 reply      
Does anyone have statistics regarding browser usage in the wild?
Tomis 1 day ago 0 replies      
In other news, I've been waiting for Opera support for years and I still don't see it in the list of supported browsers.
Steko 2 days 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 2 days 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  4 days ago   56 comments top 14
J3L2404 4 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 4 days ago 0 replies      
The author's own site (including the video), Nate Harrison:


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


pash 3 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 4 days ago 1 reply      
jinushaun 4 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 4 days ago 2 replies      
Interesting video. I wish the narrator didn't sound so robotic though.
fedd 3 days ago 0 replies      
i found the presented samples different from the original.

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

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

p_monk 4 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 4 days ago 0 replies      
Weirdly melodic and somber, but interesting video nonetheless.
code_duck 3 days ago 0 replies      
Strange, I just happened upon this for the first time 3 days ago seemingly at random.
fuddle 4 days ago 0 replies      
Checkout the Amen Break iPhone app too:
bobstobener 4 days ago 1 reply      
The break started here (at :05 sec)
thepumpkin1979 4 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  7 days ago   72 comments top 25
telemachos 7 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 7 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.
benologist 7 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.
kenjackson 7 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?

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

rorrr 7 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"

tjogin 6 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 7 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 7 days ago 0 replies      
During their presentation at Velocity today, they made the github project public:


ars 7 days ago 0 replies      
Well, that was impressive. 82 warnings, and every single one was wrong. This is not a useful tool.
igorgue 7 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 7 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 7 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 6 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 7 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 6 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 7 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 7 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 7 days ago 0 replies      
Hah, I was just sitting in the talk at Velocity where they announced and open-sourced this.
dw0rm 6 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 7 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 7 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 7 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 6 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 6 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  4 days ago   81 comments top 34
SMrF 4 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 4 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 4 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 4 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 4 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 4 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.

nextparadigms 4 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.
sbierwagen 4 days ago 1 reply      
Seattlewireless.net has been trying to do this for eleven years. Progress has not been enormously fast.
JoachimSchipper 4 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 4 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 4 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.
staktrace 4 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)

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

venti 4 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 3 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 3 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 3 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 3 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 4 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 4 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 3 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 4 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.
vladoh 4 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...

NHQ 4 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.
trout 4 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 4 days ago 0 replies      
a similar project was born in 2005 actually ... http://netsukuku.freaknet.org/?pag=faq
simon_weber 4 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 4 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 4 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 4 days ago 1 reply      
Warning: if the government decide to take out the Internet, that will be the least of your worries.
noduerme 4 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 4 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 4 days ago 1 reply      
Reminds me of Daniel Suarez's Daemon and Freedom.
closedbracket 4 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  5 days ago   103 comments top 57
ssdsa 5 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 5 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 5 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 5 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 5 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.

atacrawl 5 days ago 0 replies      
Definitely gets an upvote from me. Probably the neatest music site idea I've seen since the now-defunct Muxtape.
p4bl0 5 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!
rmc 5 days ago 0 replies      
I was a bit confused at first. You should have more details on how it works
PaulJoslin 5 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 5 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.
jannes 5 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.

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

johnrob 5 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 4 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 5 days ago 0 replies      
Huh. That was one of the quickest "how fuckin' stupid" => "how fuckin' brilliant" turnarounds my brain has experienced.

Nice work.

mrcharles 5 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.
superasn 5 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...
follower 5 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.

karolist 5 days ago 1 reply      
Thanks for sharing, this looks useful, though not sure the shit mantra is necessary.
retube 4 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 5 days ago 0 replies      
This is great. Congrats!
For me the killer feature is Grooveshark support :
noob007 5 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 4 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 5 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 5 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 5 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 5 days ago 0 replies      
You should let people save playlists to a custom url. roll.io/bestplaylistever
swaraj 5 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

tobylane 5 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 5 days ago 0 replies      
Wow.. Did something similar for mp3s and markdown while back... http://texttape.heroku.com
chetan51 4 days ago 0 replies      
Suggestion: Have the option to switch the embedded YouTube player to an embedded Grooveshark widget for higher-quality audio.
hbz 5 days ago 0 replies      
I think it's useful and very well made. Nice job!
ses 4 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.
tnajdek 5 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 5 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 5 days ago 1 reply      
feature request: allow me to append to a playlist without resetting
noob007 5 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 5 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 5 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 5 days ago 1 reply      
Right, interesting.
Some problems tho: removed as requested
BonoboBoner 5 days ago 0 replies      
Awesome idea. Drap and drop upload oft txt files would be nice.
kraymer 5 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 5 days ago 0 replies      
Nice. Doesn't youtube api have limits on number of requests?
kdeberk 5 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 5 days ago 0 replies      
Interesting. Seems like a less flashy version of instant.fm:
cjstewart88 5 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 5 days ago 0 replies      
I have been using this all afternoon. Thank you.
jvoorhis 5 days ago 0 replies      
Quick, someone write a bookmarklet that posts tracklists from discogs
kri5 5 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 5 days ago 0 replies      
much better than youtube, clear and to the point, simple. great job!
pyUser 5 days ago 0 replies      
simple and great idea! vote up it is.
firatdemirel 5 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.
edshadi 5 days ago 0 replies      
LOVE it...I would completely use it and I got it from the first look!
mayk 3 days ago 0 replies      
it's very useful. good luck...
schizophrenia 5 days ago 0 replies      
very clear and good idea, congrats guys
instakill 5 days ago 0 replies      
Voted up if only for the title.
csertoglu 5 days ago 0 replies      
firehose of a firehose. i like it. one day, there will be some semantic sense made out of this.
PDF Reader in JavaScript github.com
217 points by swah  7 days ago   65 comments top 15
rdamico 7 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 7 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 7 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 6 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 7 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 7 days ago 0 replies      
bnewbold 6 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 7 days ago 0 replies      
Very interesting. Is there a performance benefit to using "const" instead of "var" to declare variables in JS?
Gerdus 7 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 7 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 7 days ago 1 reply      
speaking of google ..... so much for Chrome's built in pdf viewer..heh.
singingfish 7 days ago 0 replies      
Does this library provide the potential to extract the text out of the PDF for further processing?
johnx123 6 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 7 days ago 2 replies      
Cant find a link to working demo, I'm just too lazy to git clone.
swah 7 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.

       cached 23 June 2011 04:11:01 GMT