• Develop a theoretical understanding of computing concepts that are useful for engineering tasks such as design and planning. • Develop programming skills for implementing computer support for engineering tasks