I hereby claim:
- I am tonytamps on github.
- I am tonytamps (https://keybase.io/tonytamps) on keybase.
- I have a public key whose fingerprint is B507 B05E BCF7 E67A 2F9D FCDA 872C 373A AAA8 3D60
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
#/usr/bin/env bash | |
# git hook to run a command after `git pull` if a specified file was changed | |
# Run `chmod +x post-merge` to make it executable then put it into `.git/hooks/`. | |
project_root="$(git rev-parse --show-toplevel)" | |
changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)" | |
go_run() { |
A "choose your own adventure" story
JavaScript is has both object-oriented and functional heritage, thanks to its two parents: Scheme and Self.
It provides first class functions and makes it simple to compose these function objects into bundles of awesome. Even though I'm an OO "true believer" at heart, I find myself composing my code using functional concepts, and use the OO approach where there's a clear benefit or where I feel that it's the best way to communicate the interface.
Object-oriented software design is by no means the only way to do software design, but it's been an immensely successful model for a very long time now, and provides a clear and well-understood mental model for thinking and communicating about software. Lots of good ideas like encapsulation, delegation, traits and composition fit well into OO design.
data:text/html, <body contenteditable style="font: 2rem/1.5 monospace; max-width: 60%; padding: 50px;" onload="document.body.focus()"> |