Hasklets

Motivation

The goals of the Hasklets are to:

  • Practice working with ideas from the class in small and low-risk tasks.
  • Provide concrete artifacts for your peers to review and critique during workshops.
  • Provide a way to get frequent and quick feedback on your Haskell code.

The workshop format is intended to stimulate discussion and create a highly collaborative environment. However, students should work on Hasklets independently and submit only their own work. This is important for two reasons:

  • It ensures we will have a diverse set of solutions to discuss.
  • You will get more out of the discussion if you struggle with the problem on your own first.

Since Hasklets are not graded for correctness, there is minimal incentive to do otherwise. :-)

Evaluation

Unlike your final project, which evaluates mastery and performance, Hasklets are designed to support your learning and so are graded based on compliance and effort. You will get full credit for any Hasklet that is submitted on time and is clearly the product of a determined effort to solve the problems.

What to do if you can’t solve a problem:

  1. List all of the problems that you failed to solve at the top of the assignment. This is to help me match you up with students who successfully solved those problems in the workshop.

  2. In place of a solution, describe (for example, in comments) what you understand about the problem, how you attempted to solve it, and where you ran into trouble.

The goal of #2 is not to punish you with bureaucracy, but to encourage you to step back from the problem and reflect on it. Often this can lead to a breakthrough! However, if not, it will demonstrate that you invested an appropriate amount of effort in trying to solve it and also provide content to help your peers give effective advice and feedback.

How to Submit

You will submit your solution through Canvas. I will create a new assignment in Canvas for each Hasklet.

Feedback / Critiques

Shortly after the Hasklet deadline, I will post workshop group assignments to Canvas. You should read through each of the Hasklets in your group and prepare a short list of comments for each.

Focus on providing constructive criticism. Identify both good aspects of the solution and aspects that could be improved and how. You may want to compare different solutions amongst your group and discuss the trade-offs of different approaches.


Back to course home page