Golem Network Beta 2 Bounties

We’re excited to announce that we’re creating a number of bounties to celebrate the Beta 2 release. The Golem Network offers an unstoppable, inexpensive and censorship-free environment. These bounty projects are taking in mind what’s awesome about the 2nd major release from a development perspective, such as the Services API and the possibility to create custom runtimes.

Further technical information, and a SDK, can be found here. The bounty submissions will be aggregated to our awesome-golem directory and social media, and in the future, potentially featured in a website section. If you’re considering participating in the bounties, please also read the section at the end of this blog.

PostgreSQL runtime

Requirements

  • The runtime should run on at least one of the following operating systems:
    - Ubuntu,
    - Windows,
    - macOS.
  • Starting an activity on the runtime should output all connection parameters necessary to use the database (address, port, database name, user name, password).
  • Connection parameters mentioned above should enable the user a PostgreSQL database running on the provider node.

Non-requirements

  • The runtime is not supposed to facilitate the communication between the service and its end-user.
  • The runtime is not required to perform any network configuration. It can be assumed that the provider machine running the runtime has a public IP address and appropriate ports are open.

Deliverables

  • A video recording demonstrating the usage of the runtime.

Resources

Estimated time to allocate: 24 hours

Interactive image classifier

Requirements

  • Starting the service should deploy an interactive image classifier ready to be used.
    - The classifier should be pre-trained for image recognition so that it can be used without excessive further training.
  • The service should respond to two kinds of requests:
    - “train on provided data” — includes an image and a label (or a batch of images with labels), no output expected;
    - “classify an image” — includes an image, expected to output a label.
  • The classifier should have a decent accuracy when trained on sufficient amount of data.

Non-requirements

  • The classifier doesn’t have to allow multi-label classification, single-label is enough.
  • No scalability is required, the implementer might put reasonable constraints on image size.
  • No graphical user interface is required (although it is welcome).
  • No direct communication between the user and the provider is required. It is assumed that all communication with the service will be mediated by the requestor application.

Deliverables

  • A video recording demonstrating the usage of the service.

Resources

Estimated time to allocate: 48 hours

Full-text search engine

Requirements

  • Requestor is expected to provide a set of plain-text documents to be indexed during service startup.
  • Once the indexing is done, the service is expected to respond to search queries.
    - Query input could be any arbitrary string to be found in the corpus.
    - Query output should include a list of all occurrences of the searched string in the corpus, i.e.: filename, line, and position.

Non-requirements

  • The service is not expected to apply any advanced search techniques such as boolean queries, wildcards, fuzzy search, etc.
  • No scalability is required, the implementer might put reasonable constraints on corpus size and query size.
  • No graphical user interface is required (although it is welcome).
  • No direct communication between the user and the provider is required. It is assumed that all communication with the service will be mediated by the requestor application.

Deliverables

  • A video recording demonstrating the usage of the service.

Resources

Estimated time to allocate: 24 hours

Things you will need to know when participating

Time

For each bounty, we will open 1 slot (first come, first serve). Your working repository must be public the entire time of working for us to be able to judge the progress and whether we might eventually need to open a new slot. We will judge this based on whether we determine if the project looks like it will or won’t be completed in a reasonable timeframe. This will also give other potential candidates an indication on whether they will be able to complete their own project in a faster time, should a new slot be open. You can still complete your work and submit in the case that a new slot is opened. We reserve the right to open a new slot in cases we see fit, particularly extended inactivity and if there is no response from the participant in an attempt to reach out.

Legal

Note

If you have any questions — please join us on discord or comment on the Reddit thread. We are very excited to host this set of bounties, we’ve included lots of love, work to prepare them and adjusted to the improvements offered in Golem’s latest major release. We are looking forward to your participation!

Originally published at https://blog.golemproject.net on June 28, 2021.

Airbnb for computers. Rent your unused CPU/GPU cycles and get paid in cryptocurrency. A decentralized network powering true cloud computing.