User Stories

Purdue University Standardizes on MATLAB to Provide First-Year Students with Core Engineering Skills

View PDF

Students learning MATLAB in a computer lab.

"The MATLAB programming language and visualization capabilities engage our students and help them see results instantly. The toolboxes help them solve problems more easily than with C or FORTRAN."

Heidi Diefes-Dux, Purdue University

First-year engineering students must develop a logical problem solving process for fundamental engineering problems, such as graphical representation, statistics, and economics. For faculty, this means designing courses and assignments that will engage and challenge students to develop the skills needed for upper-level courses—without requiring a great deal of programming.

Purdue University teaches essential introductory engineering skills to more than 1,600 first-year students annually using MATLAB as part of an innovative program. By combining introduction to engineering fundamentals with computer tools, the program encourages students to work effectively in technical teams while learning to translate engineering problems into mathematical models.

“Students learn to implement solution algorithms using MATLAB,” says Heidi Diefes-Dux, assistant professor in the Department of Education Engineering at Purdue University. “This provides them with skills they need to confidently pursue their engineering path.”


Purdue University needed a software package that would enable first-year students to be productive immediately in ENGR 106: Engineering Problem Solving and Computer Tools.

“Learning C or FORTRAN requires additional ramp-up time and extra programming steps,” says Diefes-Dux. “For instance, students may need to learn looping structures before they can plot. This makes it more difficult to get our students up and running.”

Finally, they needed to introduce students to the software tools required for upper-level courses.

“The engineering faculty needs first-year students to become skilled in the core software packages early, so they can spend more time learning advanced concepts in the upper-level courses and less time getting their computer skills up to speed,” explains Diefes-Dux.


Purdue University chose MATLAB as the programming environment for ENGR 106. By the end of their freshman year, students are well prepared for upper-level courses—regardless of their discipline.

“The students learn so much in class using MATLAB,” says Diefes-Dux. “They don’t realize until months later that they came in without any programming knowledge and can now create substantial pieces of code and perform specialized operations, such as image processing.”

In the lecture component of the course, Diefes-Dux introduces the problem solving method, fundamentals of engineering, and programming concepts. Diefes-Dux then instructs her students to build a glossary of MATLAB syntax as they learn new operations. In the lab, student teams practice using MATLAB syntax while solving simple engineering problems. Through homework and projects, students use MATLAB to solve more open-ended, authentic engineering problems.

In one lab exercise, student teams use MATLAB and the Image Processing Toolbox to quantify the size of aluminum crystals from micrographs by processing the image arrays.

“With the Image Processing Toolbox, students only need to write one line of code to get the image to appear on the screen,” says Diefes-Dux.

In a similar lab exercise, students use MATLAB and the Image Processing Toolbox to determine the nano roughness of a fabricated gold surface. Using images from atomic-force microscopes, they lay random lines on top of the images and use these lines to identify and measure the heights of peaks and valleys.

“The array capabilities of MATLAB help us create more interesting problems for our students,” explains Diefes-Dux. “It would have been impossible for them to learn enough C or FORTRAN coding for these image processing problems. MATLAB makes it easy.”

Diefes-Dux also uses an open-ended problem to motivate students to use statistics to analyze airline departure times and rank the airlines based on how successfully they connect passengers to their flights. Students use MATLAB to determine the mean and standard deviation of a stored data set, which they treat as an array. They then watch histograms to see the distribution of passenger departure times.

Students also use the Symbolic Math Toolbox to define symbolic variables and write and manipulate equations.

Purdue University has adopted MathWorks tools across all its engineering disciplines, including computer and electrical, mechanical, aerospace, and chemical.


  • Students focus on problem solving, not coding. "Using MATLAB rather than C or FORTRAN, students can reduce their coding by at least 2/3, which gives them more time to focus on solving problems,” explains Diefes-Dux. “The visualization capabilities of MATLAB also enable our students to see the results of their work instantly.”
  • Students obtain skills required for upper-level courses. Because MATLAB is taught to every first-year engineering student, upper-level faculty doesn’t need to spend precious time getting students up to speed on how to open the program and use the fundamental syntax.
  • Professors create a multitude of engineering problems. “With MATLAB, we have a lot of flexibility to use authentic engineering problems,” says Diefes-Dux. “When you are coming up with problems, you don’t want to be locked into the limitations of the software. With MATLAB, we minimize those issues.”


To teach first-year students to learn how to solve fundamental engineering problems


Use MATLAB to enable all first-year engineering students to acquire essential problem solving skills


  • Students focus on problem solving, not coding
  • Students obtain skills required for upper-level courses
  • Professors create a multitude of engineering problems

Products Used

Learn more about Purdue University