Why Developers Run Out of Disk Space on macOS
If you're a developer using a Mac, you've probably experienced this:
Your disk is almost full, but you have no idea what's using all the space.
You check Applications. Nothing unusual.
You check Documents. Still reasonable.
Then you start wondering where the missing 50, 100, or even 200 GB went.
For developers, the answer is often hidden in development tools and project data.
The Hidden Storage Problem
Modern development environments generate a surprising amount of data.
A typical developer Mac might contain:
node_modules- Xcode DerivedData
- iOS Simulator data
- Docker images
- Docker volumes
- npm/pnpm/Yarn caches
- Gradle caches
- Python virtual environments
- Build artifacts
- Homebrew caches
- Application caches
- Logs
- Old project files
- Downloaded installers
Each individual directory might seem reasonable.
The problem is that they accumulate.
If you've been developing on the same Mac for a couple of years, you can easily end up with a large amount of storage that you aren't actively using.
node_modules Can Add Up Quickly
Node.js developers are probably familiar with this one.
A project might contain hundreds or thousands of dependencies.
The resulting node_modules directory can easily become hundreds of megabytes or more.
Now imagine having 20, 30, or 50 projects.
Even if every project only consumes a moderate amount of space, the total can become significant.
And old projects tend to remain on development machines long after they're actively maintained.
Xcode Is Another Major Storage Consumer
iOS and macOS development can generate substantial amounts of data.
Some common directories worth checking include:
- DerivedData
- iOS Simulator runtimes
- Device support files
- Archives
- Build artifacts
If you've been using Xcode for years, it's worth investigating how much storage these directories consume.
Docker Can Quietly Grow
Docker is another common source of storage growth.
Images, containers and volumes can accumulate as you build and test different projects.
You might have old images from projects you haven't touched in months.
Docker's storage can therefore be worth checking when your Mac suddenly reports low disk space.
The Problem With Finder
Finder is great for managing individual files.
But finding the biggest storage consumers across an entire disk can become tedious.
You end up opening folders, checking sizes, going deeper into directories and repeating the process.
A visual representation can make this much easier.
Instead of thinking:
Mac
└── Users
└── ...
└── ...
└── ...
you can see which parts of the disk are consuming the most space.
Building a Visual Disk Analyzer
This was one of the reasons I built ByteSweep.
The idea is simple:
Make it easier to understand your disk before deciding what to delete.
ByteSweep provides several visualizations for exploring storage:
- Treemap
- Folders
- Sunburst
- Flame
- Bubbles
- Mind Map
- Top Sizes
- Age Map
Different visualizations are useful for different situations.
For example, a treemap makes unusually large files and directories immediately noticeable, while an age-based view can help identify older data that may no longer be useful.
Cleanup Shouldn't Mean "Delete Everything"
One thing I wanted to avoid was creating a tool that simply tells users to delete anything large.
Large doesn't mean unnecessary.
A 30 GB directory might be:
- An important project
- A database
- A development environment
- An application dependency
- A backup
- Something you actually need
So the goal should be visibility first, cleanup second.
Before removing something, ask:
- What created this data?
- Is it still being used?
- Can it be recreated?
- Is it backed up?
- Will deleting it affect a development environment?
This is particularly important for developer machines.
A Practical Developer Cleanup Checklist
If your Mac is running low on storage, I'd start with these areas:
1. Find the largest directories
Don't start deleting randomly. First understand where the space is going.
2. Review old projects
Do you still need every project you've cloned over the years?
3. Check node_modules
Look for dependencies belonging to projects you no longer actively use.
4. Review Docker storage
Check unused images, containers and volumes.
5. Check Xcode data
DerivedData, simulators, archives and device support files can accumulate.
6. Review caches
Look at application and package-manager caches before deciding what can be safely removed.
7. Check Downloads
Old .dmg, .zip, .pkg and other installers are easy to forget.
8. Look for duplicate files
Large duplicated files can be an easy source of recoverable storage.
Why I Prefer Visualizing Storage First
The biggest lesson for me is that disk cleanup is easier when you can actually see the problem.
Instead of asking:
"What can I delete?"
start with:
"What's taking up my space?"
Once you know the answer, you can make a much more informed decision.
That's the idea behind ByteSweep — a visual disk analyzer and cleanup tool for macOS designed to help you explore your storage and identify potential cleanup opportunities.
If you're a developer with a Mac full of projects, Docker data, Xcode files and dependencies, it's worth taking a look at what's actually sitting on your SSD.
Your next 50 GB might already be there.
You just need to find it.
Top comments (0)