This website is meant to serve as a gentle introduction to the software development practices of the Cornell Rocketry Team. It may have some helpful resources even if you’re not on the team.
Prerequisites
This book assumes you’re using a UNIX system, for example, macOS or Linux. If you’re not, I’d reccomend getting set up with the Windows Subsystem for Linux. You can follow Microsoft’s documentation to do that.
Where should I start?
I’d reccomend starting from the first link in the navigation pane (to the left on desktop, or above on a tablet/phone), and continuing down the list. Most pages have a “prerequisites” section, which explains the things you need to know before starting them, so it’s okay to go out of order.
Why here and not Confluence?
In short, Confluence sucks. I started working in Confluence, and it is such a pain to edit that I just gave up. This is just a collection of Markdown files, which is very easy to learn.
Additionally, some of the resources here are helpful to people not on the team. That way, you can read this stuff even if you aren’t a CRT member.
What should go here vs. Confluence?
Anything that is specifically about the design of your system or the greater rocket should be on Confluence. Information about how to write code more generally should go here. For example:
- A block diagram for your system should go on Confluence
- Implementation details for your system should go on Confluence
- Documentation practices should go here
- Documentation for your system should go on Confluence