Open source project for c++ developer?
Solution 1
Is chromium a good choice?
I believe so, yes!
The source code is IMO very well written, it's a really active project with a lot of work to do and is also interesting in many different ways. Obviously a browser is in itself just a combination of specific libraries, and thus Chromium gives you a nice entry to learn more about them and hopefully contribute evidently. But most importantly it has a big community, is sponsored by a big corporation and has many talented software engineers on its core team.
- Want to learn how to integrate the V8 javascript engine?
- Want to learn about rendering/drawing on screen via Skia?
- Want to learn how to integrate Webkit?
- Want to learn more about the HTTP protocol / network stack?
- Want to learn how to sandbox applications?
- Want to learn about multi-process architecture and IPC?
There are so many things to do, so you could even contribute things you know while learning stuff you don't.
I'd like to add; The choice of an open source project to join should be based on:
- Your level of expertize
- What you'd like to learn
- Quality of the code
- Maturity of the project
- Code complexity (not to be confused with readability)
I only speak for myself here, but as much as I love learning more from too complex projects (file systems, RDBM etc) I find those projects to be less rewarding because of the overwhelming complexity. Try not to learn everything at once, take smaller steps and finish what you start rather than taking larger steps and give up.
Just my 2c - YMMV
In case you'd want to try Chromium out, here are links for the design documents:
- Getting around the source code explains in great detail how the projects tree structure is built.
- The Engineering design docs explain the architecture, most under the hood and future work
- The user experience design docs provide insight to everything that touches the user, that is behavior and look.
- Tech Talk Videos that are very helpful for understanding some key engineering issues and decisions, even if you don't intend to join the chromium project.
The links above are all taken from the Chromium developer documentation, where even more details can be found.
Anyway, good luck finding a project that fits your needs!
Solution 2
Get involved in the Qt Creator project.
Solution 3
KDE has plenty of code in C++/Qt. It is a huge example of open source community... their SVN repository will soon have 7-digit commit numbers (http://websvn.kde.org/).
Solution 4
Google has a lot of open-source C++ projects. Specifically, perftools (replacement malloc, heap/CPU profiler) is in need of considerable Windows and x64 expertise.
http://code.google.com/hosting/projects.html
Solution 5
Well I think there is a lot of interesting opensource projects using c++. Boost is the first project one can think about. It is a library, but very well written, so you will learn a lot. If you want something more fun you can try something like a game engine like Ogre3D. If you want to participate in a project with Qt bindings, I suggest projects related to KDE as they mainly use Qt, AFAIK.
Comments
-
yesraaj almost 2 years
I am a vc++ developer (but like Qt) interested in learning from open source project by contributing and reading the code. I use windows as primary development platform. Which project will be right for me to start?
Is chromium a good choice?
-
Venedictos almost 15 yearsKDE is great, but he did say he primarily uses Windows. (And yes, I know, it runs on Windows, but very few people do that.)
-
David Nehme almost 15 yearsCan you tell us something about Qt Creator and why it's a good one to try to start with?
-
Rob almost 15 yearsQt Creator is a great IDE but with more contributors it could be superb. It's only v1.x so there is plenty of scope for new functionality and the OP mentioned Qt.