2019-09-16 09:42:49 +00:00
|
|
|
#+TITLE: How I Internet
|
2019-09-23 08:01:34 +00:00
|
|
|
#+SUBTITLE: Self hosting other advantages
|
2019-09-16 09:42:49 +00:00
|
|
|
#+AUTHOR: Yann Esposito
|
|
|
|
#+EMAIL: yann@esposito.host
|
2019-09-23 08:01:34 +00:00
|
|
|
#+DATE: [2019-09-23 Mon]
|
2019-09-16 09:42:49 +00:00
|
|
|
#+KEYWORDS: blog, self-hosting, web, zen, minimalism
|
|
|
|
#+DESCRIPTION: How I protect myself against attention grabbers and many social media anti-patterns.
|
|
|
|
#+OPTIONS: auto-id:t
|
|
|
|
|
|
|
|
#+begin_notes
|
2019-09-23 08:01:34 +00:00
|
|
|
TL;DR: Self-hosting is not only about controlling your data, it also influences
|
|
|
|
how you consume Internet for the best.
|
2019-09-16 09:42:49 +00:00
|
|
|
|
|
|
|
- I /POSSE[fn:posse]/; Publish Own Site, Syndicate Elsewhere:
|
|
|
|
+ I own my data I self host my blog, notes, my repositories, my bookmarks, etc...
|
|
|
|
+ I use espial[fn:espial] for self-hosted bookmarks and notes
|
|
|
|
+ I use note-red[fn:node-red] to publish my blogs, bookmarks and notes to
|
|
|
|
twitter, sync bookmarks with pinboard[fn:pinboard]
|
2019-09-23 08:01:34 +00:00
|
|
|
- Enhance not only publishing experience but consumption of Internet
|
|
|
|
+ read Digital Minimalism[fn:dm]
|
|
|
|
+ Control notifications
|
|
|
|
+ Control real-time interactions
|
2019-09-16 09:42:49 +00:00
|
|
|
#+end_notes
|
|
|
|
|
2019-09-23 08:01:34 +00:00
|
|
|
The way I and most people use Internet as changed drastically in a few years.
|
|
|
|
It started with social networks and smartphones.
|
2019-09-25 08:19:30 +00:00
|
|
|
More recently, applications started to introduce "features" targeting our
|
2019-09-23 08:01:34 +00:00
|
|
|
"lower brain" or "social brain".
|
|
|
|
It is not unusual to stay a lot longer on our smartphone than what we
|
|
|
|
expected.
|
2019-09-25 08:19:30 +00:00
|
|
|
Since the introduction of those methods, more and more people experience
|
|
|
|
difficulties to balance their life, to focus a long time on some subject,
|
|
|
|
and even might feel a lot more social anxieties.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
One solution is of course to totally get rid of those platforms.
|
|
|
|
But it would mean throw away all the benefit they provide.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
So my personal solution is to still keep the best of those platform while
|
|
|
|
minimizing my exposure to most /anti-features/.
|
|
|
|
All start by how I produce content.
|
|
|
|
And it naturally affect also how I consume information on Internet.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-19 21:36:20 +00:00
|
|
|
[fn:posse] https://indieweb.org/POSSE
|
2019-09-16 09:42:49 +00:00
|
|
|
[fn:dm] http://www.calnewport.com/books/digital-minimalism/
|
2019-09-19 21:36:20 +00:00
|
|
|
[fn:espial] https://github.com/jonschoning/espial
|
|
|
|
[fn:node-red] https://nodered.org
|
|
|
|
[fn:pinboard] https://pinboard.in
|
2019-09-16 09:42:49 +00:00
|
|
|
|
2019-09-23 08:01:34 +00:00
|
|
|
* Producing
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: producing
|
|
|
|
:END:
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
I self host many services.
|
|
|
|
I control my data, and then I broadcast those info to different platforms.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
|
|
|
** Articles: Self hosted blog
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: self-hosting
|
|
|
|
:END:
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
First thing, is I /blog/.
|
|
|
|
Writing a blog article is an intermediate format.
|
|
|
|
A lot simpler than a real article for some journal, but also should contain
|
|
|
|
more details than just a "micro-blog status" where you can mostly express
|
|
|
|
an impression, a photo, an opinion...
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
I wrote an [[file:new-blog.org][article]] that explain the technical details behind my blog.
|
|
|
|
It also describes how I try to make it a /respectful/ blog.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
The harder part if you want to do it yourself will be about self-hosting it.
|
|
|
|
You need to buy a domain name, and configure you DNS correctly.
|
2019-09-23 08:01:34 +00:00
|
|
|
This is not something tremendously hard, but don't expect to do that as
|
|
|
|
easily as registering to a private service.
|
2019-09-25 08:19:30 +00:00
|
|
|
But hey, I really believe this is worth the price.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
|
|
|
** Code: Git Broadcast
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: git-broadcast
|
|
|
|
:END:
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
I also self-host the code for my open-source projects.
|
|
|
|
But, Github is the developer social network.
|
|
|
|
It is easier to find contributor on Github than on your self-hosted repository.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
So, I sync my code between my self-hosted instance and GitHub.
|
|
|
|
So if tomorrow something is wrong with Github, I could easily switch to my
|
|
|
|
self hosted repositories only.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
|
|
|
Here is how you can configure your git repositories to push to multiple
|
2019-09-25 08:19:30 +00:00
|
|
|
URLs:
|
2019-09-23 08:01:34 +00:00
|
|
|
|
|
|
|
#+begin_src
|
|
|
|
git remote set-url origin --push --add <remote-url>
|
|
|
|
git remote set-url origin --push --add <another-remote-url>
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
** Bookmarks: Espial
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: espial
|
|
|
|
:END:
|
2019-09-25 08:19:30 +00:00
|
|
|
I also like a tool to synchronize articles on the Internet I like and
|
|
|
|
appreciate.
|
|
|
|
For that, I use [[https://github.com/jonschoning/espial][espial]] which is an open-source, web-based bookmarking server.
|
|
|
|
|
|
|
|
It is a very easy to install, this is a single binary.
|
|
|
|
Your bookmark are kept in a single sqlite file.
|
|
|
|
|
2019-09-23 08:01:34 +00:00
|
|
|
This is perfect if you want to keep a lot of bookmarks some private some
|
2019-09-25 08:19:30 +00:00
|
|
|
public.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
|
|
|
** Notes: Espial
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: notes--espial
|
|
|
|
:END:
|
2019-09-25 08:19:30 +00:00
|
|
|
Another feature provided by [[https://github.com/jonschoning/espial][espial]] is the ability to save notes.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
You can generate public or private notes.
|
|
|
|
I intend to use those notes for my "micro-blogging" needs.
|
|
|
|
Useful, for just making some short remark without investing in a full blog
|
|
|
|
post.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
|
|
|
** RSS for articles, bookmarks, notes
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: rss
|
|
|
|
:END:
|
2019-09-25 08:19:30 +00:00
|
|
|
It is important for me to provide RSS feeds.
|
|
|
|
People should know when I update my content.
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
So my blog, bookmarks and note generate RSS feeds[fn:espialpr].
|
2019-09-23 08:01:34 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
[fn:espialpr] [[https://github.com/jonschoning/espial][espial]] is written in Haskell, and I made a few pull requests to add RSS
|
2019-09-23 08:01:34 +00:00
|
|
|
feeds of my public bookmarks as well as an RSS feed for my public notes.
|
|
|
|
|
|
|
|
** Syndicate Elsewhere: node-red
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: node-red
|
|
|
|
:END:
|
2019-09-16 09:42:49 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
With those RSS, it is then quite natural to syndicate elsewhere.
|
|
|
|
For that I use [[https://nodered.org][node-red]].
|
2019-09-20 13:05:56 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
This is a web-based tool that make it easy to write /flows/.
|
|
|
|
Think about it like a super IFTTT.
|
2019-09-20 13:05:56 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
To give you an example, each time I save a new public bookmark, a new blog
|
|
|
|
post, a new note, I tweet it.
|
2019-09-20 13:05:56 +00:00
|
|
|
* Consuming
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: consuming
|
|
|
|
:END:
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
As I said, now that I can generate my content using my own, self-made
|
|
|
|
environment, it also influenced a lot the way I consume and interact with
|
|
|
|
other people on the Internet.
|
|
|
|
|
|
|
|
I consumed a lot of /news/ directly from my smartphone.
|
|
|
|
Most of the time using an app dedicated to some social network.
|
|
|
|
|
|
|
|
The natural presentation is an infinite scroll of content, with buttons to
|
|
|
|
engage in the social network with likes/upvotes/comments etc...
|
|
|
|
Most of the time, with enabled notifications to answer ASAP to anyone that
|
|
|
|
might [[https://www.xkcd.com/386/]["be wrong on the Internet"]].
|
|
|
|
|
|
|
|
Here is how I consume Internet content now.
|
2019-09-20 13:05:56 +00:00
|
|
|
|
|
|
|
** News
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: news
|
|
|
|
:END:
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
Before explaining how I consume Internet news, I like to make a short
|
|
|
|
digression:
|
|
|
|
|
|
|
|
#+begin_quote
|
|
|
|
By writing this article I realized that, I mostly consume Internet content
|
|
|
|
via *news*.
|
|
|
|
More than that, that now, Internet is almost synonymous to news on the web.
|
|
|
|
Which is only a very small part of the Internet.
|
|
|
|
|
|
|
|
Consuming news via a social network platform makes you a lot more passive.
|
|
|
|
I can remember being a lot more active to consume the Internet content
|
|
|
|
years ago.
|
|
|
|
|
|
|
|
This is something to keep in mind I think.
|
|
|
|
#+end_quote
|
|
|
|
|
2019-09-20 13:05:56 +00:00
|
|
|
So my entry point to news consumption are:
|
|
|
|
|
|
|
|
- highly selected RSS sources (for example HN posts with > 500 upvotes)
|
|
|
|
- [[https://lobste.rs][lobste.rs]]
|
|
|
|
- [[https://pinboard.in/popular/][popular pinboard.in bookmarks]]
|
2019-09-25 08:19:30 +00:00
|
|
|
- very few sub-reddit with small volume
|
2019-09-20 13:05:56 +00:00
|
|
|
- [[https://laarc.io][laarc.io]]
|
|
|
|
- [[https://fermatslibrary.com][Fermat's Library newsletter]]
|
|
|
|
|
|
|
|
I plan on generating RSS from those different sources with "smart filters".
|
|
|
|
Typically number of upvote filters for lobste.rs, laarc.io, sub-reddits,
|
|
|
|
but also number of bookmarks in popular pinboard, etc...
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
I use [[https://github.com/skeeto/elfeed][elfeed]] inside Spacemacs.
|
2019-09-20 13:05:56 +00:00
|
|
|
I really enjoy staying inside emacs as much as I can.
|
|
|
|
This is a clean, dense, text-oriented environment.
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
I also use [[https://github.com/remyhonig/elfeed-org][elfeed-org]] to organize my feeds and I also take care to remove
|
2019-09-20 13:05:56 +00:00
|
|
|
feeds with too much volume.
|
|
|
|
Generally we shouldn't read more than a few articles a day.
|
|
|
|
** Mail
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: mail
|
|
|
|
:END:
|
2019-09-25 08:19:30 +00:00
|
|
|
Most of my notifications go through my email.
|
|
|
|
Social network notifications are moved inside folder and are not directly
|
|
|
|
present in my inbox.
|
2019-09-20 13:05:56 +00:00
|
|
|
I check my social notifications once in a while.
|
2019-09-25 08:19:30 +00:00
|
|
|
So if you are waiting for an answer, sorry for the late reply, it might
|
|
|
|
take a while.
|
2019-09-20 13:05:56 +00:00
|
|
|
|
|
|
|
** Github
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: github
|
|
|
|
:END:
|
|
|
|
I still get notifications on Github because I use it a lot for my work.
|
2019-09-25 08:19:30 +00:00
|
|
|
But only via email and the web interface.
|
2019-09-20 13:05:56 +00:00
|
|
|
So even for Github, I can take a few days to react.
|
2019-09-16 09:42:49 +00:00
|
|
|
|
2019-09-19 21:36:20 +00:00
|
|
|
* Conclusion
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: conclusion
|
|
|
|
:END:
|
2019-09-20 13:05:56 +00:00
|
|
|
So I described how while still using centralized social media platform, I
|
|
|
|
still own my data, I protect myself from new attention grabbing features
|
|
|
|
and design / UX pattern changes in those platforms.
|
2019-09-19 21:36:20 +00:00
|
|
|
|
2019-09-20 13:05:56 +00:00
|
|
|
Mostly, I take the positive aspect of those platform while not paying most
|
|
|
|
of the negative price.
|
2019-09-19 21:36:20 +00:00
|
|
|
|
|
|
|
For now my system is quite tailored made, and adapted to me.
|
|
|
|
I think we could imagine that we could offer that to more people by having
|
|
|
|
a single, easy to create platform.
|
|
|
|
|
|
|
|
The bit sad state, is that I know there are a few system that try to make
|
2019-09-25 08:19:30 +00:00
|
|
|
it easy for more people to self-host, or provide self-hosting for a small
|
2019-09-20 13:05:56 +00:00
|
|
|
community or family.
|
|
|
|
But this is still reserved to technical people in my opinion.
|
2019-09-19 21:36:20 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
I think we could be inspired by espial[fn:espial] to create a simple small platform to
|
2019-09-19 21:36:20 +00:00
|
|
|
provide those feature to most people.
|
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
- ability to blog/micro-blog and syndicate
|
|
|
|
- ability to publish securely private info to a small group of friends and family
|
2019-09-19 21:36:20 +00:00
|
|
|
- generate RSS for different group of peoples
|
|
|
|
|
2019-09-20 13:05:56 +00:00
|
|
|
I would personally prefer that to a Federation platform (like Mastodon).
|
2019-09-25 08:19:30 +00:00
|
|
|
Unfortunately the federated network mostly replicate the anti-features of twitter, Facebook,
|
2019-09-20 13:05:56 +00:00
|
|
|
and other social media platforms. While I believe we should change our
|
|
|
|
consumption habit.
|
|
|
|
|
|
|
|
RSS is already a great tool for that.
|
2019-09-19 21:36:20 +00:00
|
|
|
|
2019-09-25 08:19:30 +00:00
|
|
|
** Anti-features
|
|
|
|
:PROPERTIES:
|
|
|
|
:CUSTOM_ID: anti-features
|
|
|
|
:END:
|
|
|
|
|
|
|
|
A last note about anti-features used by social media platforms.
|
|
|
|
Those are anti-features, as they provide almost no benefit for the user.
|
|
|
|
All those anti-feature share the same pattern.
|
|
|
|
They use /spaced random reward/:
|
|
|
|
|
|
|
|
#+begin_notes
|
|
|
|
*Spaced Random Reward*
|
|
|
|
|
|
|
|
Typically the few first random gifts in a new
|
|
|
|
downloaded game.
|
|
|
|
The main way used to /hack/ your brain, is by giving it something he likes
|
|
|
|
at a random time.
|
|
|
|
Then you start to give reward with lower and lower probability.
|
|
|
|
Your brain will then be in a /search mode/ where he will /hope/ to get
|
|
|
|
another reward by staying a bit longer in the system.
|
|
|
|
#+end_notes
|
|
|
|
|
|
|
|
- *notifications* ; they are here to grab your attention when you are away
|
|
|
|
doing something else.
|
|
|
|
- *likes / upvotes / retweets / pokes...* ; those are also /Internet
|
|
|
|
reward/ but are even stronger because they also target your "social brain".
|
|
|
|
They reinforce a feeling of social approval.
|
|
|
|
More than that, we generally fall for most psychological tricks with those
|
|
|
|
and make our production oriented to short content, memes, etc...
|
|
|
|
- *infinite scrolling* ; make you brain want to look a bit more, because it
|
|
|
|
creates a fear to lose a great new info.
|
|
|
|
- *comments* ; Unlike likes or retweets, comment are a lot more useful,
|
|
|
|
they can start a discussion. They still have two problems:
|
|
|
|
1. Public comment are subject to spam, troll, attacks, etc...
|
|
|
|
2. Generally comments are associated to real-time notifications, and thus
|
|
|
|
break a slower, calmer, more respectful communication channel. We are
|
|
|
|
not all meant to react instantaneously.
|