This guide is designed to help bridge the gap between academia and practical application of software development for aerospace and other engineers for robotics senior design projects. This is by no means a complete guide to your specific senior design project, nor is it likely to contain the most efficient or practical approaches. This is simply something we have taken the time to draft up based on experiences we have encountered.
Each chapter is organized in a crawl, walk, run methodology to help the developer incrementally build their skills. To get the most out of each chapter, please complete the exercises at the end. Additionally, if you have any questions about the content of this guide, please email me at: jconnolly2016@my.fit.edu
Chapter 0: Development Environment Setup
Step by step guide on how to set up an Ubuntu Virtual Machine
Chapter 1: Basic Linux
Common commands you may encounter while developing in Linux
Chapter 2: Basic Python
How to write applications in Python
Chapter 3: Designing Graphical User Interfaces
Several approaches to designing and implementing GUIs in Python
Chapter 4: Networks
Basic networking and how to write servers and clients in Python
Chapter 5: Serial Communication
How to interact with peripheral devices via serial bus
Chapter 6: Debugging
Short chapter on interpresing errors and what to do with them

