Community Engagement - Discussion/Feature Requests/Roadmap

Wanting to get community feedback on adding a search feature to rails, my immediate instinct was to create a github issue for it [proposal] ActiveSearch - Rails Search 路 Issue #40989 路 rails/rails 路 GitHub.

Elieen was kind enough to point out rails uses this forum here for feature requests. It is outlined in this rails guide and in my excitement I didn鈥檛 read it (shameful I know :blush:).

Unpacking this a little further, I realized the reason I posted it on github issues were that all other communities I engage with use github issues for feature requests. Those would be the javascript communities like: VueJS, Cypress, VSCode, React, etc all use github issues.

Looking a little further, expo has a public roadmap based on upvoted feature requests. This is extremely useful to help you know current limitation and where you as a contributor can help. For example, if you wanted in-app purchases, which is planned, you can ask if you can try to take it on if you need that for a project.

This brings me to two problems with using this forum:

  1. Low visibility compared to github issues - I鈥檝e been doing rails 7+ years and never knew about this. Looking at this issue it is clear that others are struggling to find it too. Thus, we get lower community engagement.
  2. Lack of transparency - this has been brought up a few times that a lot of planned work for rails is not transparent enough. In my experience it is easier to merge a PR if the reviewer and author both have prior agreement on scope/overall approach. It is easier to discuss these things closer to the code on a github issue.

I understand this will mean a change to how the PM process of rails and I do not have full-context to whether or not it makes sense. However it is worth while considering.

Ultimate goal: increase community engagement and collaboration.

3 Likes

Hey @yagudaev I came across this post, as well as your ActiveSearch proposal in my email digest for this forum. I recently had to implement search for two Rails projects, so your proposal caught my eye. I don鈥檛 know enough about adding features to rails to offer any useful suggestions on your other post :sweat_smile: I鈥檓 also interested in communities, so I figured I鈥檇 chime in on this post :slight_smile:

If I鈥檝e read your previous post correctly, you鈥檙e concerned with promoting engagement and collaboration in the rails community, and you think that having a forum for feature requests that is separate from GitHub issues reduces engagement. You also think that the lack of a public roadmap is a problem. Is that an accurate summary?

That is an accurate summary indeed. Sounds like the digest are useful way to find out about new topics.

I was thinking about how to run an open-source project successfully and in a sustainable way. This lead me to dig into how the rails project runs as opposed to other projects. I鈥檇 like the see the talk about 鈥渋s rails dead鈥 stop. The only way to do that is to grow the number of people contributing to rails.

A roadmap and having all the feature and bugs on github and Q&A on stackoverflow will make it easier to contribute. For example, what is a good issue to give back and start contributing to rails? Many projects have a label for issues like that. There are no open issues with this label for rails: Issues 路 rails/rails 路 GitHub.

This sounds like a good one: "Getting Started" does not mention Rails incompatible with Node 15? 路 Issue #41060 路 rails/rails 路 GitHub.

Compare that to VSCode: Issues 路 microsoft/vscode 路 GitHub and Issues 路 microsoft/vscode 路 GitHub.

It would be nice to have that and tackle them as a community.

Now imagine for a moment, someone in the rails core team was already working on a search feature. How will I know about it? I have a lot of interest in it and I would like to give back to this wonderful project I鈥檝e been using for 8+ years now.

1 Like

Hello Michael. In regards to adding a native search option to Rails, I think that would be beneficial. I have implemented search via pg_search for as long as I can remember, but have always felt I cobbled this together with bits and pieces scrounged from the repo and other apps. An omakase offering from the house would be welcome. For your second point about community engagement, I would also just like to add one enthusiastic yes to your comments. I鈥檇 love to be able to contribute something to Rails to help it thrive and move forward, but this seems like a real pain point from my observations looking in. Your suggestions in both of these areas are spot on.

1 Like

Thanks :). I read a few interesting posts on the forum, one was this, it filled me with new hope. It was great to see a productive discussion even on a subjective topic.

I鈥檓 trying out Github Projects for PM on the search project. I鈥檒l see how it works, ZenHub is another great alternative. I鈥檓 hoping having github issues will let people comment on things openly.

Some of the projects I mentioned above are run by companies who have dedicated PM and community engagement roles assigned. AFAIK, rails is run by volunteers and we don鈥檛 have such person.

Looking at it from the point of view of the core team, maybe features do make sense as gems to start with. If so, we can say so in the contribution guide. If we look at the active storage PR, there are over 7K lines and 250 commits. That is a lot of code to review. Reviewing a 1K code PR is hard, let alone 7K one. It is also clear from the PR that a few people from core were paring on it, which made it far easier to review. This is really the path I was interested in discovering. In other words, what can be done day 1 to make it easier and faster to merge new code into rails.