Get the best of Think Different in your inbox

One email a month: new articles, reviews and the upcoming live webinar + free recording. No spam, unsubscribe anytime.

Tag: ai-coding

More posts tagged ai-coding

  1. Google Gemini: Debugging a production incident from a screenshot and a log bundle
  2. ChatGPT Codex: Scoping tasks tightly enough that the agent can finish in one pass
  3. Claude Code: Using sub-agents for parallel research across a large codebase
  4. GitHub Copilot: Pairing inline completion with a custom instructions file to enforce house style
  5. Local LLMs with Ollama: Picking a local model for the specific task, not for the benchmark
  6. Agentic coding: Budgets as the only feature that stops a bad loop
  7. MCP servers: Smallest MCP server that earns its keep
  8. AI coding workflows: Review cycle that keeps agent output honest
  9. Prompt engineering for code: Shortest prompt that still passes review
  10. Cline and Roo Code: Picking a model per task instead of per editor
  11. JetBrains AI Assistant: Letting Junie drive while the IDE still owns correctness
  12. Windsurf: Cascade as a deliberate planning surface, not an auto-pilot
  13. Cursor: Writing .cursorrules that actually stay short and enforceable
  14. Google Gemini: Feeding an entire service plus its tests into a single prompt
  15. ChatGPT Codex: Letting Codex open the PR while you stay the reviewer of record
  16. Claude Code: Planning mode as a cheap insurance policy against cascading edits
  17. GitHub Copilot: Using the @workspace agent to plan multi-file refactors before a single line is written
  18. Local LLMs with Ollama: Sunday-afternoon project: your own code reviewer that runs offline
  19. Agentic coding: Building trust with agents the way you build it with juniors
  20. MCP servers: Where the protocol ends and your product begins
  21. AI coding workflows: Resting the agent: when taking the keyboard back beats another turn
  22. Prompt engineering for code: When to stop prompting and start coding
  23. Cline and Roo Code: Treating the agent as a shell you can still read
  24. JetBrains AI Assistant: AI that respects your refactoring history instead of fighting it
  25. Windsurf: Turning agent output into atomic, reviewable commits
  26. Cursor: Using MCP inside Cursor to give the agent a real toolbox
  27. Google Gemini: Separating research (AI Studio) from execution (Code Assist) on purpose
  28. ChatGPT Codex: Replaying failed tasks with tighter prompts instead of starting over
  29. Claude Code: Running Claude Code headlessly in CI as a structured reviewer
  30. GitHub Copilot: Wiring MCP servers into Copilot to give it domain-specific tools
  31. Local LLMs with Ollama: Quantisation choices that actually matter for code
  32. Agentic coding: Why short agent loops beat heroic ones
  33. MCP servers: Sandboxing MCP tool calls so one bad prompt cannot ruin a week
  34. AI coding workflows: Time-boxing agent loops before they eat the day
  35. Prompt engineering for code: Prompts as contracts, not wishes
  36. Cline and Roo Code: Memory banks that outlive a single session
  37. JetBrains AI Assistant: Pairing AI Assistant with Code With Me for remote reviews
  38. Windsurf: Indexing strategies for a monorepo with generated code
  39. Cursor: Migrating a legacy module without losing git history or sanity
  40. Google Gemini: Crossing modalities: log, screenshot, code, spec, all in one turn
  41. ChatGPT Codex: Catching silent test skips before they ship to main
  42. Claude Code: Composing slash commands into a bespoke team-specific DSL
  43. GitHub Copilot: Measuring acceptance rate honestly instead of celebrating vanity metrics
  44. Local LLMs with Ollama: RAG over internal docs without handing them to a third party
  45. Agentic coding: Rollback plans for changes you did not watch land
  46. MCP servers: Versioning MCP servers like APIs, not like scripts
  47. AI coding workflows: Rescue patterns when an agent has gone off the rails
  48. Prompt engineering for code: Few-shot examples that teach taste, not just format
  49. Logging every turn so you can learn from the agent, not just use it
  50. The overlooked value of structural search and replace
  51. When to reach for Cascade and when to fall back to pure editing
  52. Keeping tests running in the background while the agent edits
  53. Keeping answers tight with explicit output contracts
  54. Treating Codex as a junior engineer with an infinite patience budget
  55. Diffing agent output against main before you trust a single file
  56. Leaning on Copilot Edits for multi-file, reviewable diffs instead of raw chat
  57. Caching embeddings locally for a private retrieval layer
  58. The honest case for agents that only suggest
  59. Why your wiki should probably be an MCP resource, not a tool
  60. Writing acceptance tests first, agents second
  61. Diffing prompts the way you diff code
  62. Cline and Roo Code: open-source agents teach you more than closed ones
  63. JetBrains AI Assistant: not every green inspection is an agent task
  64. Windsurf: the value of a pause button in an otherwise relentless agent
  65. Cheap wins: the keybindings that turn Cursor back into a proper editor
  66. Google Gemini: Using long context to write migration scripts that respect every edge
  67. ChatGPT Codex: Splitting epics into Codex-sized tasks on purpose
  68. Claude Code: Quiet art of pausing the agent instead of letting it churn
  69. From Idea to Published App in a Weekend — With AI on a Mac
  70. GitHub Copilot: Underrated power of /explain on legacy code no one dares to touch
  71. Local LLMs with Ollama: When a local 7B beats a cloud 70B in latency-sensitive loops
  72. Agentic coding: How to review a PR an agent opened in the middle of the night
  73. MCP servers: Composing agents over a catalogue of shared MCP tools
  74. AI coding workflows: Treating diffs as the primary artefact, chat as exhaust
  75. Prompt engineering for code: How to write a system prompt you can still read in six months
  76. Cline and Roo Code: Roo modes that codify team-specific workflows
  77. JetBrains AI Assistant: Writing specs as Markdown that Junie can consume
  78. Windsurf: Pairing Cascade with a linter that refuses bad taste
  79. Cursor: Right amount of automation before it becomes magical thinking
  80. Google Gemini: Generating Mermaid architecture diagrams the agent can then critique
  81. ChatGPT Codex: Auditing the diff, not the narrative – the code is the contract
  82. Claude Code: Keeping Claude honest with explicit acceptance criteria, not vibes
  83. GitHub Copilot: Copilot Spaces as shared context libraries for team onboarding
  84. Local LLMs with Ollama: Thermal budget of a MacBook pretending to be a server
  85. Agentic coding: Guardrails before autonomy, always
  86. MCP servers: Least-privilege auth for MCP in a real enterprise
  87. AI coding workflows: Scorecard question: did this PR have to exist?
  88. Prompt engineering for code: Structured outputs: JSON schemas that keep agents honest
  89. Cline and Roo Code: Building an internal guardrails library on top of Cline
  90. JetBrains AI Assistant: When the IDE already knows the answer and the agent just needs to ask
  91. Windsurf: What Windsurf teaches about the ergonomics of agent IDEs
  92. Cursor: Resetting indexes when completions start feeling stale
  93. Google Gemini: Pairing Gemini with Code Assist for refactors that span a whole module
  94. ChatGPT Codex: Keeping the human in the loop by requiring explicit acceptance
  95. Claude Code: Hooks that enforce lint, test and security gates before any write
  96. GitHub Copilot: Constraining the agent with .github/copilot-instructions.md for reproducible behaviour
  97. Local LLMs with Ollama: Running evals locally before trusting a new model
  98. Agentic coding: Planning outputs as the real product of the first turn
  99. MCP servers: Testing MCP servers with a plain JSON-RPC client first
  100. AI coding workflows: Pair-with-AI rituals that survive a team of ten
  101. Prompt engineering for code: Difference between role prompts and persona cosplay
  102. Cline and Roo Code: Routing cheap models for boilerplate, frontier models for design
  103. JetBrains AI Assistant: Scoping Junie tasks by module to keep review tractable
  104. Windsurf: Using write-mode sparingly to protect your muscle memory
  105. Cursor: Pairing tab with explicit intent comments to steer predictions
  106. Google Gemini: Auditing IAM policies with a million-token sweep over Terraform
  107. ChatGPT Codex: Parallelising bug-fix attempts and picking the cleanest patch
  108. Claude Code: Checkpointing long sessions to protect yourself from context rot
  109. GitHub Copilot: Switching models mid-conversation when reasoning quality starts to degrade
  110. Local LLMs with Ollama: Pairing Ollama with Continue or Cline for a private IDE
  111. Agentic coding: What to log when an agent writes for you
  112. MCP servers: Treating MCP servers as a supply chain, not a side project
  113. AI coding workflows: Daily shutdown routine that actually ships code
  114. Prompt engineering for code: Turning specs into prompts without losing the nuance
  115. Cline and Roo Code: Plan mode as a cheap dry run before committing budget
  116. JetBrains AI Assistant: Using inspections as invisible rails for the agent
  117. Windsurf: Keeping the editor quiet until you ask for help
  118. Cursor: Composer runs that land a feature in a single reviewable diff
  119. Google Gemini: Using Gemini CLI as glue between Cloud Run and your local repo
  120. ChatGPT Codex: Using AGENTS.md to describe the environment the sandbox must respect
  121. Claude Code: Writing a CLAUDE.md that captures tacit team knowledge
  122. GitHub Copilot: Running Copilot CLI as a scriptable review step inside pre-commit hooks
  123. Local LLMs with Ollama: Keeping a small local model honest with tight prompts
  124. Agentic coding: Difference between an agent and a slow script
  125. MCP servers: Exposing read-only resources before you expose write actions
  126. AI coding workflows: Small reversible steps instead of one heroic prompt
  127. Prompt engineering for code: Acceptance criteria as the only prompt that matters
  128. Cline and Roo Code: Auditing every tool call before it touches a file
  129. JetBrains AI Assistant: Refactorings that remain safe because JetBrains understands types
  130. Windsurf: Flows that preserve intent across a long refactor
  131. Cursor: Agent mode as a disciplined driver, not a replacement for review
  132. Google Gemini: Debugging a production incident from a screenshot and a log bundle
  133. ChatGPT Codex: Scoping tasks tightly enough that the agent can finish in one pass
  134. Claude Code: Using sub-agents for parallel research across a large codebase
  135. GitHub Copilot: Pairing inline completion with a custom instructions file to enforce house style
  136. Local LLMs with Ollama: Picking a local model for the specific task, not for the benchmark
  137. Agentic coding: Budgets as the only feature that stops a bad loop
  138. MCP servers: Smallest MCP server that earns its keep
  139. AI coding workflows: Review cycle that keeps agent output honest
  140. How Programming Is Changing in the Era of Generative AI
  141. Prompt engineering for code: Shortest prompt that still passes review
  142. Cline and Roo Code: Picking a model per task instead of per editor
  143. JetBrains AI Assistant: Letting Junie drive while the IDE still owns correctness
  144. Windsurf: Cascade as a deliberate planning surface, not an auto-pilot
  145. Cursor: Writing .cursorrules that actually stay short and enforceable
  146. Google Gemini: Feeding an entire service plus its tests into a single prompt
  147. ChatGPT Codex: Letting Codex open the PR while you stay the reviewer of record
  148. Claude Code: Planning mode as a cheap insurance policy against cascading edits
  149. GitHub Copilot: Using the @workspace agent to plan multi-file refactors before a single line is written
  150. Local LLMs with Ollama: Sunday-afternoon project: your own code reviewer that runs offline
  151. Agentic coding: Building trust with agents the way you build it with juniors
  152. MCP servers: Where the protocol ends and your product begins
  153. AI coding workflows: Resting the agent: when taking the keyboard back beats another turn
  154. Prompt engineering for code: When to stop prompting and start coding
  155. Cline and Roo Code: Treating the agent as a shell you can still read
  156. JetBrains AI Assistant: AI that respects your refactoring history instead of fighting it
  157. Windsurf: Turning agent output into atomic, reviewable commits
  158. Cursor: Using MCP inside Cursor to give the agent a real toolbox
  159. Google Gemini: Separating research (AI Studio) from execution (Code Assist) on purpose
  160. ChatGPT Codex: Replaying failed tasks with tighter prompts instead of starting over
  161. Claude Code: Running Claude Code headlessly in CI as a structured reviewer
  162. GitHub Copilot: Wiring MCP servers into Copilot to give it domain-specific tools
  163. Local LLMs with Ollama: Quantisation choices that actually matter for code
  164. Agentic coding: Why short agent loops beat heroic ones
  165. MCP servers: Sandboxing MCP tool calls so one bad prompt cannot ruin a week
  166. AI coding workflows: Time-boxing agent loops before they eat the day
  167. Prompt engineering for code: Prompts as contracts, not wishes
  168. Cline and Roo Code: Memory banks that outlive a single session
  169. JetBrains AI Assistant: Pairing AI Assistant with Code With Me for remote reviews
  170. Windsurf: Indexing strategies for a monorepo with generated code
  171. Cursor: Migrating a legacy module without losing git history or sanity
  172. Google Gemini: Crossing modalities: log, screenshot, code, spec, all in one turn
  173. ChatGPT Codex: Catching silent test skips before they ship to main
  174. Claude Code: Composing slash commands into a bespoke team-specific DSL
  175. GitHub Copilot: Measuring acceptance rate honestly instead of celebrating vanity metrics
  176. Local LLMs with Ollama: RAG over internal docs without handing them to a third party
  177. Agentic coding: Rollback plans for changes you did not watch land
  178. MCP servers: Versioning MCP servers like APIs, not like scripts
  179. AI coding workflows: Rescue patterns when an agent has gone off the rails
  180. Prompt engineering for code: Few-shot examples that teach taste, not just format
  181. Cline and Roo Code: Logging every turn so you can learn from the agent, not just use it
  182. JetBrains AI Assistant: Overlooked value of structural search and replace
  183. Windsurf: When to reach for Cascade and when to fall back to pure editing
  184. Cursor: Keeping tests running in the background while the agent edits
  185. Google Gemini: Keeping answers tight with explicit output contracts
  186. ChatGPT Codex: Treating Codex as a junior engineer with an infinite patience budget
  187. Claude Code: Diffing agent output against main before you trust a single file
  188. GitHub Copilot: Leaning on Copilot Edits for multi-file, reviewable diffs instead of raw chat
  189. Local LLMs with Ollama: Caching embeddings locally for a private retrieval layer
  190. Agentic coding: Honest case for agents that only suggest
  191. MCP servers: Why your wiki should probably be an MCP resource
  192. AI coding workflows: Writing acceptance tests first, agents second
  193. Prompt engineering for code: Diffing prompts the way you diff code
  194. Cline and Roo Code: Why open-source agents are a better teacher than closed ones
  195. JetBrains AI Assistant: Resisting the urge to turn every green inspection into an agent task
  196. Windsurf: Value of a pause button in an otherwise relentless agent
  197. Cursor: Cheap wins: keybindings that turn Cursor into a proper editor
  198. Google Gemini: Using long context to write migration scripts that respect every edge
  199. ChatGPT Codex: Splitting epics into Codex-sized tasks on purpose
  200. Claude Code: Quiet art of pausing the agent instead of letting it churn
  201. GitHub Copilot: Underrated power of /explain on legacy code no one dares to touch
  202. Local LLMs with Ollama: When a local 7B beats a cloud 70B in latency-sensitive loops
  203. Agentic coding: How to review a PR an agent opened in the middle of the night
  204. MCP servers: Composing agents over a catalogue of shared MCP tools
  205. AI coding workflows: Treating diffs as the primary artefact, chat as exhaust
  206. Prompt engineering for code: How to write a system prompt you can still read in six months
  207. Cline and Roo Code: Roo modes that codify team-specific workflows
  208. JetBrains AI Assistant: Writing specs as Markdown that Junie can consume
  209. Windsurf: Pairing Cascade with a linter that refuses bad taste
  210. Cursor: Right amount of automation before it becomes magical thinking
  211. Google Gemini: Generating Mermaid architecture diagrams the agent can then critique
  212. ChatGPT Codex: Auditing the diff, not the narrative – the code is the contract
  213. Claude Code: Keeping Claude honest with explicit acceptance criteria, not vibes
  214. GitHub Copilot: Copilot Spaces as shared context libraries for team onboarding
  215. Local LLMs with Ollama: Thermal budget of a MacBook pretending to be a server
  216. Agentic coding: Guardrails before autonomy, always
  217. MCP servers: Least-privilege auth for MCP in a real enterprise
  218. AI coding workflows: Scorecard question: did this PR have to exist?
  219. Prompt engineering for code: Structured outputs: JSON schemas that keep agents honest
  220. Cline and Roo Code: Building an internal guardrails library on top of Cline
  221. JetBrains AI Assistant: When the IDE already knows the answer and the agent just needs to ask
  222. Windsurf: What Windsurf teaches about the ergonomics of agent IDEs
  223. Cursor: Resetting indexes when completions start feeling stale
  224. Google Gemini: Pairing Gemini with Code Assist for refactors that span a whole module
  225. ChatGPT Codex: Keeping the human in the loop by requiring explicit acceptance
  226. Claude Code: Hooks that enforce lint, test and security gates before any write
  227. GitHub Copilot: Constraining the agent with .github/copilot-instructions.md for reproducible behaviour
  228. Local LLMs with Ollama: Running evals locally before trusting a new model
  229. Agentic coding: Planning outputs as the real product of the first turn
  230. MCP servers: Testing MCP servers with a plain JSON-RPC client first
  231. AI coding workflows: Pair-with-AI rituals that survive a team of ten
  232. Prompt engineering for code: Difference between role prompts and persona cosplay
  233. Cline and Roo Code: Routing cheap models for boilerplate, frontier models for design
  234. JetBrains AI Assistant: Scoping Junie tasks by module to keep review tractable
  235. Windsurf: Using write-mode sparingly to protect your muscle memory
  236. Cursor: Pairing tab with explicit intent comments to steer predictions
  237. Google Gemini: Auditing IAM policies with a million-token sweep over Terraform
  238. ChatGPT Codex: Parallelising bug-fix attempts and picking the cleanest patch
  239. Claude Code: Checkpointing long sessions to protect yourself from context rot
  240. GitHub Copilot: Switching models mid-conversation when reasoning quality starts to degrade
  241. Local LLMs with Ollama: Pairing Ollama with Continue or Cline for a private IDE
  242. Agentic coding: What to log when an agent writes for you
  243. MCP servers: Treating MCP servers as a supply chain, not a side project
  244. AI coding workflows: Daily shutdown routine that actually ships code
  245. Prompt engineering for code: Turning specs into prompts without losing the nuance
  246. Cline and Roo Code: Plan mode as a cheap dry run before committing budget
  247. JetBrains AI Assistant: Using inspections as invisible rails for the agent
  248. Windsurf: Keeping the editor quiet until you ask for help
  249. Cursor: Composer runs that land a feature in a single reviewable diff
  250. Google Gemini: Using Gemini CLI as glue between Cloud Run and your local repo
  251. ChatGPT Codex: Using AGENTS.md to describe the environment the sandbox must respect
  252. Claude Code: Writing a CLAUDE.md that captures tacit team knowledge
  253. GitHub Copilot: Running Copilot CLI as a scriptable review step inside pre-commit hooks
  254. Local LLMs with Ollama: Keeping a small local model honest with tight prompts
  255. Agentic coding: Difference between an agent and a slow script
  256. MCP servers: Exposing read-only resources before you expose write actions
  257. AI coding workflows: Small reversible steps instead of one heroic prompt
  258. Prompt engineering for code: Acceptance criteria as the only prompt that matters
  259. Cline and Roo Code: Auditing every tool call before it touches a file
  260. JetBrains AI Assistant: Refactorings that remain safe because JetBrains understands types
  261. Windsurf: Flows that preserve intent across a long refactor
  262. Cursor: Agent mode as a disciplined driver, not a replacement for review
  263. Google Gemini: Debugging a production incident from a screenshot and a log bundle
  264. ChatGPT Codex: Scoping tasks tightly enough that the agent can finish in one pass
  265. Claude Code: Using sub-agents for parallel research across a large codebase
  266. GitHub Copilot: Pairing inline completion with a custom instructions file to enforce house style
  267. Local LLMs with Ollama: Picking a local model for the specific task, not for the benchmark
  268. Agentic coding: Budgets as the only feature that stops a bad loop
  269. MCP servers: Smallest MCP server that earns its keep
  270. AI coding workflows: Review cycle that keeps agent output honest
  271. Prompt engineering for code: Shortest prompt that still passes review
  272. Cline and Roo Code: Picking a model per task instead of per editor
  273. JetBrains AI Assistant: Letting Junie drive while the IDE still owns correctness
  274. Windsurf: Cascade as a deliberate planning surface, not an auto-pilot
  275. Cursor: Writing .cursorrules that actually stay short and enforceable
  276. Google Gemini: Feeding an entire service plus its tests into a single prompt
  277. ChatGPT Codex: Letting Codex open the PR while you stay the reviewer of record
  278. Claude Code: Planning mode as a cheap insurance policy against cascading edits
  279. GitHub Copilot: Using the @workspace agent to plan multi-file refactors before a single line is written
  280. GitHub Copilot: First honest week with GitHub Copilot on a real codebase
  281. Local LLMs with Ollama: Teaching a team to trust a model they own end to end
  282. Agentic coding: What agentic coding taught us about how we really work
  283. MCP servers: First comparison between MCP and home-grown tool plumbing
  284. AI coding workflows: What we retired because an agent finally did it well
  285. Prompt engineering for code: Prompt engineering as writing, not programming
  286. Cline and Roo Code: Teaching juniors by pairing on Cline sessions
  287. JetBrains AI Assistant: Writing specs tight enough for Junie to execute cleanly
  288. Windsurf: Retrospective after our first Windsurf-heavy sprint
  289. Cursor: Teaching Cursor the house style without a wall of prose
  290. Google Gemini: Gemini for Workspace as the quiet engineering multiplier
  291. ChatGPT Codex: Pairing Codex with tight acceptance criteria for the first time
  292. Claude Code: First pass at measuring Claude Code against ordinary coding
  293. GitHub Copilot: Small refactor Copilot did not quite nail, and why it mattered
  294. Local LLMs with Ollama: First honest benchmark between local and cloud models
  295. Agentic coding: Retrospective after our first week of full agentic coding
  296. MCP servers: Testing MCP servers with the same rigor as customer-facing APIs
  297. AI coding workflows: When taking the keyboard back was the real productivity move
  298. Prompt engineering for code: Honest taxonomy of prompts, as discovered in practice
  299. Cline and Roo Code: Plan mode budget that caught a runaway loop early
  300. JetBrains AI Assistant: First safe refactor that felt genuinely new
  301. Windsurf: Onboarding a new hire with Windsurf already installed
  302. Cursor: First code review after a heavy Cursor day
  303. Google Gemini: First attempt at Vertex evaluations for code tasks
  304. ChatGPT Codex: Measuring what Codex actually merged, not what it attempted
  305. Claude Code: Learning to pause the agent on purpose
  306. GitHub Copilot: Onboarding a junior engineer with Copilot already in the seat
  307. Local LLMs with Ollama: Cost-per-token in wall time, discovered by accident
  308. Agentic coding: Deliberate agent downtime as an early productivity discovery
  309. MCP servers: Teaching the team MCP through a single example server
  310. AI coding workflows: Daily checklist that outlasted two tool migrations
  311. Prompt engineering for code: Shorter prompts after a month of deliberately deleting words
  312. Cline and Roo Code: What closed-source agents still did better, and where they did not
  313. JetBrains AI Assistant: Teaching Junie through existing Markdown docs
  314. Windsurf: Write mode restraint in the first month of use
  315. Cursor: Learning to write intent in comments, not in chat
  316. Google Gemini: Honest cost of long-context prompts in a small team
  317. ChatGPT Codex: Small playbook that made Codex predictable
  318. Claude Code: Moment Claude Code beat a human reviewer on taste
  319. GitHub Copilot: First model switch inside Copilot Chat, and what it taught us
  320. Local LLMs with Ollama: Air-gapped development as a serious practice, not a demo
  321. Agentic coding: First PR an agent opened that we merged without edits
  322. MCP servers: What the protocol gave us and what our product still had to
  323. AI coding workflows: First retrospective on what AI did and did not change
  324. Prompt engineering for code: First prompt rot we detected, and the lessons from it
  325. Cline and Roo Code: Quiet pleasure of reading every tool call
  326. JetBrains AI Assistant: Early taste tests: JetBrains AI versus the newcomers
  327. Windsurf: Windsurf setting that changed how we reviewed code
  328. Cursor: Pricing tier choices with incomplete information
  329. Google Gemini: First real comparison we ran between Gemini and the rest
  330. ChatGPT Codex: Choosing Codex for upgrades, humans for design
  331. Claude Code: Slash commands as the first real team workflow
  332. GitHub Copilot: When to lean on Copilot CLI instead of the IDE extension
  333. Local LLMs with Ollama: Pairing Ollama with Continue for a first private IDE setup
  334. Agentic coding: Cost-per-merged-change metric we invented out of necessity
  335. MCP servers: First MCP server a security review actually approved
  336. AI coding workflows: Diff as primary artefact, chat as exhaust, a first lesson
  337. Prompt engineering for code: How we measured prompt quality before we had metrics
  338. Cline and Roo Code: First month of honest logs from an open-source agent
  339. JetBrains AI Assistant: First CI run with Junie as a contributor
  340. Windsurf: First MCP server we plugged into Windsurf
  341. Cursor: Undoing Cursor changes on purpose, a first discipline
  342. Google Gemini: When to ask Gemini and when to open the logs yourself
  343. ChatGPT Codex: First time we stopped Codex mid-task and why
  344. Claude Code: When headless Claude Code became part of our CI
  345. GitHub Copilot: Measuring Copilot adoption without lying to ourselves
  346. Local LLMs with Ollama: Offline code reviewer that survived a flaky Wi-Fi week
  347. Agentic coding: Long-running agent that finally paused itself
  348. MCP servers: Observability gaps that bit us exactly once
  349. AI coding workflows: Acceptance tests first, agents second, as a beginner mantra
  350. Prompt engineering for code: Style guides for both humans and models, a beginner attempt
  351. Cline and Roo Code: Running Cline against a local LLM for the first time
  352. JetBrains AI Assistant: When Junie finished the task we had been avoiding
  353. Windsurf: Beginner comparison: Windsurf, Cursor, VS Code Agent
  354. Cursor: MCP inside Cursor as an early glimpse of the toolbelt
  355. Google Gemini: Writing Mermaid diagrams Gemini could then critique
  356. ChatGPT Codex: Budgeting Codex tasks when usage was still a black box
  357. Claude Code: Turning a chaotic commit history into a tidy narrative
  358. GitHub Copilot: Premium request debate, before anyone had real data
  359. Local LLMs with Ollama: Caching embeddings locally for a beginner RAG
  360. Agentic coding: How a junior engineer earned their first autonomous task
  361. MCP servers: Versioning MCP servers like APIs, a first-year habit
  362. AI coding workflows: Choosing boredom over brilliance in the first year
  363. Prompt engineering for code: When a prompt quietly became a feature spec
  364. Cline and Roo Code: Memory banks as a beginner experiment in agent continuity
  365. JetBrains AI Assistant: Pairing Code With Me with AI Assistant for remote review
  366. Windsurf: Pausing Cascade versus pausing yourself
  367. Cursor: When agent mode decided to write tests we never wrote
  368. Google Gemini: Verbosity we trimmed in month two
  369. ChatGPT Codex: Diff-first review habit we learned from Codex
  370. Claude Code: First time Claude Code said no to a bad instruction
  371. GitHub Copilot: Discovering Copilot Edits and rethinking the pull request
  372. Local LLMs with Ollama: Moment a local 7B beat the cloud on a real task
  373. Agentic coding: Case for suggest-only agents in safety-critical code
  374. MCP servers: First sandboxing policy we wished we had started with
  375. AI coding workflows: Shutdown routine that made AI-heavy days survivable
  376. Prompt engineering for code: Diffing prompts without a system, and the system that followed
  377. Cline and Roo Code: Picking models per task with almost no data, and learning fast
  378. JetBrains AI Assistant: AI Assistant versus plain inspections on the same codebase
  379. Windsurf: First atomic commit authored entirely by Cascade
  380. Cursor: First week we stopped fighting Cursor and let it drive
  381. Google Gemini: Mixing AI Studio and Code Assist without losing context
  382. ChatGPT Codex: When Codex rewrote code we did not ask it to
  383. Claude Code: Running Claude Code on a legacy repo nobody wanted to touch
  384. GitHub Copilot: First .github/copilot-instructions.md that actually shipped
  385. Local LLMs with Ollama: Local evaluations that predicted our first cloud regression
  386. Agentic coding: Short loops as the winning rhythm, discovered through long ones
  387. MCP servers: Why we promoted an internal wiki to an MCP resource
  388. AI coding workflows: Time-boxing agent loops before they ate the afternoon
  389. Prompt engineering for code: Prompt library we started in a shared Markdown file
  390. Cline and Roo Code: First audit trail that made a security lead smile
  391. JetBrains AI Assistant: Beginner workflow with Junie, ADRs, and module scope
  392. Windsurf: Writing our first Cascade-friendly task spec
  393. Cursor: Indexing hiccups on a monorepo larger than the demo
  394. Google Gemini: IAM audits with Gemini: the day it noticed what we missed
  395. ChatGPT Codex: Scoping tasks to finish in a single pass, a beginner lesson
  396. Claude Code: Hooks as a cheap gateway drug to workflow automation
  397. GitHub Copilot: Why @workspace changed how we wrote issues
  398. Local LLMs with Ollama: Quantisation choices with incomplete information
  399. Agentic coding: First rollback plan we actually used
  400. MCP servers: Composing agents over a tiny catalogue of shared tools
  401. AI coding workflows: Rescue patterns discovered after the first agentic disaster
  402. Prompt engineering for code: Few-shot examples drawn from our own first PRs
  403. Cline and Roo Code: Cline tool manifests we shared with colleagues over lunch
  404. JetBrains AI Assistant: First inspection the agent actually listened to
  405. Windsurf: Windsurf defaults we kept and the ones we overrode
  406. Cursor: Composer for the first multi-file refactor we trusted
  407. Google Gemini: First migration we ran through a single long prompt
  408. ChatGPT Codex: First Codex PR that shipped without a human touch
  409. Claude Code: Cost spike that taught us to checkpoint
  410. GitHub Copilot: Copilot Chat in the terminal versus the editor, a first look
  411. Local LLMs with Ollama: Thermal limits on the first serious local code session
  412. Agentic coding: Guardrails before autonomy, learned the expensive way
  413. MCP servers: First auth model we picked, and later regretted
  414. AI coding workflows: Scorecard that replaced vanity metrics in month three
  415. Prompt engineering for code: Role prompts the first time we stopped cosplaying with them
  416. Cline and Roo Code: Roo modes that encoded our first team conventions
  417. JetBrains AI Assistant: Refactoring across types with AI Assistant and not losing sleep
  418. Windsurf: What the first long Cascade session actually cost
  419. Cursor: Tab predict surprises that made us rewrite comments
  420. Google Gemini: Gemini CLI as a weekend scripting partner
  421. ChatGPT Codex: Parallel tasks and the temptation to scope too wide
  422. Claude Code: Sub-agents the first time they saved an afternoon
  423. GitHub Copilot: Early art of rejecting suggestions without hurting velocity
  424. Local LLMs with Ollama: Private RAG pipelines, assembled out of a weekend of curiosity
  425. Agentic coding: Planning outputs as the real product of the initial turn
  426. MCP servers: Early protocol tour, done with a plain JSON-RPC client
  427. AI coding workflows: Pair-with-AI rituals for a team that had never tried them
  428. Prompt engineering for code: Structured outputs, discovered the hard way
  429. Cline and Roo Code: Plan mode as a cheap insurance policy from day one
  430. JetBrains AI Assistant: Structural search as the hidden rail for early prompts
  431. Windsurf: Moment Windsurf made a skeptical reviewer pause
  432. Cursor: Agent mode as a faster, more honest pair programmer
  433. Google Gemini: Multimodal debugging with a single screenshot
  434. ChatGPT Codex: Sandbox surprises in the first month of Codex
  435. Claude Code: Planning mode as the training wheels we kept
  436. GitHub Copilot: When inline completion earned its place in the daily loop
  437. Local LLMs with Ollama: Picking a local model for code without benchmarks to lean on
  438. Agentic coding: Budgets as the first feature any agent had to have
  439. MCP servers: Exposing read-only resources before we dared expose actions
  440. AI coding workflows: Small reversible steps as a rhythm we borrowed from elsewhere
  441. Prompt engineering for code: Learning that acceptance criteria beat cleverness
  442. Cline and Roo Code: Bring-your-own-key in the early days of model pricing
  443. JetBrains AI Assistant: Junie arrives: the first autonomous task we trusted
  444. Windsurf: Flows as a new way to carry intent across files
  445. Cursor: Writing a .cursorrules file that did not embarrass us
  446. Google Gemini: Gemini Code Assist versus the API, a first year comparison
  447. ChatGPT Codex: Writing AGENTS.md for a team that had never used agents
  448. Claude Code: Writing your first CLAUDE.md and learning what to leave out
  449. GitHub Copilot: Teaching Copilot your repository one readme at a time
  450. Local LLMs with Ollama: First week running Ollama on a work laptop
  451. Agentic coding: First overnight agent run we dared to approve
  452. MCP servers: First MCP server that earned its keep
  453. AI coding workflows: First weekly review that made AI-assisted work sustainable
  454. Prompt engineering for code: First prompts we wrote that still pass review a year later
  455. Cline and Roo Code: First open-source agent we actually trusted
  456. JetBrains AI Assistant: AI Assistant day one in a JetBrains shop
  457. Windsurf: First look at Cascade after a year of Cursor
  458. Cursor: First hour inside Cursor after years of VS Code
  459. Google Gemini: First million-token prompt we actually sent
  460. ChatGPT Codex: First Codex task that opened a real pull request
  461. Claude Code: First week of Claude Code at the terminal
  462. GitHub Copilot: First honest week with GitHub Copilot on a real codebase
  463. Local LLMs with Ollama: Teaching a team to trust a model they own end to end
  464. Agentic coding: What agentic coding taught us about how we really work
  465. MCP servers: First comparison between MCP and home-grown tool plumbing
  466. AI coding workflows: What we retired because an agent finally did it well
  467. Prompt engineering for code: Prompt engineering as writing, not programming
  468. Cline and Roo Code: Teaching juniors by pairing on Cline sessions
  469. JetBrains AI Assistant: Writing specs tight enough for Junie to execute cleanly
  470. Windsurf: Retrospective after our first Windsurf-heavy sprint
  471. Cursor: Teaching Cursor the house style without a wall of prose
  472. Google Gemini: Gemini for Workspace as the quiet engineering multiplier
  473. ChatGPT Codex: Pairing Codex with tight acceptance criteria for the first time
  474. Claude Code: First pass at measuring Claude Code against ordinary coding
  475. GitHub Copilot: Small refactor Copilot did not quite nail, and why it mattered
  476. Local LLMs with Ollama: First honest benchmark between local and cloud models
  477. Agentic coding: Retrospective after our first week of full agentic coding
  478. MCP servers: Testing MCP servers with the same rigor as customer-facing APIs
  479. AI coding workflows: When taking the keyboard back was the real productivity move
  480. Prompt engineering for code: Honest taxonomy of prompts, as discovered in practice
  481. Cline and Roo Code: Plan mode budget that caught a runaway loop early
  482. JetBrains AI Assistant: First safe refactor that felt genuinely new
  483. Windsurf: Onboarding a new hire with Windsurf already installed
  484. Cursor: First code review after a heavy Cursor day
  485. Google Gemini: First attempt at Vertex evaluations for code tasks
  486. ChatGPT Codex: Measuring what Codex actually merged, not what it attempted
  487. Claude Code: Learning to pause the agent on purpose
  488. GitHub Copilot: Onboarding a junior engineer with Copilot already in the seat
  489. Local LLMs with Ollama: Cost-per-token in wall time, discovered by accident
  490. Agentic coding: Deliberate agent downtime as an early productivity discovery
  491. MCP servers: Teaching the team MCP through a single example server
  492. AI coding workflows: Daily checklist that outlasted two tool migrations
  493. Prompt engineering for code: Shorter prompts after a month of deliberately deleting words
  494. Cline and Roo Code: What closed-source agents still did better, and where they did not
  495. JetBrains AI Assistant: Teaching Junie through existing Markdown docs
  496. Windsurf: Write mode restraint in the first month of use
  497. Cursor: Learning to write intent in comments, not in chat
  498. Google Gemini: Honest cost of long-context prompts in a small team
  499. ChatGPT Codex: Small playbook that made Codex predictable
  500. Claude Code: Moment Claude Code beat a human reviewer on taste
  501. GitHub Copilot: First model switch inside Copilot Chat, and what it taught us
  502. Local LLMs with Ollama: Air-gapped development as a serious practice, not a demo
  503. Agentic coding: First PR an agent opened that we merged without edits
  504. MCP servers: What the protocol gave us and what our product still had to
  505. AI coding workflows: First retrospective on what AI did and did not change
  506. Prompt engineering for code: First prompt rot we detected, and the lessons from it
  507. Cline and Roo Code: Quiet pleasure of reading every tool call
  508. JetBrains AI Assistant: Early taste tests: JetBrains AI versus the newcomers
  509. Windsurf: Windsurf setting that changed how we reviewed code
  510. Cursor: Pricing tier choices with incomplete information
  511. Google Gemini: First real comparison we ran between Gemini and the rest
  512. ChatGPT Codex: Choosing Codex for upgrades, humans for design
  513. Claude Code: Slash commands as the first real team workflow
  514. GitHub Copilot: When to lean on Copilot CLI instead of the IDE extension
  515. Local LLMs with Ollama: Pairing Ollama with Continue for a first private IDE setup
  516. Agentic coding: Cost-per-merged-change metric we invented out of necessity
  517. MCP servers: First MCP server a security review actually approved
  518. AI coding workflows: Diff as primary artefact, chat as exhaust, a first lesson
  519. Prompt engineering for code: How we measured prompt quality before we had metrics
  520. Cline and Roo Code: First month of honest logs from an open-source agent
  521. JetBrains AI Assistant: First CI run with Junie as a contributor
  522. Windsurf: First MCP server we plugged into Windsurf
  523. Cursor: Undoing Cursor changes on purpose, a first discipline
  524. Google Gemini: When to ask Gemini and when to open the logs yourself
  525. ChatGPT Codex: First time we stopped Codex mid-task and why
  526. Claude Code: When headless Claude Code became part of our CI
  527. GitHub Copilot: Measuring Copilot adoption without lying to ourselves
  528. Local LLMs with Ollama: Offline code reviewer that survived a flaky Wi-Fi week
  529. Agentic coding: Long-running agent that finally paused itself
  530. MCP servers: Observability gaps that bit us exactly once
  531. AI coding workflows: Acceptance tests first, agents second, as a beginner mantra
  532. Prompt engineering for code: Style guides for both humans and models, a beginner attempt
  533. Cline and Roo Code: Running Cline against a local LLM for the first time
  534. JetBrains AI Assistant: When Junie finished the task we had been avoiding
  535. Windsurf: Beginner comparison: Windsurf, Cursor, VS Code Agent
  536. Cursor: MCP inside Cursor as an early glimpse of the toolbelt
  537. Google Gemini: Writing Mermaid diagrams Gemini could then critique
  538. ChatGPT Codex: Budgeting Codex tasks when usage was still a black box
  539. Claude Code: Turning a chaotic commit history into a tidy narrative
  540. GitHub Copilot: Premium request debate, before anyone had real data
  541. Local LLMs with Ollama: Caching embeddings locally for a beginner RAG
  542. Agentic coding: How a junior engineer earned their first autonomous task
  543. MCP servers: Versioning MCP servers like APIs, a first-year habit
  544. AI coding workflows: Choosing boredom over brilliance in the first year
  545. Prompt engineering for code: When a prompt quietly became a feature spec
  546. Cline and Roo Code: Memory banks as a beginner experiment in agent continuity
  547. JetBrains AI Assistant: Pairing Code With Me with AI Assistant for remote review
  548. Windsurf: Pausing Cascade versus pausing yourself
  549. Cursor: When agent mode decided to write tests we never wrote
  550. Google Gemini: Verbosity we trimmed in month two
  551. ChatGPT Codex: Diff-first review habit we learned from Codex
  552. Claude Code: First time Claude Code said no to a bad instruction
  553. GitHub Copilot: Discovering Copilot Edits and rethinking the pull request
  554. Local LLMs with Ollama: Moment a local 7B beat the cloud on a real task
  555. Agentic coding: Case for suggest-only agents in safety-critical code
  556. MCP servers: First sandboxing policy we wished we had started with
  557. AI coding workflows: Shutdown routine that made AI-heavy days survivable
  558. Prompt engineering for code: Diffing prompts without a system, and the system that followed
  559. Cline and Roo Code: Picking models per task with almost no data, and learning fast
  560. JetBrains AI Assistant: AI Assistant versus plain inspections on the same codebase
  561. Windsurf: First atomic commit authored entirely by Cascade
  562. Cursor: First week we stopped fighting Cursor and let it drive
  563. Google Gemini: Mixing AI Studio and Code Assist without losing context
  564. ChatGPT Codex: When Codex rewrote code we did not ask it to
  565. Claude Code: Running Claude Code on a legacy repo nobody wanted to touch
  566. GitHub Copilot: First .github/copilot-instructions.md that actually shipped
  567. Local LLMs with Ollama: Local evaluations that predicted our first cloud regression
  568. Agentic coding: Short loops as the winning rhythm, discovered through long ones
  569. MCP servers: Why we promoted an internal wiki to an MCP resource
  570. AI coding workflows: Time-boxing agent loops before they ate the afternoon
  571. Prompt engineering for code: Prompt library we started in a shared Markdown file
  572. Cline and Roo Code: First audit trail that made a security lead smile
  573. JetBrains AI Assistant: Beginner workflow with Junie, ADRs, and module scope
  574. Windsurf: Writing our first Cascade-friendly task spec
  575. Cursor: Indexing hiccups on a monorepo larger than the demo
  576. Google Gemini: IAM audits with Gemini: the day it noticed what we missed
  577. ChatGPT Codex: Scoping tasks to finish in a single pass, a beginner lesson
  578. Claude Code: Hooks as a cheap gateway drug to workflow automation
  579. GitHub Copilot: Why @workspace changed how we wrote issues
  580. Local LLMs with Ollama: Quantisation choices with incomplete information
  581. Agentic coding: First rollback plan we actually used
  582. MCP servers: Composing agents over a tiny catalogue of shared tools
  583. AI coding workflows: Rescue patterns discovered after the first agentic disaster
  584. Prompt engineering for code: Few-shot examples drawn from our own first PRs
  585. Cline and Roo Code: Cline tool manifests we shared with colleagues over lunch
  586. JetBrains AI Assistant: First inspection the agent actually listened to
  587. Windsurf: Windsurf defaults we kept and the ones we overrode
  588. Cursor: Composer for the first multi-file refactor we trusted
  589. Google Gemini: First migration we ran through a single long prompt
  590. ChatGPT Codex: First Codex PR that shipped without a human touch
  591. Claude Code: Cost spike that taught us to checkpoint
  592. GitHub Copilot: Copilot Chat in the terminal versus the editor, a first look
  593. Local LLMs with Ollama: Thermal limits on the first serious local code session
  594. Agentic coding: Guardrails before autonomy, learned the expensive way
  595. MCP servers: First auth model we picked, and later regretted
  596. AI coding workflows: Scorecard that replaced vanity metrics in month three
  597. Prompt engineering for code: Role prompts the first time we stopped cosplaying with them
  598. Cline and Roo Code: Roo modes that encoded our first team conventions
  599. JetBrains AI Assistant: Refactoring across types with AI Assistant and not losing sleep
  600. Windsurf: What the first long Cascade session actually cost
  601. Cursor: Tab predict surprises that made us rewrite comments
  602. Google Gemini: Gemini CLI as a weekend scripting partner
  603. ChatGPT Codex: Parallel tasks and the temptation to scope too wide
  604. Claude Code: Sub-agents the first time they saved an afternoon
  605. GitHub Copilot: Early art of rejecting suggestions without hurting velocity
  606. Local LLMs with Ollama: Private RAG pipelines, assembled out of a weekend of curiosity
  607. Agentic coding: Planning outputs as the real product of the initial turn
  608. MCP servers: Early protocol tour, done with a plain JSON-RPC client
  609. AI coding workflows: Pair-with-AI rituals for a team that had never tried them
  610. Prompt engineering for code: Structured outputs, discovered the hard way
  611. Cline and Roo Code: Plan mode as a cheap insurance policy from day one
  612. JetBrains AI Assistant: Structural search as the hidden rail for early prompts
  613. Windsurf: Moment Windsurf made a skeptical reviewer pause
  614. Cursor: Agent mode as a faster, more honest pair programmer
  615. Google Gemini: Multimodal debugging with a single screenshot
  616. ChatGPT Codex: Sandbox surprises in the first month of Codex
  617. Claude Code: Planning mode as the training wheels we kept
  618. GitHub Copilot: When inline completion earned its place in the daily loop
  619. Local LLMs with Ollama: Picking a local model for code without benchmarks to lean on
  620. Agentic coding: Budgets as the first feature any agent had to have
  621. MCP servers: Exposing read-only resources before we dared expose actions
  622. AI coding workflows: Small reversible steps as a rhythm we borrowed from elsewhere
  623. Prompt engineering for code: Learning that acceptance criteria beat cleverness
  624. Cline and Roo Code: Bring-your-own-key in the early days of model pricing
  625. JetBrains AI Assistant: Junie arrives: the first autonomous task we trusted
  626. Windsurf: Flows as a new way to carry intent across files
  627. Cursor: Writing a .cursorrules file that did not embarrass us
  628. Google Gemini: Gemini Code Assist versus the API, a first year comparison
  629. ChatGPT Codex: Writing AGENTS.md for a team that had never used agents
  630. Claude Code: Writing your first CLAUDE.md and learning what to leave out
  631. GitHub Copilot: Teaching Copilot your repository one readme at a time
  632. Local LLMs with Ollama: First week running Ollama on a work laptop
  633. Agentic coding: First overnight agent run we dared to approve
  634. MCP servers: First MCP server that earned its keep
  635. AI coding workflows: First weekly review that made AI-assisted work sustainable
  636. Prompt engineering for code: First prompts we wrote that still pass review a year later
  637. Cline and Roo Code: First open-source agent we actually trusted
  638. JetBrains AI Assistant: AI Assistant day one in a JetBrains shop
  639. Windsurf: First look at Cascade after a year of Cursor
  640. Cursor: First hour inside Cursor after years of VS Code
  641. Google Gemini: First million-token prompt we actually sent
  642. ChatGPT Codex: First Codex task that opened a real pull request
  643. Claude Code: First week of Claude Code at the terminal
  644. GitHub Copilot: First honest week with GitHub Copilot on a real codebase