Designing Solutions Through Programming

Wednesday 20 October 2021 - Block 2
← previous note | most current note | next note →
 

Daily Note

Our plan for the day: 
 

  1. Please keep this page open for the entire class
     
  2. We will review how to ask for help so you get a good answer quickly
     
  3. Please keep your database open in a new tab for the rest of class.
     
  4. We will implement two different security measures:
    1. We will implement password hashing
      1. We will watch a video that explains hashing
      2. You will need to update a new file store_register_process.php
      3. You will need to register a new user
      4. Once you register a new user, please look in your database so you can see what a hashed password looks like. 
         
    2. We will implement an extra condition into protected pages. 
      1. I will demonstrate the problem
      2.  When someone logs in, we will set a unique session value
      3. When someone tries to access a protected page, we will test if they are logged AND if their key matches a specified value.
      4. If we have time we will include a new file named protect.php into pages we want to protect. 

 

A little less comfortable

Content

Programs must solve the problem they were create to solve. We can worry about how effieciently or elegantly they solve the problem later on; not right now. The content of a program entails input, processing and output. All three of these elements must be clearly observable. A key question you will be asked (and you should ask yourself) is: to what extent does your code implement the features required by the specification?  

Process

Within the process, we are looking at six guiding questions: 

  • To what extent is your code written well (i.e. clearly, efficiently, elegantly, and/or logically)?
  • To what extent is your code eliminating repetition?
  • To what extent is your code using functions appropriately?
  • To what extent is your code readable?
  • To what extent is your code commented?
  • To what extent are your variables well named?

Product

As opposed to content, this section we focus on how well you solved the problem. A key question here is to what extent is your code free of bugs?

 

A little more comfortable

Content

Programs must solve the problem they were create to solve. You should ask yourself "Am I solving this elegantly?". The content of a program entails input, processing and output. All three of these elements must be clearly observable, and we must see evidence of sanitizing input and raising exceptions.  A key question you will be asked (and you should ask yourself) is: to what extent does your code implement the features required by the specification?  

Process

Within the process, we are looking at six guiding questions: 

  • To what extent is your code written well (i.e. clearly, efficiently, elegantly, and/or logically)?
  • To what extent is your code eliminating repetition?
  • To what extent is your code using functions appropriately?
  • To what extent is your code readable?
  • To what extent is your code commented?
  • To what extent are your variables well named?

For those more comfortable programming, we expect succinct, secure and effecient problem solving. 

Product

As opposed to content, this section we focus on how well you solved the problem. A key question here is to what extent is your code free of bugs? The real difference here is the complexity of the problem you have chosen to solve and how well you solved it. 

Our Big idea

The big idea for today is Programming.

The essential questions for this topic are:

How do we plan, write, execute, and test instructions a computer can understand and process?

It takes time to explore and really understand a big idea. If you want to
learn more about programming (which is connected to today's daily note), please click here .

We are learning this because as a designers must understand scientific and technical innovation. Designers use systems, models, methods, and processes to solve problems.



Reminders & routines:

IF (today ==  testing_day_for_me) {
     remember to go get tested!;
}

IF (this_block == first_block_day) {
     read_daily_bulletin;
}

IF (today == Friday) {
     current_event_activity();
}

As I am taking attendance:

  1. For students who are physically at ASW: Please check now: am I connected to the American School of Warsaw wireless network
  2. Please check now: is visual studio code working from my programming folder?

To remember: 

  1. All the files you need for this course can be found at this link. Please pay attention to the time the file was last updated. 
  2. You can access a web-based view of your database by clicking this link.
  3. Please be aware of course videos to help you understand our content.