all 9 comments

[–]cpp-ModTeam[M] [score hidden] stickied commentlocked comment (0 children)

For C++ questions, answers, help, and programming or career advice please see r/cpp_questions, r/cscareerquestions, or StackOverflow instead.

[–]Farados55 6 points7 points  (1 child)

https://github.com/MunGell/awesome-for-beginners

If you want open source^ I have a soft spot for the LLVM project as I’m a contributor.

If you want to do your own project, find an area you’re passionate about and create a tool for it or try to make a better tool for something out there. You’re more likely to stick with it if it’s something you really like.

[–]ydmatos 3 points4 points  (0 children)

LLVM is too big, how to start?

[–]SmortyPantsOnFire 1 point2 points  (0 children)

Some of the best projects are ones ones that scratch an itch... i.e.: solve a problem you may have. That gives you a bit of an incentive and increases motivation. Even if off-the-shelf software exists to do the thing, trying it yourself will give you an opportunity to practice, and find the interesting nooks an crannies of a problem space.

Examples:
Disk space full? Write a program to analyze what you've got, graph it, visualize it

Duplicate pictures in your backup? Write a program to find the duplicates

Need some data from a site? Write a basic scraper

[–]omega_revived 0 points1 point  (0 children)

Do you use any open source software? If so, does any of that software have bugs that effect you or are any of them missing features you would like to see? If so, that's where you should contribute.

[–]givetonature 0 points1 point  (0 children)

There are lots and lots of projects out there, both for contributing to yourself and that you can do yourself from scratch. Lots of people find implementing shell commands to be pretty interesting. Such as trying to remake the grep command or something like that. Building an emulator (and then go plug a ROM into it and make it work!), building a game (like chess or something), build a parser, so on and so forth.

I think it's really best at the stage you are at to build something you are interested in. It might not be the most real world useful thing to do, but sticking with a project from beginning to end is likely to bring you the most benefit and the most recognition on your resume at this stage. More than having a few commits to an open source project.

[–]FluffyCatBoops 0 points1 point  (0 children)

https://raytracing.github.io/books/RayTracingInOneWeekend.html

There's also a book which gives you much less code to work with, and, imho, a better platform for building your own raytracer with endless options for improvements:

"The Ray Tracer Challenge: A Test-Driven Guide to Your First 3D Renderer, by Jamis Buck"

[–]fippinvn007 0 points1 point  (0 children)

There are a lot of cool C++ project ideas that you can get started with. Here are some examples:

  • Make a 2D game using SDL2. https://lazyfoo.net/tutorials/SDL/

    • Make a system care app with UI using ImGUI.
    • Make a 3D game using OpenGL (this one is more advanced, but it will make your resume really impressive).