Hello Jonathan. I am also working on the HiFive1 rev B board for my project. I have some experience in programming multiple Cortex M based MCUs so I got the hang of HiFive1 rev B like after 1 or 2 weeks.
You can start with reading examples on Freedom Studio, if you meet problems, don’t be shy, comes to the forum and ask directly. FE310-G002 is a new chip so everyone is new to using it.
Compared with bare metal programming (directly manipulate device memory), using the E SDK to program is highly recommended in my opinion. It is safer and faster to code and supports all chip features. But in order to use it you should have ideas on the device memory mapping, ROM and RAM difference, etc. some common MCU knowledge. The FE310-G002 Manual v1p0 (prismic.io) should be helpful. Plus it is a RISC-V core, you need to read the RISC-V manual too Volume 2, Privileged Spec v. 20190608.
The document of Freedom E SDK can be found at Freedom Metal — Freedom Metal v20.05.01.00 documentation (sifive.github.io). It is not beginner friendly, you probably need to do some testing there.
After finishing all of that, learn how to use FreeRTOS, it should take a week or so to learn it because it is simple. Remember, only after using RTOS, the power of the MCU can be fully released. I highly suggest using a RTOS anytime, for any project, because it is an expensive board, you do not want to use it to do the same thing which a 10Mhz 8051 can handle.
In the end, as a C/Linux programmer for more than 3 years, l can say that C is simple but beautiful, I have no idea of Rust or Go, and will not try to learn them now, because I feel like I am still a new programmer on C. Even after thousands of lines, I still learn new things everyday.