Discussion Overview
The discussion revolves around the importance of computer programming skills in the careers of mechanical and aerospace engineers. Participants share their experiences with various programming languages and tools, including C++, Matlab, FORTRAN, and Python, and explore how these skills are applied in different engineering contexts, such as computational fluid dynamics (CFD) and design engineering.
Discussion Character
- Exploratory
- Technical explanation
- Debate/contested
Main Points Raised
- Some participants emphasize the utility of programming languages like Matlab, Mathcad, and Mathematica for calculations, suggesting that C++ may be excessive for many engineering tasks.
- Others argue that programming is essential in fields like CFD, where languages such as FORTRAN are preferred for their speed and efficiency in numerical computations.
- There is a discussion about the advantages of Python, highlighting its ease of use, speed of development, and extensive libraries for data handling and GUI creation.
- Participants note that proficiency in programming can enhance problem-solving skills and logical thinking, with some suggesting that being "good" at a language means being able to work efficiently without a steep learning curve.
- Concerns are raised about the overhead of high-level languages like Matlab compared to lower-level languages like C/C++, particularly in large computations.
- Some participants reflect on the balance between programming skills and the use of existing software tools, suggesting that knowing how to create macros or custom tools can be more beneficial than extensive programming knowledge.
Areas of Agreement / Disagreement
Participants express a range of views on the necessity and application of programming skills in engineering. While some agree on the importance of programming in specific contexts, others suggest that it may not be as critical in all engineering roles, indicating that multiple competing views remain.
Contextual Notes
Participants mention various programming languages and tools, but there is no consensus on which is the most beneficial for all engineering tasks. The discussion also highlights the varying levels of programming proficiency among engineers and the impact of specific job requirements on the necessity of programming skills.
Who May Find This Useful
This discussion may be useful for current and aspiring engineers, particularly those in mechanical and aerospace fields, as well as educators and professionals interested in the role of programming in engineering practice.