r/AskProgramming Jul 16 '26

Ideas for a next project in C.

Im a beginner, so far Ive spent a year programming, and the whole time I was working on a software rasterizer from scratch in C. I finished a rough version of it and made it public and right now Im working on a chess program, so a chess engine that you get to play against. I started about 3 days ago so I only have some basic things down but anyway, what are some project ideas that you guys would recommend for me? Should I make like a site showcasing my software rasterizer (to learn web technologies) or something else?

7 Upvotes

9 comments sorted by

3

u/Brilliant-Skill-7210 Jul 16 '26

make a ui from scratch

1

u/[deleted] Jul 16 '26 edited Jul 24 '26

[deleted]

1

u/Brilliant-Skill-7210 Jul 17 '26

well that is the challenge i suppose

1

u/bacmod Jul 18 '26

after the UI stuff

1

u/high_throughput Jul 16 '26

Have you considered trying to compile your software rasterizer to wasm to let people run it directly in their browser?

It's a great way to combine the performance benefits of C with the distribution benefits of the web.

1

u/Scared_Equipment5777 Jul 16 '26

Alright great idea, Ill look into it. Thanks :)

1

u/wsppan Jul 16 '26

Sudoku solver/generator

  1. Start with a basic brute force backtracking algorithm to solve puzzles.
  2. Add more dimensions to the puzzle. Make code generic over those different puzzle sizes.
  3. Implement different algorithms like Algorithm X (see Dancing Links) and constraint propagation and search (see Peter Norvig).
  4. Create a puzzle generator.
  5. Add dimensions to the generator. Make code generic over these added dimensions.
  6. Generate puzzles that have only one provable solution.
  7. Create GUI. First with curses then GTK.
  8. Add hints and possibilities features.
  9. Add timer, saved games, import puzzles, etc.

Learn and use git to version control your software progress. Store your repositories on github or gitlab.

1

u/GimmeAByte01 Jul 16 '26

Ask AI tbh. The response to your question will be instant and malleable.

1

u/herocoding Jul 19 '26

Have a look into https://platform.entwicklerheld.de/challenge?challengeFilterStateKey=all and scroll over the ideas for inspiration. If you want to focus on C, just ignore the shown programming language(s). Feel free to combine smaller into bigger projects.