Proper open source project to contribute and learn Ruby/Rails

One of approaches to learn a new programming language is learning by doing. When the target language is Ruby/Rails then there are many open source Ruby/Rails projects that may need contributions. As a long time ASP.NET MVC developer, diving into a Ruby/Rails project must not be a very hard work. One of good resources to find active open source projects that needs contribution is Github but a faster way is CodeTriage. It helps finding projects simpler and faster.

For a person like me there is some considerations to select a project for more investigating:

  • Prior familiarity with the field. I have backgrounds in developing software in categories of ERP, CRM, MIS, Accounting, CMS and Trouble Ticket systems.
  • Being a user of the software. For example Redmine is a plus for me because I’m currently using it as an issue tracking system.
  • Possibility of making money from the project. It include consulting services, localizations, custom developments, etc.
  • More people will benefit it. No doubt a music playing or photographing software is good for people too. But I think there are some other areas that have better impact on people. For example if a software or system can reduce traffic jam in cities or helps NGOs fighting poverty that will be more desirable.
  • Project characteristics. A project with high technical standards and welcoming people is always a good project to deal with.

With these consideration in mind I picked 4 primary projects from CodeTriage.

  • Ekylibre, Simple ERP for little enterprises. Developing mainly by European folks.
  • Fat Free CRM, Ruby on Rails CRM platform for Web 2.0 and beyond
  • Loomio, an open-source web application that helps groups make better decisions together. Developing mainly by New Zealander folks.
  • Grow Stuff, Open data project for small-scale food growers.

Among them, FatFreeCRM is most popular and active project. It has 2636 stars, total number of 183 pull request and 83 contributors. It also has 988 forks. Contribution in FatFreeCRM in addition to learning Ruby/Rails can help making money as it is a demand software in business. GrowStuff seems as a suitable project too. Despite it is not used in businesses as much as FatFreeCRM, it has a welcoming community. 635 total pull requests, 52 contributors and 201 total issues shows its diverse community of contributors.

Remote software development jobs

Software development job is from few jobs that can be done remotely. While demand for software development jobs are high in developed countries, software developers in under development countries can get jobs remotely and benefit from being a member of a more professional software development team and also benefit from noticeable difference between their original countries salaries and new salaries from remote jobs.

But being a remote software developer is not an easy task. First problem is trust. People usually can’t trust people thousands kilometers away from them. Language, communication and cultural differences are other problems that exists. If you live in some specific countries you also can have political and money transfer issues too.

BTW people do not stop and continue to find new ways to get remote jobs. It is important to have something to start with, a friend in a remote job position or a list of companies that are happy with remote jobs. Recently John O'Duinn has published a list of companies that their remote employees think they are remote friendly. Many of them are software development jobs. Among them, Jessica Card’s list is very helpful. Some companies of her list are familiar through Zapier’s amazing e-book titled “The ultimate guide to remote working”.