me and we.

Blog post by mmadia on Sat, 2010-06-12 23:50

'Me' and 'We'. They're the same thing, just with a slightly different way of looking at it. There's always something to do, some way of helping further the Haiku Project ... though it's not all glitz, glamor, and fame. In fact, a good portion is, well, it's tedious; it's boring; it's stuff we'd rather not be doing. For a volunteer based project such as ours, that can be a death sentence for those tasks. So, hopefully these words will encourage you to see the usefulness of those tasks and enable you to find the motivation to contribute to them.

Sometimes, it's easier to figure out what you want to be or do by crossing-off the bits that you know that you don't want. While this doesn't outright give you an answer, it helps by trimming down the possibilities. This makes the list more inviting to think about.

First, I've made amends that being a C/C++ developer will not be on my list of abilities, at least not in the next year or two. Sure, I can fix some typos and make other small changes to that code. But my skills are nothing in comparison to our past and current Google Summer of Code students, let alone any of the other regular C/C++ contributors. And that's OK, as there's other tasks that need to be done.

At one point the idea formed that by helping the developers with their non-coding tasks, they were reclaiming time and energy that could be used elsewhere. This is still the keystone for my motivation -- keeping the developers free to write code, free to do tasks that I'm not yet capable of, free to further the Project.

Reviewing and applying patches

This is a task that with some investment of time and energy, can repay itself in the form of fueling the motivation of new and interested developers. By helping with this, you would be improving the Project's reputation of managing and accepting patches. In turn, this will encourage other newcomers to provide patches, with the reassurance that it'll be looked at and hopefully used.

Maintaining tickets

  • Polling old tickets for a status update
  • Asking ticket reporters to include additional relevant details
  • Pointing out duplicate tickets

Our development tracker, dev.haiku-os.org is one of the key components to the project. It informs people of problems and issues with the software, keeps track of what needs to be done, and many other things.

These tasks help to streamline the process, allowing things to move more smoothly. Even people who are not committers can receive the permissions to manage tickets. All that is needed is a familiarity with Trac and the willingness to learn some basics of the Project -- what information is needed for which type of bugs and which bugs belong to a certain component for example.

Documentation

  • Haiku Book / Code
  • Improving existing information
  • Pointing out outdated/incorrect text
  • Offering corrections
  • Where/How to submit it? : open a new ticket on Trac or ship it to a mailing list

Here's another way of looking at writing documentation... Knowledge is power. Sharing that knowledge and making it easily accessible empowers you, the people seeking it, and other people who would normally need to spend the time to answer those questions.

In addition to this, since documentation is typically a weak point for F/OSS projects, you will help Haiku stand out as one of the groups with a good and useful level of documentation.

Improving websites

  • Plugins for Trac
  • PHP/JavaScript/etc...
  • CSS tweaks
  • Suggestions for new project controlled websites
  • Creating themes for 3rd party sites
  • Offering improvements for project related sites

Websites are literally a portal for people to learn about us. It can be the first impression for them. For others, it's a means of interacting with us, to find information, to communicate.

Report issues to the developer

...even if you heard it on IRC or a forum. There's two types of bugs that get fixed: ones that you make a patch for and ones that the developer is informed about. And let's admit it, there is little chance for any single person being able to test for, let alone find every bug in a program. This is particularly true for locking, timing, and other race-condition bugs as certain hardware simply won't expose it.

Building, packaging, and testing software for Haiku

Offering to build and package the next release of some software is a great way to inspire developers. It shows that there are people who use their software and are looking forward to the next release. And surprisingly, this can be a task that de-motivates developers. It takes time to prepare an archive for distribution and ensure that it'll work on other people's installations.

Expressing sincere gratitude

It is truly amazing how even a few words can be gratifying and motivating. These are tokens of appreciation are truly gems and can have a lasting effect.

In closing ...

Motivation is the life-force of volunteer based efforts. Particularly ones like ours, where there is no corporate sponsorship, no government funding, no wealthy entrepreneur pouring funds into the project to make things happen. Nearly every ounce of motivation comes from within. It can be as simple as honestly asking yourself "Do I want to help this project"? Whenever that answer is 'yes', a seed is planted in yourself, an opportunity for growth, a chance to make a positive impact. What you make of that and how you shape it is within your own hands.