In this assignment you will demonstrate knowledge of computing as a discipline, practice your writing skills, and show that you can write simple front-end-only web applications using HTML, CSS, and Vanilla JavaScript.
Do the readings, watch the videos, write the essays, and program the applications below.
Submit, via Brightspace, the following:
Just read and/or watch the following. You do not have to take notes or write reports on them; however, don’t cheat yourself by skipping them. These independent learning units must be done individually, but please feel free to discuss these items with your friends and classmates. You are encouraged to share your thoughts on these materials on course community channels (Brightspace Forums, Slack, Discord), and to post related items your classmates might be interested in. We learn together. Some of these resources have links to other resources, which you may wish to follow as time allows.
Many of these questions refer to the readings, videos, and activities above. Some questions may require additional research to answer well enough for full credit.
Implement the web applications below using Vanilla JavaScript (no React or p5.js for now, you can use these technologies in future assignments). You must a good deal of effort into your styling. Make sure that you cover, in at least one of the programs, each of the following: borders, margin, padding, alignment, color, background images, text font, text size, text shadow, at least one CSS transformation, and at least one CSS transition.
"ho"
, your script should show "hohoho"
. If the user inputs "888"
, your script should show "888888888"
. (Hint: use string.repeat
.)type="number"
for the input. (Hint: After getting the value from the text box, apply Number(____)
to the value to get a numeric value. To covert a number n to base-16, use n.toString(16)
.)input
element with attribute type="date"
will provide you with fancy input widgets and guarantee their value
properties will be strings that can be converted to legal dates with new Date(____)
. Subtracting two dates in JavaScript will give you the number of milliseconds between the two dates. From the number of milliseconds you should be able to compute the number of days.)Here’s the rubric I’ll use to score your submission.
Requirement | Out Of | You got |
---|---|---|
Ten articles chosen show depth of computing field | 5 | |
Reasons given for Alan Turing being consider the founder of CS are worthy of one being called the found er a field | 5 | |
Three conditions in the simulation argument are well articulated | 5 | |
You elaborated on arguments against this argument | 5 | |
10 structurally ambiguous sentences / headlines | 5 | |
Problems with modes are well articulated | 5 | |
Nice, complete, and understandable list of characteristics of planners and bricoleurs | 5 | |
Text Repeater App works as specified | 10 | |
Hexadecimal App works as specified | 10 | |
Days-between-dates App works as specified | 10 | |
Your code was tidied (perfection demanded) Use a formatter, but remember these tools generally cover only indentation and spacing; vertical space and capitalization are up to you | 5 | |
Code uses good names | 5 | |
Code is broken down into well-named functions (and no overly-long ones) | 5 | |
Code uses variables where necessary (few or no magic numbers) | 5 | |
Your apps look good, clean, and balanced, with nice aesthetics (no garish colors, no misalignment) | 4 | |
CSS border used | 1 | |
CSS margin used | 1 | |
CSS padding used | 1 | |
CSS alignment used | 1 | |
CSS color used | 1 | |
CSS background image used | 1 | |
CSS font used | 1 | |
CSS font size used | 1 | |
CSS text-shadow used | 1 | |
CSS transform used | 1 | |
CSS transition used | 1 | |
Misc. Bonus points or penalties at discretion of Prof. | 0 | |
Total | 100 |