aboutsummaryrefslogtreecommitdiff
path: root/build/blog/2014-11-20-dropbot-for-geeks(r).html
diff options
context:
space:
mode:
Diffstat (limited to 'build/blog/2014-11-20-dropbot-for-geeks(r).html')
-rw-r--r--build/blog/2014-11-20-dropbot-for-geeks(r).html51
1 files changed, 51 insertions, 0 deletions
diff --git a/build/blog/2014-11-20-dropbot-for-geeks(r).html b/build/blog/2014-11-20-dropbot-for-geeks(r).html
new file mode 100644
index 00000000..713ec711
--- /dev/null
+++ b/build/blog/2014-11-20-dropbot-for-geeks(r).html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8"/>
+<meta content="pandoc" name="generator"/>
+<meta content="Zhiming Wang" name="author"/>
+<meta content="2014-11-20T09:48:15-0800" name="date"/>
+<title>Dropbot for Geeks®</title>
+<link href="/img/apple-touch-icon-152.png" rel="apple-touch-icon-precomposed"/>
+<meta content="#FFFFFF" name="msapplication-TileColor"/>
+<meta content="/img/favicon-144.png" name="msapplication-TileImage"/>
+<meta content="width=device-width, initial-scale=1" name="viewport"/>
+<link href="/css/normalize.min.css" media="all" rel="stylesheet" type="text/css"/>
+<link href="/css/theme.css" media="all" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div id="archival-notice">This blog has been archived.<br/>Visit my home page at <a href="https://zhimingwang.org">zhimingwang.org</a>.</div>
+<nav class="nav">
+<a class="nav-icon" href="/" title="Home"><!--blog icon--></a>
+<a class="nav-title" href="/"><!--blog title--></a>
+<a class="nav-author" href="https://github.com/zmwangx" target="_blank"><!--blog author--></a>
+</nav>
+<article class="content">
+<header class="article-header">
+<h1 class="article-title">Dropbot for Geeks®</h1>
+<div class="article-metadata">
+<time class="article-timestamp" datetime="2014-11-20T09:48:15-0800">November 20, 2014</time>
+</div>
+</header>
+<p>I propose the following cloud storage and syncing service model of the future. I call it <strong>Dropbot for Geeks®</strong>, and it totally rules. It's designed for geeks who are tired of the highly limited, miserably unproductive traditional services (based on clicking around). It has the following features:</p>
+<ul>
+<li>Standard Unix file system commands exposed as an API, e.g., <code>cat</code>, <code>cd</code>, <code>cp</code>, <code>du</code>, <code>df</code>, <code>file</code>, <code>find</code>, <code>head</code>, <code>ln</code>, <code>ls</code>, <code>mkdir</code>, <code>mv</code>, <code>pwd</code>, <code>rm</code>, <code>rmdir</code>, <code>tail</code>, <code>touch</code>, etc.</li>
+<li>A rudimentary shell emulator through the web interface exposing the commands above.</li>
+<li>Secure shell access to the file system, also exposing the commands above. Provide two-factor auth for SSH. Clearly, <code>scp</code> should also be supported.</li>
+<li>Checksums. Expose, for instance, <code>md5sum</code> or <code>sha1sum</code>, in the API. Provide checksums on download pages, probably on demand.</li>
+<li>Programmable selective syncing, down to per file level.</li>
+<li>Scriptability. Allow clients to run custom scheduled jobs or daemons with the API above. To prevent the service from becoming full-featured IaaS, though, clients might be limited in CPU time, memory, or command selection. This bullet point is arguable.</li>
+</ul>
+<hr/>
+<p>With the level of command line integration illustrated above, we'll finally get rid of clicking around and not being able to automate chores. Navgating the remote file system will be a breeze — click, click, click, click, click (sometimes click should be replaced by double click, which is even more painful) just to navigate to a directory will be made a thing of the past. <code>ln</code>, in particular, saves disk space for duplicates — Dropbot for Geeks does <em>not</em> want to charge you extra for multiple copies of the same file in different directories. (To facilitate syncing hardlinks, clients should be able to specify hardlinked files in a config file. Or maybe some better mechanism. This might be hard.) At last, checksums are a must. I’ve had traumatic experiences like having downloaded an eight-part RAR, 1 GiB each, only to find that it wouldn’t unRAR. Without checksums, it was impossible to find which part was corrupted. As a result, I had to re-download everything — a nightmare. I never want to experience similar problems again. Hence the precious checksums.</p>
+<p>Dropbot for Geeks looks like a pretty good (well, not really, but at least pretty cool®) model. Maybe I should patent it before anyone else? Then if some similar service surfaces in the future, I can <a href="http://arstechnica.com/tech-policy/2014/11/jury-apple-must-pay-23-6m-for-old-pager-patents/">sue their ass off and enjoy some hot cash</a>.</p>
+</article>
+<hr class="content-separator"/>
+<footer class="footer">
+<span class="rfooter">
+<a class="rss-icon" href="/rss.xml" target="_blank" title="RSS feed"><!--RSS feed icon--></a><a class="atom-icon" href="/atom.xml" target="_blank" title="Atom feed"><!--Atom feed icon--></a><a class="cc-icon" href="https://creativecommons.org/licenses/by/4.0/" target="_blank" title="Released under the Creative Commons Attribution 4.0 International license."><!--CC icon--></a>
+<a href="https://github.com/zmwangx" target="_blank">Zhiming Wang</a>
+</span>
+</footer>
+</body>
+</html>