Module: Java coding

Simple Java coding experiences that help you learn the “athletic” pedagogy used in this class and also help you refamiliarize yourself with Java coding.

Learning Outcomes

Understand the benefits of coding standards

You understand the benefits of coding standards and why they improve the quality and efficiency of software development.

Create standards compliant Java code

You can implement Java code that complies with Java best practices for coding style.

Acquire capability with the Eclipse IDE

You develop capability with the Eclipse IDE that enables you to develop software efficiently and effectively.

Write code efficiently

You can implement correctly functioning Java code in a short period of time.

Create high quality technical writing

You demonstrate the ability to write professional-quality technical essays or to have significantly improved your skill at this task since your last essay.

Readings

Athletic Software Engineering

An ‘athletic’ approach to software engineering education using Workouts of the Day.

WOD Weekly Rhythm

Course structure for learning by WODs

HEBS (Homework, Exercise, Breakfast, Sleep)

Lifestyle modifications to optimize WOD results

Experiential Learning

Practice WOD: FileIO-CountLines

Develop a program to count lines in a file.

Practice WOD: FileIO-CountWords

Develop a program to count words in a file.

Practice WOD: WebIO-CountWords

Develop a program to count words in a web page.

Practice WOD: WebIO-CountURL

Develop a program to count words given a URL.

Practice WOD: WebIO-FrequencyURL

Develop a program to count the frequency of words at a URL.

A10: Java Coding Technical Essay

Write a technical essay summarizing your experience doing the Java Coding practice WODs.

Assessments

Java Coding Technical Essay

Outcomes assessed: Create high quality technical writing, Write code efficiently

This assessment evaluated the ability of students to write a high quality technical essay summarizing their experiences doing the Java Coding practice WODs.

Discussion:

  • Please report all of the times for all of your attempts, and discuss what changed between attempts. This provides a reader with insight into how exactly you learn from doing the same programming problem more than once.

  • Take time to reflect upon your experience. That is an important part of the learning experience. These blog postings are ultimately for you, not for me. Make them valuable. Don’t finish the WODs at 8:55pm on Tuesday leaving you only 5 minutes to throw together a posting. That eliminates a learning opportunity.

Individual WOD: CharFrequency

Outcomes assessed: Write code efficiently

Rx: < 10 min Av: 10-15 min Sd: 15-25 min DNF: 25+ min or incorrect

CharFrequency is the first “real” WOD of the semester. Students were asked to individually implement a Java program which differs only slightly from the last Java Practice WOD.

Discussion:

  • Half the class completed the WOD successfully, which is a reasonable starting point. My hope is that the percentage of DNFs will decrease as the semester continues and everyone gets more experienced.