I was looking to use my extra time in my senior year to make some java tutorials for FRC software kids, y’all got any recommendations for what I should cover in these tutorials(basics, PID, etc.) or even more general tips on how to make them. Thanks!
To my knowledge, we don’t yet have much in the way of a Basics/Introduction using the 2020 WPILIB Command-Based Framework Rewrite outside of the official documentation.
Additional tutorials are awesome but tend to never get to a majority of teams. I HIGHLY recommend making a pull request to the official documentation now that it is available for all to contribute to. Other attempts at this have gone out of date over the years due to a lack of maintenance. Take a look at what you think is missing, open an issue with your proposal and the community can discuss it and guide what you are trying to add. One word of warning: larger changes tend to be harder to merge in; try to make lots of small additions rather than a few massive ones.
The current contributors are either in school, have a full time job, or otherwise consumed with life. We appreciate all of the help we get maintaining all of the tools, libraries, and documentation.
Maybe I just haven’t looked very hard but tutorials on how to get started with motion magic using talon SRXs seem to be scarce.
We don’t host thirdparty vendor documentation. It has traditionally been the vendor’s responsibility to document usage of their products. CTRE’s documentation is here: https://phoenix-documentation.readthedocs.io/en/latest/. We could consider linking to it, but that’s something we’d have to clear with FIRST.
Yeah I love the new docs.wpilib website it has some amazing documentation I am just trying to provide some video walk throughs for people who find that easier to understand.
Would vision be a possibility?
There’s no reason the official documentation couldn’t link to video walkthroughs; you should still feel free to submit a PR.
Why? It seems like the vendors could help solve the whole “all of the volunteers are overworked and therefore the documentation is lacking” problem.
Don’t mean to derail the thread, but see https://www.chiefdelphi.com/t/programming-requests/ in regards to vendor docs.
Also, we can absolutely have videos on the documentation website. However they have a bit stricter guidelines. The videos would have to be hosted on YouTube, they have to be high quality (no foul language, clear), and have corresponding textual based docs.
Most needed tutorial right now if FRC programming? Here is my wish list:
How to Teach Programming
By far the most important tutorial, if you want a strong programming team, you need to be to constantly teach. What approaches worked or didn’t work? What activities can be done to quickly educate with resources on hand. What can teams do to teach when they don’t have a working robot. How do you engage students in understand.
Consider ways to teach to all of the different teaching style of students.
The cycle of learning is by far the most important things a programming team can have.
How to Read Documentation
There is so much documentation out there, but very few students and mentors know it exists. Once found, it can be overwhelming to know where to start. A tutorial on talking through where resources are and how to use them, as well as the benefits of how to use them, could be extremely important. Reading documentation is one of the most critical real world skill for computer scientists.
How to use GitHub and WHY
There are probably plenty of tutorials on this, but why is it still hard? The point of this suggestion is to have you consider what tutorials there are a lot of, and why they still aren’t always successful. Figure that out, then redevelop the tutorials. This could be for GitHub, or it could be for something else, who knows?
Killer Code in 30 lines or less
To code in a minimalist way. We spend a lot of time thinking about the complex topics, but so many people could benefit from learning the fundamentals of making an entire robot from work in 30 lines of code. Really consider the importance of what 30 lines you need (not including the pre-generated code by the project). What do we really need to make a robot work? This might not have a direct impact on learning, but should definitely help redefine some of the skill and thought processes.
Note Don’t use complex coding loop hole to decrease how many lines of code you write. That’s not the point.
Building a Substainable Codebase
How does one write code that will be reusable and maintainable for many generations to come? This skill is critical for continual development of code. Proper documentation here is key.
The Joel Test - FRC Edition
If you haven’t read some of the amazing writings by Joel Spolsky, you are missing out. He created some an amazing little thing called Joel’s test, a quick an painless way to get a pretty good bearing on how well a given programming team is working. It’s has amazing points, but doesn’t quite match FRC perfectly. I would love to go through and re-work it myself, but alias, these experimental art papers aren’t going to write themselves.
Because historically, we’ve had to clear linking to external sources with FIRST.
The Funniest rookie mistakes Topic has plenty of things i think rookies should read through so they know not to stumble across the same fate as other teams
Here is a set of PID/talon SRX tutorials:
(Perhaps slightly beginning to become dated with regards to hardware, it’s fine with regard to theory)
A very similar thread to this was opened a few weeks ago…
You can find it here
Maybe a partnership could be formed?