flamingchickens1540 / ares-luna-2020 Goto Github PK
View Code? Open in Web Editor NEWTeam 1540's robot code for the 2020 FRC season
License: MIT License
Team 1540's robot code for the 2020 FRC season
License: MIT License
Hello! I am Christopher Marley, a co-lead programmer of FRC Team 4681, Murphy's Law, and I have been assigned your repository as part of the Chief Delphi "2020 Code Review Party". Over the next two weeks, I will be plumbing the depths of your code and compiling everything in this one issue (so your emails aren't 'pinged' too much).
Quick disclaimer, our team uses TimedRobot
, so forgive me if my knowledge of command based is lacking. I did do a lot of research on the features, so I should be up to speed.
If you have any questions at all, reply to this issue or directly email me at [email protected].
I'm very surprised there have been no issues opened in this repo... cool!
Very clean code overall. Really good documentation through comments as well. Kudos for removing or documenting unused methods and commands (My team really should work on that).
This part seems like the only bloated part of the robot code. You might wanna have a different place to set controller bindings and just pass a reference to the method in RobotContainer.java.
Just out of curiosity, is using velocity control on intake necessary? I believe that it doesn't really put any noticeable load on RIO but still seems a bit overengineered to me. I also saw that you guys had a percent output method for intake that you didn't use.
The same goes for what I said about localization stuff. Having configuration stuff not bloat the subsystem is a great way to write clean code.
Even though we are using command-based as well, we are logging lots of stuff in Robot.java periodic methods. Your implementation seems to clear the clutter. Another thing I feel stupid for not thinking of myself.
super(new VisionTurnCG(shooter, drive, led), new SetShooterRPMPF(2900, shooter, false).withTimeout(2).raceWith(new RunHopper("sync", hopper)).andThen(() -> { drive.arcadeDrive(0.8, 0); Timer.delay(1); }).andThen(() -> drive.tankDriveVolts(0, 0)));
I didn't have time to go through all the custom libraries you used. That's pretty much all I got to say about your code. Clean code, good use of command base structure and custom libraries. If I missed some important parts of the code or you want feedback on certain parts of the code, you can let me know by replying to this issue or writing to me at [email protected]. Good luck!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.