E07: Project Euler Problem 1

The goal of this experience is to get you started learning to write very simple Javascript code using JSFiddle, and to get you acquainted with the “Workout of the Day” (WOD) pedagogical technique used in this course.

Prelude

Review the first few sections of the AirBnB Javascript Style Guide. For example, be sure to use let and const, not var.

If you haven’t already, download and install the Chrome Browser.

Next, create an account on JSFiddle and login. Then bring up the Javascript console with View > Developer > Javascript Console.

The WOD

For this practice WOD, solve Problem 1 from Project Euler. Note that you do not have to register with the Project Euler site and submit your answer (though if you want to, you can).

Ready? Let’s begin:

  1. Start your timer.

  2. Create a Javascript function called “projectEulerOne”. The function should compute and return the answer. Print the value returned by the function out to the console.

  3. Informally test your program by running it and inspecting the output.

  4. Press the “save” button to create a URL to refer to your code.

  5. Stop your timer and record your time. Be sure to record the time associated with every attempt at this WOD, because you will need your WOD time data when you write your technical essay.

Rx: < 4 min Av: 4-6 min Sd: 6-8 min DNF: 8+ min

Demonstration

Once you’ve finished trying the WOD for the first time, watch me do it.

Standard WOD Caveats

You’ll learn significantly less from watching me solve the WOD if you haven’t attempted the WOD yourself first.

While it’s an achievement to finish the WOD no matter how long it takes, you might experience “diminishing returns” if you work longer than the DNF time. Thus, it is usually strategic to stop working at the DNF time and watch my solution.

After watching my solution, I recommend that you repeat the WOD if you have not achieved at least Av performance. If so, be sure to:

Feel free to keep trying until you make Rx if that’s of interest to you.

Submission Instructions

By the time and date indicated on the Schedule page, submit this assignment via Laulima.

Your submission should contain:

You will receive full credit for this practice WOD as long as you have attempted it at least once and submitted the email with all required data before the due date. Your code does not have to run perfectly for you to receive full credit. However, if you do not repeat each practice WOD until you can finish it successfully in at least AV time, you are unlikely to do well on the in-class WOD. To reduce the stress associated with this course, I recommend that you repeat each practice WOD as many times as necessary to achieve at least AV before its due date.