Skip to content

New Member Overview

Introduction

This document provides information for new members interested in working on either the Ground Station or Telemetry Server components of the Autoboat project. It outlines the necessary skills and knowledge required to effectively contribute to these parts of the codebase, and where to find relevant resources for learning.

To work on the Ground Station or Telemetry Server, you should have a solid understanding (or be willing to learn) the following:

  • Python Programming: Both the Ground Station and Telemetry Server are written almost entirely in Python. You should be comfortable with Python syntax, data structures, and libraries.
  • PyQt Framework: The Ground Station utilizes the PyQt framework for its graphical user interface. The library is quite extensive, so you don't need to know everything about it, but you should be familiar with the basics of creating windows, widgets, and handling events.
  • Networking Concepts: Understanding basic networking concepts such as sockets, TCP/IP, and data transmission will be beneficial, especially when working with the Telemetry Server.
  • Multithreading: Both components may utilize multithreading to handle concurrent tasks. Its not strictly necessary to be an expert in this area, but a basic understanding of threads and how they work in Python will be helpful.

It's hard to be an expert in all of these areas, so don't worry if you are not. The most important thing is to be willing to learn and ask questions when you need help. You will learn much quicker by doing and asking questions when you get stuck than by trying to learn everything beforehand.

Learning Resources

Here are some resources to help you get started with the necessary skills:

Getting Help

If you have any questions or need help getting started, please reach out on the Discord server if you are having trouble with anything. The Discord server is great place to get help since we can only meet in person so often. It is also a good place to hang out with other members of the team, discuss ideas, and participate in some team bonding!

Next Steps

Once you feel comfortable with the necessary skills and have familiarized yourself with the codebase, you can start contributing to the Ground Station and Telemetry Server components. Here are some suggested next steps:

  • Take some time to read through the code to learn how the Ground Station and Telemetry Server are structured.
  • Look for small issues or features that you can work on to get familiar with the codebase and development process.
  • Honestly working on the project in any capacity will help you learn faster than anything else, so don't feel like you need to start with something big right away. Just start small and work your way up!