- GUI based bot for a small video game
- raft consensus algorithm
- ray casting
- simple b-tree or lsmtree storage engine
I'll also second chip8 emulator as being a good quick fun one! It helps there are ROMs that help quickly validate your implementation also (https://github.com/Timendus/chip8-test-suite)
One thing I've found I enjoy is working on a larger-scope toy project composed of many loosely coupled systems. It works well for me because no matter what type of project I'm interested in working on, I can usually find something applicable within the larger project. Currently on my to-do list are behavior trees and procedural terrain generation, and honestly I don't know how I'm going to decide which to do first.
Every time I learn a new language or concept, I try to apply the principle of achieving a basic task with it.
When the meteor framework came out, I created a bullshit bingo in multiplayer mode. People could create their own bingo cards or use predefined bingo cards with business bullshit terms. Anybody worked in a big corp and had a boring meeting? The multiplayer bingo for the win ;) It was never made public, just a proof of work and to get a grasp on how to use the framework, but had a few chuckles
> Properly handling unicode, syntax highlighting, cursor movement, multi-buffer support, panes/windows, tabs, search/find functionality, LSP support, etc.
You do not need all of these things to make up a text editor. What I would like to have better is a text editor and GUI with better support for non-Unicode text. A feature they didn't mention, that I find useful, is being able to send some text to an external program and replace it with the result; I do sometimes use this feature in vi.
I wrote 20 years ago a backup script implementing Mike Rubel's insight <http://www.mikerubel.org/computers/rsync_snapshots/> about using `rsync` and hard links to create snapshots backups. It's basically my own version of `rsnapshot`. I have deployed it across several of my machines. Every so often I fix a bug or add a feature. Do I need to do it given `rsnapshot`'s existence? No. Is it fun to work on it? Yes.
(I've over the years restored individual files/directories often enough from the resulting backups to have reasonable confidence in the script's effectiveness, but of course one never knows for certain until the day everything gets zapped.)
on mouse stop move over canvas
wont be available for long, that's my idea of toy software, vibe coded the smallest multiplayer game I could think of, about 75% complete. Just taking territories and there's a link to the IP address so you are on the team of the country ip address belongs to. Not smart enough for real game development so have to live within limits of my own abilities.
azhenley•9h ago
Here’s why I prefer making “useless” stuff: https://austinhenley.com/blog/makinguselessstuff.html
And my list of similar projects: https://austinhenley.com/blog/challengingprojects.html
I want to do a database and then something involving genetic algorithms next. If I have infinite time, another video game emulator too.
zzo38computer•8h ago
I had wanted to implement a spreadsheet, although I intended a "zoned spreadsheet", which has a zone grid (separate from the data grid), and each zone row has a number of data rows and each zone column has a number of data columns, and some properties are then properties of zone cells and others are properties of data cells. I think this would be better than most existing spreadsheet programs.
I did not know of some of the things that are mentioned there.
QRY•5h ago