changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > org > notes / 20231212.org

changeset 2: 04e86b94ef1a
parent: 87b04952fb18
child: 812feca5a874
author: Richard Westhaver <ellis@rwest.io>
date: Thu, 06 Jun 2024 23:16:37 -0400
permissions: -rw-r--r--
description: style update
1 #+setupfile: ../clean.theme
2 * On Computers
3 If you've met me in the past decade, you probably know that I am
4 extremely passionate about computers. Let me first explain why.
5 
6 On the most basic level computers are little (or big) machines that
7 can be programmed to do things, or /compute/ if we're being
8 technical.[fn:1]
9 
10 They host and provide access to the Internet, which is a pretty big
11 thing, but they do little things too like unlock your car door and
12 tell your microwave to beep at you. They solve problems. Big or small.
13 
14 They're also /everywhere/ - which can be scary to think about, but
15 ultimately helps propel us into the future.
16 
17 There's something pretty cool about that - when you look at the
18 essence of computation. There are endless quantities of these machines
19 which follow the same basic rules and can be used to solve /real/
20 problems.
21 
22 ** The Programmer
23 Now, let us consider the /programmer/. They have power. /real/
24 power. They understand the language of computers, can whisper to them
25 in various dialects. It can be intimidating to witness until you
26 realize how often the programmer says the wrong thing - a bug.
27 
28 In reality, the programmer has a symbiotic relationship with
29 computers. Good programmers understand this relationship well.
30 
31 #+begin_annecdote
32 One day after I got my first job at a software company, I remember
33 being on an all-hands meeting due to a client service outage. We had
34 some management, our lead devs, product team, and one curious looking
35 man who happened to be our lead IT consultant who had just joined. He
36 was sitting up on a hotel bed, shirtless, vaping an e-cig, typing
37 away in what I can only imagine was a shell prompt.
38 
39 After several minutes he took a swig from a bottle of Coke and said
40 "Node 6 is sick." then a few seconds later our services were
41 restored. For the next hour on the call he explained what happened and
42 why, but that particular phrase always stuck with me. He didn't say
43 Node 6 was down, or had an expired cert - his diagnosis was that /it/
44 was /sick/.
45 #+end_annecdote
46 
47 The more you work closely with computers, the more you start to think
48 of them this way. You don't start screaming when the computer does the
49 wrong thing, you figure out what's wrong and learn from it. With
50 experience, you start to understand the different behaviors of the
51 machines you work with. I like to call this /Machine Empathy/.
52 
53 ** Programs
54 I already mentioned bugs - I write plenty of those, but usually I try
55 to write /programs/. Programs to me are like poetry. I like to think
56 they are for the computer too.
57 
58 Just like computers, /computer programs/ come in different shapes and
59 sizes but in basic terms they are sets of instructions used to control
60 a computer.
61 
62 You can write programs to do anything - when I first started, my
63 programs made music. The program was a means to an end. Over time, I
64 started to see the program as something much more. I saw it as the
65 music itself.
66 
67 [fn:1] ... perform computations
68 
69 
70 * On Infra
71 Something that is missing from many organizations big or large, is an
72 effective way to store and access information, even about their own
73 org.
74 
75 It can be difficult problem to solve - usually there's the official
76 one, say Microsoft Sharepoint and then the list of unofficial sources
77 which becomes tribal corporate hacker knowledge. Maybe the unofficial
78 ones are more current, or are annotated nicely, but their very
79 existence breaks the system. There's no longer a single source of
80 truth.
81 
82 My priority in this department is writing services which process and
83 store information from a variety of sources in a distributed knowledge
84 graph. The graph can later be queried to access information on-demand.
85 
86 My idea of infrastructure is in fact to build my own Cloud. Needless
87 to say I don't have an O365 subscription, and wherever possible I'll
88 be relying on hardware I have physical access to. I'm not opposed to
89 cloud services at large but based on principle I like to think we
90 shouldn't be built on them.