Skip to content

Latest commit

 

History

History
59 lines (37 loc) · 2.1 KB

bark012-project-goals.md

File metadata and controls

59 lines (37 loc) · 2.1 KB

BARK 12 - Project goals

  • type: information

An overview of the high-level goals of the BlackLab project, and how we intend to go about achieving them.

Top-level goals

In order to promote BlackLab usage and ensure its continued relevancy, we strive to:

  • improve usability
  • make it easier to develop and maintain
  • make it more versatile
  • improve scalability
  • foster outside contributions

Each goal will be detailed in the next few sections.

Improve usability

We will make BlackLab easier to use by:

  • making initial setup easier
  • making the various tools more user-friendly
  • improving robustness and fault-tolerance
  • providing better feedback when things go wrong or are incorrectly configured
  • improving documentation

Make it easier to develop and maintain

We will improve BlackLab's extensibilty and maintainability by:

  • removing deprecated code
  • improve project structure (small modules that do 1 thing and are loosely coupled)
  • extract optional functionality to add-ons or plugins

Make it more versatile

We will make BlackLab more versatile by:

  • adding useful core features, such as improved structural search or support for parallel corpora
  • allow its functionality to be extended and customized via add-ons or plugins

Improve scalability

There appears to be no limit to the growth of corpora in linguistics research. We will generally optimize BlackLab as well as enable distributing searches over multiple machines.

Foster outside contributions

BlackLab is a relatively small project, mainly developed at the INT. Nevertheless, we have had several great outside contributions over the years. We would like to foster these more. Many of the above goals will support this.

Other ways to improve this include:

  • reach out to specific users to discuss how we can help them and how they might be willing to contribute
  • be communicative about our roadmap and progress on individual tasks
  • be responsive to people with questions or bug reports
  • clearly state and demonstrate that we value contributions from anyone
  • include basic contributions guidelines so people know how they can help