Skip to content

Instantly share code, notes, and snippets.

Avatar

Mildred Ki'Lya mildred

View GitHub Profile
View keybase.md

Keybase proof

I hereby claim:

  • I am mildred on github.
  • I am mildred (https://keybase.io/mildred) on keybase.
  • I have a public key ASDQFes07Yd_g56-PPV853GxC2dKwU5YV7NzWmXJ8ddP_Qo

To claim this, I am signing this object:

View interrupts-4.17
CPU0 CPU1 CPU2 CPU3
0: 10 0 0 0 IO-APIC 2-edge timer
8: 1 0 0 0 IO-APIC 8-edge rtc0
9: 0 1613 0 0 IO-APIC 9-fasteoi acpi
29: 0 0 0 311 IO-APIC 29-fasteoi intel_sst_driver
32: 0 0 103 0 IO-APIC 32-fasteoi 808622C1:00
33: 0 0 0 248 IO-APIC 33-fasteoi 808622C1:01
37: 1709051 0 0 0 IO-APIC 37-fasteoi 808622C1:05
41: 0 0 0 0 IO-APIC 41-fasteoi 8086228E:00
42: 0 0 0 0 IO-APIC 42-fasteoi dw:dmac-1
@mildred
mildred / README.md
Last active May 13, 2018
Detect renames
View README.md

A tool to detect renames, specification

Goal

  • Can be used in conjunction with rsync. Executed before rsync to renames files to their new location and rsync can synchronize the rest as it works well for that
  • Does detect the file renames that happened in a tree and apply the changes in the other tree

Scenarios

@mildred
mildred / terraform-destroy.log
Created May 11, 2018
terraform destroy logs
View terraform-destroy.log
2018/05/11 09:38:45 [INFO] Terraform version: 0.11.7 41e50bd32a8825a84535e353c3674af8ce799161
2018/05/11 09:38:45 [INFO] Go runtime version: go1.10.1
2018/05/11 09:38:45 [INFO] CLI args: []string{"/home/mildred/Work/SquareScale/squarescale-infrastructure/bin/terraform-0.11.7", "destroy", "-force"}
2018/05/11 09:38:45 [DEBUG] Attempting to open CLI config file: /home/mildred/.terraformrc
2018/05/11 09:38:45 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2018/05/11 09:38:45 [INFO] CLI command args: []string{"destroy", "-force"}
2018/05/11 09:38:45 [INFO] command: empty terraform config, returning nil
2018/05/11 09:38:45 [DEBUG] command: no data state file found for backend config
2018/05/11 09:38:45 [DEBUG] New state was assigned lineage "596ea3fc-e5a8-78b7-c0cd-5ee21f559817"
2018/05/11 09:38:45 [INFO] command: backend initialized: <nil>
@mildred
mildred / README.md
Last active May 8, 2018
P2P sending files / decentralized website
View README.md

Components:

  • a laptop with a file hierarchy to send
  • a server that will receive the files

Operation:

  • Client generates a unique key pair
  • Client configures server to accept files from this public key
  • Server advertise itself on bittorrent DHT using hash(this protocol name, "server" role, public key)
@mildred
mildred / README.md
Last active Mar 29, 2018
Build a fedora kernel rpm using docker and git checkouted sources instead of a src.rpm
View README.md

Build a fedora kernel rpm

Rationale:

  • I need a custom kernel (because sound won't work with vanilla)
  • I want to use Fedora Atomic Host
  • The only way to override the kernel with Fedora Atomic Host is to install a kernel package using ostree-rpm
  • I have a metered network connection and want to avoid downloading the kernel sources too many times
  • The powerful machine that can build the kernel is nor running Fedora or Red-hat based system with rpmbuild available
@mildred
mildred / README.md
Last active Feb 5, 2018
Pull requests from Git CLI
View README.md

Put this in your PATH. Requires git-hub

@mildred
mildred / boot.log
Created Jan 24, 2018
CoreOS m5.large boot log
View boot.log
+----------------------------------------------------------------------------+||||||||||||||||||||||||+----------------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted.
Press enter to boot the selected OS, `e' to edit the commands
before booting or `c' for a command-line.  *CoreOS default  CoreOS USR-A  CoreOS USR-B  
@mildred
mildred / README.md
Created Jan 5, 2018
Namespaces in consul / nomad
View README.md

A namespace is a collection of nomad jobs in the same directory. Sub-directories are sub-namespaces. When instanciated, a namespace is allocated an identifier (8 character unique ID). Before being inserted in nomad, the jobs are modified to include this namespace identifier:

  • the nomad job name is prefixed by "NAMESPACE-" (the namespace identifier)
  • the consul service definitions are prefixed by "NAMESPACE-" (the namespace identifier)
  • the services have an additional environment variable: CONSUL_NAMESPACE_ID

sub-namespaces are also inserted in the system when their parent namespace is inserted. Each sub-namespace is given an identifier the same way. The parent namespace is instanciated with:

  • an environment variable CONSUL_NAMESPACE_ID_FOR_subnsname containing the sub namespace identifier
@mildred
mildred / README.md
Created Aug 19, 2017
Code linters / coding style considered harmful
View README.md

TL;DR code linters may be beneficial but may also cause problems. Basically:

  • It should be included in the editor plugins and shared as most as possible. Example: I never have to complain when vim reformat my Go source file upon saving it. I did not configure it either, it was automatic.
  • automated tools cannot evaluate code complexity, only give metrics that may or may not represent complexity
  • code complexity depends on how people read the code

Code complexity

Code is complex when understanding what it does, reading it, becomes complex. Thus it depends on how people are reading the code. One thing that makes code complex is when you have to browse to different locations/files when reading the code. Another thing that makes reading difficult is when code is not well organized and you struggle to find a piece of code.