Skip to content

Commit de33260

Browse files
committed
Better intro.
1 parent ff6dc2c commit de33260

File tree

1 file changed

+43
-17
lines changed

1 file changed

+43
-17
lines changed

‎README.md‎

Lines changed: 43 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,60 @@
11
# Linters for Thought: Reflections on Software Engineering and Collective Intelligence
22

33
Joshua Levy ([GitHub](https://github.com/jlevy), [Twitter](https://x.com/ojoshe))\
4-
*v0.1.4 (June 2025) – Draft!*
4+
*v0.1.5 (June 2025) – Draft!*
55

66
<div class="boxed-text">
77

8-
This is a rough draft.
8+
This is a rough and incomplete draft.
99
I'd be very grateful for your feedback!
1010

1111
The ideas here come from many people, no doubt far more than I have currently cited.
12-
Some are from conversations with friends and colleagues over the years.
13-
I would like to add more credits where they are due.
12+
I would like to include more references and credits where they are due.
1413
If you know relevant work or if your own work is relevant, please let me know so I can
1514
reference it.
1615

1716
The fastest way to reach me is to tag or DM me: [x.com/ojoshe](https://x.com/ojoshe)
1817

1918
</div>
2019

21-
## Purpose
20+
## Overview
2221

2322
This work is a collection of reflections and research ideas on software engineering and
24-
tools for thought.
25-
26-
I'll start with Engelbart's ideas on intelligence augmentation and talk about why it's
27-
important today. Then I turn to the history software engineering and its relation to
28-
human knowledge work.
29-
Finally, I'll get into a few specific ideas for tools we might design, discover, and
30-
build that augment our *collective intelligence*—that is, improving our ability to find
31-
solutions to complex human problems.
23+
tools for thought that augment our *collective intelligence*—that is, improving our
24+
ability to find solutions to complex human problems.
25+
26+
I've worked in software and knowledge tools for a long time, in research, in startups,
27+
and in publishing.
28+
In terms of the ability of software to impact our lives, the mid 2020s
29+
is possibly the most exciting time since the dawn of the Internet.
30+
31+
However, there are several ways my own views seem to differ from what I see in many
32+
discussions today. There's a lot here, but it is in support of four key points:
33+
34+
1. Although popular debate today focuses on "AGI" and how AI can replicate human
35+
abilities, Doug Engelbart's ideas on augmenting *human* intellect (*intelligence
36+
augmentation*, or IA) are as prescient and relevant as they were 50 years ago.
37+
38+
2. Although many are wondering if AI is replacing software engineers, the essential
39+
challenge of software engineering is *the exploration of software solutions to human
40+
problems*—and this is the same today as it was decades ago.
41+
42+
3. The challenges of software engineering in fact give glimpses into the future of *all*
43+
human knowledge work.
44+
Instead of saying software engineers are being replaced by LLMs, it is more accurate
45+
to say *the patterns we now see with software engineers using LLMs will increasingly
46+
appear in all knowledge work and problem solving*.
47+
48+
4. In both software engineering and other knowledge work, the most difficult but
49+
high-leverage activities improve "infrastructure": tools that help people explore
50+
solutions more efficiently.
51+
This is analogous to software engineering, where the most powerful systems always
52+
need mature, flexible tools and infrastructure.
53+
54+
If you find you agree with these arguments, you'll see this suggests some different
55+
emphasis than what we currently see in many AI labs and startups.
56+
At the end, I give a few tentative ideas on how to approach building such tools and
57+
infrastructure.
3258

3359
<div class="boxed-text">
3460

@@ -98,7 +124,7 @@ The hard part is figuring out which parts are which.
98124

99125
</div>
100126

101-
### Why Programmers Live in the Future
127+
### Programmers Live in the Future
102128

103129
In the next section I want to take a significant detour through some historical insights
104130
about the challenges of building software.
@@ -323,7 +349,7 @@ engineering:
323349
It involved inherent consequences of mathematics and the laws of physics.
324350
It is ultimately consistent.
325351

326-
Engineers should *always try to understand natural complexity.
352+
Engineers should *always try to understand natural complexity*.
327353

328354
- **Feature complexity:** On the other hand, if you are building a messaging platform,
329355
you will discover your users (and competitors) like features such as emoji reactions
@@ -667,7 +693,7 @@ broadly, checking for a wide range of specific errors, both for humans and for L
667693
<div class="boxed-text">
668694

669695
***Linting** is the use of tools that minimize the attention needed to fix errors or
670-
inconsistencies.
696+
inconsistencies.*
671697

672698
</div>
673699

@@ -1017,7 +1043,7 @@ Some key areas where document and tooling infrastructure needs to improve:
10171043
- There are numerous ways shell and shell-like UIs can be enhanced to be *both* easier
10181044
to use and more powerful
10191045

1020-
### A Few of My Own Experiments (So Far)
1046+
## Appendix: A Few of My Own Experiments (So Far)
10211047

10221048
Over the past couple months, I've found that because I can build more myself with LLM
10231049
coding tools, I have been able to prototype a few of these bottom-up tools.

0 commit comments

Comments
 (0)