How to contribute coding?

At the home page, all I can find is the courses. While I don’t know everything about web development, I have created many websites and am a retired software engineer. Is there any way I can start working on an open software project to help a nonprofit through freecodecamp?

I have not found it from inside the website, but from here: https://www.freecodecamp.org/nonprofits/ (found through google search)

You can also contribute to FreeCodeCamp itself

Okay. So this website offers several existing programs for nonprofits. I guess I got the idea that nonprofits could request a specialized program, and freeCodeCamp would find someone to build it for free. Never mind.

Yeah some sort of feeling here. I loved your JavaScript certifications. Hated the APIs and Microservices one, but the hatred of the later was more due to how unclear the requirements and expected result are for that learning path are. I know you are doing this site for free and I greatly appreciate that. I would love to help improve the API and Microservices, but you all seem to be making it hard to figure out how people like myself can contribute to this project.

Welcome, jeremy.

How are you wanting to contribute? Here is a general starting point: https://contribute.freecodecamp.org/#/

1 Like

Appreciate the reply. Suggestion. Add that to the main menu:
/news /forum /learn /contribute
Thanks for the swift reply and I hope to be contributing soon.

Well some tips and insights:

  • freeCodeCamp is mostly made up of volunteers, and the staff are a very small team. So, please be patient with getting feedback, and things moving in-general.
  • The #contributors sub-forum is an excellent place to start. Perhaps not the most active, but, if you have a question/suggestion, that is the recommended place to mention.
  • Join our Gitter chat room: https://gitter.im/FreeCodeCamp/Contributors

Happy coding.

Guess I forgot to answer “How are you wanting to contribute?”, I would like to fix/improve some of the exercises.
So lets take the API/Microservice course path:

  1. Make it more like JavaScript where you are given and example of what needs to be accomplished and then asked to take the concepts from that example and implement them in a modified form. In most of the exercise problems, it is not clear what you are being asked to do nor what the expected model is.

  2. Clearly state the expected output model formats for the exercises. The exercise tracker problem took 8+ hours not because the problems themsleves where all that difficult but because I had to figure out the properties and data types that are expected by the tests. Also spent more time fighting glitch and their debugging process than solving the actual problem.

  3. Hint pages should not be stubs. I would have gladly contributed the solution that got me past particular steps , but could find no way to comment on those pages.

Absolutely, let me qualify. I promote you guys on LinkedIn constantly. I think what you are doing is fantastic. My critiques are not meant to be taken as you are in anyway doing a bad job. You are doing an amazing job. I just want to help and make it even better if I can. Keep up the good work.

join the github repository, and start proposing your changes, or working on the issues already open. It is as simple as that.

if you go to https://contribute.freecodecamp.org/ and then “contribute to our opensource codebase” you can find everything about the how

Thanks for all the replies. I have forked the code base and will start looking at it Monday.

Absolutely, we welcome new ideas. Just some catch-up info on your points (if you want to discuss any more, perhaps we should move off of this thread):

  1. The backend projects (in my opinion) should be quite difficult (compared to the frontend stuff), and should not be as much of a walk-through. At this stage in the game (programming), users should face more of a challenge, and need to encounter issues they must debug, even of someone else’s code. (Real-world stuff)
  2. Currently/In the past, we discussed the issue of the tests have been updated, but the boilerplate/instructions have not. The hope is to have the tests/boilerplate be on one file system where an update leads to the instructions being updated, as well as the boilerplate. Unfortunately, the backend challenges are hosted across multiple platforms.
  3. Currently, discussions are underway as to how best to make use of the hint/guide posts. A lot of work has already been done on them, and we are looking at ways to allow easier contribution.

This information could be useful to others searching on this topic, but if you have any more questions, I recommend the Gitter channel.

Sounds good. Where is said Glitter channel? Tried searching for it and nothing obvious came up.

Last post here hopefully and will move to Glitter channel once I know where that is.

Firstly, thank you you. I can’t remember the last time someone gave a such a well thought out an eloquent critique of ideas I have put forth. That alone has already made this process worthwhile.

Before I go any further in this discussion, as to your “(Real-world stuff)”. This more than anything else is what is lacking in most assessment systems in this industry. The problems most places ask you to solve are not real word and tend do be overly obscure and obfuscated. More than anything else, making the problems realistic is what I would like to address and it seems you are of the same thinking.

“The backend projects (in my opinion) should be quite difficult (compared to the frontend stuff), and should not be as much of a walk-through. At this stage in the game (programming), users should face more of a challenge, and need to encounter issues they must debug, even of someone else’s code. (Real-world stuff)”

Agreed, they should be harder than the “front end stuff”, but I would say they should be so due to the complexity of the logic required to solve them, not from a lack of clear expectations. The exercise tracker in particular was not clear in many cases about the properties and formats of said properties that the tests expected. Telling people you expect the result of a service call to return an object with certain properties with certain formats, is basically the “Real-World” specification you would get when asked to created a service. i.e. you give me a,b,c I return x,y,z. I don’t think it is unrealistic an expectation for the instructions to clearly state this and doing so would in fact make them very “real-world”.

“Currently/In the past, we discussed the issue of the tests have been updated, but the boilerplate/instructions have not. The hope is to have the tests/boilerplate be on one file system where an update leads to the instructions being updated, as well as the boilerplate. Unfortunately, the backend challenges are hosted across multiple platforms.”

Gotcha. Any possibility of moving them to a single platform?

“Currently, discussions are underway as to how best to make use of the hint/guide posts. A lot of work has already been done on them, and we are looking at ways to allow easier contribution.”

Let me know, would love to contribute.

the Gitter chat room was linked a few posts above

Found it thanks. Will check that out today.