9098920f0a
> You cannot get educated by this self-propagating system in which people study > to pass exams, and teach others to pass exams, but nobody knows anything. You > learn something by doing it yourself, by asking questions, by thinking, and by > experimenting. > - Richard Feynman In the spirit of learning by doing, I decided to implement a simple blockchain server. More work remains, but I'm tired after working on this for ~2-3h. I'd like to reimplement this from memory using a statically typed language like Haskell. I'd also like to implement node discovery (https://en.bitcoin.it/wiki/Satoshi_Client_Node_Discovery) because that is still something I don't quite understand. But I'm signing-off for now... Change-Id: I74f424e7f52ffbf81eaad420d7d5205da66d33b5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/4802 Tested-by: BuildkiteCI Reviewed-by: wpcarro <wpcarro@gmail.com> Autosubmit: wpcarro <wpcarro@gmail.com> |
||
---|---|---|
.. | ||
.gitsecret | ||
assessments | ||
bin | ||
boilerplate | ||
buildHaskell | ||
ci | ||
clients/monsterpoker | ||
configs | ||
dotfiles | ||
emacs | ||
go | ||
gopkgs | ||
haskell-file | ||
lisp | ||
nixos | ||
playbooks | ||
scratch | ||
terraform | ||
todo-lists | ||
tools | ||
utils | ||
website | ||
zoo | ||
.envrc | ||
.gitignore | ||
common.nix | ||
keys.nix | ||
Makefile | ||
OWNERS | ||
README.md | ||
secrets.json.secret |
wpcarro
Welcome to my monorepo.
Herein you will find a variety of libraries, packages, and documents. Some of this work in finished and other work is incomplete or just a sketch for a future project.
Where applicable, I try to include README.md
files in some of the
subdirectories to help orient both myself and any onlookers.
Sign posts
Below I have outlined a few projects that you might find interesting.
boilerplate
: scaffolding for projects. Boilerplate's goal is to reduce the startup costs of a project.configs
: my dotfiles (e.g.config.fish
,init.vim
).emacs
: Emacs is both my preferred text editor and my window manager; with tens of thousands of lines of Emacs Lisp, you can safely assume that this directory hosts a lot of libraries and packages.monzo_ynab
:systemd
timer unit that imports my Monzo (i.e. a U.K.-based online bank) transactions into the personal finance tool YNAB (i.e. youneedabudget.com).nixos
: my declarative configuration for my NixOS machines. If you are unfamiliar with Nix, I recommend reading about the NixOS project.tools
: some scripts and projects that simplify my life.website
: everything required to build my website, https://wpcarro.dev.
Installation
Google Machine
- ensure
~/google-briefcase
exists - read
~/google-briefcase/README.md
NixOS Machine
- Ensure Nix is installed.
- Ensure direnv is installed.
- Ensure
~/.password-store
exists. - Transfer GPG stuffs:
- old computer:
configs/.gnupg/export.sh $outdir
- new computer:
configs/.gnupg/import.sh <path-to-zip>
from the new machine.
- old computer:
- Consult
Makefile
.