We like to write software! Coding is a zigzag journey of problem-solving, and the destination is less important than some might think.
We often get asked questions like:
- “Why are you doing this?”
- “What is the purpose of this project?”
- “What does this project do better than X?”
Silicon Valley Cutthroat
If one spends a lot of time on Hacker News, or other startup-oriented news sites, they might believe that everyone is working on their next multi-million-dollar startup and/or exit strategy. It may be hard to imagine that people work on open source code purely for the fun of it.
There are hackers who just love the art of building software. They do it for the challenge, for the fun of it. They aren’t trying to make a million dollars.
Consumer Culture
Or, if one is used to consuming other software only, and rarely creating any, they might get stuck in a mindset of thinking “what can this project do for me?” (And if the project isn’t relevant to them, they wonder why it exists.)
There are hackers who don’t need lots of people to consume their software. Of course, they would love it if others enjoyed/admired/appreciated their work, but that's not strictly necessary. It's just fun to create.
We do it just for the fun of it. No, really.
Lastly, if one has learned enough programming technique to do their day job and not a lot more, then they might not appreciate programmers who are always trying new things.
There are hackers who live and breathe code, and the idea that every line of code must prove its monetary value, that every hour spent toiling away at the keyboard must be accounted for, is a damn shame.
The process itself, flaws and all, has value—not just the final product.
I'll end with my favorite quote about programming:
The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.... Yet the program construct, unlike the poet's words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself.
—Fred Brooks, The Mythical Man-Month
Try it!
If you, dear reader, think you may have lost your way—that coding used to be fun for you, but now it's just a slog of clocking in and out to get a paycheck, then allow us to invite you back!
Or, if you were conditioned to think that wild-idea programming is only for professionals and academics, this page is for you. You have the right to tinker, and have fun doing it!
Think of something that you might like to build, learn, experience inside the computer, and just jump in. Without looking or researching first. You might just have a bit of fun. No, really.
The Club
In no particular order, here are some projects who proudly own the “just for fun” label.
Name | Description |
---|---|
Natalie | a Ruby compiler, for fun |
ZigSelf | a Self implementation in Zig, for fun |
php-parser-rs | a PHP parser in Rust, for fun |
ex6502 | a 6502 processor emulator in Elixir, for fun |
Piko-piko OS | an x86 16-bit toy OS, for fun |
Folders2kt | an esoteric programming language, for fun |
GCC Rust | a Rust compiler, for fun |
Soul | an SQLite REST and realtime server, for fun |
hssp | an http status codes CLI, for fun |
PyCraft | a minecraft launcher in python, for fun |
hashsearch | a reverse image search engine, for fun |
quackspeak | a text-to-speech engine using ducks, for fun |
Quark | a high performance lisp dialect, for fun |
Whitecat | a CLI for PHP development, for fun |
eClient | a minecraft launcher in python, for fun |
CascadeOS | a general purpose OS, for fun |
Kiesel | a JavaScript engine in Zig, for fun |
github-pewpew | a CLI tool to delete repos, for fun |
dt | a concatenative AWK-like language, for fun |
grab | a lightweight and simple grep clone, for fun |
math-with-regexps | math with regexps, for fun |
noro | a text editor with window manager, for fun |
Vox | a static site builder made with Elixir, for fun |
jimson | a JSON parser, for fun |
txt2tufte | a Tufte-esqe website builder, for fun |
Azure Storage web explorer | an Azure Storage web explorer, for fun |
renam | a blazingly fast file renaming utility, for fun |
Funciton | a programming language consisting of boxes, for fun |
Join us!
- Add the badge to your project README:
[![justforfunnoreally.dev badge](https://img.shields.io/badge/justforfunnoreally-dev-9ff)](https://justforfunnoreally.dev)
- Add your project to this repo.