Essays on Free Knowledge (book)

New book: Essays on Free Knowledge

I published my first book this morning. The current cost is $9.95. It is a 270-page ebook, first published on Gumroad, where I'll get a higher percentage. A paperback should arrive in about a month on Amazon if I don't get distracted by other things.

Buy via the embedded ad below, and after that, I'll have a few notes for my regular blog readers.




I first had the idea of making a collection like this over ten years ago. I decided to do it now because I was thinking of combining fundraising for the Encyclosphere with a course. But to get publicity for a course, I thought it would be good first to remind folks of my writings (and qualifications) to teach something like this. A book would help publicize both the Encyclosphere and the course. I also thought if I were going to keep plugging away at my (time-consuming) consulting business, a book would help spread the word for that as well (although I have had more business than I have had time for). Finally, the fact that Wikipedia is going to have its 20th anniversary this coming January means the book should have a better audience than it would otherwise.

I hope you will get your hands on it (or rather, get it on your handheld) soon, but I will have a paperback available hopefully in about a month, if that is more your style.


How and Why to Decentralize the Internet: a Course

I am thinking of offering a new, independent online course about decentralization and freedom. The focus would be social media; perhaps a future course would focus on free encyclopedias. Or maybe we would do the encyclopedia course first. A proposed reading list is below. Interested? Have ideas about what we should read for this?

This could be considered an outgrowth of last year's work on the Declaration of Digital Independence and the social media strike. As I said in this Wired article, at some point after we do the strike, we should organize mass try-outs of a bunch of social media tools. I wanted to, but I never did this last year because doing it properly would take time, and time takes money.

A course could help pay for this, though. Maybe we could fund proper deliberations over social media tools by combining such deliberative work with a course. That seems like a good idea. My worry has been that I'd be on the hook to offer a course that not many people were interested in. But a friend just told me about a Gumroad.com feature: you can let people pre-order a product, but the user is not charged until the course begins. If enrollment gets up to a certain number, I will green-light the course, and people are charged when it starts. If there is insufficient interest, they are never charged. Perfect!

Combining deliberation about the best social media tools with a course seems like a good idea for an additional reason: I do not actually want to deliberate seriously about this important decision with people who are ignorant of the relevant issues. Indeed, I would like to seriously review all the relevant issues myself. We got into this Big Social Media mess by going in half-cocked. I propose that we should not do that as we decide what to replace Facebook, YouTube, Instagram, and Twitter with.

General Course Information (tentative)

Tentative title: How and Why to Decentralize the Internet

Description: A two-to-three month upper-division-to-graduate-level course. focused on reading and discussion. You will read and closely analyze and evaluate many important source texts that go into understanding, appreciating, and making decisions about component projects of the free, decentralized Internet in general and social media in particular. There will be a dual focus on the relevant technology and on practical philosophy (or applied theory). The technical decisions before us must be made based on deep principles.

Instructor: Larry Sanger (Ph.D. philosophy from Ohio State, 2000; ex-founder, Wikipedia; serial Internet project starter-upper; Internet consultant). Maybe also guests/interviewees.

Possible course requirements: most importantly, weekly readings as well as online written, moderated discussions in a forum, blog, or mailing list (haven't decided yet), focused on the readings; probably a weekly video session; maybe 2-3 short papers (feedback offered if desired); probably, participation in choosing and trying out various social media tools, and then later helping to launch larger try-outs of our top choices of social media tools.

Grading: n/a
If you want a grade, I am willing to give you one based on written work.

Prerequisites: None checked, but you should be able to do upper-division college-level work, including (especially) coherent writing and careful reading; you must also be a "power user," someone who is not afraid to read about sometimes difficult technology concepts

Texts: all distributed free of charge; Larry Sanger's first book, Essays on Free Knowledge, will be given to all students.

Reading/Topic List (tentative, unfinished, additions requested)

NOTE: the following is not finalized in any way. If there are topics and readings you want included, please let me know!

I. Background

Internet Governance: History and Recent Developments

  • Laura DeNardis, The Global War for Internet Governance selections
  • Standards-setting bodies: W3C, IETF, IEEE, etc.
  • Governance/policy bodies: ICANN, WSIS, IGF, Dept. of Commerce, etc.

Technical Background: Internet Protocols and Standards

  • Laura DeNardis, The Global War for Internet Governance selections
  • SIntroduction to the Internet's protocols and standards
  • Languages in which standards are written: XML and JSON
  • Decentralized content standards: RSS and Atom
  • Older identity standards: oAuth and SAML
  • Self-owned(?) identity standards: DIDs
  • ActivityPub, ActivityStreams

Technical Background: Content Networks

  • Laura DeNardis, The Global War for Internet Governance selections
  • Old-fashioned P2P networks
  • CDNs
  • Modern torrent networks
  • Blockchain content networks and IPFS

II. The Theoretical Principles

Internet Freedom: Principles and Software

  • The very idea of Internet freedom
  • Eric Raymond, “The Cathedral and the Bazaar”
  • Larry Sanger, "The Early History of Nupedia and Wikipedia: A Memoir"
  • The rise of git, Github, and modern open source software

Free Culture and Self-Ownership

  • The GNU FDL
  • Selections from Creative Commons website materials
  • Lawrence Lessig, Free Culture, selections
  • The "own your own data" movement

Internet Privacy

  • Wacks, Privacy: A Very Short Introduction maybe
  • Schneier, Data and Goliath selections (maybe)
  • Selection from Mitnick, The Art of Invisibility
  • What is digital privacy?
  • Why is digital privacy important?
  • European and Californian legislation
  • The NSA's spy programs
  • The Chinese social credit system

Free Speech, Censorship, and Neutrality

  • Mill, On Liberty, Ch. 2
  • Sanger, "Why Neutrality"
  • Assange, Cypherpunks: Freedom and the Future of the Internet selections (maybe)

Online Anonymity and Pseudonymity

  • Selections from Mitnick, The Art of Invisibility
  • What encryption is, what it's for, why it's important, whether it's "too dangerous"
  • (maybe) Larry Sanger, "A Defense of Real Name Requirements"
  • (maybe) "The Rise of Digital Pseudonymity"

Digital Autonomy

  • Jaron Lanier, You Are Not a Gadget selections
  • Evgeny Morozov, The Net Delusion selections

Decentralization and Digital Identity

  • What is decentralization, anyway?
  • Gilder, Life After Google selections
  • What is “self-sovereign” identity mean and require?
  • The essential necessity of DID
  • The grave dangers of DID

III. Social Media or maybe Encyclopedias

Critique of Social Media

  • The Social Network (2010 film)
  • Carr, What the Internet Is Doing to Our Brains selections
  • Jaron Lanier, Ten Arguments for Deleting Your Social Media Accounts Right Now selections
  • Shoshana Zuboff, Age of Surveillance Capitalism selections
  • Newport, Digital Minimalism selections (maybe)

Decentralized Social Media Projects

  • IndieWeb and Mastodon
  • Conservative social media: Gab, Minds, Bitchute, and Parler

What Next?

  • Larry Sanger, "Toward a Declaration of Digital Independence" and "Declaration of Digital Independence"
  • Fair methods for organizing mass try-outs of social media tools


What Next?

I am an odd fish, I admit. Let me explain, as much to myself as to you, my life path and where it seems to be leading next.

My Strange Career

I wanted to be a philosopher when I was 17 in Alaska. So I started as an academic and earned a Ph.D. in philosophy in 2000, thinking I would become a philosophy professor. But I decided academia was not for me—as much as I did and still do love philosophy—and decided I would try to make a living from websites starting in 1998. I had learned to play Irish fiddle a few years earlier and actually made money teaching fiddle at that point for a year or so. (I still play for fun.) But around the same time, I first made money from a website called "Sanger's Review of Y2K News Reports," a leading and popular summary of news about the Millennium Bug.

Wikipedia. This led me to a job with Bomis, Inc., as editor-in-chief of Nupedia, in 2000. It was while in that role I started Wikipedia. The dot-com boom turned to bust in late 2000, and while Bomis did manage to get a lucrative advertising contract, the contract disappeared in 2001, which meant they had to lay off all their new hires. The site I had started for Bomis was already taking off exponentially, but it was not making them any money, so finally I was too laid off in early 2002, a little over two years after I started working on free encyclopedias. A year later I permanently cut ties with Wikipedia over disagreements over community management.

Project leader. That early experience cemented a sort of role I was to play for the next two decades. I became enamored of the idea of using the Internet to share knowledge. I was not quite an academic and not quite a programmer. I have done both, for money, but mostly what I have done is manage projects. But I am a nontraditional project manager, because my role has usually been combined with other startup-related roles, such as writer, editor, community leader, promoter, videographer, and generally whatever needs doing. Maybe a better description is "project leader," which is a good description of what I did for Wikipedia and most other projects I have worked on, when I was not acting as an adviser or consultant.

Educational nonprofits. Though I love startups, I am in it for the potential it has to teach the world, not for the money. So I have found myself working mostly on nonprofits and innovative educational and reference projects. I have usually led projects for other people, as when Charles Boone, an elderly philanthropist—a true philanthropist—hired me to start WatchKnowLearn and Reading Bear. (Both websites are under different ownership and control at present, so I have no control over their currently aged appearance.) I have been offered good jobs, as part of credible startups, but usually have passed them by because I was working on some (smaller) project I cared more about, one that I thought might have a chance to help the world grow in knowledge.

Homeschooling. I taught my boys to read when from age 1. They were both reading chapter books by age 3. (My successful method was what led Mr. Boone to fund Reading Bear.) So I have spent a fair bit of my time in the last 13 years thinking about and teaching my two sons. This built on a long-standing interest in developmental and educational theory—background that helped significantly with educational projects I have worked on.

Online Knowledge Organizer. After I kept doing similar kinds of projects, such as the crowdsourced news summary project Infobitt, I claimed the title "Online Knowledge Organizer." I did not set out to become one. In retrospect, it is not surprising that I should have moved into this role, considering that my Ph.D. specialization was in theory of knowledge. My philosophical interests and my career both have been driven by a fascination with systematizing knowledge. The Internet is a knowledge delivery system—or it could be if we used it that way. The combination of cheap publishing and the social aspects of Internet software have always held out the promise of educating the world. That is what has driven me toward the string of projects I have worked on.

Programming. In 2014 or so, I had the idea that we need to build a collection of all the encyclopedia articles in the world, and have a global competition to rate them. Soon I decided that what really needs to be done is to develop a technical standard for encyclopedia articles. I worked on the idea for a couple years as CIO of Everipedia. In fact, I got so excited by this idea that I went back to studying programming (which I had done a few times before) and learned HTML5, CSS3, JavaScript, and Ruby on Rails. Being a programmer has helped quite a bit in project management. The idea, which I later called the "Encyclosphere," became the Knowledge Standards Foundation, which is still under development.

What I'm Doing Now

Last January I launched Sanger Consulting with Sanger.io, and started accepting new clients. Let me share a few examples of what I have been doing for clients (who will remain unnamed), and then explain where I see this going.

Project planning with request for bids. I wrote a summary (but still fairly detailed) project plan with a request for bids for an app that a nonprofit wants to build, discussed them with multiple possible contractors (a few of which remarked on the useful detail of the document), and negotiated price reductions based on in-depth experience with this sort of app.

Market studies. For two different clients, I have prepared or am preparing in-depth written studies of markets: one, about the existing competition for a brand new kind of website (which we dub "social research"), and the other, for children's educational apps. I can do this sort of analysis very quickly and accurately and in a way that applies directly to the project itself.

Feedback. Pretty much all my clients so far have gotten detailed and useful critical feedback on whatever they have built, whether they asked for it or not.

Study leading to video scripts. For one development shop with a very impressive app-building tool, I read about the tool, installed examples of it, and (using my handy programmer skills) set up a development environment for its use. With this study under my belt, I wrote two explainer video scripts for them to use, and our relationship continues.

White paper feedback. I gave detailed feedback on a white paper (both the text and the underlying business innovations represented in the text).

Advisory. I advised a young recent grad for a cut rate, read and gave feedback on relevant papers he wrote, and chatted about his project ideas.

New app project plan. I am mostly finished writing a project plan for an innovative news rating app that a startup wants to replace its current app with. This is a lot of fun. The document describes a plan for cheap quick tests of the idea, which is a good idea whenever possible.

What's Next

At least one of the projects I'm helping with now will probably turn into a long-term project. But I intend to keep my hand in consulting generally, just so I have something to fall back on and so I can justify helping really interesting projects that pop up (as they seem to do quite randomly for me).

Out of all of the things above, the things I like to do most, I guess, are writing (I must like it since I do that so much for free here on this blog), giving detailed feedback on existing projects (explaining how to make them better), and developing new project plans.

I look forward to being able to spend the time developing the Encyclosphere; right now that must take a back seat to developing the consultancy. Also, eventually, I will write a proper book—not that I have not already written several book-length manuscripts. In fact, I have been working on one recently.


Launching Sanger Consulting

I'm announcing an Internet consulting business. Learn more at a new website:

> sanger.io <

I've consulted briefly with many companies over the years. Nobody seems disappointed.

The thing that I can do possibly better than anyone is to give a complete analytical review of your site(s) and app(s), identifying issues and areas of improvement, put in my recommended priority order to fix. I am very fast at producing pages and pages of such feedback—high density, high impact.

I am also quite interested in conceiving and architecting new websites from the ground up, something I have a lot of experience doing.

There are many different types of projects I could get interested in. Generally speaking, I accept jobs that I think will potentially have an important benefit to humanity. Life is too short for anything else.


The challenges of locking down my cyber-life

In January 2019, I wrote a post (which see for further links) I have shared often since about how I intended to "lock down my cyber-life." That was six months ago. I made lots of progress, but it seems I'm far from finished, too.

In that post, I explained three problems about computer technology (viz., they put at risk our security, free speech, and privacy). I resolved to solve these problems, at least in my own case, by executing a lengthy to do list involving such things as adopting a better method of managing my passwords and quitting social media.

So the problem is that I didn't quite finish the job. Finishing the job, as it turns out, is kind of difficult. There's always a little more that can be done. Simple-sounding tasks, like switching browsers, can have aspects that one just never get around to. So in the following, I'm going to discuss the things I haven't actually done. Perhaps in a later post I'll make a to do list that you can use. But first I need to just talk things through.

  1. Stop using Chrome. Well, of course, I did stop; that was easy. I'm not sure when the last time I opened Chrome was. I switched to 95% Brave, but also 5% Firefox for those times when Brave seems to have a weird Javascript issue (what's up with that, Brendan Eich?). But I still have so many questions:
    • What do all of these different features of Brave do, really?
    • Do they really work? Are they adequate? Are there other plugins I should be using on top of what is built into Brave?
    • When I don't want a website to be able to infer who I am, must I use the Tor feature? Does browsing "Privately" help at all? (It deletes cookies, OK, but...)
    • What should my cookie strategy be? Should I generally browse with cookies off?
    • What are best practices for browsing generally? I remember reading a bunch of things in The Art of Invisibility that I thought were good ideas but which I don't think I ever implemented.
  2. Stop using Google Search. I use DuckDuckGo about 90% of the time, StartPage (which uses Google results) for the 10% when I think Google might have better results (which it does maybe 20% of the time, to be honest—that's when I'm dissatisfied with what I get from DDG). Sadly, I do rarely use Google News when I need to look more deeply through the news. So:
    • How do I comprehensively search recent news without using Google News? (I just haven't investigated the question, that's all. There are lots of apps, but are any really comprehensive while also respecting user privacy?)
  3. Start using (better) password management software. Don't let your browser store your passwords. And never use another social login again. So I'm doing pretty well here. I did stop using social logins many months ago and never looked back; if you're already using a password manager, they aren't an added convenience. The password manager I use is Enpass, which is easy to use and allows me to sync directly between my devices and my NAS, bypassing the cloud (unless you want to call my NAS a "private cloud"). My only misgiving is that Enpass is not open source, which means they could be sending copies of my passwords to their servers, and customers (who would otherwise be helped by the OSS community) wouldn't be any the wiser. Now, I guess I trust Enpass, but I'm thinking:
    • Is there in 2019 a password manager that is (1) easy to use (has autofill capabilities in browsers, at least computer browsers), (2) open source, and (3) allows me to sync my passwords across iPhone and two Ubuntu computers (using WebDAV)? I haven't taken the time to look into Bitwarden yet.
    • I have inadvertently saved a few passwords in my browser. Gotta delete them.
    • I am still using old, insecure passwords on many minor accounts I haven't opened in years. I should at least do an audit of the most important accounts I haven't touched in a while (that could pose a danger) and change those passwords.
    • I have to get my wife and younger son using password managers, both for their sake and because *ahem* it's possible they could be a backdoor into my systems.
    • WebDav is a secure protocol, right?
  4. Stop using gmail. Well, I'm mostly done with this; I pay for my own hosting, although the data itself is on somebody else's server, and I use my own domain name (sanger.io). But I still have a Gmail account, and that simple fact is still bothering me. Part of the reason for this is that there are still some accounts I made that made use of my Gmail account, and I might lose control of them if I delete my address. The other problem is YouTube. In sum:
    • Is it adequately secure that I host my own email? I've protected my privacy against incursions by Gmail (as long as there isn't a Gmail user in the thread...), but shouldn't I be using a service that provides zero-knowledge encryption? That would be quite a bit more expensive, I think.
    • Again, I need to review all my old accounts for importance, and switch the email address and passwords from Gmail to my personal email address.
    • Probably, I should turn on a vacation message for a couple of months, just on general principles, before permanently deleting.
    • Wait, is it possible to delete my Gmail account without entirely removing my Google account? Oh good, yes it is.
    • I still haven't downloaded and started separately maintaining my own address book (this is a huge oversight on my part). I think I should do that before deleting Gmail.
  5. Stop using iCloud to sync your iPhone data with your desktop and laptop data; replace it with wi-fi sync. This is mostly done. I mean, I flipped some switches, but completely extricating yourself from iCloud if you've been actively using it isn't simple. I went through a bunch of different menus on my phone. On the other hand, I think my son is still using my account's free iCloud space on the MacBook I gave him (that was when I switched to Ubuntu). So I'm not sure.
    • Investigate thoroughly how to ensure that I'm no longer using iCloud and whether I really for any purpose must use it if I'm going to keep using my iPhone. Pretty sure I don't.
    • Discuss with/negotiate with/frown sternly at son to determine whether he really needs to use iCloud. He likes the "find my iPhone" feature. Ugh.
  6. Subscribe to a VPN. Done! But:
    • Look again into my choice of VPN now that I've been using it for a few months.
    • Should I not perhaps give myself another option? Other people switch between VPNs. I haven't had a need to yet.
    • VPNs might protect you from being protected from unsophisticated identification tactics, but they don't protect you from malicious/tracking cookies (see above), digital fingerprinting, or VPNs who lie and/or collude with governments or criminal organizations about whether they keep logs. What really is the best way?
  7. Get identity theft protection. Done; this is one area where I have nothing further in mind to do.
  8. Switch to Linux. Yeah, baby! Ubuntu installed on my desktop and laptop. Very happy with it. So much nicer in many ways than both Windows and Mac. Not looking back. I very much recommend it. But:
    • I'm not sure I've optimized my systems for security adequately. Need to do an audit.
    • First, I need to do research on what such an audit would look like. Maybe this, maybe more.
    • Ugh, if I'm going to do this right, I need to study Bash more so I can really understand networking (like iptables) better.
    • And then I need to study infosec properly. Something like this?
  9. Quit social media, or at least nail down a sensible social media use policy. I quit and have nothing left to do (as far as I know) with Facebook, Instagram, Quora, and Medium (at least). This is still, however—it turns out—is a huge pain point for me. I'll just dive into the individual issues:
    • I said I'd stay in touch with family and friends via a mailing list. I haven't been doing that. I'm sorry. But there's a huge difference between interacting randomly with people I know and pushing out my personal news to a bunch of people's email inbox.
    • Hence I'm inclined to think I need to start interacting a lot more on some alternative social network. But none seem to be "happening" yet, although there are some. We're getting there; we're getting closer.
    • So maybe I should organized another strike or a mass try-out as I said. But ugh. Both of those are a lot of work and distract from other important priorities. I'm not trying to be a rabble-rouser except to solve my own problem here, honest.
    • YouTube is increasingly problematic. But I still use it. BitChute and others have some copies of videos I want to see, but definitely not all of it. Maybe I should use a proxy/republisher/search provider of some sort, but wouldn't that still enable Google/YT to track me? Well, how would I use it without being tracked—like an anon account I use only behind Tor or something? Is that even feasible? Could I live without it? Should I? (I would be cutting myself off from a lot of stuff I want to keep up with. Are there other ways to keep up with it?)
    • Twitter: well, OK, just in the last few weeks I've started posting more randomly as I used to, not just in promotion of my blog and Everipedia and programming. Again, I'm sorry. I've been a bad boy. I think I should rein myself in. Right? No doubt. I should probably just re-read this. Maybe update it.
    • I gotta think about installing my very own Mastodon instance. It could get big. I have a friend (several friends) who could help. Hmm. This might be a good idea for me. My friends would join. Then I'd just have to get them to interact with me and each other there. Could work!
  10. Stop using public cloud storage. This is 90% done! I installed a NAS, all my files are on it. But:
    • I need to do a proper sync with my desktop instead of accessing via the (convenient, but slow and not right for daily workstation use) browser and mobile apps. (You'd know what I meant if you had a NAS. This is a problem you want to have. You just want a NAS. You will thank me.)
  11. Nail down a backup plan. I have a zero-knowledge encryption service...but in the cloud. So it's done and I think it's secure, but I'm not that happy about it. For backup, I'll switch to another less centralized solution when I am convinced that one works properly with all the features I need; I'm pretty confident that none do yet, but there are plenty of people working on such.) Issues:
    • All righty then, how are those decentralized alternatives coming along?
    • Is zero-knowledge encryption backup really secure? Come on, really? And the service I'm using isn't open source, is it? That sucks.
    • I haven't organized my old backup files (which used to live on a large old external drive) and investigated them generally. I did back them up, right? Surely I did. Need to triple-check.
  12. Take control of my contact and friend lists. Well, I don't store my active contacts in iCloud, so that's a start. The most up-to-date database is the one that is local to my iPhone. I really haven't made much a start on this:
    • I don't use my Gmail address book, but Google still has access to it, so that sucks. Really need to finally delete Gmail so I can delete those contacts. I feel like I'm letting my friends down by letting them keep that data.
    • Pretty sure Microsoft still has some contact data in the cloud as well. Looks like I'll have to fire up the crappy old Windows partition, investigate, and nuke.
  13. Stop using Google Calendar. So here is a way in which I am cooler than you. (There aren't many ways, but this is one.) My calendar works via my NAS. I set it up using CalDAV, which frankly I wouldn't have been able to do if I weren't comfortable with rather geeky stuff. That isn't to say you couldn't engage your geeky friends or family members to set your NAS up with this functionality. I still use the Apple app but they don't have my data; it updates directly with my NAS via CalDAV. I even gave an associate of mine an account for updating my calendar directly, something I wouldn't feel so comfortable doing on gCal. Anyway, no adjustments needed at this time.
  14. Study and make use of website/service/device privacy options. OK, so now this is a bit of a problem. I never really did this properly. I spent many hours, but I was haphazard and I left out a lot of important sites. Indeed there are some sites that perhaps I shouldn't be using at all if I really want to be hardcore about privacy. Let me give a partial list, with notes:
    • Amazon: They're pretty goddamn evil. They do store a hell of a lot of data about you. But I should check them out some more and make sure of my harsh judgment, because just getting rid of them would be pretty difficult. They're so convenient. But the rest of the Internet is very big, you know. I could look stuff up on Amazon without logging in and not using cookies, and then buy elsewhere (e.g., books from Powell's in Portland, or whatever).
    • Netflix: It (like Prime Video, which we ditched) is becoming more like TV used to be, as someone predicted not too long ago. As these services proliferate, you'll have to subscribe to many if you want to have good access. Well, my family went without any access (just DVDs) for years. Didn't do us harm. I know my wife wouldn't complain, except insofar as the boys would complain. And is it really necessary to get rid of a big source of entertainment just to secure your privacy?
    • Expedia: Do they sell my travel data? Well...so should I buy direct from the airlines? Are they any better?
    • Etc. I need to go through assorted other apps I have installed and accounts I have opened, which I have ignored but which might find ways to track me, and which it might actually benefit me to uninstall/remove account. This could extend this to do list very long indeed.
  15. Also study the security and privacy of other categories of data. I haven't done this at all. Another long list, in each case asking: well, what are my risks to security and privacy, and how can I mitigate them?
    • banking data
    • medical data
    • automobile data
    • telephone/cell data
    • credit card (including shopping) data: Is it getting quite unreasonable to make a regular habit of buying gift cards and using them to avoid putting all that shopping data out there? Well folks, I'm not afraid to admit that I'm thinking: maybe.
  16. Figure out how to change my passwords regularly, maybe. I've been thinking about this one and I'm fairly sure I'm not going to bother with most, but I do have more refined ideas about how to approach this. I think this is reasonable (comments welcome):
    • Make a list of unusually sensitive passwords. Not too many (maybe 5-10) or you won't do the next step:
    • Change those ones quarterly.
  17. Consider using PGP, the old encryption protocol (or an updated version, like GNU Privacy Guard) with work colleagues and family who are into it. I looked into this but never followed through. Won't take long. Just need to take the time, and then start using it with those very few people who are geeky enough to use it as well.
  18. Moar privacy thangs. None of these are done.
    • Buy a Purism Librem 5 phone. Just to support the cause. I might actually do this, but I've been waiting for more evidence that I'd actually, you know, want to use the damn thing. But I sometimes think I'm morally obligated to spend the money anyway, because the thing so badly needs to exist.
    • Physical security key. Maybe just for the laptop, when I'm traveling. I have one. I might get a different one (since this one was given to me, and so...). The biggest trouble is to pick one out and then learn how to use it.
    • Encrypt my drives. Is that even possible after I've started using them? No idea. Is it really worth it? Don't know. Need to investigate.
    • Credit card use for shopping. I could buy some prepaid credit cards or gift cards; this is a Kevin Mitnick suggestion, which he goes into in great detail in The Art of Invisibility. I might not go into all of that as I am not a federal criminal. My wife, who is also not a federal criminal, might go in for this as she is soo private. "How private is she?" you ask. She's so private, she would probably not want me to say that she's very private. True!

What have I left out? A fair few of my readers know all this stuff better than I do. Can you answer my questions? Please do so below.


Toward a social contract for social media

Last week, I led a "strike," or boycott, associated with the hashtag #SocialMediaStrike, directed at the giant, centralized social media services. Though throttled by Twitter and no doubt by others, the brief campaign led to massive use of the hashtag, many people carrying out the strike, as well as dozens of news stories from around the world.

Here I will tell the story of what happened, make some observations about what we might do next, and then make a rather specific proposal, what we might call a "social contract" for social media companies.

What happened

Let me tell the story briefly, from the beginning.

I joined Facebook around 2006 and Twitter in 2008; I never felt quite right about them, and my objections piled up over the years. After I decided to lock down my cyber-life, I abandoned as much of social media as possible. Facebook was a challenge, but I permanently deleted my account, and haven't looked back. It wasn't hard to leave Quora, Medium, and Instagram. But I was still on Twitter for career reasons, and it bothered me that I had abandoned my Facebook friends. I thought, "There's got to be a way to get my friends to join me on some alternative social media network." But how? Then it occurred to me that if somebody made a browser plugin for my friends, that would insert my posts on Minds (for example) into their feeds on Facebook, and which would enable them to reply to me, that would go some way to making different social media networks interoperable. This idea got a lot of play on Twitter.

The more I thought about it, the more I decided that the lessons I had learned as part of a blockchain company since September 2017 (Everipedia) were applicable to social media as a whole: the whole social media system needs to be decentralized. What does that mean, exactly, though? There are several ways to think about it:

  • We should own (ultimately control the distribution of) our own data. Nobody should be able to shut us down, just as nobody can shut down our blogs.
  • We should have total control over our own feeds, i.e., our user experience as we use social media apps. This includes the sorting algorithms
  • Social media apps should not be "silos." They should share data; they should be interoperable; if you post on one, your data should be available on all the others (that do not specifically block you or your post).
  • More than just sharing data, the data they use should be entirely independent of the apps that contain them. That means social media apps become, essentially, social media readers analogous to blog/news readers.
  • To continue the analogy, just as blogs and blog readers exchange data via the common (practically universal) RSS standard, so social media readers should exchange data via a common social media standard.

My employer (Everipedia) kindly supported me as I spent some time developing this idea in speeches and a Wired article. In writing the latter article I hit upon the idea of using social media to organize—ironically, sure, why not?—a social media strike, and to write the Declaration. Whoever I talked to about it loved it. It resonated for people with both left politics and right. That's interesting and perhaps unexpected, because it is an idea that ultimate concerns Internet politics itself. It turns out that when it comes to Internet politics, almost everyone is still essentially "liberal": we all want to be free to publish and to be in control of our own experience. (Matters, of course, are different when we consider whether we want other people to be free to publish and to be in control of their experience. But when it comes to our own, we want to be in control.)

That was last March. I had several months to organize something bigger and more formally, by reaching out to a lot of influencers and get them on board as early signatories of a Declaration of Digital Independence, but whenever I started to make cursory movements in that direction, I frankly lost heart. The reason, as I eventually realized, was that the only way I was going to do this is by reaching out to regular people through normal channels, out in the open—you know, real grassroots organizing. Everything else felt (and might actually have been) philosophically inconsistent. So a little over a week before July 4, I got to work.

I cleaned up the various documents and started pushing them out on various channels, but especially on Twitter.

At first it looked like it was all going to be a dud. Then, slowly but surely, different "blue check marks" and then news outlets started showing interest. When the BBC and Fox News' Tucker Carlson took an early interest last Monday (July 1), that really opened the floodgates. Here's a list of coverage a colleague collected:

  1. https://www.youtube.com/watch?v=nK6BHGu9SD4 (Tucker Carlson interview)
  2. https://twitter.com/questCNN/status/1147240877892481031 (CNN interview)
  3. https://www.cnbc.com/2019/07/05/wikipedia-co-founder-larry-sanger-slams-facebook-twitter-social-media.html (widely distributed and discussed)
  4. https://finance.yahoo.com/news/wikipedia-founder-calls-for-social-media-strike-to-protest-power-of-giants-like-facebook-184501284.html
  5. https://www.bbc.com/news/technology-48825410 (ditto; first major coverage)
  6. https://www.newsweek.com/reddit-technology-social-media-strike-larry-sanger-facebook-twitter-1447549 (ditto)
  7. https://nypost.com/2019/07/02/wikipedia-co-founder-calls-for-social-media-strike-over-privacy-issues (ditto)
  8. https://www.zerohedge.com/news/2019-06-29/wikipedia-co-founder-unveils-declaration-digital-independence (first coverage by anyone, I believe)
  9. https://thenextweb.com/tech/2019/07/04/reddits-r-technology-goes-dark-as-part-of-socialmediastrike (/r/technology's blackout in support was widely reported)
  10. https://www.spiegel.de/netzwelt/web/larry-sanger-wikipedia-mitgruender-ruft-zu-social-media-streik-auf-a-1275236.html
  11. https://www.elpais.com.uy/vida-actual/motivos-cofundador-wikipedia-llama-huelga-redes-sociales.html
  12. https://www.repubblica.it/tecnologia/social-network/2019/07/01/news/wikipedia_lancia_sciopero_social_stop_il_4-5_luglio_per_un_sistema_piu_libero_-230074747
  13. https://thehill.com/homenews/451471-wikipedia-co-founder-wants-two-day-social-media-strike-to-highlight-privacy-issues
  14. https://www.theregister.co.uk/2019/07/01/wikipedia_founder_calls_for_social_media_strike
  15. https://observer.com/2019/07/wikipedia-founder-larry-sanger-july-4-social-media-strike
  16. https://www.salon.com/2019/07/03/wikepedia-co-founder-plans-social-media-strike-will-it-work
  17. https://www.marketwatch.com/amp/story/guid/D29FC838-9D0E-11E9-956A-E9AF1A718551
  18. https://www1.cbn.com/cbnnews/world/2019/july/wikipedia-co-founder-calls-for-social-media-strike-july-4-5
  19. https://siecledigital.fr/2019/07/01/le-cofondateur-de-wikipedia-invite-a-la-greve-des-reseaux-sociaux
  20. https://www.rp.pl/Spoleczenstwo/190709913-Tworca-Wikipedii-wzywa-do-strajku-w-mediach-spolecznosciowych.html
  21. https://fossbytes.com/wikipedia-co-founder-social-media-strike
  22. https://twitter.com/BBCTech/status/1145654230558134274
  23. https://ici.radio-canada.ca/nouvelle/1205730/greve-facebook-twitter-larry-sanger
  24. https://twitter.com/JeanneCBC/status/1145723863210352641
  25. https://twitter.com/GarethM/status/1145712804118351874
  26. https://pawoo.net/@masterq/102365444906120134
  27. https://gizmodo.com/wikipedia-co-founder-picks-a-nice-day-to-log-off-1836017140
  28. https://www.presse-citron.net/quand-le-cofondateur-de-wikipedia-appelle-a-la-greve-des-reseaux-sociaux
  29. https://libertysentinel.org/wikipedia-co-founder-boycott-social-media
  30. https://themerkle.com/can-a-social-media-strike-be-pulled-off-in-2019
  31. https://samnytt.se/social-media-strejk-utropat-den-den-4-och-5-juli
  32. https://www.reddit.com/r/technology/comments/c7g36c/social_media_strike_proposed_for_july_45_by
  33. http://mugayir.com/wikipedia-ceosundan-sosyal-medya-boykotu-icin-cagri
  34. https://actualidad.rt.com/actualidad/320005-cofundador-wikipedia-convocar-huelga-redes-sociales
  35. https://elpais.com/tecnologia/2019/07/03/actualidad/1562153010_528990.html
  36. https://www.commondreams.org/news/2019/07/01/demanding-users-fight-data-and-privacy-protections-wikipedia-co-founder-calls
  37. https://www.observalgerie.com/style-de-vie-et-loisirs/hitech/cofondateur-wikipedia-appelle-greve-reseaux-sociaux-4-5-juillet
  38. https://www.reddit.com/r/tech/comments/c7ipl7/social_media_strike_proposed_for_july_45_by
  39. https://twitter.com/thehill/status/1146384654578196481
  40. https://wnd.com/2019/07/wikipedia-co-founder-urges-social-media-strike
  41. https://www.numerama.com/politique/530423-le-cofondateur-de-wikipedia-vous-invite-a-faire-greve-avec-lui-contre-facebook-twitter-et-youtube.html
  42. https://www.reddit.com/r/IAmA/comments/c8s87d/im_larry_sanger_wikipedia_cofounder_everipedia/
  43. https://www.newsmax.com/newsfront/wikipedia-social-media-data-privacy/2019/07/03/id/923114/
  44. https://www.verdict.co.uk/decentralised-social-media
  45. https://twitter.com/PrisonPlanet/status/1147122675917185024
  46. https://summit.news/2019/07/05/wikipedia-co-founder-slams-zuckerberg-big-tech-for-appalling-internet
  47. https://twitter.com/bitchute/status/1147336649883283456
  48. https://reclaimthenet.org/larry-sanger-twitter-facebook
  49. https://reclaimthenet.org/larry-sanger-declaration-of-digital-independence
  50. https://twitter.com/svbizjournal/status/1147558662950592519
  51. https://www.bizjournals.com/sanjose/news/2019/07/05/larry-sanger-wikipedia-social-media-strike-fb-twtr.html
  52. https://www.standard.co.uk/tech/social-media-strike-larry-snager-internet-dark-a4183046.html
  53. https://www.cnet.com/news/reddits-rtechnology-goes-offline-for-july-4-social-media-strike
  54. https://www.curvearro.com/blog/why-social-media-is-ready-to-go-on-strike
  55. https://tribetica.com/can-a-social-media-strike-be-pulled-off-in-2019
  56. https://uk.news.yahoo.com/social-media-strike-why-favourite-083241784.html
  57. https://world.einnews.com/article/489949068/7umkU6G_w9ukLXsk
  58. https://inside.com/campaigns/inside-social-2019-07-05-1568KII3/sections/wikipedia-co-founder-calls-for-social-media-strike-121855

There was probably more. Despite this amount of coverage, I don't think the story ever trended on Twitter or Google News.

That the effort was throttled by Twitter is obvious. Tweets were placed behind "sensitive content" warnings—never with any explanation, but often with high irony—even when I merely shared one of Twitter's own memes with the #SocialMediaStrike hashtag. There also seemed to be games going on with the hashtag itself.

What inroads did the effort make? There were a few notable "blue checkmark" supporters, but on the whole the result was a creature of grassroots efforts and direct reporting on those efforts. No major politician supported it; no A-list conservative or libertarian YouTube star or pundits supported it; no high-ranking lefty, rightly complaining about "surveillance capitalism," joined; none of the leading Silicon Valley darlings, often critical of social media, joined; etc. In short, the Establishment pretty much uniformly took a pass—except, oddly, for the massive amount of news reporting as I said, and despite that reporting.

The lack of Establishment up-take I chalk up to the fact that it was started as a grass-roots effort and thus was beneath their notice; presumably, their support would need to be courted in advance. But as I said, I specifically decided not to court their support in advance. I'm not particularly sorry I didn't, even though clearly it would have been a bigger deal if I had. It would have been bigger, yes, but the rank and file would be wondering much less about the genuineness of the movement. Besides, I'd have to worry about movement politics and personalities. What we've demonstrated is that this movement has legs without any A-list endorsements. And I don't count myself in that group. I'm a B-lister at best. Heck, I've only got 6,000 followers and Twitter gave me my own blue checkmark only a couple months ago. My interest will continue to be that of a disgruntled social media user who also happens to be a casual Internet theorist.

Next steps: some notes

After announcing that they were back from the strike, many people asked what the next steps were. Some suggested we do another, longer strike; I'm not opposed to that. Many suggested that we start new social media networks; I think some of these people really didn't realize that there were plenty under development. Representatives of several alternative social media networks reached out to me, including CEOs of two or three well-known ones. It's all been quite confusing and so you'll have to give me time to get it sorted out, especially since I'd like to be doing other work too, of course. Helping to organize this effort is at best a temporary sideline for me.

First, then, let me make a few observations about future strikes:

  • We still haven't shown the whole world that there is a massive latent demand for decentralized social media and data self-ownership.
  • Simply doing another strike (perhaps a longer one) might be more effective than last week's strike.
  • But a similar strike anytime soon would almost certainly be ignored by the press and many potential participants. It would be better to plan any follow-up strike for some time months from now—even next year on the same days.
  • There doesn't have to be a centrally organized strike. You can declare yourself to be on strike on any social network you like, and maybe repeat the message daily or weekly, and then don't interact except to promote your strike.
  • Here's the thing. If there's going to be another big organized strike, I'm not going to be the one to organize it. I'm a reluctant organizer of this sort of thing, to be honest. As I said, I'm not a specialist or working full-time on this stuff. So someone else, or some other organization, would have to organize it. I might well participate, though, if someone else organizes it.
  • Another proposal I saw is to have regular planned strikes, like once a month. This strikes me as unlikely to make big inroads, but of course it all depends on execution.
  • There's a whole aspect of any such effort toward data ownership, privacy, and decentralization that might need special attention, I think: teaching the ignorant. A common reaction to the strike was, "Wait, why should we care about privacy again?" I explained that before, even why we should be hardcore about privacy, but much more needs to be done on this. Similarly with free speech. So many people, especially younger people, have never learned why free speech is so important.

But there are maybe more important issues aside from any strike:

  • I'm not aware of anything like an industry-wide agreement or commitment to interoperability and to settling on common standards. I'm interested in helping to broker that or to kick it off, although I probably wouldn't want to participate, as that is not my area.
  • I'm not interested in endorsing or joining any social media companies as an adviser. Though I am often asked, I am an adviser to almost no one. Thanks for asking.
  • In my Wired paper, I describe "mass try-outs," i.e., as many people as possible descends en masse on one particular social media alternative, then another one a week later (or whatever), for as long as necessary.
  • Here is a message for alternative social media CEOs: there is strength in numbers. If you fight each other for the giants' table scraps and leftovers, you'll get nowhere. If you join forces to make each other interoperable and to organize mass try-outs, you'll not only get a massive amount of publicity, you'll get a massive amount of new users. A rising tide lifts all boats. Please act on this observation.
  • I'm happy to try to bring you together for these purposes, if you're not already making satisfactory headway, but I don't want to be part of the organization. That's your business, not mine. I have no interest in being an interloper. This is not just because I don't like to be rude, it's because I don't know you or trust your organizations (yet), and I would like to stay independent of the fray.
  • I do have one piece of advice for such an organization: you can't include all alternative social media organizations in the biggest, most serious mass try-outs (I think), like every little Mastodon instance. Some will not make the cut, because they're not big enough.
  • That said, if you (social media companies wanting to organize mass try-outs) want massive grassroots support, the best way to organize which sites to follow is to use some objective and publicly-verifiable metrics of engagement, such as Alexa or Quantcast, number of social media mentions, or something else like that. Another option is to agree on a list of judges, and they democratically determine a list of n networks to do a "mass try-out" on.
  • Of course, the also-rans should also have their (perhaps briefer) day in the sun. But the main event will feature some of the unquestionably leading alternative social media networks and will have more days and more publicity, naturally.
  • That is, as long as they really are provably committed to decentralization, self-ownership of user data, and interoperability. But we would have to determine their bona fides.

So what should we do next?

Proposal: A social contract for social media

Here is a proposal that I would like your feedback on.

I'm thinking of trying to get the CEOs of alternative social media companies—and then, perhaps, the big ones—to agree to a set of principles.

Once agreed and signed, I would be happy to help broker an announcement that a deal, along these lines, had been reached.

And then we could do some "mass try-outs" of at least some signatories, in conjunction with a new social media strike. But I think the first step is to get the alternative networks on board.

What principles? I don't think the Principles of Decentralized Social Networks is specific enough. What we really need to do is to operationalize those very general principles. So, something like this:

  1. We, representatives of social media networks agree to work with each other to adopt, adapt, or create a single, commonly-used, commonly-developed, and mutually satisfactory set of standards and protocols for making our networks interoperable, regardless of what other and underlying technologies we may use.
  2. "Interoperable" networks are those in which, at a minimum, posts that appear on one network can appear on other networks of a similar kind. Thus if one network supports microposts only, then microposts that originate on other networks can appear there. Similarly with longer posts, images, videos, and so forth.
  3. We will make diligent efforts support what might be called personal social media accounts as soon as available, so that there is support for peer-to-peer social media that does not require any networks or instances at all. In other words, these would be user-owned social media accounts, made according to standards that enable a person to post a social media feed entirely independently of any social media network. We will work diligently toward offering full technical support for users to post directly from feeds they directly and individually control onto our networks.
  4. As we become more fully decentralized, we will make user data fully portable. In other words, when a fully decentralized and interoperable network comes online, we will enable users to export their data in a format that allows them to host the "ur-version" of their data elsewhere.
  5. There is no requirement that our networks must carry all types of social media content; we may restrict what we carry by medium. Some networks may focus on microposts, others on blogs, and still others on photos or video. The standards and protocols should cover all uses of all these media, sufficient to specify how they are used by the big social media networks. As distinct new kinds of social media are invented, these too should be specified as well.
  6. It is also to be expected that we will support all features supported by the standards and protocols. For example, while some networks might support a wide variety of "reaction" features, others might have just "like" or "dislike," and some might have none at all.
  7. We, the social media networks that are party to this public pledge, each retain the right to moderate all content that appears on our networks. Neither any central body nor any specially commissioned organization has the right to determine what may and may not appear on our networks. We may be as open, or as restricted, as we wish.
  8. We acknowledge that there are other serious problems associated with decentralized networks—such as, perhaps especially, spam and problems associated with real-world identities. We will work diligently to solve these problems in a way that does not create a potentially corruptible system, or an ideologically-driven system of viewpoint-based censorship.
  9. Whether or not our own projects will support a private messaging service, the standards and protocols we support will include end-to-end, strong encryption for individual private messaging as well as private group chats.
  10. The only requirements for a network to be join this decentralized system are neutral technical protocols; the only requirement for a person to create an account will be purely technical ones. There will be no application or vetting process, any more than there is for the registration of a new domain name, blog, or email provider or address.
  11. The standards and protocols we adopt will be open source, not proprietary.
  12. We will create or place our trust into, and continue to support, an open and democratic organization that manages these standards and protocols. We may and should be expected to object if we notice that biased or corrupt procedures, particularly those operating behind the scenes, are shaping the development of these standards and protocols.
  13. We will particularly resist incursions by governments and giant corporations that attempt to hijack the standards and protocols for purposes of censorship, surveillance, or profit-making opportunities not open equally to all.
  14. We are committed to ease of use—so that people can enjoy the full benefits of owning their own data and participating in a decentralized social media system without installing their own server or doing anything else that requires technical skill beyond that of the plain non-technical person.

Please read that over and let me know what you think.

I propose that social media CEOs negotiate with each other on some such set of principles, then all agree upon them. The benefits of doing so would be tremendous:

First, this should light a fire underneath all and create a mutual, shared understanding about the ultimate goals of the new social media architecture. It would constitute a "Manhattan Project" for redesigning the Internet (or, as one organization has it, "redecentralizing" the Internet).

Second, it should also give users enthusiasm about alternative social media, by giving them some assurance that networks they reward with their participation today will remain true to certain basic principles. This is, as Internet entrepreneurs can surely agree, very important.

Third and finally, this will also give journalists, commentators, and technical professionals commonly-agreed grounds for criticizing the big social media networks. Perhaps they will want to claim to be moving toward decentralization; but if they cannot satisfy the requirements of this agreement, we can deny that they actually are decentralized. If the public shows tremendous support for decentralization in the sense that is agreed to, this will make it ever harder for social media giants to resist moving toward a decentralized future.

I know I haven't come to grips with all the issues involved here, and I know there are real experts who have. So help me to edit (or completely rewrite) the above so that it is something that we should expect social media networks to accept—assuming they really do take decentralization seriously.

The above is a very rough first draft at best. How should these principles read? Please discuss below.


How to write an app (that respects privacy and supports security)

Some difficult-to-meet requirements

  1. Be open source. Don't make users have to trust your black box. I don't want to have to trust you. I don't know you.
  2. Don't just release your in-house source code. Develop in public; practice outreach to OSS developers to loop in others; make distributed code reviews a standard practice.
  3. Be fully open source. Don't depend on proprietary vendors or use APIs that, for example, make sensitive user data open to systematic collection.
  4. If you must keep some of your server-side code private (it could happen), then hire a third party to do public, independent audits of security and user privacy issues. I don't want to take your word for it. The more often an audit is performed, the better.
  5. Don't use a business model based on selling or datamining user data. Prefer subscription, non-targeted ad, and other non-intrusive models. Maybe tokenize. Prove to your users that this is your business model, and go on the record loud and clear that it is.
  6. Have a clearly-worded privacy policy that (as much as possible) lacks vague language and is highly specific about exactly how user data is used. Make many clear positive assertions about what you do and don't do with user data, in various categories that users might worry about. Include a non-legalese gloss of both the main document and the latest updates.
  7. If you have a cloud app with any data that some users might reasonably want to be kept private (which is almost all cloud apps), store the data using zero-knowledge encryption or other similarly secure tech whenever possible.
  8. When private user data needs to be processed, do it client-side, not server-side, so that you don't need to see the data.
  9. Use strong, standard, end-to-end encryption for all user-to-user communication features.
  10. Obviously, follow best modern practices when it comes to user authentication. E.g., save hashes of user passwords.
  11. If you must make it easier for users to log in by using social media/OAuth logins, then at least give users the clear and prominent option of using their own password for your site. (I strongly advise users to use their own passwords, tracked with a modern, secure password manager. Social media logins are a backdoor for corporate surveillance.)
  12. Conspicuously distinguish between public and private data. Of course, sometimes users don't care about privacy; they want the widest possible exposure for a public post or profile. Just make it really, really clear what information is exposed to whom, and especially whenever anything is not 100% private (and kept that way through encryption).
  13. Support various kinds of two-factor authentication.
  14. Don't keep unnecessary logs of user/visitor data. Never use feckin' Google Analytics!
  15. Make it hard for governments to get user information out of you. The best way to respond to government information requests when you run a private service is with, "We do not have access to that information. It is never sent to or recorded on our servers, or if it is, it is done so in an encrypted format."
  16. Make your mailing lists and notifications opt-in, for the love of all that is holy.
  17. Don't force users to use your proprietary mobile app. Some of us like to use browser versions because we the user have more control and transparency about what the hell is going on.
  18. Speaking of transparency, be totally transparent to OSS devs and regular users alike about how your app works and allay any concerns they might have.
  19. Clarify where your management and developers live and where your offices are located. If we can't find out who you are, how can we trust anything you say about yourselves?
  20. All of the above goes double if you live in a country that is associated with hacking or a highly intrusive or totalitarian government, or if you have any other red flags that might make users worried about their privacy or security when using your app.

I've reviewed and installed a lot of software lately and have designed (if not coded) a lot over the years. As a consumer, this is the ideal I'm after. I'm not sure I know of many consumer web apps that satisfy all of these "requirements." But this is what we need if we want to respect privacy and help users with their security.

I might add more to this list as I think of more things. If you have additions you think I should make, please list them below.


Why your company should consider getting a NAS

What's a NAS again?

"NAS" means "network-attached storage," but this buzzphrase has come to mean more than just a backup drive for your local network. It's also, and maybe more importantly, an easy-to-set-up personal cloud server.

You use it for document storage and sync a la Dropbox; to sync your calendar, contacts, notes, and password data; to host a secure, private Telegram- or Slack-style chat; as a code test bed; as a shared media server; even to store pictures and movies, and display or play them a la Netflix; and more. And in recent years, it's become pretty easy for power users to set up. And it all works well. And it's cheap. It's insanely cool.

I've already explained in earlier blog posts how I chose a NAS and why you might want one at home. But why might you want to install one at the office?

My business uses for a NAS on a business trip

Well, a lot of my personal uses are actually business uses. Traveling literally around the world, I am connected to my (I hope) secure and private home server, i.e., a Synology Diskstation 1019+. What apps that run on my server have I used on this trip so far? Glad you asked:

  • calendar, which Everipedia's PR firm and I both update independently
  • file hosting with capabilities for:
    • file sharing (this is how I transferred my latest presentation deck to a conference in South Korea)
    • syncing between the NAS, laptop, and phone (which I used to look at my notes on my phone, when I gave a speech yesterday in Amsterdam; I wrote an updated version of the speech on my laptop and displayed it seamlessly on my phone)
    • backing up (not only is a copy automatically saved to the NAS a la Dropbox, but the NAS itself is backed up hourly to a secure third party site that uses zero-knowledge encryption, so only I can possibly read the files that are saved there)
  • a remote file editing app (like Google Docs; let a colleague see a work in progress)
  • a secure password manager (used constantly) I can sync with from anywhere (even my phone; can you make a new account on your phone and input and save a secure password easily? I can!)
  • secure encrypted chat (with my boys at home)
  • the photo app Moments (to upload pictures, which family can see even while I'm gone)
  • the to do list that displays the same list on my phone and my laptop
  • a movie player (I watched a movie that streamed from home, which my boys ripped for me)
  • a music player (so nice to have such easy access to my entire frickin' digital music collection, not just while at my desktop)

I actually used all of those things myself. And here are the things that I didn't have to use (and for that reason I didn't have to put my privacy and security at risk):

  • Gcal
  • Dropbox
  • Google Docs
  • Slack or Telegram (at least for talking to my boys)
  • Instagram, Google Photos, Dropbox photo sharing, Flickr, iCloud photo sharing, Cluster, etc.
  • my phone and laptop's limited space for random large media files like movies and music; I now use about 15 GB on my phone
  • a cloud-based "to do" app like Apple's, or Asana, or whatever

I dropped all that. I don't have to worry about how they're violating my privacy. I can give a big old middle finger to their ridiculous privacy policies and user agreements and privacy settings. I don't have to think about how their systems can be hacked. (I do have to think about how my own system can be hacked, though!)

What would your startup do with a NAS?

Everipedia (of which I am CIO) doesn't have a NAS yet, if we ever will get one, and I thought, if I'm going to take some time to explain to my fellow execs the advantages and disadvantages of NASes for business, why not turn everybody else on to the idea, too?

Let me talk about startups here because I'm well aware that larger, more established enterprises have serious enterprise solutions to these problems. But until fairly recently, startups and smaller businesses have been stuck more or less with public cloud solutions.

Setting up a NAS would be a bit of pain. I'm not denying it; see the next section for discussion of that issue. So why think it would do any good for your startup? Well, check this out:

  • Shared calendars. Instead of scheduling meetings via Google Calendar and wondering if they're selling the information to your competition, or if your data could be sold by a criminal hacker who cracks the honeypot that is their giant Gcal database, you put your meetings on your own server, on shared calendars.
  • Collaborate on the same documents and host them securely in your own office. Cut the umbilical cord with Google Docs. You can use it to back up Office 365 if you use that. What are they really doing with your proprietary stuff there? Frankly, it makes me feel dirty whenever I have to open up Google Docs or Sheets; but I do, because the rest of the team does. It doesn't have to be that way.
  • A related but distinguishable advantage is that all of your company's documents can be found in one place, under the clearly-defined ownership of company. Sure, there are cloud services that will do the same thing--but not with the same granularity of control, not to mention guarantee of privacy.
  • Conduct your company's internal Slack or Telegram-style discussions just as easily, and more securely, via a chat app that you and your team set up and run. Never worry again whether it's really encrypted. You'll know because it'll be up to you. I can attest that it's just cool to have a Slack-type conversation across the world but using your own privately-owned and -controlled machine.
  • Host your assets. Your company has assets: logos, design documents, videos, etc. Where do they live? If you're a small company, either they're on your design team's individual machines (which is a terrible idea; what if something happens and they're not properly backed up?), or they're in the cloud, or they've already got a NAS installed. You know what's really cool about a private cloud if you're doing design work, video production, etc.? Everyone can sync to the machine via the Internet and the local network. You can plug yourself right into that sucker and transfer ginormous files super-fast. You can even bring a media production NAS along with you on-site if you need to do heavy video editing, collaboratively, on site. (I haven't done this yet myself, but I've read about it.) You can't do that with the public cloud cloud.
  • Host your own ticketing, project management, and bug tracking software. OK, maybe you don't really care if that stuff is in the public cloud. But I care. What if you have real, live corporate secrets lurking in your project management tool?
  • Set up secure, shared Docker containers that you completely own, to make it easy to do testing and to help new developers install their dev environment quickly. Some NASes are built to work with them directly.
  • Maybe your code is so sensitive that you don't even want to put it on Github or Gitlab. (If you're a closed-source shop, it could happen.) You know what NASes can do for you? They can serve as out-of-the-box Git servers. How cool is that?
  • You can securely and easily back up all the data on your NAS, which especially for some businesses is absolutely necessary. Among other things, it can ensure that uncooperative or unresponsive employees who exit the company don't take crucial intellectual property with them irretrievably; management has greater control of what remains in the permanent archive, so long as it was originally put on the NAS.

It's a real live server, so of course you can install lots of other apps for your team and customers. But the above-listed items involve improving your privacy and security by moving from a public to a private cloud.

But what are the advantages, really?

If you've got a tech team with the skills, they could set you up with a traditional (and probably cheaper and faster) server. So what's the big deal?

Sure, maybe ten years ago you could have set up a server and had some of this convenience, but only in recent years have systems like FreeNAS, NextCloud, Synology, and QNAP been absolutely decked out with everything you need to replace all of the above public cloud services. It's not just that it's easy to install your own server, it's what you can do with it so easily now. For the last couple of decades, developers have discovered a bunch of great ideas for how to facilitate cloud-based, collaborative, and cross-platform work online, and especially in the last few years, NAS system developers (both proprietary and open source) have created similar systems for NASes.

The point, then, is that these software solutions are easier to install than ever, pretty cheap, and actually effective.

"Maybe," you say, "but that doesn't answer the real question: why do it yourself? Why not just keep using cloud services until you are a giant enterprise?"

Well, this is a matter of opinion, but I think it's increasingly clear that we simply can't trust the public cloud with either our privacy or our security. Over and over, we hear about how giant corporations are selling our data, spying on us, and letting governments spy on us. This is offensive enough in itself, but this also creates serious security issues.

While my information privacy (and my family's) has become my driving concern, with businesses (especially tech startups), security is the more serious problem. The problem is that security is simply more difficult and more fraught than it was even ten years ago. Think about the proliferation of multiple devices, owned by the employee and not the company; each is an "attack surface." Think of how much important, even business-critical data is spread across cloud services and protected by multiple employees with fairly random, hit-and-miss security habits.

Then consider all the horror stories you've heard about cloud services being hacked. Maybe you mostly trust your various vendors. Maybe you wouldn't care about most of your data being revealed publicly or put in the hands of competitors or criminals. But hacks do happen. They are a common occurrence. And no doubt you have some data that really is sensitive. How about your cap table, salary data, and any crypto keys that are in the hands of the company?

What a NAS does, then, is that it enables you to take responsibility for cloud data services. With a good server, you can satisfy yourself, especially with staff who are really good at security, that you're more secure and private than in a public cloud.

Of course, you do have to think about your own security if you install a company NAS, which is why I mention that it's important that you have good security skills on board. So the natural question is: "Why think that we will be better at security with a private cloud server than various public cloud services would be?"

There are two parts to the answer. First, you can trust yourselves (unless, for some reason, you can't). If you put your data in the cloud, you are forced to trust strangers, both their honesty and their security practices. Second, public cloud services are honeypots for criminal hackers. They're a huge juicy target, and your stuff is there; it's buried among a lot of other stuff, but it's there. Especially if your NAS is properly locked down and obscured in various ways, hackers don't have nearly as great an incentive to attack your machine, because they'll only get your data.

Those are two important differentiators. When you replace public cloud services with your own, if you do your homework, you'll probably end up with a much more secure systems for your business.

Also, did I mention how frickin' cool it is to use and be in charge of your own cloud?

But are there disadvantages?

Sure, there are. There are actually several issues that might stop you. So let's lay it all out there.

First, somebody is going to have to spend a few days buying, installing, and configuring the machine and the apps. You might or might not need to upgrade your Internet connection, modem, and router. Then there will be some ongoing maintenance and support, somebody managing NAS accounts, etc. It's not a deadly amount of work but it isn't trivial even for our little home NAS. Making sure your startup's NAS is locked down and operational definitely a task. It would be something a sysadmin, devops, or networking type would do.

Then there's the security risk involved in a poorly-configured machine, or if your company has bad security protocols (such as, to take a simple example, letting people with lots of permissions in the system use easily-crackable passwords, or letting everyone in the office have access to everything, or doing something crazy like turning off the firewall). I think my Synology NAS is pretty secure, but I'd really want to dot my i's and cross my t's before putting my machine into production for business purposes. Ideally, you'd have somebody with special and in-depth experience with server administration, networking, and information security. Any sufficiently experienced geek should be able to do what needs to be done, with enough time, research, and occasional consultation.

A different sort of disadvantage would occur if you had a slow Internet connection or inadequately beefy machine. You might expect collaborative document editing to work as fast as Google Docs, but if your machine or Internet connection are too wimpy, you'll be disappointed.

There are a few other, perhaps more minor risks:

  • Certain NASes might not have the full set of apps you'll need to have on your phone. I can tell you, however, that Synology has pretty much everything I've needed (so far); QNAP actually has more apps than Synology in its App Center (last time I checked, or so one reliable source reported); and NextCloud has a zillion (open source) apps available.
  • If the power goes out, you're stuck until it comes back on.
  • Someone at the office might get a NAS set up, but if nobody else is able to run it and the NAS person quits, you might be stuck.
  • You'll have to teach and motivate the team to use the NAS; some of them might not care so much about your company's security, and would rather use they're used to.
  • You might (marginally) trust the reliability of the social media giants' software over that of your NAS vendor (or the OSS that makes up the FreeNAS and NextCloud offerings).

There might be other issues; your mileage will vary.


Why not look into it some more?


How I got rid of Google calendar

It was about 2013 that my friend Terrence Yang told me I should be using Google Calendar, because everybody was using Google Calendar. So I did. And he was right: almost everyone else was using it, as far as I could tell. There was a period between approximately 2015 and 2017 when I was getting Gcal invites from all sorts of different people. You could just about assume that everyone was, indeed, using Gcal, and were happy to receive Gcal invites. I sent quite a few myself. For several years I was very impressed by the convenience of Gcal. Weren't we all?

But, as it became increasingly clear that Google simply doesn't care about my privacy, I grew less excited about its convenience. The fact that I could easily send an invite to someone else who probably also uses Gcal no longer seems so impressive.

Now, maybe it's just me, but in the last few years, the number of Gcal invites I received has dropped, and this is not been for lack of meetings. People just stopped sending me so many of them; I've frequently had to add meetings to my own calendar. But I found that it wasn't that hard. I had forgotten that it is pretty easy to do it yourself, even if you don't use Siri.

So, when I decided to lock down my cyber-life, I knew one thing I wanted to do was to stop using Gcal. Who really knows what Google does with this data? There were still people who sent me invites occasionally (I actually received one while writing this), but I didn't care about that; I could add the meeting info myself, or maybe make use of the .ics files that come with automatic meeting invitations.

But I couldn't just quit Gcal. It is a cloud-based service that makes it so easy to sync data across my devices; I need my phone and my laptop and my desktop to have all the same calendar data available all the time. But I decided I didn't want that data in the cloud—or rather, not in the public cloud. A few weeks ago, I set up a NAS, i.e., my own private cloud. The NAS vendor makes awesome software, including calendar software. I knew it was only a matter of time before I switched from Gcal, drawing data from Google servers, to Synology Calendar, drawing data from my own private NAS.

Recently, I made the plunge. Here's what I did.

  1. Exported all my data from Gcal. Not hard. The data is exported in the standard .ics format, which any calendar app should be able to use.
  2. Imported my data into Synology Calendar, stored locally on my own machine. The data doesn't make any round trips to Synology servers, by the way. Why would it? It's my own server!
  3. Set up CalDAV on the NAS. CalDAV (an extension of the WebDAV protocol) is a calendar data protocol. So basically what this means is that I enabled the NAS to act as a server for the calendar data, i.e., so it can be edited by all my devices, and maybe most importantly, by my phone. This was maybe the most technically difficult part, but still not hard.
  4. Set up the Apple Calendar app (which doesn't send data to Apple, the privacy hounds on the privacy subreddit assured me; I checked) to get and send data from and to the NAS via the CalDAV protocol. In practical terms, this basically just meant putting in a server address, a username, and a password in the right places on my phone. Easy peasy.
  5. There was one person who depended on the fact that I was using Gcal, who made lots of appointments for me. I knew I was going to have to get her started using the NAS system. So I gave her detailed instructions (this took the longest out of everything), which must have been good because she had everything hooked up in 10 minutes.
  6. We did some testing to ensure that everything worked correctly on all devices, data was syncing, invites and alerts were being sent, etc.
  7. Finally, I deleted all my calendar data from Google servers. Yes, I stuck the knife in and twisted it in the heart of Gcal. So satisfying.

"But," you say, "surely the new system surely can't work as well as Gcal. You sacrifice convenience for privacy. I wouldn't want to do that."

Au contraire, dear reader, it works just as well as Gcal. I have pretty high standards and skills when it comes to software use. I'm quite happy with what I have. For one thing, I haven't switched apps on my iPhone. (I looked for an open source calendar app for the iPhone that supports CalDAV; I couldn't find one.) The data there looks and acts exactly the same as it did before.

Also, the Synology Calendar app for my browser is every bit as fully-functioned as Google's calendar app. Yes, I can have multiple calendars, e.g., one for work and one for personal stuff. Yes, I can make and send invites, and when someone accepts an invitation, my calendar shows that (we checked this out). Yes, optional alert emails are available. Yes, the UX of the Synology Calendar browser app is absolutely fine—no worse than Google's. In some ways, maybe better. Yes, get this, if I want Siri to make appointments for me, it will do so. (Of course, that means sending a sound file to Apple servers with private info about a meeting, which maybe I'd rather not do.)

So, are you jealous? My set-up does everything Gcal does, and it is 100% Google-free and runs on my own machines as well.

I know I'm privileged by having money, time, and technical sophistication to set up my own NAS to do this sort of thing. But you don't have to be rich, and you don't have to be a programmer or system administrator. For a NAS like I have, you just have to spend about as much money as you would on a new desktop, make configuring it your hobby for a while, and be a "power user," which I'm guessing most of the readers of this blog are. Or you know some geek you could impose on, or maybe you could hire someone.

The point is, probably, you, too, could escape the clutches of Google (or at least Google Calendar).

Here are the Google products I once did but no longer depend on: Search, Chrome, Gmail, Docs (for my personal documents; colleagues still use this so I have no choice in their case), Drive, Maps, News, Analytics (yes, I finally removed all traces of Analytics from this blog), Translate, ReCaptcha—and now, Calendar.

My de-Googlification task list now has only two more entries, I reckon:

  1. Delete all my contacts/address book info. I could probably do that right now, but I want to make sure I do it right. Synology has yet another WebDAV tool that enables me to sync my contacts via my browser. I don't want to delete my Google contacts until after I've set that up.
  2. Actually delete my gmail account. (I can do that without deleting my Google account.) I'm pretty sure there's nothing stopping me from doing this now, apart from transferring my contact info.

The one Google product that I'm not sure I'll be able to give up is YouTube. My channel has got almost 8000 followers and a lot of kids depend on that content. And I'm thinking of starting an interview series. Besides, insofar as my colleagues expect me to keep using Google Docs, I can't simply delete the account for good. I'm still trying to persuade them to install a NAS.


How I securely sync my passwords (and why you should, too)

With a uber-geeky bonus: How I synced my Enpass passwords over my Synology NAS using WebDAV

You need a password manager that syncs

Let's begin with what I hope will be a useful review.

You should be using a password manager. What's that, and why? A password manager simply holds all your passwords and makes them easily available to you. You need one because (a) you need to have strong passwords, or else your web accounts (which can contain really sensitive info) can be easily cracked; (b) passwords, to be strong, must be different on every site and very complex (and so hard to memorize); (c) you can't possibly memorize that many strong passwords; (d) copying and pasting passwords from some plain-text repository, let alone typing them in, is a pain nobody needs.

Password managers solve all these problems for you. They (a) check that your passwords are strong; (b) make it super-easy to generate strong new ones; (c) make them all available if you simply memorize one strong password; (d) auto-fill your passwords in forms on all your devices.

But in our multi-device lives, there's yet another problem: you need to sync your passwords across your desktop, laptop, and mobile devices. It's a royal pain, isn't it? Of course it is. How do you do it? Well, let's talk about some suboptimal solutions, to help explain why I went to some rather great lengths.

You could shuffle a document back and forth between devices, e.g., by email or a messenging app. But that's a royal pain.

If you're more clever, then you'll have a single document that is accessible using all devices. For example, maybe you keep yours in a Google Doc. That would be a bad idea, because Google employees could easily see your passwords, and if anybody else got a hold of the document, they can just make a copy and you'd be none the wiser. You really need an app, not a document.

This is why password managers apps work on computers as well as handheld devices, on multiple platforms. The one I use, Enpass, is open source software (UPDATE: oops, no it’s not: https://discussion.enpass.io/index.php?/topic/210-open-source/) that works on pretty much every consumer platform. But how do the passwords get synced? Each instance of the app, on your different devices, has its own copy of your password data. Well, the even cleverer solution then is to sync your passwords "in the cloud." The password manager software company will hold your passwords for you, as a service, on their servers. That's "the cloud" in action. Then, if you're on your desktop PC and you update your password manager with a new password, the change is quickly reflected on your phone, where you can use it quite easily. Neat!

Your password manager should use zero-knowledge encryption for syncing, at least

Here's the thing. The cloud is kinda evil. I know that's a cranky sort of thing to say, but I'm getting old and therefore I'm permitted to say cranky things.

I am only slightly joking. The evilness of the cloud is actually rather well demonstrated by the situation with password managers.

Suppose your passwords are sent, via an encrypted connection, to the company's servers. Suppose they're even encrypted there, making it especially difficult for anyone to hack your password collection. But you still have to trust two things: the honesty of the password management software company, and their own security practices, which ensure that external forces cannot hack into their (encrypted) database.

There's a very cool bit of tech you can look for in password managers that solves the latter problem very handily: zero-knowledge encryption. Basically, the company stores a completely encrypted copy of your passwords on their servers. They couldn't read it even if they wanted to, because they don't have the key to unlock it. Only you can unlock the data file, because only you have the key. Neat, huh?

(It's called "zero-knowledge," obviously, because the company doesn't know anything about the information stored on their servers. They know it belongs to your account, but that's it. All cloud services should use zero-knowledge encryption, but very few do. Ask yourself why they don't.)

Now, this is probably adequate security for most people. But it's not good enough for me. I don't want the password manager company to touch my passwords. They're very valuable, right? You still have to trust the company; there's all sorts of things that could go awry, or they could intentionally update the software in a way that would undo the encryption. (Or maybe just for select users that the government asks to spy on. If I lived in China or Saudi Arabia or were a spy or government whistleblower, I'd worry a lot about this.)

Use FOSS and self-host, if you want to be an uber-geek

One of the great things about FOSS (that's geek-speak for "free, open source software") is that nobody has ultimate control over it, because anybody can fork it, i.e., make their own copy and take development in a different direction. That's because the license specifically permits that, and the development happens all out in the open. If the project is big enough, then there are at least several (sometimes, hundreds of) developers looking at new code being checked in. If somebody checks in something that's dangerous or privacy-violating, the FOSS developers (a notoriously privacy-jealous bunch) will put a stop to that noise in short order.

So if you want to use zero-knowledge encryption in your password manager, great, but make sure the software is FOSS, because then it becomes even harder for people to play tricks with the software.

You know what would be even better, though? If you never have to transfer your encrypted password file to somebody else's server in the first place. In other words, host it your own damn self.

But how, you ask? Well, there aren't very many solutions that are available to the non-geeky. In fact, I'm fairly sure all of the self-hosting solutions push the needle fairly high on the geekometer.

If you want to self-host and you want your password database to be accessible to all your devices, regardless of where you are, what does that mean you have? A server. There are a couple ways to set up your own server.

One is to use your desktop computer (or even an old laptop) and plan on leaving it on all the time. You could install NextCloud on the machine, which transforms it into a server. Like, wow, that's cool. If you're a geek. But because geeky things are now cool, that's just cool, period.

Another is to use a NAS, or some other dedicated server, i.e., a computer that is specifically set up to talk to other computers over your LAN (local-area network; your home or office network) and over a WAN (wide-area network; here, the Internet).

Bonus: How I set up my Enpass passwords to sync over my Synology NAS using WebDAV

I ended up choosing a NAS over installing NextCloud on my desktop. I further chose a Synology NAS. This evening I finally decided to sit down and start hosting my passwords on my NAS. How?

I'm not going to give you all the steps in detail.

(1) You need to get an SSL certificate for your server, i.e., the thing that allows you to use https: and not just http:. Why? Because you'll be using WebDAV to update information on your NAS, and WebDAV (being an Internet protocol) needs to be made more secure by encryption. While your data should be encrypted by your password manager, another layer of encryption is important. So get this done. By the way, Synology comes with a self-signed certificate, which will make Enpass complain. You'll have to check a box saying that you want to ignore this complaint. But you shouldn't do that.

By the way, if you don't have a permanent URL for your NAS (for this, you'll have to use DDNS), you'll have to solve that problem first. You can't use an IP address.

2. Set up a WebDAV server on your NAS. In other words, a server process on your server device. WebDAV, as Everipedia puts it, "is an extension of...HTTP that allows clients to perform remote Web content authoring operations." In other words, it allows software to update data files remotely, if the software is given permission and the data files are set up to be updated using the protocol.

On my Synology device, the steps I followed are these (great tutorial here):

  • Install the WebDAV Server package, located in the Package Center.
  • Open the WebDAV Server interface, enable both HTTP and HTTPS, and assign them the ports 5005 and 5006, respectively.
  • Create a 'webdav' user (see the above-linked tutorial for important details; make sure you get the permissions stuff right).
  • Create a 'webdav' group as well (ditto).
  • Create a 'webdav' or 'upload' (or whatever) folder. You'll specifically need to grant read/write permissions to the 'webdav' user for that folder.
  • To confirm that your new webdav user can use the folder, drop a picture, say kitten.jpg, into the webdav folder. Then go to https://your.nas.address:5006/webdav/kitten.jpg. Note: use https, not http, use the '5006' port number, and use the name for the directory you created before. If, when you try to pull that address up in a browser and you're prompted to log in, groovy, you're halfway there. Then put in your webdav user credentials (not your admin credentials), and you should be able to see the picture. If you can, coooooool. Again, the above-linked tutorial has other things you can try to confirm your connection.
  • Next, open Enpass (or another password manager that supports WebDAV). In Enpass, go under the gear menu > Vaults > Primary (or whatever you want to sync via the NAS). Then you'll be able to choose from a number of sync options. Choose "WebDAV". You'll next have to put in your 'webdav' user authentication info, and for the address, you'll want to use the address given above. I further made an Enpass directory inside that, and tacked that onto the end of the URL, so I got something like this: https://your.nas.address:5006/webdav/Enpass/. This is important to get right. Then press "Connect" try it out. With luck, you'll be connected.
  • To test that things are syncing, open a copy of the password manager on a different device and repeat the previous step. Make a small change in one copy, press the sync button/icon in the upper left (which has changed to a "server" icon, which I thought was a nice touch), go to the other copy, press the sync button there too (because you're impatient), and then see if the change is reflected in the second copy. If it is, you're done.

That's how I got it to work. And now...all my password info (and a lot of other data) is out of the public cloud, in a private cloud consisting just of my family's devices. Pretty freaking awesome.