Skip to content
This repository was archived by the owner on Oct 12, 2020. It is now read-only.

Scott3-0/Archived-Unforked-7776-ftc_app

Repository files navigation

A Note before you use!

This repository is the sum total of FIRST Tech Challenge team 7776's code going back to the 2016-17 Velocity Vortex season. If you would like to use any of this code for yourself, feel free to. For updated code and more info on future seasons go to Scott3-0/18461-ftc_app. This is what we will be using for the 2020-21 Ultimate Goal season. Everything has been saved in it's original form, including everything past this paragraph in this Read Me.

- Scott

Welcome Scott 3.0!

So you have chosen the path of programmer. An unfortunate choice, but a choice none the less.

Before you begin, a few notes:

  • Remember to update the FTC_SDK and drivers station before starting out. Don't know how to do that? Paul may be able to help, but if not it'll be your first lesson in Java file structure.
  • NEVER UPDATE THE BUILD TOOLS UNLESS THE SDK DOES FIRST. I have lost too many hours to those friendly little prompts asking me to update the gradle wrapper.
  • Please for the love of god at least try to organize things a little bit.
  • If something doesn't make sense, you can always right click -> view declaration or view implementation. That way at least you know exactly how it doesn't make sense.
  • Never optimize anything unless you absolutely have to. Your code can allocate 16GB of RAM and break several international treaties but as long as it executes in time there's no point in improving it.
  • Seriously, don't pull a Benjamin and mathematically prove statistics for 12%. It's not worth it unless it scores more points or makes a judge take notice.
  • If you want control award fodder, use the most esoteric sensor you can find and brute force it until it works. If you want reliability, do what everybody else is doing. Do not use a camera unless you are prepared to spend time testing it in every condition imaginable (or are prepared to get screamed at when it doesn't work).
  • You can't write the autonomous in a week. You can't test the autonomous in one night. No, the build team cannot have the robot while you are programming it. And you definitely cannot add that experimental feature right before the match starts.
  • Comments take time, and time is directly proportional to more testing. Since your the only one who's going to be reading your code, I say screw comments.
  • No one will understand what you are talking about for the first few years of writing code. It's part of teamwork. You'll either learn how to communicate or be regarded as a wizard.
  • Write a control award every year, but don't expect to win anything until you can impress engineers with your code. Still write it though, the skill of documenting programming concepts is invaluable.
  • If your algorithm is in a scientific paper, you cannot write it without the help of a friend or a mentor.

This repository contains approximately four years of robotics programming experience, and I am far too lazy to document it. Therefore I leave you to thrash around in Java for the next few years, as I did when I started out. I have absolute confidence that you will be able to build on what I have created. If, however, you realize my code it making less sense the deeper you get, feel free to start over from scratch.

Good luck, I will be back to judge your progress.

- Noah.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages