Which open source project would you recommend contributing to? [closed] - language-agnostic

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
What open source projects would you recommend as a good place for a starting open source developer? Factors that I think would be important are some obvious ones like well written code and a community that is helpful to newbies. But it might be nice if the code base is such that I can start hacking some small problems without really understanding the details of how everything works.
I'd prefer something that can be developed on Linux using C/C++/Java/Python/Scala.

Trying to pick a project like that will never work because it's not something you're passionate about. What's an open source project that you use daily or enjoy using? Go work with that one.

It really depends on what your interests are as to what project to dive into.
Rationale for a larger project (e.g. Firefox, OpenOffice, etc) is that it has many developers, a well established code base, and many small tasks/bugs to be worked out.
Rationale for a smaller project is that you will become more intimate with the code and application. You will likely get to know other developers on the team and understand the overall concept better. Additionally, your additions to the project may be more noticeable.

sourceforge has a list of projects seeking a new developer. Therer are several for your requested programming languages:
http://sourceforge.net/people/?category_id=1
Apart from developers they have more help requests:
http://sourceforge.net/people/

Pick one you use and like already.

Related

the advantage of reading open source code [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I know there is no clear answer to this question. I still wonder to know whether Reading open source code can improve myself rapidly? how and why?
ps:I keep reading open source code every day for months.
Well, many of the bigger open source projects are collaborations between many people: Thus you do have a chance of finding a project written by good developers, and therefore improve your own coding style. Of course, it all depends if you actually memorise the stuff you read or not - But I guess you wouldn't really read that much code if you didn't.
In my opinion, you can learn the following from well-written projects:
Coding conventions
Solutions to common problems (Of course, this depends heavily on the "type" of the project)
How to document code properly - If multiple people work on something, and the project is well-written, it probably also has a good documentation.
Of course, all of this is opinion-based, so you need to see for yourself.
Possible answers (this is highly subjective)
Because working with someone else's code is more difficult than working with my own code. It forces me to adapt to some else's thinking ("If all I have is a hammer, every problem looks like a nail")
Because open-source code is often not written under a deadline, by people who enjoy what they are working at, and can provide high-quality real-world examples
Because open-source code tends to have less of an agenda to push vendor XYZ's proprietary pet technology
Because the world might become a slighly better place, if people wouldn't code for the CPU as their main audience, but a human reader :)

Where do Open Source projects hold their design files? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I have seen many opensource project on github, sourceforge etc.
Went through the code on many big projects.
I have never seen ANY design diagrams, from simple class diagrams to sequence diagrams.
Also, many projects (not all) don't actually have any comments on their code.
How is this even possible? No design and some comments only.
This depends on the project at hand; design diagrams could be found in the source tree, or on the project's website, or any number of places. There may not even be design diagrams at all -- they're not strictly necessary for software development.
The reality is that most industry strength software is written without design diagrams, class diagrams and/or other UML style documentation.
Why? Because most experienced developers (including me) do not see enough value/cost benefits from doing it.
Developers are relatively quick to adapt tools that are practical and helpful (test tools, source control, code analyzers, profilers etc.) so it is not a question of developers being "old dogs" and/or not wanting to improve the tools they use. If design diagrams etc. actually helped speed up development and/or improved product quality then it would be used a lot more than it is. However it doesn't so it isn't. And this is despite 30+ years of "guru" after "guru" trying to push yet another box/sphere/line tool down developers throat :-)

What is the procedure to participate a open source project? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I browsed some of their sites. They always point to bug list as start of participating project.But, as a newbie in that project? How can I fix bug at the beginning?
Can anybody give me some suggestions about this?
Issac Truett's answer is good.
My only suggestion would be to pick a project and download their source code. Most open source projects use CVS, Subversion, or Git to manage the source code.
Pick an integrated development environment (IDE) that supports the language of the project and attach the IDE to their source code manager.
Spend some time getting familiar with the source code, and the bug list will make more sense.
Almost every Open Source project I've ever seen has a stack of minor issues in the corner - cosmetic or otherwise largely inconsequential things that nobody has considered worth their time. If you just want to get your foot in the door, that's probably a good way to introduce yourself. Just find something easy, make sure you implement it well, and follow the project's rules on coding style, submission for review, etc.
Or, ask the project. "I'm new, I want to help, this is my skill set. Would someone be willing to mentor me?"

Making a Difference # Open Source Projects [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Can I make a difference at an open source project?
I haven't gotten a degree or anything but I am really interested in computer science and I have most of the fundamentals down.
Is there a project I can make a difference at? If not, any sites where I can further my knowledge and review the fundamentals (advanced concepts as well) of computer programming?
Scour around GitHub for projects, there are plenty that could use some help.
At the very least, write tests for untested code and submit them back. Even the littlest of contributions are appreciated.
Newcomers to an active Open Source project often feel like they are walking into a busy kitchen. A lot of different things going on and you feel like you are just in the way.
But often its not the case.
I can't point you to a specific project since i do not know your skillset or what you want to focus on.
Getting into an Open Source project can take time, its mostly based on the size of the project but usually its trying to see what is needed.
What i recommend is the same most people do, find a project that inspires you to make it better (even though its good to begin with), since that will make you want to stick around during the harder times.
Absolutely. Writing documentation and unit tests is good advice, but I'd suggest instead you find something you're particularly interested in, perhaps a piece of open source software you already use, and add a feature that you yourself want to use. It'll be more difficult, but it'll actually keep your interest and get you real world experience. Worst case your patch won't be accepted, but if it's a decent project they'll tell you why and what you need to do to make it acceptable.
Or, pick a small problem you want to see solved, and write an open source solution for it. The key is actually be interested in the problem you're solving.
Open source software is not magically high quality code; in fact it's not unusual to find sloppy code and practices. Don't be intimidated, jump in and give it a try. My first piece of open source still has a few users over 10 years later, but the code quality makes me cringe everytime I look at it.
You can visit Sourceforge.net and look for projects that need help.

Open Source Competition or Collaboration [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I always have found the open source space interesting but have never actually participated in any projects. I recently had what I thought was a great a idea that was different from other projects I had seen in the area (in case it matters it was a .NET DI framework).
My question is if I have a funky idea should I join an existing project and share my ideas or create a competing project with exactly what I want. There are a few projects in the space the are similar to what I was thinking but they don't quite capture the same ideals.
Is extra competition frown upon in the open source space?
Competition is as important as collaboration in open source. Assuming the licenses are compatible, features and ideas can be cross-pollenating. Everybody wins.
the short answer to this is another question: do you want to contribute to a discussion, or do things your way?
You may want to consider writing it your own way and turning that process into an article that you could submit to CodeProject. Then if there seems to be interest in the article, add it to SourceForge. I've seen a lot of tools and widgets get a quick audience and coding help that way. One that I use often is XPTable, which started as a CodeProject article and eventually became an open source project on SourceForge.
BTW, you'll know if its a hit, because you'll start to get lots of requests for improvement, or people even submitting their own fixes and enhancements to your article.
Thank you for your time. I have decided to contribute directly for the project in some areas they were hurting. By doing so I can help the project and learn from the masters.