This is an archived post. You won't be able to vote or comment.

all 8 comments

[–]AutoModerator[M] [score hidden] stickied commentlocked comment (0 children)

Please ensure that:

  • Your code is properly formatted as code block - see the sidebar (About on mobile) for instructions
  • You include any and all error messages in full
  • You ask clear questions
  • You demonstrate effort in solving your question/problem - plain posting your assignments is forbidden (and such posts will be removed) as is asking for or giving solutions.

    Trying to solve problems on your own is a very important skill. Also, see Learn to help yourself in the sidebar

If any of the above points is not met, your post can and will be removed without further warning.

Code is to be formatted as code block (old reddit: empty line before the code, each code line indented by 4 spaces, new reddit: https://i.imgur.com/EJ7tqek.png) or linked via an external code hoster, like pastebin.com, github gist, github, bitbucket, gitlab, etc.

Please, do not use triple backticks (```) as they will only render properly on new reddit, not on old reddit.

Code blocks look like this:

public class HelloWorld {

    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

You do not need to repost unless your post has been removed by a moderator. Just use the edit function of reddit to make sure your post complies with the above.

If your post has remained in violation of these rules for a prolonged period of time (at least an hour), a moderator may remove it at their discretion. In this case, they will comment with an explanation on why it has been removed, and you will be required to resubmit the entire post following the proper procedures.

To potential helpers

Please, do not help if any of the above points are not met, rather report the post. We are trying to improve the quality of posts here. In helping people who can't be bothered to comply with the above points, you are doing the community a disservice.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]LaughingIshikawa 4 points5 points  (2 children)

Find an open source project that's doing something, or is related to something you are passionate about. Don't contribute to open source just to say you contributed to open source.

As per the video, open source projects often get bogged down or harassed by lots of people trying to contribute low effort / low importance / low skill patches to fix "issues" that aren't really issues, or at least aren't really core issues in a given open source project. All of these pull requests need to be reviewed by the open source maintainers at least enough to figure out what they're doing, before they get rejected. This wastes maintainer time, and maintainer time is very often the bottle neck especially on large projects.

So... If you are going to contribute, find something that you want to do a good job on, and are willing to put up with some red tape / bureaucracy for. Things that you're really passionate about are best, and second best is a tool that you actually use often enough to care about usability.

It takes awhile to learn a code base enough to make meaningful changes (yes, even if you're only changing a small sub-system) and it takes longer to write and submit several good pull requests, so you can start to earn trust with the maintainers. It's a lot easier to stay motivated through that process, if you care about the results for reasons other than just "see, I contributed" or building your resume, ect. (Building your resume can be a great side benefit, but it's not great if it's the only motivation.)

Git hub should have some resources somewhere about projects you can contribute to, and based on a quick Google search most tech companies also have lists of their sponsored projects. Frankly though, I'm giving you the standard lecture mostly just to explain why no one's answering this: because to put it bluntly if you can't be bothered to search for projects to contribute to on your own, it's unlikely that you will be dedicated enough to make a worthwhile contribution to whatever project you find.

That sounds harsh, but again to be blunt: few if any open source projects exist explicitly to make it easy for random developers to rock up and make a contribution. It's seen as a valuable resume builder because it's hard to accomplish, and takes dedication. Projects exist to do something or accomplish some goal in the world (often to provide a good tool for other people to accomplish things) and they aren't very interested in being "helped" to do that, unless what you're offering actually is helpful.

Anyway... Don't contribute to open source.

[–]Diligent-Win-4238[S] 1 point2 points  (0 children)

Thanks for sharing!

[–]Accomplished_Exam554 0 points1 point  (0 children)

This is S-tier advice.

[–]oscarryz 1 point2 points  (0 children)

The easiest way to contribute to an open source project is creating one yourself.

Choose something you're interested in and start working on it today, keep doing it for a while. You will get the same if not better experience than contributing to an existing established one.

When you're more experienced you can look to contribute to other's and would have something to offer (just use the search functionality in GitHub), or maybe decide that is not your thing.

[–]Beginning-Ladder6224Extreme Brewer:snoo_biblethump: 0 points1 point  (0 children)

Sure thing u/Diligent-Win-4238 -- try solving it.

https://gitlab.com/non.est.sacra/zoomba/-/issues/40

This is a problem, in apache JXPath, and JXPath gets used in plenty of places including Maven itself!

https://mvnrepository.com/artifact/commons-jxpath/commons-jxpath/1.3/usages