Goodness as a Service

Amit Zur
5 min readJul 17, 2017

--

Six months have passed since the first Goodness Squad event. We’ve been hosting between 30–50 people monthly, providing quality open source projects to contribute to.

I’d like to take a moment to wrap up this period and provide a summary of what we’ve accomplished and plans ahead.

Projects

First, here are the projects who took part at least once:

  1. Debugger.html
  2. Node.js
  3. Bluebird
  4. MobX
  5. VSCode
  6. Angular CLI
  7. Angular Material
  8. AngularJS Material
  9. Angular Tree Component
  10. Slim.js
  11. Kiss FS
  12. Cycle.js web components
  13. groupwrite.io
  14. fugazi.io
  15. p5js

An amazing list, which provided enough work for a diverse spectrum of people and skills. Whether you’re a backend, frontend, fullstack, visual hacker or any web developer; whether you’re a beginner or expert — you’ll find your place in the event.

Where’s the fun

The reaction of people was also a driving force. I really believe we have found a formula to make open source accessible. Finishing an event with a successful PR is oh so satisfying! Folks were actually fighting to get their contribution in!

I personally don’t get to contribute much code during the event, because I’m too hooked on mentoring and organizing, but in the last event I got to pair-program on an AST-related issue with comment symbols and highlighted code in the Firefox debugger, and just being able to push the fix in this timeframe was insanely gratifying.

Multiply my positive experience by the number of results in the following link, and you’ll understand the positive energy surrounding these events:

https://github.com/search?utf8=%E2%9C%93&q=%22%23GoodnessSquad%22&type=Issues&ref=searchresults

Of course, the endless beer and great food provided by Wix have a main part in it as well :)

Inclusivity is a goal

After the first event, we set out to fix some issues with the diversity of participation.

Women developers

Bringing in more women coders and beginners was the primary goal. We hurried to contact every woman developer we knew. The amazing Shai Reznik made effort to recruit women into the organizing team that was forming, and I soon reached out to every woman I ever worked with to make sure she comes to the next event. This worked! the organizing team now consists of 3 men and 2 women (plus me), and at every event we see about 20% women participation. Still pushing this, though, since it’s easy to see a decline.

Beginners

I heard many developers express their sentiment that they are not skilled enough to contribute. This is, of course, a fallacy which we had to refute. Here are some raised concerns:

https://www.meetup.com/JavaScript-Israel/events/237750614/

At the beginning of each event I was approached by developers who weren’t sure which project to choose, and in most cases they were concerned that they aren’t able to make contributions in code. I would always reply that they should go where they feel the most passionate, since the mentor is responsible to find something for them to work on. In most cases, by the end of the event they were satisfied.

Documenting the process

For the sake of both transparency and improvement, it was important for me to document the process of organizing the events. I put it all in google docs and spreadsheets. Later I found out this was interesting to other parties as well, so I exported it to a GitHub repo, where it’s both public, and possible for others to submit PR’s and comment about the process!

I wrote about what a project mentor should do to prepare, about how to organize an event, and more.

The most energy is spent on gathering mentors and projects. We always look for more projects to offer at the event. Having 8 projects at an event of 50 people is optimal since then the groups are manageable. It did happen that there were groups of 15 devs working on a project, and it’s a different story to manage in terms of available work and communication.

Future plans

I’m a strong believer in connecting people based on their common grounds. Developers best interact with each other when they work together on the same project. And when people interact, they elevate each other. That’s the power of community. The benefits of Goodness Squad are 3-fold:

  1. Learn
  2. Meet
  3. Contribute

I’m not sure there’s an order of precedence. Different people have different needs and passions. What I am sure about, though, is that Goodness Squad is a formula which can be enhanced and replicated.

Enhanced

  1. Scale: We currently make OSS accessible for 50 people at a time, 3–8 projects at a time, as part of the Javascript Israel community. With a bit of work, there could be a baseline of 6–8 projects and more one-timers, which will make it possible to host more people.
  2. Content: Right now most projects offer work on sporadic good first bugs. I definitely see an opportunity to tighten the work and have groups work on a common theme (this has been done successfully in the Debugger and Node.js). The ideal is that people continue to contribute and work together even after the event. Then, participants could become mentors of the project in later events and continue this recursive further on.

Replicated

Right now we’re experimenting with one community and programming language. I definitely see this being replicated to JavaScript communities around the world, or other language communities. The foundation upon which Goodness Squad is built, learn-meet-contribute, objectively provides value, no matter what the actual content is. As long as it’s not commercial, and it’s about giving back to the community — it’s bound to work.

Summary

We might have found a magic formula to get people together, help them grow, and give back to the community. And most of all — have fun. I’m curious to see how this evolves over the next 6 months. I’ll keep y’all posted.

--

--