Align prose with STYLE.md across modules 01-07 and top-level README
Replace residual em-dashes, arrow-notation shorthand, and a handful of filler intensifiers; fix two small typos. Add .gitignore to keep the working CHANGES.md audit out of the repo. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
d2ca02bd90
commit
4194680475
9 changed files with 102 additions and 82 deletions
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
## Key idea
|
||||
|
||||
Most people meet AI assistance through web chat: open a browser tab, paste in a problem, copy the answer back. That works for one-shot questions, but it is the wrong tool for actually writing code. The goal of this guide is to move you off the copy-paste habit and onto tools that live with your code.
|
||||
Most people meet AI assistance through web chat. They open a browser tab, paste in a problem, copy the answer back. That works for one-shot questions, but it is the wrong tool for actually writing code. The goal of this guide is to move you off the copy-paste habit and onto tools that live with your code.
|
||||
|
||||
There are really only two worlds worth distinguishing:
|
||||
There are only two worlds worth distinguishing:
|
||||
|
||||
1. **Web chat** — a browser tab. The AI has no awareness of your project.
|
||||
2. **In your editor or terminal** — the AI lives where your code does. It can read your files, change them directly, and often run commands too.
|
||||
1. **Web chat.** A browser tab or standalone app. The AI has no awareness of your project.
|
||||
2. **In your editor or terminal.** The AI lives where your code does. It can read your files, change them directly, and often run commands too.
|
||||
|
||||
The first is useful for explanation, interpretation, and sometimes planning. The second is what you want to use for any actual coding work.
|
||||
|
||||
|
|
@ -30,12 +30,12 @@ A browser- or app-based conversation with a model. You type, paste, or drag cont
|
|||
- One-shot interpretation: *explain this error, what does this log mean, what does this regex match*
|
||||
- Multi-turn design discussion: *"I'm choosing between approach A and B, what should I think about?"*
|
||||
- Non-code work: drafting documentation, writing commit messages, explaining a concept
|
||||
- Content you do not want the AI to "live in" — a snippet from a paper, output from a server you don't own, a script from an unfamiliar repo
|
||||
- Content you do not want the AI to "live in," such as a snippet from a paper, output from a server you don't own, or a script from an unfamiliar repo
|
||||
|
||||
**Weaknesses:**
|
||||
|
||||
- It's disconnected from your project. The model is stateless and has no idea what files exist, what your conventions are, or what you changed five minutes ago, unless you paste it in.
|
||||
- Round-trip friction: copy from terminal → paste into chat → wait → read → copy answer → paste back. Fine for one-shot, painful for iterative editing.
|
||||
- Round-trip friction: you copy from the terminal, paste into chat, wait, read, copy the answer, and paste back into your editor. Fine for one-shot, painful for iterative editing.
|
||||
- You have to remember to bring the relevant context with you every time.
|
||||
|
||||
**The trap:** because web chat was the first interface most people learned, it becomes their default. If you find yourself pasting code back and forth between a browser tab and your editor more than a couple of times in a session, you are using the wrong tool.
|
||||
|
|
@ -72,7 +72,7 @@ The line between (2) and (3) is fuzzy, and that's fine. A chat with an in-projec
|
|||
|
||||
A fourth pattern, central to the Copilot/Cursor era of 2023–2024, is the **inline edit**: highlight a block of code, press a hotkey (Cmd+K in Cursor, "Edit with Copilot" in VS Code), type *"make this async"* or *"add error handling,"* and a diff appears in place. There is no chat, no agent loop, just one selection, one instruction, and one diff.
|
||||
|
||||
Inline edits emerged in 2023 alongside instruction-tuned LLMs (ChatGPT, GPT-4) — the first models that could reliably take a natural-language instruction and produce a corresponding code transformation. They sat between the earlier completion-only era (autocomplete, powered by Codex and similar) and the agentic loops that followed. As tools became agentic, the pattern has faded: you can do the same thing by asking the in-project chat *"switch the function I have highlighted to async,"* and the result is the same diff. Newer users may skip the inline-edit hotkey entirely. We mention it so you recognize what older tutorials are describing, not as a workflow you need to learn from scratch.
|
||||
Inline edits emerged in 2023 alongside instruction-tuned LLMs (ChatGPT, GPT-4), which were the first models that could reliably take a natural-language instruction and produce a corresponding code transformation. They existed between the earlier completion-only era (autocomplete, powered by Codex and similar) and the agentic loops that followed. As tools became agentic, the pattern has faded. You can do the same thing by asking the in-project chat *"switch the function I have highlighted to async,"* and the result is the same. Newer users may skip the inline-edit hotkey entirely. We mention it so you recognize what older tutorials are describing, not as a workflow you need to learn from scratch.
|
||||
|
||||
|
||||
## How to choose
|
||||
|
|
@ -80,8 +80,8 @@ Inline edits emerged in 2023 alongside instruction-tuned LLMs (ChatGPT, GPT-4)
|
|||
Two questions cover almost every case:
|
||||
|
||||
1. **Should the answer be words I'll read, or code that should land in a file?**
|
||||
- Words → either world works
|
||||
- Code → use world 2; world 1 forces a copy-paste loop
|
||||
- If the answer is words, either approach works
|
||||
- If the answer is code, use world 2 (world 1 forces a copy-paste loop)
|
||||
2. **Do I want the AI to be able to act on this content?**
|
||||
- Yes, then use world 2
|
||||
- No (sensitive snippet, untrusted code, output from a server you don't own), then world 1 is safer because the tool isn't wired to your filesystem
|
||||
|
|
@ -93,12 +93,11 @@ Two questions cover almost every case:
|
|||
| Explain an error, parse a log, interpret some output | Either world | Words-out, no edit needed; pick whichever is open |
|
||||
| Anything that should result in code landing in a file | World 2 | Removes the copy-paste round trip |
|
||||
| A targeted edit you can describe in one sentence | In-project chat (world 2) | Fast, low-overhead, you read the diff before accepting |
|
||||
| Multi-step work — cross-file changes, run-tests-and-fix loops, "explore the project and then change it consistently" | Delegated agent (world 2) | The model owns the sequence; you set the goal and review the end state |
|
||||
| Multi-step work, such as cross-file changes, run-tests-and-fix loops, or "explore the project and then change it consistently" | Delegated agent (world 2) | The model owns the sequence; you set the goal and review the end state |
|
||||
| Reviewing or thinking through code you do not want the AI to act on | Web chat (world 1) | The tool can read but not edit |
|
||||
| Deciding between two approaches; talking through a design | Either world | Conversation UX is what matters |
|
||||
|
||||
|
||||
## Two principles underneath
|
||||
In summary, remember these two things:
|
||||
|
||||
**Match the mode to the output target.** If the answer should *be code in a file*, use a tool that can put it there. If the answer should be a conversation, either approach works.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue