Programming 101: It's not just about coding anymore
March 14, 2011 —
(Page 2 of 3)
Related Search Term(s): education, Marist College, Stevens Institute of Tech, IBM
“We tend to use agility methods and give our students practice with applications from outside clients," he said. "Agile is not a hard and fast rule for the college. It’s taught by professor preference. Students get to do about five projects [five semester-long courses] in their undergraduate education. Most projects are created for small-business companies that are located around the college."
A working example
Larry Bernstein, a professor at the Stevens Institute of Technology in Newark, N.J., and co-author of “Trustworthy Systems Through Quantitative Software Engineering,” created a test program about 10 years ago called a “live-through case history.” This class taught students how to work in groups, adapt as groups changed due to “promotions” or “sick days,” and dive into someone else’s code or application to fix a problem.
“On the first day, I gave them a problem and then they had work through it throughout the system,” Bernstein said. His case-study problems came from his contacts in the software industry (he was a development manager at Bell Labs before becoming a professor).
“Real-life experience [for a professor] is important,” Bernstein said. He believes the point in this type of class is not to get the product working—because that doesn’t always happen—but to teach students how to work together, write and present their findings, and understand that the people they are working for are not all familiar with the inner workings of code.
“To teachers, it is a taboo to produce something that doesn’t work at the end of a semester,” Bernstein said. “But you learn from failure.”
Douglass said students also need to learn that dependability is important, something Bernstein combats early in the semester. Bernstein tells students that they will fail if they don’t solve a sample software problem. “By March they learn that they won’t fail, but they’re motivated,” he said.
Internships can sometimes provide this real-life experience, but they often don't as interns are often given the work no one else wants to do, Douglass said, such as administrative tasks that do not allow students to deal with code.