Skip to content

tigerbeetle/hackathon-2023

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TigerBeetle Hackathon at Interledger Summit 2023

We're excited to announce our first hackathon! It's a one-day event that will take place during the Interledger Summit on Wednesday, 8 November 2023.

UPDATED: Winners!

How to participate

You can get together with colleagues or individually, in person or remotely, to deliver a small project.

1. Choose one of the three challenges you're most excited about:

  • Safety Beetle: Use TigerBeetle to improve durability and availability.

    Example: Run a TigerBeetle cluster and measure the availability when one or more replicas crash or are partitioned from the network. You can run it on the cloud or on your own laptop using anything you want (e.g. bare metal, Docker, Kubernetes, etc). For a little more fun, you could even run TigerBeetle on a cluster of RaspberryPi's!
  • Performance Beetle: Use TigerBeetle to improve throughput and latency.

    Example: Showcase how to achieve low latency and high throughput by creating a simple application using TigerBeetle. Chef's kiss if you use TigerBeetle for online transactions processing (OLTP) in the data plane, together with an online general-purpose processing (OLGP) database in the control plane. The latter can be any SQL database, or NoSQL, in memory, or whatever you think of!
  • Experience Beetle: Use TigerBeetle to model business events as double-entry transfers between accounts.

    Example: Use TigerBeetle's double-entry account schema to solve common business problems that would require too much boilerplate code to implement with a general-purpose database. For example, a problem involving financial transactions, inventory movements, rate limiting, or just counting things (especially as they move from one person, party or place to another—the who, what, when, where, why, how much of OLTP). There's no limit to your creativity!

2. Create a proof of concept demonstrating what you hacked with TigerBeetle:

No matter your background, you can participate in different ways.

Examples:

  • Write a simple application (or adapt an existing one) using any programming language of your choice, including other databases.

  • Create infrastructure as code, manifests or scripts to manage TigerBeetle instances running on any supported platform.

  • Use diagrams, charts, and writings to make your point.

3. Present your work:

Submit a pull request to this repository, including all source code and artifacts you produced. Remember to describe your project and identify yourself and your teammates.

Present a short demo (10 minutes max) of your work in-person if you're attending the Interledger Summit 2023, or send a recorded video if you're not in Costa Rica 🇨🇷!

Prizes:

First place: Steam Deck 64GB all-in-one portable PC gaming.

Second place: Raspberry Pi 400 personal computer kit.

Third place: Ticket for the next Systems Distributed 2024 and TigerBeetle swag.

Evaluation criteria:

  • All projects must be submitted by November 8th, 2023 3pm CST (GMT-6).

  • The TigerBeetle team, at their sole and final discretion, will award projects based on technical and subjective criteria (correctness, clarity, creativity, fun etc.).

  • The prizes may be handed over in person at the Interledger Summit 2023 or shipped worldwide for remote participants.

  • In the case of teams, they must assign one person to represent the project and receive the prize.

Resources:

  • TigerBeetle's quickstart guide is a good place to start.

  • Please refer to TigerBeetle's client libraries for .Net, Go, Java, Node.js, and C. There are also great client libraries maintained by community members for Elixir, Rust, and C++.

  • Join our Slack channel for help and to bounce ideas.

  • Please find us at the Interledger Summit 2023 and come chat.

License:

All source code provided must be licensed under the Apache License, Version 2.0.

https://www.apache.org/licenses/LICENSE-2.0