So you want to make code even worse? Excellent. Here's how.
- Be nice to people - We're making code terrible, not making people feel terrible
- Keep it compiling - Code should still compile after shittification
- Have fun - If you're not laughing while breaking code formatting, you're doing it wrong
Open an issue. Tell us how to make code even more unreadable.
Good ideas:
- New chaos strategies
- Better randomization
- Language-specific nightmares
- Performance improvements (yes, really)
Bad ideas:
- Actually breaking code
- Making it genuinely malicious
- Being a jerk
- Fork this repo
- Create a branch:
git checkout -b feature/more-chaos - Make your changes
- Test it:
javac CodeShittifier.java && java CodeShittifier --dry-run examples/ - Make sure it still compiles the shittified code
- Commit:
git commit -m "Add random whitespace chaos" - Push:
git push origin feature/more-chaos - Open a Pull Request
Minimum testing checklist:
- Code compiles
- Shittified code still compiles
- Dry-run mode works
- Backup creation works
- Doesn't crash on empty files
Test it on some real Java/Kotlin files. If the output makes you uncomfortable, you're on the right track.
Ironic, isn't it? But yes, keep the CodeShittifier code itself clean and readable.
- Use clear variable names
- Comment the tricky bits
- Keep methods under 50 lines
- Follow standard Java conventions
We're making OTHER people's code terrible, not our own.
Want to work on something? Pick from these:
Easy:
- Add more operator chaos patterns
- Better randomization algorithms
- More example files
- Documentation improvements
Medium:
- Support for .groovy or .scala files
- Shittification profiles (Enterprise Java, Startup Kotlin, etc.)
- Config file support
- Better CLI output
Hard:
- Gradle plugin
- IntelliJ/Android Studio plugin
- Maven plugin
- Web playground
Memes:
- Random code comments ("// TODO: Why?")
- Emoji in variable names (still valid Java!)
- Random Unicode whitespace
- Unnecessarily complex boolean logic
- Code that breaks compilation
- Malicious features (deleting files, etc.)
- Changes that make the tool less fun
- Removing safety features (backups, dry-run, etc.)
- Being mean to contributors
Open an issue. Or just wing it. We're making a tool that ruins code formatting, let's not take this too seriously.
By contributing, you agree that:
- Your code is yours to contribute
- You're okay with the MIT license
- You understand this is a parody/educational tool
- You won't sue us if someone actually uses this in production (please don't)
Thanks for making the world's code a little bit worse! 💩
Remember: Good code is temporary. Shitty code is forever (until someone runs a formatter on it).