This research is motivated by the fact that the 3D printing process can be daunting for novices, particularly students in academic institutions. Creating high quality G-Code for prospective 3D parts requires knowledge of a multitude of potentially confusing settings, including printing materials, infill density, and printer resolution. Novices also need to know how to properly orient a 3D part before slicing and may end up printing their part in a way that makes it inferior to an alternative. Currently, many existing slicing tools overwhelm the user with customizable settings, making it difficult for many novice users to navigate those tools. Besides, the vast amount of information available in various publications and online forums requires the user to spend a lot of time trying to process and utilize them effectively. To help users generate G-Code that can ensure a higher quality 3D printed part, we have developed a software application called G-Code and Printing Automation (GaPA) that guides users through the 3D printing and slicing process, using a guided sequential process. The application accepts a user’s CAD model in the form of a STL file and then asks the user about the part’s purpose via a short set of multiple-choice questions. A heuristic ranking algorithm determines each of the part’s possible printing orientations and printer settings, according to the user’s desired purpose for the part and data from literature. GaPA automates the slicing process by integrating part and process knowledge and highlights the pros and cons of the generated orientations. The paper will discuss the development of the algorithm and the software, challenges and planned future work.