TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Datastore API (beta)

207 pointsby gluegadgetalmost 12 years ago

18 comments

peterkellyalmost 12 years ago
The biggest problem right now with online file storage services (sorry, I meant &quot;The Cloud&quot;) is that while they all do basically the same stuff, there&#x27;s no standard protocol for accessing them. It&#x27;s a bit like if every website used a custom protocol instead of HTTP, and web browser vendors had to explicitly collaborate with each web site (or use the website&#x27;s SDK) in order to be able to retrieve content.<p>Imagine this: All the major players in the space (Dropbox, Box, Google Drive, Skydrive, Sugarsync etc.) as well as app developers got together and came up with a standard way of doing this that makes it possible to use a single protocol &amp; API for all online storage providers. I see this being a good thing for everyone - users can choose whatever service they want, app developers can easily provide their customers with a ton of options, and storage providers don&#x27;t have to explicitly produce their own SDK or court developers to do integration with their service. We did have WebDAV, but that doesn&#x27;t seem to be widely adopted by any of the major players.<p>I&#x27;ve been facing this problem myself with my own app; it&#x27;s a lot of work to support all the major services and this is really just plumbing stuff that everyone would rather be taken care of so they can focus on the more important stuff. I had a meeting with Box recently where I proposed the idea of an open source framework for iOS which would provide a common native API that abstracts over all the different REST APIs used by different storage providers. The people I spoke to seemed quite open to the idea and agreed that it would be useful. I don&#x27;t think a library like this would necessary be considered a bad thing by any of the major players, as it evens out the playing field and makes it easy to support different services.<p>If you&#x27;re interested in taking part and&#x2F;or using such an API in your iOS app, I&#x27;d love to hear your thoughts on the matter. I have some code already (which I haven&#x27;t released yet) and am looking to clean up the API a bit, but I think it would be useful to a lot of developers.
评论 #6015029 未加载
评论 #6015027 未加载
评论 #6015202 未加载
评论 #6017410 未加载
评论 #6016780 未加载
munificentalmost 12 years ago
I&#x27;d like to coin a modern update of Zawinski&#x27;s Law[1]:<p><pre><code> Every software company attempts to expand until it offers a cloud-based platform API. Those companies which cannot do so are replaced by ones which do. </code></pre> [1]: <a href="http://en.wikipedia.org/wiki/Jamie_Zawinski#Zawinski.27s_law_of_software_envelopment" rel="nofollow">http:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Jamie_Zawinski#Zawinski.27s_law...</a>
mmahemoffalmost 12 years ago
Something I don&#x27;t get about Dropbox API: Why can&#x27;t I just throw URLs at it?<p>If a user wants to save &lt;thing at URL&gt;, I have to pull it to my server and push it into Dropbox. Dropbox could just have grabbed it directly and in many cases, won&#x27;t even have to thanks, to system-wide caching.<p>(This is based on the last time I looked at the API; maybe this is supported now, but I don&#x27;t think so.)
评论 #6014700 未加载
评论 #6015031 未加载
oellegaardalmost 12 years ago
Such an awesome idea. However, in light of the recent events the first thing to come up in my mind when I see &quot;datastore&quot; and a US corporation is &quot;PRISM integration&quot;. I&#x27;d like to see proper encryption of Dropbox as the next feature, so that we - innocent users- are not uploading our data to the US government.
评论 #6014751 未加载
评论 #6014965 未加载
评论 #6014740 未加载
评论 #6014872 未加载
评论 #6015696 未加载
评论 #6017381 未加载
jonaldomoalmost 12 years ago
After quickly clicking through the api documentation I don&#x27;t understand why I would use this over a hosted NoSql database like mongohq. I still like having additional options though.
评论 #6014929 未加载
评论 #6016827 未加载
jimbokunalmost 12 years ago
&quot;List – A special value that can contain other values, though not other lists.&quot;<p><a href="https://www.dropbox.com/developers/datastore/tutorial/ios#records" rel="nofollow">https:&#x2F;&#x2F;www.dropbox.com&#x2F;developers&#x2F;datastore&#x2F;tutorial&#x2F;ios#re...</a><p>Seems like a very significant limitation. No mechanism for storing hierarchical data structures. For example, this is certainly not capable of storing arbitrary JSON data as a Record.
评论 #6016751 未加载
makeramenalmost 12 years ago
As someone who has been playing around with Parse and Firebase SDKs (on Android), this seems to be the first one that offers full 2-way sync. I haven&#x27;t actually used it yet but it seems that way due to the presence of conflict resolution [1]. I&#x27;m personally really excited about that for mobile side-projects and MVPs.<p>Parse has an offline cache, that only caches query results and not actual objects. So any local saves&#x2F;updates are not reflected until you get network access again, unless you manually implement your own cache.<p>Firebase is better at handling realtime changes, but is lacking in any realtime capabilities at the moment. Also Firebase&#x27;s mobile authentication SDK still isn&#x27;t released yet so no way to handle users yet either.<p>[1]: <a href="https://www.dropbox.com/developers/datastore/tutorial/android#conflicts" rel="nofollow">https:&#x2F;&#x2F;www.dropbox.com&#x2F;developers&#x2F;datastore&#x2F;tutorial&#x2F;androi...</a>
评论 #6017780 未加载
评论 #6017909 未加载
obilgicalmost 12 years ago
What app.net wanted to accomplish.
评论 #6016406 未加载
jimsilvermanalmost 12 years ago
this is basically what iCloud was supposed to be.
sigilalmost 12 years ago
So now app developers have a choice: they can use iCloud or Dropbox to manage distributed app state. Any iOS app developers (I&#x27;m not one) care to compare &amp; contrast the two options?<p>It looks like Dropbox may be using Operational Transformation [0] to merge changes to lists:<p><i>Lists are special field values. They contain an ordered list of other values, though not other lists. Lists can be manipulated via four list operations: put (i.e. replace), move, insert, and delete. These list operations allow Dropbox to handle merging changes to the structure of the list automatically.</i> [1]<p>iCloud, on the other hand, uses the coarser, state-centric approach of whole document versioning. [2] (Edit: okay, key-value property versioning is also available.)<p>But iCloud lets the app control conflict resolution, while the Dropbox Datastore API only lets you choose from a predefined set of conflict resolution strategies. [3]<p>Which approach provides greater value to the app developer? Has Dropbox realized here that developers are just not comfortable implementing a custom merge strategy for entire documents, and not having to worry about this is worth some loss of control?<p>[0] <a href="http://en.wikipedia.org/wiki/Operational_transformation" rel="nofollow">http:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Operational_transformation</a><p>[1] <a href="https://www.dropbox.com/developers/datastore/tutorial/ios#records" rel="nofollow">https:&#x2F;&#x2F;www.dropbox.com&#x2F;developers&#x2F;datastore&#x2F;tutorial&#x2F;ios#re...</a><p>[2] <a href="http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/ResolveVersionConflicts/ResolveVersionConflicts.html" rel="nofollow">http:&#x2F;&#x2F;developer.apple.com&#x2F;library&#x2F;ios&#x2F;#documentation&#x2F;DataMa...</a><p>[3] <a href="https://www.dropbox.com/developers/datastore/tutorial/ios#conflicts" rel="nofollow">https:&#x2F;&#x2F;www.dropbox.com&#x2F;developers&#x2F;datastore&#x2F;tutorial&#x2F;ios#co...</a>
评论 #6017815 未加载
alexobenaueralmost 12 years ago
For the iOS library specifically, I wonder if it would be possible to build a library that would (nearly) automatically map a core data store in to this Datastore API. If so, including such functionality would make the library a no-brainer for many.
评论 #6014648 未加载
fireboialmost 12 years ago
are there any kind souls that could help please explain the difference between dropbox datastore, firebase and parse? thank you.
评论 #6015898 未加载
joeblaualmost 12 years ago
Does anyone know of an OSS alternative to this similar to <a href="http://helios.io/" rel="nofollow">http:&#x2F;&#x2F;helios.io&#x2F;</a> that supports Android&#x2F;iOS?
评论 #6017036 未加载
BadassFractalalmost 12 years ago
What is the long term vision here? Is the idea that consumers will have little apps here and there that will procedurally interact with the owner&#x27;s data on Dropbox? Or, is Dropbox making a product along the lines of S3 so that backends can consider using it too? I guess given how expensive space is at this point, that&#x27;s not really an option.
评论 #6014678 未加载
frankcaronalmost 12 years ago
I wonder how Apple will react to @dropbox&#x27;s new Datastore sync in the long run. Hopefully it won&#x27;t pull the rug out a la IAP, UDID, OF, ...
评论 #6014845 未加载
评论 #6017152 未加载
joejohnsonalmost 12 years ago
So Dropbox is becoming a more-direct competitor with iCloud. Meh.<p>I&#x27;d rather they work on an end-to-end encryption system with a focus on ease of use.
评论 #6014736 未加载
评论 #6015168 未加载
评论 #6014925 未加载
johnrobalmost 12 years ago
Grammar check: &quot;These days, your app need to store and sync more than just files.&quot;
modartsalmost 12 years ago
Why would I use this over something like Parse?
评论 #6015868 未加载