🌐
DataCamp
datacamp.com › tutorial › claude-code
Claude Code: A Guide With Practical Examples | DataCamp
February 28, 2025 - Organized imports: Claude Code grouped related imports into logical sections (auth errors, API types, function errors), renamed imports for clarity, and removed redundant aliases for consistency. Enhanced readability: It added section comments to classify imports and removed duplication in the __all__ list for cleaner organization. Simplified client options: It also reduced multiple lines by combining similar imports into a single statement. Here is a side-by-side comparison of original and refactored code.
🌐
Product Talk
producttalk.org › claude-code-what-it-is-and-how-its-different
Claude Code: What It Is, How It's Different, and Why Non-Technical People Should Use It
1 month ago - Claude Code is launching agents to research 15 different competitors at the same time. Remember in our Claude Code example when you used four agents to analyze four competitors simultaneously?
🌐
Anthropic
anthropic.com › engineering › claude-code-best-practices
Claude Code: Best practices for agentic coding
Putting the above content into .claude/commands/fix-github-issue.md makes it available as the /project:fix-github-issue command in Claude Code. You could then for example use /project:fix-github-issue 1234 to have Claude fix issue #1234.
🌐
Medium
medium.com › @dan.avila7 › claude-code-from-zero-to-hero-bebe2436ac32
Claude Code: From Zero to Hero. What is Claude Code? | by Daniel Avila | Medium
June 23, 2025 - Claude Code offers a simple yet powerful command-line interface with tab completion for files and commands. Use /help to see all available commands and /clear to reset the conversation context.
🌐
Builder.io
builder.io › blog › claude-code
How I use Claude Code (+ my best tips)
September 29, 2025 - For example, you can create hooks that automatically format code after file modifications, validate inputs before allowing edits, or send custom notifications. The matcher field supports exact strings (like "Edit") or regex patterns (like ...
🌐
Sid Bharath
siddharthbharath.com › home › blog › cooking with claude code: the complete guide
Cooking with Claude Code: The Complete Guide - Sid Bharath
July 8, 2025 - If you’re using a different hosting service or have specific requirements, just tell Claude and it’ll adapt the entire pipeline accordingly. For example, I use Vercel, which Claude is already well-versed with, and deployment becomes a breeze.
🌐
The Pragmatic Engineer
newsletter.pragmaticengineer.com › p › how-claude-code-is-built
How Claude Code is built - by Gergely Orosz
September 23, 2025 - What surprises me about this ... used to seeing. As an example, Boris walked me through how he built around 20 prototypes of the new feature, todo lists, in a few hours over two days....
🌐
Claude
docs.claude.com › en › docs › claude-code › overview
Claude Code overview - Claude Code Docs
Unix philosophy: Claude Code is composable and scriptable. tail -f app.log | claude -p "Slack me if you see any anomalies appear in this log stream" works.
🌐
Harper Reed
harper.blog › 2025 › 05 › 08 › basic-claude-code
Basic Claude Code | Harper Reed's Blog
June 28, 2025 - A detailed walkthrough of using Claude Code AI assistant for software development, including workflow tips, testing practices, and practical examples from real projects. Covers defensive coding strategies, TDD, and team implementation.
Find elsewhere
🌐
Codecademy
codecademy.com › article › claude-code-tutorial-how-to-generate-debug-and-document-code-with-ai
Claude Code Tutorial: How to Generate, Debug and Document Code with AI | Codecademy
Let us check this with a practical example: Translate this Python function into JavaScript and save it as palindrome.js ... It will respond by creating another file named palindrome.js and populating it with the desired code.
🌐
Bagerbach
bagerbach.com › blog › how-i-use-claude-code
How I use Claude Code | Christian B. B. Houmann
June 22, 2025 - For example, it might hardcode fake outputs or write tests that always pass instead of doing the real work. The experience becomes more akin to pair-programming, and it gives CC the ability to interact with IDE tools, which is very useful.
🌐
ClaudeLog
claudelog.com › home › about
ClaudeLog - Claude Code Docs, Guides, Tutorials & Best Practices
With models like Claude Opus 4.5 (state-of-the-art for software engineering and agentic workflows) and Claude Sonnet 4.5, Claude is committed to responsible AI development with a focus on safety and reliability. Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster through natural language commands.
🌐
Sshh
blog.sshh.io › p › how-i-use-every-claude-code-feature
How I Use Every Claude Code Feature - by Shrivu Shankar
November 2, 2025 - Keeping your CLAUDE.md as short as possible is a fantastic forcing function for simplifying your codebase and internal tooling. ... # Monorepo ## Python - Always ... - Test with <command> ... 10 more ... ## <Internal CLI Tool> ... 10 bullets, focused on the 80% of use cases ... - <usage example> - Always ...
🌐
GitHub
github.com › anthropics › claude-code
GitHub - anthropics/claude-code: Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.
This repository includes several Claude Code plugins that extend functionality with custom commands and agents. See the plugins directory for detailed documentation on available plugins. We welcome your feedback. Use the /bug command to report issues directly within Claude Code, or file a GitHub issue.
Starred by 47.7K users
Forked by 3.3K users
Languages   Shell 46.4% | Python 33.8% | TypeScript 12.9% | PowerShell 4.7% | Dockerfile 2.2%
🌐
Substack
lennysnewsletter.com › p › everyone-should-be-using-claude-code
Everyone should be using Claude Code more
October 14, 2025 - And discovered something wild: Claude Code isn’t about coding at all. It’s about having an AI that manages your entire process—whatever the goal might be. ... → Fed it rambling voice notes from stroller walks → It organized them into coherent research themes → Wrote a full article in my exact voice (pulled from my own examples!)
🌐
GitHub
github.com › hesreallyhim › awesome-claude-code
GitHub - hesreallyhim/awesome-claude-code: A curated list of awesome commands, files, and workflows for Claude Code
A principled, spec-driven workflow that transforms large problems into focused, incremental missions using Claude Code's specialized sub agents. Includes slash-commands, sub agents, and specialized workflows designed for specific parts of the SDLC. A comprehensive and well-documented collection of agentic patterns from Anthropic docs, with colorful Mermaid diagrams and code examples for each pattern.
Starred by 18.4K users
Forked by 1K users
Languages   Python 98.9% | Makefile 1.1%
🌐
Reddit
reddit.com › r/claudeai › can someone explain how to actually use claude for coding projects>
r/ClaudeAI on Reddit: Can someone explain how to actually use Claude for coding projects>
August 9, 2024 -

I paid for Claude pro because i've been hearing that people have used it to do insane things with coding, basically writing entire projects just with claude. I'm trying to use it to design a simple game in python. It's not super complicated, it's something I could write myself but it would take me quite a while as I'm not fast at coding. maybe my expectations were too high but based on what other people were saying I thought I could get claude to basically write the whole program for me with the right prompting.

But I don't really understand how people have used claude do build projects successfully at all. Its capability and understnad of code is quite impressive for an AI, it's certianly much smarter than chat gpt4o. But it seems to hit a wall super quickly if I send it my code and try to have it add new features. And whenever it gets stuck, if I explain to it the problem, its answer is always to add a bunch of extra redundant functions that "check" (unsuccesfully) for the issue if it arises, instead of actually trying to fix the bug.

additionally its code management seems atrocious so because I started the project using claude i'm nearly unable to start editing the code myself. the compartmentalization is terrible and there's tons of weird redundancies, unnused functions, unnecessary functions, and code in strange places.

i'm just wondering when people have made these projects using only Claude, how are you actually getting it to write code that you can put together into a large program? is there some organizational trick I'm missing?

Top answer
1 of 30
123
I give it enough context that I’m used to giving human level developers and it’s been quite useful. But if you’re new to programming you probably don’t have those docs in mind to give to language model. Since you are learning, try asking GPT4 to write you specs and standard code requirements like a CONTRIBUTION.md and USAGE.md and README.md, etc. Especially a CHANGELOG.md Once you have these specs sorted out with GPT4o, saved them as a file and upload them to Claude. Then you can work out issues with GPT4o and when you have alignment on how to solve the problem, then instruct Claude to execute the plan. There’s no reason you couldn’t do this in two different Claude threads by the way — one being a product manager and the other being a software engineer— however revisions and debugging is a chore with Claude due to the message limits. It’s much more efficient to work out problems with ChatGPT and then go execute on Claude.ai. You can use the CHANGELOG.md to help communicate updates and give context between the two services. As I don’t know empirically if this helps but I always start with: “Using the chain-of-thought of a Engineer” and then list out details about the files I want it to check.” Here’s a simple example Using the same chain-of-thought as a Game Developer, you’ll work on a simple 2D platformer game using Python. Key skills: Python, Pygame, basic understanding of game loops and event handling. Responsibilities: - Develop core game mechanics (e.g., player movement, collision detection) - Implement level design with simple platforms and obstacles Review: `Game_Design_Document.md` and `Code_Structure.md` for guidelines. Ask questions after reviewing. We’ll update `SPEC-001.md` based on playtesting feedback. Main task: Create `Level_1.py` with fully functional game mechanics. Hope this helps.
2 of 30
26
Here's what I do:   1. Create a project in claude and give a detail description of the project 2.  Use the first chat to build a large design document BDUF style. 3.  Add that design doc as an artifact to the project. 4. Use a second chat to have claude write a prompt that works through the design document and analyzes the current state of the project each time a chat is started with it. 5. Repeatedly use part 4 prompt result to create new chats to implement features, generally starting with scaffolding out the major types with no implementations. 6. Repeatedly use part 4 prompt to implement individual functions in the scaffolds types. Repeat 4 5 and 6 as necessary until an MVP is achieved, and continue. I firmly believe the BDUF is a valuable thing, something generally looked poorly upon in software development, for good reason. However bduf tends to fail because project requirements change over time and its hard to manage those changes. The rapid development pace you can achieve alleviates that issue to some degree, but additionally its much easier to update the design document in this environment as well.
🌐
Reddit
reddit.com › r/claudeai › how i use claude code
r/ClaudeAI on Reddit: How I use Claude Code
June 25, 2025 -

Hey r/ClaudeAI! This is a cross-post from my blog. I'm sharing what I've learned about Claude Code here & hopefully you find it useful :)

I've been a huge fan of Claude Code ever since it was released.

The first time I tried it, I was amazed by how good it was. But the token costs quickly turned me away. I couldn't justify those exorbitant costs at the time.

Since Anthropic enabled using Claude.ai subscriptions to power your Claude Code usage, it has been a no-brainer for me. I quickly bought the Max tier to power my usage.

Since then, I've used Claude Code extensively. I'm constantly running multiple CC instances doing some form of coding or task that is useful to me. This would have cost me many thousands of dollars if I had to pay for the usage. My productivity has noticeably improved since starting this, and it has been increasing steadily as I become better at using these agentic coding tools.

From throwaway projects...

Agentic coding gives the obvious benefit of taking on throwaway projects that you'd like to explore for fun. Just yesterday, I downloaded all my medical records from the Danish health systems and formatted them so an LLM would easily understand them. Then I gave it to OpenAI's o3 model to help me better understand my (somewhat atypical) medical history. This required barely 15 minutes of my time to set up and guide, and the result was fantastic. I finally got answers to questions I'd been wondering about for years.

There are countless instances where CC has helped me do things that are useful, but not critical enough to be prioritized in the day-to-day.

To serious development

What I'm most interested in is how I can use tools like Claude Code to increase my leverage and create better, more useful solutions. While side projects are fun, they are not the most important thing to optimize. Serious projects (usually) have existing codebases and quality standards to uphold.

I've had great experience using Claude Code, AmpCode, and other AI-coding tools for these kinds of projects, but the patterns of coding are different:

  • Context curation is critical: You have to include established experience and directional cues beyond task specifications.

  • You guide the architecture: The onus is on you to provide and guide the model to create designs that fit well in the context of your system. This means more hand-holding and creating explicit plans for the agentic tools to execute.

  • Less vibe-coding, more partnership: It's more like an intellectual sparring partner that eagerly does trivial tasks for you, is somehow insanely capable in some areas, can read and understand hundreds of documentation pages in minutes, but doesn't quite understand your system or project without guidance.

Patterns and tips for agentic coding

Much of this advice can be boiled down to:

  • Get good at using the tool you're using

  • Build and maintain tools and frameworks that help you use these agentic coding tools better. Use the agentic tools to write these

Your skills and productivity gains from agentic coding tools will improve exponentially over time.

Here's my attempt at boiling down some of the most useful patterns and tips I've learned using Claude Code extensively.

1. Establish and maintain a CLAUDE.md file

This can feel like a chore but it's insanely useful and can save you a ton of time.

Use # as the prefix to your CC prompt and it'll remember your instructions by adding them to CLAUDE.md.

Put CLAUDE.md files in subdirectories to give specific instructions for tests, frontend code, backend services, etc. Curate your context!

Your investment in curating files like CLAUDE.md, or procedures as in (7) and scripts (11), is the same as investing in your developer tooling. Would you code without a linter or formatter? Without a language server to correct you and give feedback? Or a type checker? You could, but most would agree that it's not as easy, nor productive.

2. Use the commands

A few useful ones:

  • Plan mode (shift+tab). I find that this increases the reliability of CC. It becomes more capable of seeing a task to completion.

  • Verbose mode (CTRL+R) to see the full context Claude is seeing

  • Bash mode (! prefix) to run a command and add output as context for the next turn

  • Escape to interrupt and double escape to jump back in the conversation history

3. Run multiple instances in parallel

Frontend + backend at the same time is a great approach. Have one instance build the frontend with placeholder/mocked API & iterate on design while another agent codes the backend.

You can use Git worktrees to work on the same codebase with multiple agents. It's honestly more of a pain than gain when you have to spin up multiple Docker Compose environments, so just use a single Claude instance in that kind of project. Or just don't have multiple instances of the project running at the same time.

4. Use subagents

Just ask Claude Code to do so.

A common and useful pattern is to use multiple subagents to approach a problem from multiple angles simultaneously, then have the main agent compare notes and find the best solution with you.

5. Use visuals

Use screenshots (just drag them in). Claude Code is excellent at understanding visual information and can help debug UI issues or replicate designs.

6. Choose Claude 4 Opus

Especially if you're on a higher tier. Why not use the best model available?

Anecdotally, it's a noticeable step up from Claude 4 Sonnet – which is already a good model in itself.

7. Create project-specific slash commands

Put them in .claude/commands.

Examples:

  • Common tasks or instructions

  • Creating migrations

  • Project setup

  • Loading context/instructions

  • Tasks that need repetition with different focus each time

@tokenbender wrote a great guide to their agent-guides setup that shows this practice.

8. Use Extended Thinking

Write think, think harder, or ultrathink for cases requiring more consideration, like debugging, planning, design.

These increase the thinking budget, which gives better results (but takes longer). ultrathink supposedly allocates 31,999 tokens.

9. Document everything

Have Claude Code write its thoughts, current task specifications, designs, requirement specifications, etc. to an intermediate markdown document. This both serves as context later and a scratchpad for now. And it'll be easier for you to verify and help guide the coding process.

Using these documents in later sessions is invaluable. As your sessions grow in length, context is lost. Regain important context by just reading the document again.

10. For the Vibe-Coders

USE GIT. USE IT OFTEN. You can just make Claude write your commit messages. But seriously, version control becomes even more critical when you're moving fast with AI assistance.

11. Optimize your workflow

  • Continue previous sessions to preserve context (use --resume)

  • Use MCP servers (context7, deepwiki, puppeteer, or build your own)

  • Write scripts for common deterministic tasks and have CC maintain them

  • Use the GitHub CLI instead of fetch tools for GitHub context. Don't use fetch tools to retrieve context from GitHub. (Or use an MCP server, but the CLI is better).

  • Track your usage with ccusage

    • It's more of a fun gimmick if you're on Pro/Max tier – you'll just see what you 'could have' spent if you were using the API.

    • But the live dashboard (bunx ccusage blocks --live) is useful to see if your multiple agents are coming close to hitting your rate limits.

  • Stay up to date via the docs – they're super good

12. Aim for fast feedback loops

Provide a verification mechanism for the model to achieve a fast feedback loop. This usually leads to less reward-hacking, especially when paired with specific instructions and constraints.

Reward hacking: when the AI takes shortcuts to make it look like it succeeded without actually solving the problem. For example, it might hardcode fake outputs or write tests that always pass instead of doing the real work.

13. Use Claude Code in your IDE

The experience becomes more akin to pair-programming, and it gives CC the ability to interact with IDE tools, which is very useful. E.g. access to lint errors, your active file, etc.

14. Queue messages

You can keep sending messages while Claude Code is working, which queues them for the next turn. Useful when you already know what's next.

There's currently a bug where CC doesn't always see this message, but it usually works. Just be aware of it.

15. Compacting and session context length

Be very mindful of compacting. It reduces the noise in your conversation, but also leads to compacting away important context. Do it preemptively at natural stopping points, as compression leads to information loss.

16. Get a better PR template

This is more of a personal gripe with the template itself.

Use another PR template than the default. It seems like Claude 4/CC was instructed to use a specific template, but that template sucks. "Summary → Changes → Test plan" is OK but it's better to have a PR body tailored to your exact PR or project.

Beyond Coding

Claude Code can be used for more than just code.

  • Researching docs → writeup (e.g. to use for another sessions context)

  • Debugging (it's really good at this!)

  • Writing docs after completing features

  • Refactoring

  • Writing tests

  • Finding where X is done (e.g. in new codebases, or huge codebases you're unfamiliar with).

  • Using Claude Code in my Obsidian vault for extensive research into my notes (journals, thoughts, ideas, notes, ...)

Things to watch out for

Security when using tools

Be VERY careful about the external context you inject into the model, e.g. by fetching via MCPs or other means. Prompt injection is a real security concern. People can write malicious prompts in e.g. GitHub issues and have your agent leak unintended information or take unprecedented actions.

Vibing

I've still yet to see a case where full-on, automated vibe-coding for hours on end makes sense. Yes, it works, and you can do it, but I'd avoid it in production systems where people actively have to maintain code. Or, at least review the code yourself.

Model variability

Sometimes it feels like Anthropic is using quantized models depending on model demand. It's as if the model quality can vary over time. This could be a skill issue, but I've seen other users report similar experiences. While understandable, it doesn't feel great as a paying user.

Running Claude Code

I can't help but tinker and explore the tools I use, and I've found some interesting configurations to use with Claude Code.

Some of the environment variables I'm using aren't publicly documented yet, so this is your warning that they may be unstable.

Here's a bash function I use to launch Claude Code with optimized settings:

function ccv() {
  local env_vars=(
    "ENABLE_BACKGROUND_TASKS=true"
    "FORCE_AUTO_BACKGROUND_TASKS=true"
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=true"
    "CLAUDE_CODE_ENABLE_UNIFIED_READ_TOOL=true"
  )
  
  local claude_args=()
  
  if [[ "$1" == "-y" ]]; then
    claude_args+=("--dangerously-skip-permissions")
  elif [[ "$1" == "-r" ]]; then
    claude_args+=("--resume")
  elif [[ "$1" == "-ry" ]] || [[ "$1" == "-yr" ]]; then
    claude_args+=("--resume" "--dangerously-skip-permissions")
  fi
  
  env "${env_vars[@]}" claude "${claude_args[@]}"
}
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=true: Disables telemetry, error reporting, and auto-updates

  • ENABLE_BACKGROUND_TASKS=true: Enables background task functionality for long-running commands

  • FORCE_AUTO_BACKGROUND_TASKS=true: Automatically sends long tasks to background without needing to confirm

  • CLAUDE_CODE_ENABLE_UNIFIED_READ_TOOL=true: Unifies file reading capabilities, including Jupyter notebooks.

This gives you:

  • Automatic background handling for long tasks (e.g. your dev server)

  • No telemetry or unnecessary network traffic

  • Unified file reading

  • Easy switches for common scenarios (-y for auto-approve, -r for resume)

Top answer
1 of 18
9
Thank you! This is the type of thinking and practices we need with these tools. I hate that the term Vibe Coding is such a blanket statement. Posts like this preach best practices while encouraging to try new things. I always feel like we have 2 teams always arguing. Old industry veteran dev who refuses change: “VIBE CODER!! You don’t know anything, your code sucks, and you need to write all your own code yourself” Or the I’m a founder now guy: “I launched my startup company and my new revolutionary app in 3 days. All vibe coded, works perfect!” There exists a place in the middle that is a good spot to be. Learn the language, learn the best practices, learn SDLC and DevOps. Version Control is still an absolute must. Linting, prettier, SAST and DAST tools within your pipeline. Testing everything, reviewing diffs, not sending secrets around like they’re shared candy. And the list goes on. But, with these agents and tools, all of these things are so much simpler to implement, practice, and understand! Like you mentioned, pure vibe coding definitely has its place for fun or prototyping, but once something becomes a real project that you intend to share or have others use, you really should start implementing these best practices. Learning Claude Code and Gemini CLI is similar to learning the tools of GitHub or your chosen IDE. They are still tools that can be used really well or just blasted with simple prompts and not a care in the world! Software development is changing whether people like it or not and we’re still not sure what this looks like in 5-10 years. Now is a perfect time to grasp the fundamentals and learn these tools inside and out.
2 of 18
2
Really good post, got intrigued by the last part, will look this up further, what has been you experience with those experimental flags?