"How may I help?". This is maybe, and thankfully, one of the most frequently asked questions in these 4, 5(?) years that I've been into the project. And maybe one of the most difficult questions to be answered by the ReactOS "Team".
If you're reading this post it could be by 3 different reasons:
- You're trying to find an useful way to help ReactOS.
- Google redirected you here while searching for "Help me to construct a reactor on May ". Try this tutorial instead.
- You asked this question at the #reactos irc channel, and a guy called @vicmarcal (aka me) or others pasted you this link.
As I've just said, this is one of the most difficult questions to be answered. ReactOS is, fortunately, a huge project. An enormous huge big impressive project. "We should have an interesting area for you to work on", Statistics 101 says.
But before sharing with you some ideas to work at, please let me be discourteous by answering your "How may I help" question with a new one:
"How may ReactOS help you?"
At the end, cooperating with ReactOS project is just a matter of trade off.
ReactOS "wins" your cooperation, and ReactOS, indirectly, helps you to improve and boost your skills. If you think you're already a good translator, you'd be impressed if after 1 year contributing into ReactOS you compare yourself with that newbie that joined a gray rainy day. In this project really cool devs have developed skills to a limit which they keep pushing further. If you consider yourself as the best tester out there, just team up for a couple of months with these impressive developers and your testing skills will be boosted to such a point that you will be able to handle error codes faster than Chuck ...erh...Chuck
So breathe a second, look through the window and decide: How may ReactOS help me? Which skills do I "want" ReactOS help me boost?
These questions are really linked to "Motivation". If you freely choose an area which push your limits slowly but surely, be sure that you have chosen the proper area. The feeling of fixing that stupid bug is pretty similar to the feeling of finding the bugged line and serving it on a silver platter to the proper developer: "Here is the BUGSTARD, sir.Feel free to #$%&1!? it!!!" or the feeling of knowing that users are reading your translations. When someone is pushing on "Continuar" button, he's really pushing in that minute your ReactOS Spanish translation. There is no hurry. Push the limits slowly but surely and you'll be helping to keep the motivation at the top most.
Motivation can change over time, I began as a Website Translator, moved to OS Translation, then towards some cmd.exe fixing, then to testing, and now to writing unit tests, fixing bugs, syncing, and PRing. It happens, and you can be sure that your own motivations will be totally different than others' in the ReactOS Community. Working with international members, learning about team cooperation, improving social skills, improving your CV, earning money( ask Google to accept us in GSOC!), or having fun by doing something useful could be some of them. And they're totally respectable because they help to push ReactOS forward!
Why can't we answer your "How may I help ReactOS?" question? Basically because we don't know what your skills and "motivations" are. It'd be a big error if we/I force you into a task just because it needs to be done. We'd be wining 30 new lines translated but losing, in the mid-term, an invaluable member. There are tons of coding and non-coding areas in which you can be really helpful.
Oh wait! Did you say "Non-coding"?
Did you think that "Mozilla" is just a group of coding developers? Who created those new buttons? Why is its UI being redesigned again and again? Why does it support hundreds of languages? How were they able to have 8.290.545 downloads in just 24 hours? And what about Quality testing? Usability? Designing? Regression testing? Compatibility testing? Website translating? OS translation? Forum moderation? PR support? Unit casing? Environment Building?
ReactOS needs devs, of course. But it also needs to have other areas properly covered. If you know someone able to code at a low level, to GUI design at a high level, translate into 3 languages, and match the colour of his trousers with his jacket, check if his surname is Norris. Even he won't have time enough for all of that.
Now please, come to #irc , introduce yourself, tell us your skills, what do you expect to boost and learn while working on ReactOS, tell us of any area which you think can fit your skill levels, and know that we'll be able to offer you some tasks which fits into them. We're awaiting you there! :)