
Dropbox Webhooks - smarx
https://www.dropbox.com/developers/blog/90/announcing-dropbox-webhooks
======
nextstep
I refuse to use Dropbox after Condoleezza Rice was appointed to their board.

[http://bits.blogs.nytimes.com/2014/04/18/protests-
continue-a...](http://bits.blogs.nytimes.com/2014/04/18/protests-continue-
against-dropbox-after-appointing-condoleezza-rice-to-board)

I hope these protests hurt Dropbox's image and business and they replace Rice
with someone who isn't a war criminal.

~~~
us0r
Yea all that talk and she is still there. Clearly it didn't have any kind of
impact. Either people didn't follow through or they were free accounts which
they probably don't mind losing anyways.

~~~
Karunamon
What boggles my mind is that there are many people who would pillory the guy
who got canned at Mozilla because he gave $1000 to people to fear-monger about
LGBTs, who gets multiple few-hundred-comment threads, but we talk about
someone who could charitably be described as a war criminal, and also add
ardent supporter of NSA surveillance and such, (i.e. things a lot more harmful
and important than marriage equality) and the outrage is so lukewarm as to be
non-existent.

I really don't get the culture here sometimes. Eich gets hung out to dry
(which is something I still agree with, for the record) but Rice more or less
gets a free pass, despite Rice having been responsible/complicit in a _hell of
a lot more_ evil in the world?

~~~
us0r
What boggles my mind is how a group of smart people decide that having her
join the board is even remotely a good idea. Even if you want to pretend Iraq
didn't happen - the NSA did and she was part of that. Just today - she was
still supportive of the NSA. Just before her praise of the NSA Workday said
everything needs to be done to stop them (read: our business is not going so
well).

So we have an entire industry (Country really) who is screwed by this and they
appoint her to their board. Either they are wrapped up in the idea of having a
former high ranking political figure on their board or they just don't get it.
Regardless from the outside it's not a very good look.

~~~
sheetjs
> What boggles my mind is how a group of smart people decide that having her
> join the board is even remotely a good idea.

On the merits, it's a really smart idea. She has connections and gives dropbox
credibility in government circles (irrespective of political leanings)

------
leorocky
Stuff like this is why I like Dropbox even though it's more expensive. File
syncing is their bread and butter. It's their main business, not a sideshow.
They're always going to do this better than anyone else.

~~~
CSDude
Can you give another example than this? Don't get me wrong, I'm trying to
justify the huge price difference.

~~~
wasd
LAN sync is only available on Dropbox and is incredibly useful.

~~~
ceejayoz
I really wish all the Dropbox clients on a LAN would coordinate and not all
download the same file from Dropbox.

We had our three work machines all downloading a ~400MB file the other day. No
reason Dropbox couldn't figure that out and have one machine download the file
and then distribute over LAN.

~~~
gumby
"No reason Dropbox couldn't figure that out and have one machine download the
file and then distribute over LAN."

They could have each machine download a chunk and have them swap chunks
locally. That would asymptote in time towards a single download.

That would handle cases of the "one" machine going offline close to the end,
or having it being the slowest machine available.

~~~
rhizome
In other words, a slightly more managed Bit Torrent.

------
mariocesar
What I'm feeling about this? This is a great feature, but I don't trust the
brand.

I'm really anxious about Canonical releasing the Ubuntu One Server project as
open source [https://launchpad.net/ubuntuone-
servers](https://launchpad.net/ubuntuone-servers), soon as it happens I will
dedicate to make it mainstream. Can you imagine the possibilities?
decentralized synchronization, multiple storages protocols like S3 or FTP.

File synchronization is a hard thing to do, but I don't see common sense on
making it centralized. Really have high hopes when Ubuntu One is released.

~~~
icebraining
_Can you imagine the possibilities? decentralized synchronization, multiple
storages protocols like S3 or FTP._

At the risk of sounding like a shill, that's already possible with git-annex.
It's decentralized, and it supports remote storage on S3, FTP, rsync, Webdav
(e.g. Box.com), Tahoe-LAFS, Google Drive, Mega, SkyDrive and more.

I personally have a node on my laptop, one on my VPS, one on my RaspPi, one on
my Nexus 7 and a bucket on S3, all happily syncing.

~~~
nodata
The sheer number of symlinks put me off git-annex.

~~~
icebraining
You should try the direct mode, then: [http://git-
annex.branchable.com/direct_mode/](http://git-
annex.branchable.com/direct_mode/)

 _Normally, git-annex repositories consist of symlinks that are checked into
git, and in turn point at the content of large files that is stored in .git
/annex/objects/. Direct mode gets rid of the symlinks._

~~~
nodata
_With direct mode, you 're operating without large swathes of git-annex's
carefully constructed safety net, which ensures that past versions of files
are preserved and can be accessed. With direct mode, any file can be edited
directly, or deleted at any time, and there's no guarantee that the old
version is backed up somewhere else._

Yikes!

~~~
icebraining
If you edit a file in Dropbox without it having had time to sync the previous
version, what do you think it'll happen?

Git-annex with symlinks can add an extra layer of protection, in that you have
to unlock the file before editing, so that it can ensure it has backed up. In
direct mode, it just works like any other syncing systems - non-synced
versions are lost.

~~~
maccard
> Git-annex with symlinks can add an extra layer of protection, in that you
> have to unlock the file before editing

Is that like how Perforce handles it?

~~~
icebraining
I wouldn't know, I never used Perforce. But there's a walkthrough for that:
[http://git-annex.branchable.com/walkthrough/modifying_annexe...](http://git-
annex.branchable.com/walkthrough/modifying_annexed_files/)

That's without the Assistant, which further simplifies the latter steps by
automatically taking care of committing and such. You just do unlock <file>,
edit, then add <file>.

------
tannerc
The Dropbox team has been working hard on Webhooks for some time now, it looks
like this is a much-needed tool for developers.

For example, a little under a year ago I released a mobile writing app that
synced using the Dropbox Sync API. Right out of the gate there were problems
syncing large documents, specifically due to slow mobile connections. The
webhooks functionality (while I haven't launched a version of the app that
implements this) allows me to check for changes quickly on a server before
syncing files on the user's device.

Kudos to the team on adding a much-needed feature to the Dropbox
functionality.

------
daniel_levine
If anyone has questions, feedback or comments about webhooks or the Dropbox
API more broadly, feel free to post here

You can also ping me at levine at dropbox

~~~
vladgur
Whats the best/recommended way to test webhooks with a server running locally?
Do you require webhook urls to be SSLd?

P.S. Also eagerly waiting for your Shared Folder API [1] :)

[https://news.ycombinator.com/item?id=7484409](https://news.ycombinator.com/item?id=7484409)

~~~
smarx
Webhooks don't require SSL. We're going to publish a little Python script soon
that can generate fake webhook notifications for local testing, but in the
meantime, I'd suggest just using curl. Something like this:

curl [http://127.0.0.1/whatever](http://127.0.0.1/whatever) -d '{"deltas":
{"users:" [12345]}}'

Another possibility is to use a tool like ngrok or localtunnel, which is what
some of our beta testers did.

~~~
smarx
I went ahead and published Python code to generate fake webhook requests. See
[https://github.com/dropbox/dropbox_hook](https://github.com/dropbox/dropbox_hook).

------
adamnemecek
Can I use this new API to be notified when Dropbox board members resign?

~~~
vdaniuk
You can use this API to get a boilerplate non-response full of hypocritical
"commitment" about user privacy.

------
ollysb
Wow, they've been building up to this one for I think years. Very happy to see
it. Having a real-time* filesystem available is going to great for not only
the big projects like web hosting but I can imagine a ton of little in house
tools that could make use of this.

* We know which type of real-time we're talking about...

~~~
daniel_levine
It has been a long time coming and we're really excited to see what folks do
with it!

~~~
masterkain
At AudioBox ([https://audiobox.fm](https://audiobox.fm)) we have a strong use
case for it. We are already providing our users a "live filesystem" with Box,
exciting that Dropbox is also adding this.

We'll have a look at this after our next release.

------
us0r
Speaking of the devil... as of a few hours ago she is still defending the NSA
programs.

[http://www.mercurynews.com/business/ci_25762917/condoleezza-...](http://www.mercurynews.com/business/ci_25762917/condoleezza-
rice-defends-nsa-spying-at-tech-conference)

------
Xdes
I'm guessing the boycott is over?

~~~
vdaniuk
Not for me. All I care about this announcement is the hooks that Mamdouh Habib
was hanged on while he was tortured in Egypt, sent there by the CIA.

And one of the Dropbox board members was an ardent supporter of this and other
despicable practices(also known as torture).

If Daniel Levine is fine with this, then I am definitely not fine with paying,
using or promoting his product API.

edit: I switched to spideroak and am quite happy with the product.

~~~
gmacdon89
I lolled.

~~~
vdaniuk
Look up the story of Mamdouh Habib. It's really sad, he was tortured
physically and mentally, labeled a terrorist and was released without charges
by the USG after 4 years in detention.

------
thrush
Is there a file storage protocol?

On the same note, it would be cool to have this protocol to drive the
development of Dropbox (and other file storage services for that matter) in
the same way that Git drives what is capable on Github.

~~~
rsync
Agreed. I am trying to see if this framework allows for a simple polling and
synchronization of a particular dropbox to a unix system. That is, a simple
way to clone my dropbox to any old unix system that is running their python
code, and keeps it updated via the polling mechanism.

This is interesting because we (rsync.net) would then "freeze" that python
app[1] (whatever it ends up being) and let users clone and sync a dropbox to
their rsync.net account.

We already do this with s3cmd and git, and dropbox would be a nice addition.

[1] We don't allow interpreters (python, perl, shell) in our environment, so
we have to "freeze" python to a binary exe.

~~~
smarx
If you're polling client-side for a single account, you should just be using
longpoll_delta[1] and delta[2]. But maybe I misunderstood the use case?

[1] [https://www.dropbox.com/developers/core/docs#longpoll-
delta](https://www.dropbox.com/developers/core/docs#longpoll-delta)

[2]
[https://www.dropbox.com/developers/core/docs#delta](https://www.dropbox.com/developers/core/docs#delta)

------
kingnight
Interesting the company they feature, Picturelife, seems to be a direct
competitor to their own new Carousel app.

------
sireat
Webhooks or no, Dropbox has already nailed down the core features but the Rice
situation is gnawing at me.

I would love to see a canonical list of alternatives to Dropbox, I still have
30GB in free layers(thanks University promotions), but the more I think about
it, the less I want to keep using Dropbox.

So some options are to set up your ownCloud at VPS, use Google Drive, or
Microsoft Skydrive or something else.

Problem with latter two is that those are not exactly highly ethical choices
either.

On the other hand ownCloud fails the grandma test something that Dropbox has
been excellent at.

What other options are there?

------
Navarajan
I hope [http://www.site44.com/](http://www.site44.com/) is also implemented
the Dropbox Webhook.

~~~
smarx
Of course. :-)

