WIP How I Internet

This commit is contained in:
Yann Esposito (Yogsototh) 2019-09-16 11:42:49 +02:00
parent 0082064358
commit 2d18bb2cd3
Signed by untrusted user who does not match committer: yogsototh
GPG key ID: 7B19A4C650D59646
5 changed files with 209 additions and 13 deletions

View file

@ -140,9 +140,17 @@
(let* ((file (org-publish--expand-file-name entry project))
(title (org-publish-find-title entry project))
(date (format-time-string "%Y-%m-%d" (org-publish-find-date entry project)))
(keywords (y/get-meta file "KEYWORDS"))
(keywords (split-string (y/get-meta file "KEYWORDS") ",\s*"))
(description (y/get-meta file "DESCRIPTION")))
(format "- [%s] [[file:%s][%s]] /(%s)/ \n %s" date file title keywords description))))
(concat
"- "
(format " [%s]" date)
(format " *[[file:%s][%s]]*" file title)
(format " @@html:<div class=\"keywords\">@@%s@@html:</div>@@"
(mapconcat (lambda (k) (format "@@html:<span class=\"keyword\">@@#%s@@html:</span>@@" k))
(cl-sort keywords 'string-lessp :key 'downcase)
" "))
(format "@@html:<div class=\"description\">@@%s@@html:</div>@@" description)))))
(defun org-blog-sitemap-fn-descr (descr title list)
"Return sitemap using TITLE and LIST returned by `org-blog-sitemap-format-entry'."
@ -154,6 +162,17 @@
(seq-filter #'car (cdr list))
"\n")))
(defun org-blog-prepare (project-plist)
"With help from `https://github.com/howardabrams/dot-files'.
Touch `archive.org' to rebuilt it.
Argument `PROJECT-PLIST' contains information about the current project."
(let* ((base-directory (plist-get project-plist :base-directory))
(buffer (find-file-noselect (expand-file-name "archive.org" base-directory) t)))
(with-current-buffer buffer
(set-buffer-modified-p t)
(save-buffer 0))
(kill-buffer buffer)))
(defun org-blog-publish-to-html (plist filename pub-dir)
"Same as `org-html-publish-to-html' but modifies html before finishing."
(let ((file-path (org-html-publish-to-html plist filename pub-dir)))
@ -166,6 +185,7 @@
"<input id=\"modern\">"
"<input id=\"dark\">"
"<input id=\"darkraw\">"
"<input id=\"matrix\">"
"<div id=\"labels\">"
"<div class=\"content\">"
@ -175,7 +195,8 @@
"<a href=\"#modern\">modern</a>)"
" / "
"<a href=\"#dark\">dark</a>"
"(<a href=\"#darkraw\">raw</a>)"
"(<a href=\"#darkraw\">raw</a>,"
"<a href=\"#matrix\">matrix</a>)"
"</div>"
"</div>"
"<div class=\"main\">")
@ -253,6 +274,7 @@ Return output file name."
:base-extension "org"
:publishing-directory ,publish-dir
:recursive t
:preparation-function org-blog-prepare
:publishing-function org-blog-publish-to-html
:with-toc nil
:with-title nil

Binary file not shown.

View file

@ -2,9 +2,7 @@
#+AUTHOR: Yann Esposito
#+EMAIL: yann@esposito.host
#+DESCRIPTION: Articles
- [2019-08-18] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/project-el/index.org][Autoload Script by project]] /(programming, blog, org-mode)/
A script I use to load safely an eLISP file when entering a new project directory.
- [2019-08-17] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/troll-2/index.org][Troll 2]] /(movie)/
I watched what may be the worse movie of all time and I still enjoyed greatly the show.
- [2019-08-17] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/new-blog.org][New Blog]] /(programming, blog, org-mode, web, css)/
Meta article about how I generate this blog.
- [2019-09-14] *[[file:/Users/yaesposi/y/her.esy.fun/src/posts/how-i-internet.org][How I Internet]]* @@html:<div class="keywords">@@@@html:<span class="keyword">@@#blog@@html:</span>@@ @@html:<span class="keyword">@@#self-hosting@@html:</span>@@ @@html:<span class="keyword">@@#web@@html:</span>@@@@html:</div>@@@@html:<div class="description">@@How I protect myself against attention grabbing anti-patterns.@@html:</div>@@
- [2019-08-18] *[[file:/Users/yaesposi/y/her.esy.fun/src/posts/project-el/index.org][Autoload Script by project]]* @@html:<div class="keywords">@@@@html:<span class="keyword">@@#blog@@html:</span>@@ @@html:<span class="keyword">@@#org-mode@@html:</span>@@ @@html:<span class="keyword">@@#programming@@html:</span>@@@@html:</div>@@@@html:<div class="description">@@A script I use to load safely an eLISP file when entering a new project directory.@@html:</div>@@
- [2019-08-17] *[[file:/Users/yaesposi/y/her.esy.fun/src/posts/troll-2/index.org][Troll 2]]* @@html:<div class="keywords">@@@@html:<span class="keyword">@@#movie@@html:</span>@@@@html:</div>@@@@html:<div class="description">@@I watched what may be the worse movie of all time and I still enjoyed greatly the show.@@html:</div>@@
- [2019-08-17] *[[file:/Users/yaesposi/y/her.esy.fun/src/posts/new-blog.org][New Blog]]* @@html:<div class="keywords">@@@@html:<span class="keyword">@@#blog@@html:</span>@@ @@html:<span class="keyword">@@#css@@html:</span>@@ @@html:<span class="keyword">@@#org-mode@@html:</span>@@ @@html:<span class="keyword">@@#programming@@html:</span>@@ @@html:<span class="keyword">@@#web@@html:</span>@@@@html:</div>@@@@html:<div class="description">@@Meta article about how I generate this blog.@@html:</div>@@

View file

@ -146,8 +146,7 @@ h6::before {
}
hr {
position: relative;
height: 1em;
font-size: 0;
height: 1px;
line-height: 0;
overflow: hidden;
border: 0;
@ -158,6 +157,7 @@ hr:after {
top: 0;
left: 0;
width: 100%;
font-weight: bold;
word-wrap: break-word;
}
pre { max-width: 100%; overflow: scroll; }
@ -211,7 +211,7 @@ navigation > a {
margin: 0 1em;
padding: 1px;
}
#content *:first-child {
#content:first-child {
margin-top: 0;
}
.timestamp-wrapper {
@ -223,7 +223,7 @@ navigation > a {
padding: 1px 1ex;
}
.article-date {
font-size: 0.8;
font-size: 0.8em;
font-style: italic;
float: right;
}
@ -494,6 +494,33 @@ input#darkraw:target ~ .main code,
input#darkraw:target ~ .main pre {
font-family: monospace;
}
/* Dark matrix theme selected */
input#matrix:target ~ .main {
--main-background: #000;
--main-foreground: #0b0;
--second-foreground: #0b0;
--reveal-background: #000;
--soft-foreground: #0b0;
--border-color: #0b0;
--todo-txt: #0b0;
--color-h1: #0b0;
--color-h2: #0b0;
--color-h3: #0b0;
--color-h4: #0b0;
--color-h5: #0b0;
--color-h6: #0b0;
--color-link: white;
font-family: monospace;
}
input#matrix:target ~ #labels {
background: #000;
color: #0b0;
}
input#matrix:target ~ .main code,
input#matrix:target ~ .main pre {
font-family: monospace;
}
/* Default color theme */
body,.main {
background: var(--main-background);
@ -510,6 +537,15 @@ a, a:visited,
color: var(--second-foreground);
}
.keywords {
color: var(--second-foreground);
float: right;
}
.keyword:hover {
cursor: pointer;
color: var(--yellow);
}
.main ol > li:before, ol > li:before {
color: var(--soft-foreground)
}

View file

@ -0,0 +1,140 @@
#+TITLE: How I Internet
#+SUBTITLE: (POSSE) Relaxing the Internet experience
#+AUTHOR: Yann Esposito
#+EMAIL: yann@esposito.host
#+DATE: [2019-09-14 Sat]
#+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
*Sorry for the late reply*
Don't take it personnaly if I do not answer immediately to your comments or
questions.
I do not receive notification from most social media or even mail.
I do not have any social-media platform application on my phone.
I almost never check social media platform except GitHub.
I check my mails once in a while.
It can be a few times a day, but it is not unusual not to check my mail for
a few days or even an entiere week.
It is a protection against real-time notifications, and urgency feeling
that is harmful fof most people.
---------
TL;DR:
- 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]
- read Digital Minimalism[fn:dm]
- Control notifications
- Control real-time interactions
#+end_notes
[fn:posse]: https://indieweb.org/POSSE
[fn:dm] http://www.calnewport.com/books/digital-minimalism/
[fn:espial]: https://github.com/jonschoning/espial
[fn:node-red]: https://nodered.org
[fn:pinboard]: https://pinboard.in
* Intro
:PROPERTIES:
:CUSTOM_ID: intro
:END:
Our usage of the Internet changed a lot in recent years.
The book Digital Minimalism[fn:dm] explains quite clearly how Internet
and many social platforms are really useful but at the same can harm us.
The harm mostly come from social anti-pattern that are mostly hacking our
brain.
More precisely owr lower part of the brain, the one close to the instinct
which is quite difficult to tame.
This is why this is the preferred target of those "brain hacks".
Anti-features are:
- likes / retweets ; they provide no more benefit for us except we feel good
by this social approval.
- comments are useful, the problem with comments is they generate a
notification or if not, generate us to check quite often if our output
has generated social approval or not.
So now, I how my own blog on my own server with my own domain name.
And I publish things, but I only check the outcome once or two times a day.
I receive no notification, I do not have any social media application on my
phone.
The social media "reactions" are filtered in my email, put in some
directory and checked once in a while (no more than twice a day, generally
only a few times a week).
The drawback is that it can feel rude for people not to be answered fast.
I am sorry, but it is a protection for my sanity.
* Producing
:PROPERTIES:
:CUSTOM_ID: producing
:END:
** Self Hosting
:PROPERTIES:
:CUSTOM_ID: self-hosting
:END:
The first important step is to self host most of my data.
Unfortunately this is not as straightforward as it should be.
The very first huge obstacle is owning a domain name and configuring the DNS.
It is WAY too complex to buy and control easily your own domain name.
I mean, once used to it, it is quite easy.
But I can't imagine someone not very used to computers to be able to
do all of that for himself in less than a few hours/days.
I wrote an [[file:new-blog.org][article]] sharing the details about my currentl blog platform.
I also describe how I intend to provide a respectful blog.
** TODO RSS
:PROPERTIES:
:CUSTOM_ID: rss
:END:
Describe that it is important to provide an RSS feed as a nice standardized
root to publishing.
** TODO Git Repositories
:PROPERTIES:
:CUSTOM_ID: git-repositories
:END:
** TODO Espial
:PROPERTIES:
:CUSTOM_ID: espial
:END:
Describe espial, and how I changed it.
** TODO node-red
:PROPERTIES:
:CUSTOM_ID: node-red
:END:
Describe node-red and how I use it.
* TODO Consuming
:PROPERTIES:
:CUSTOM_ID: consuming
:END:
** TODO Emacs elfeed
:PROPERTIES:
:CUSTOM_ID: emacs-elfeed
:END:
** TODO Mail
:PROPERTIES:
:CUSTOM_ID: mail
:END:
Only use mail
** TODO Github
:PROPERTIES:
:CUSTOM_ID: github
:END: