WIP How I Internet
This commit is contained in:
parent
0082064358
commit
2d18bb2cd3
5 changed files with 209 additions and 13 deletions
28
project.el
28
project.el
|
@ -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
|
||||
|
|
BIN
project.el.sig
BIN
project.el.sig
Binary file not shown.
|
@ -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>@@
|
|
@ -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)
|
||||
}
|
||||
|
|
140
src/posts/how-i-internet.org
Normal file
140
src/posts/how-i-internet.org
Normal 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:
|
Loading…
Reference in a new issue