August of 2021
Projects⚑
-
New: Introduce pynbox the inbox management tool.
Pynbox is a tool to improve the management of ideas, tasks, references, suggestions when I'm not in front of the computer. Right now I've got Markor for Android to register these quicknotes, but the reality is that I don't act upon them, so it's just a log of tasks that never get done, and ideas, references and suggestions that aren't registered in my knowledge or media management systems.
On the computer there are also cases of tasks that are not worth registering in the task management system, or ideas that I get at a moment but don't have time to process at the moment.
The idea then is to automatically sync the Android quicknote with syncthing, and have a special format for the file that allows
pynbox
to extract the elements from that file to the "inbox system". For example: +t. buy groceries tv. IT crowd i. Improve the inbox management I want a system to improve ...
Gets introduced in the "inbox system" as a task, a TV suggestion and an idea.
-
New: Introduce nyxt as a solution for a better browser.
-
New: Introduce the shared accounting seed project.
I use beancount for my personal accounting, I'd like to have a system that integrates more less easily with beancount and let's do a shared accounting with other people, for example in trips. I've used settle up in the past but it requires access to their servers, and an account linked to google, facebook or one you register in their servers.
I've looked at facto but it uses a logic that doesn't apply to my case, it does a heavy use on a common account, instead +of minimizing the transactions between the people. I also tried tabby, even though they still don't support Docker, but it doesn't suit my case either :(.
Until a new solution shows up, I'll go with Tricky Tripper available in F-Droid, and manage the expenses myself and periodically send the html reports to the rest of the group.
-
Improvement: Add quickwit as an interesting database solution for personal knowledge search engine.
- New: Promote the automation of email management project to seedling.
Activism⚑
-
New: Introduce Anti-transphobia.
Anti-transphobia being reductionist is the opposition to the collection of ideas and phenomena that encompass a range of negative attitudes, feelings or actions towards transgender people or transness in general. Transphobia can include fear, aversion, hatred, violence, anger, or discomfort felt or expressed towards people who do not conform to social gender expectations. It is often expressed alongside homophobic views and hence is often considered an aspect of homophobia.
-
New: Introduce arguments against terf ideology.
TERF is an acronym for trans-exclusionary radical feminist. The term originally applied to the minority of feminists that expressed transphobic sentiments such as the rejection of the assertion that trans women are women, the exclusion of trans women from women's spaces, and opposition to transgender rights legislation. The meaning has since expanded to refer more broadly to people with trans-exclusionary views who may have no involvement with radical feminism.
Antifascism⚑
-
New: Introduce antifascism.
Antifascism is a method of politics, a locus of individual and group self-indentification, it's a transnational movement that adapted preexisting socialist, anarchist, and communist currents to a sudden need to react to the fascist menace (Mark p. 11). It's based on the idea that any oppression form can't be allowed, and should be actively fought with whatever means are necessary.
Life Management⚑
Email Management⚑
Email Automation⚑
- New: Explain how setup an infrastructure to automate.
Coding⚑
Python⚑
-
New: Add schedule to interesting libraries to explore.
schedule is a Python job scheduling for humans. Run Python functions (or any other callable) periodically using a friendly syntax.
asyncio⚑
-
New: Introduce the asyncio library.
asyncio is a library to write concurrent code using the async/await syntax.
asyncio is used as a foundation for multiple Python asynchronous frameworks that provide high-performance network and web-servers, database connection libraries, distributed task queues, etc.
asyncio is often a perfect fit for IO-bound and high-level structured network code.
FastAPI⚑
- Improvement: Add link to the Awesome FastAPI page.
Python Snippets⚑
-
New: Explain how to find a static file of a python module.
import pkg_resources file_path = pkg_resources.resource_filename("my_package", "assets/config.yaml"),
-
New: Explain how to delete a file.
import os os.remove('demofile.txt')
-
New: Explain how to measure elapsed time between lines of code.
import time start = time.time() print("hello") end = time.time() print(end - start)
pexpect⚑
-
New: Explain how to read the output of a command run by pexpect.
import sys import pexpect child = pexpect.spawn('ls') child.logfile = sys.stdout child.expect(pexpect.EOF)
rich⚑
-
New: Explain how to build pretty tables with rich.
from rich.console import Console from rich.table import Table table = Table(title="Star Wars Movies") table.add_column("Released", justify="right", style="cyan", no_wrap=True) table.add_column("Title", style="magenta") table.add_column("Box Office", justify="right", style="green") table.add_row("Dec 20, 2019", "Star Wars: The Rise of Skywalker", "$952,110,690") table.add_row("May 25, 2018", "Solo: A Star Wars Story", "$393,151,347") table.add_row("Dec 15, 2017", "Star Wars Ep. V111: The Last Jedi", "$1,332,539,889") table.add_row("Dec 16, 2016", "Rogue One: A Star Wars Story", "$1,332,439,889") console = Console() console.print(table)
-
New: Explain how to print pretty text with rich.
from rich.console import Console from rich.text import Text console = Console() text = Text.assemble(("Hello", "bold magenta"), " World!") console.print(text)
SQLite⚑
- Improvement: Add rqlite as an interesting distributed solution of.
DevOps⚑
Infrastructure as Code⚑
Terraform⚑
-
New: Introduce terraform and how to handle RDS secrets.
Terraform is an open-source infrastructure as code software tool created by HashiCorp. It enables users to define and provision a datacenter infrastructure using an awful high-level configuration language known as Hashicorp Configuration Language (HCL), or optionally JSON. Terraform supports a number of cloud infrastructure providers such as Amazon Web Services, IBM Cloud , Google Cloud Platform, DigitalOcean, Linode, Microsoft Azure, Oracle Cloud Infrastructure, OVH, or VMware vSphere as well as OpenNebula and OpenStack.
-
New: Explain how to ignore the change of an attribute.
resource "aws_instance" "example" { # ... lifecycle { ignore_changes = [ # Ignore changes to tags, e.g. because a management agent # updates these based on some ruleset managed elsewhere. tags, ] } }
-
New: Explain how to define the default value of an variable that contains an object as empty.
variable "database" { type = object({ size = number instance_type = string storage_type = string engine = string engine_version = string parameter_group_name = string multi_az = bool }) default = null
-
New: Explain how to do a conditional if a variable is not null.
resource "aws_db_instance" "instance" { count = var.database == null ? 0 : 1 ...
Infrastructure Solutions⚑
Kubernetes⚑
-
New: Add Velero as interesting tool.
Velero is a tool to backup and migrate Kubernetes resources and persistent volumes.
Architecture⚑
-
New: Give suggestions on how to choose the number of kubernetes clusters to use.
You can run a given set of workloads either on few large clusters (with many workloads in each cluster) or on many clusters (with few workloads in each cluster).
Here's a table that summarizes the pros and cons of various approaches:
Figure: Possibilities of number of clusters from learnk8s.io article
Operative Systems⚑
Linux⚑
Linux Snippets⚑
-
New: Explain how to allocate space for a virtual filesystem.
fallocate -l 20G /path/to/file
afew⚑
-
New: Introduce afew.
afew is an initial tagging script for notmuch mail.
Its basic task is to provide automatic tagging each time new mail is registered with
notmuch
. In a classic setup, you might call it afternotmuch new
in an offlineimap post sync hook.
alot⚑
-
New: Introduce alot.
alot is a terminal-based mail user agent based on the notmuch mail indexer. It is written in python using the urwid toolkit and features a modular and command prompt driven interface to provide a full MUA experience.
Arts⚑
Writing⚑
Grammar and Orthography⚑
-
New: Explain the use of z or s in some words.
It looks like American english uses
z
while British usess
, some examples:Both forms are correct, so choose the one that suits your liking.
Contact⚑
- Correction: Update the XMPP address.