Skip to content

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.

    I've just stumbled upon nyxt (code), and it looks superb.

  • 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

pexpect

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

Architecture

Operative Systems

Linux

Linux Snippets

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 after notmuch 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

Contact

  • Correction: Update the XMPP address.

    Riseup has stopped giving support for XMPP :(