Comp. Design Thinking Studio 2018 SPR

POSTECH Design Intelligence Lab. Prof. Ju Hong Park

  1.  Week 1. Introduction to Thinking and Design Thinking

    1. Prep
      1. Download Processing Python -from the Processing.org
        1. change its mode to Python from Java
      2. Team Making – teams with two students
        1. Shin, Ye Eun + Kim, Sun Woo
        2. Jeon, Ha Yeong + Lim, Young Soo
        3. Lee, Seung Hui + Kong, Da Young
        4. Kim, Kyung Soo + Jang Su Bin
        5. Lee Seung Ho + Kim, Min Sung
        6. Choi, So Young + Cho, Kwang Woo
      3. Rescheduling –
        1. Wed. 3:20 – 5:20 pm
        2. Need at least 10 hours for fabrication work-session (to be scheduled)
      4. Office Hours:
        1. Any lunchtime (12 – 1 pm) on weekdays
      5. Course Website
        1. CDT.POSTECH.AC.KR
      6. Course Google Drive
        1. LINK
        2. Syllabus in the folder
        3. No folders, please
    2. Introduction
      1. Past Courses
      2. Thinking LINK
      3. Brain – A Fish Neuron LINK
      4. Brain – Human Brain Thinking LINK
      5. Design Thinking (skipped – will be covered in week 3)
        1. Presentation vs. Progress (growing ideas)  LINK
        2. Procedural vs. Declarative Knowledge
        3. Problem Solving vs. Problem Defining
    3. Tutorials
      1. Coding Style
        1. Guide: LINK
        2. Good vs. Bad Style Examples: LINK
      2. Programming Overview
        1. Data:
          1. Input, Output
          2. Data Type:
            1. boolean: 1/0, True/False
            2. numbers: integer and others(real, float, double)
            3. List/Array
              1. 1d List, Array
                1. numbers, texts
                2. sounds, noise
                3. heartbeat
                4. EEG
                5. points
              2. 2d/3d List, Array, Matrix
                1. images
                2. lines, shapes
              3. 4d/nd List, Array, Matrix
                1. tensor (in Python Deep Learning Lib. Tensorflow)
        2. Function
        3. Classes/Objects
        4. Design Patterns
      3. Processing Overview
        1. Some good tutorial websites
          1. Processing’s Tutorial Page 
          2. Learning Processing’s Web Tutorial
        2. How to run?
        3. size( )
        4. background( )
        5. point( )
        6. stroke( )
        7. line( )
        8. fill( )
        9. rect( )
        10. save( )
    4. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Mon: Draw 5 Points
        2. Tue: Draw 5 Lines with Different Strokes
        3. Wed: Draw 5 Shapes, such as Rectangles, Arcs, Elippses
        4. Thur: Draw a Simple Face.
        5. Fri: Draw a Simple Hand Skeleton.
        6. Sat: Draw a House.
        7. Sun: Draw an Abstract Composition with Simple Shapes.
        8. Mon: Draw a Random Figure (any abstract shape).
        9. Tue: Draw a Cartoonish Self-Portrait.
        10. Format
          1. use size(500, 500)
        11.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week01_CA01.txt”
            2. for image names: “YourName_Week01_CA01.jpg”
      2. Design Assignments(Due by Sunday)
        1. Find an Inspiring Artist and his or her Work
          1. Format:
            1. Use a google doc template.
          2. Content:
            1. An image of the artist, and an image of the work
            2. Name
            3. birth year
            4. Nationality
            5. the title of work.
            6. Short description of the work and the artist
            7. Why do you pick the artist and project?
      3. Thinking Assignments(Due by Sunday)
        1. Read this article and answer this question
          1. “Describe what your instructor expects you to learn from this article?”
            1. Write important 5 lessons you learned
          2. Format
            1. Use a google doc template.
  2. Week 2 Design Thinking as Structural Thinking

    1. Prep
      1. Checking Assignments
      2. Office Hours
        1. Any lunchtime during weekdays (send an email to see if there is a vacancy)
    2. Introduction
      1. Design Thinking (skipped – will be covered in week 3)
        1. Presentation vs. Progress (growing ideas)  LINK
        2. Procedural vs. Declarative Knowledge
        3. Problem Solving vs. Problem Defining
      2. Structural Thinking
        1. Structuralism
          1. Period: 1960 – 65
          2. Location: France to the US
          3. became the foundation of Linguistics
          4. Main Concept: Understanding the world/ an object/ a concept in form of a structure
            1. not structures: properties, such as liquid/solid, opaque/transparent, weight, color, materiality, shapes
          5. Description:
            1. The relationships among various elements have mental, linguistic, social, and/or cultural “structure,”
            2. where this “structure” creates the meaning of a person and a culture.
          6. Ferdinand de Saussure
            1. He argues that language has two components.
              1. One is Langue/Signifiant(abstracted language) and Parole/Singifie(language that is used in everyday life)
                1. For example,
                  1. A Chocolate is a sweet candy – parole
                  2. A chocolate means to love when a person gives it to his or her friend in valentine’s day – Langue
              2. Sign = Signifier + Signified
                1. Apple (object/thing) = physical existence (red, round, sweet and sour) + mental model (fruit or company)
          7. We want to see/understand computer programming and design in the perspective of this Structuralism (for now)
        2. Programming Element
          1. Input (optional)
          2. Function (Method)
          3. Output (optional)
        3. Programming Structures – Structured Programming
          1. Sequences
          2. Repetitions
          3. Conditionals
    3. UML (Unified Modeling Language) (skipped – will be covered in week 3)
      1. Background Information
        1. Use Paper and Pencils (no computer graphics or diagrams)
        2. Should be quick and dirty
        3. Submit UMLs from this week.(take pictures and submit JPGs)
      2. Sequence Diagram
    4. Tutorials (skipped- will be covered in week 3)
      1. Comments
        1. Please add following comments in all your codes
        2. “”” 
        3. Author: Juhong Park
        4. Date: 2018. 2.23
        5. Ver. : 1.0
        6. Purpose: This code generates a simple hand sketch using points
        7. Input: List of points, image, or a text file
        8. Output: an image
        9. “””
      2. Basic Terms: Mathematics by Whiteheads
        1. Variables vs. Values
        2. List, Array, Tuples
        3. Variable vs. Function
      3. Processing’s Coordinate System
        1. X is the same with the conventional X-axis
        2. Y is the opposite to a conventional Y-axis (high is down)
      4.  FUNCTION
        1. UML
        2. Graphs
        3. Skeletal Codes using Functions
        4. Exercises
          1. Function with no input and no output
          2. Function with input (but no output)
          3. Function with output (but no input)
          4. Function with input and output
      5. Repetition
        1. UML
        2. Graphs
        3. Exercises
          1. List and For Tutorials
          2. Simple Repetition – Counting
          3. Nested Repetition
      6. Conditional
        1. UML
        2. Graphs
        3. Exercises
          1. Single Condition
          2. Nested Condition
    5. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. This Week: Imitating Parole/Signifie
        2. Next Week: Imitating Langue/Signifiant
        3. Please use any libraries after the Second Project.
        4. Daily Assignments
          1. Wed: imitate your inspiring project using points
          2. Thur: imitate your inspiring project using lines
          3. Fri: imitate your inspiring project using shapes
          4. Sat: imitate your inspiring project using curves
          5. Sun: imitate your inspiring project in any way you want – ver 1
          6. Mon: imitate your inspiring project in any way you want – ver 2
          7. Tue: imitate your inspiring project in way you want – ver 3
        5. Format
          1. use size(500, 500)
        6.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week02_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week02_CA01.jpg”
      2. Design Assignments(Due by assigned days) (skipped – will be covered in week 3)
        1. Assignments:
          1. 3D Print a simple table
          2. If a 3D printer is clogged, this assignment will be canceled. (do not attempt to fix a 3D printer)
        2. 3D Printing Exercises  –  Design Assignments
          1. We will use Rhino3D installed on school computers
            1. but do not install it on your computers yet
          2. Rhino 3D Tutorials LINK
            1. Rhino Tutorial
              1. Point
              2. Line
              3. Polyline
              4. Arc
              5. Curve
              6. Surface
              7. Lofted Surface
              8. Networked Surface
              9. Box
              10. Cylinder
              11. Extruded Volume
              12.  Offset Volume
            2. Make a simple object in Rhino3D
              1. Export it as STL
              2. Save the file in a USB key
          3. MakerBot Tutorial LINK
          4. Make a simple table smaller than 15 x 15 x 15 cm.
            1. Wed: Soyoung Choi and Cho Kwangwoo prints their project (take a picture of your result and upload it)
            2. Thu: Soyoung, and Kwang Woo teaches > Shin, Ye Eun, and Kim, Sun Woo so they can print her project
            3. Fri: Ye Eun, Sun Woo > Ha Yeong, Yong Soo
            4. Sat:
            5. Sun:
            6. Mon: Ha Yeong, Yong Soo > Seung Hui, Da Young
            7. Tue: Seung Hui, Da Young > Kyung Soo, Su Bin
            8. Wed: Kyung Soo, Su Bin > Seung Ho, Min Sun
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. Read this article “Hackers and Painters” and answer this question
          1. “Describe whether You are a Hacker or a Painter, then describe the reason”
            1. Write important 5 reasons why you pick one from the other.
          2. Format (please save it as another Google Doc)
            1. Use a google doc template.
  3. Week 3 Design and the Design Process, Structural Thinking cont.

    1. Prep
      1. Checking Assignments – Coding Assgn.
        1. Comments Adding – Refresh
      2. 3D Printing Exercises  – 5th FL.
      3. Coding Tutorial
      4. Thinking Assgn. Checking (it time is available)
    2. Introduction
      1. Design Thinking (uncovered – in week 2)
        1. Presentation vs. Progress (growing ideas)  LINK
        2. Procedural vs. Declarative Knowledge
        3. Problem Solving vs. Problem Defining
        1. Programming Element
          1. Input (optional)
          2. Function (Method)
          3. Output (optional)
        2. Programming Structures – Structured Programming
          1. Sequences
          2. Repetitions
          3. Conditionals
    3. UML (Unified Modeling Language)
      1. Background Information
        1. Use Paper and Pencils (no computer graphics or diagrams)
        2. Should be quick and dirty
        3. Submit UMLs from this week.(take pictures and submit small size JPGs – less than 1mg)
      2. Sequence Diagram
    4. Tutorials
      1. Processing’s Coordinate System
        1. X is the same to a conventional X axis
        2. Y is the opposite to a conventional Y axis (high is down)
      2.  FUNCTION
        1. UML
        2. Graphs
        3. Exercises
          1. Function with no input and no output
          2. Function with input (but no output)
          3. Function with output (but no input)
          4. Function with input and output
        4. Inputs are recognized by its orders (in parentheses) and names (in functions)
      3. Repetition
        1. UML
        2. Graphs
        3. Exercises
          1. List Operations
          2. Simple Repetition – Counting
          3. Nested Repetition
      4. Conditional
        1. UML
        2. Graphs
        3. Exercises
          1. Single Condition
          2. Nested Condition
    5. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Design your concept using Python every day
        2. Please clarify a design concept that you want to express
        3. Please add a comment including the purpose of the code
        4. Please use a skeletal code.
        5. Format
          1. use size(500, 500)
        6.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week04_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week04_CA01.jpg”
      2. Design Assignments(Due by assigned day)
        1. 3D Print a simple table
        2. If a 3D printer is clogged, this assignment will be canceled. (do not attempt to fix a 3D printer)
      3. Thinking Assignments(Due by Sunday)
        1. Read this article and answer this question
          1. Please write your own 5 different definitions of “design” and “the design process”
            1. what is design > 5 answers to this question
            2. what is the design process > 5 answers to this question
          2. Format
            1. Use a google doc template.
  4. Week 4 Abstract Thinking + Recursive Thinking

    1. Prep
      1. Checking Assignments – Coding Assgn.
        1. Comments Adding – Refresh
      2. School Computers – Rhino Tutorials
        1. Rhino License Issue
          1. Turn off a computer and on it
          2. Do not log in
        2. Speeding up computers
          1. Computer > RMB: Properties > Advanced System Settings >
            1. Performance > Settings > “Adjust for Best Performance”
        3. Now you can download and install Rhino evaluation version
          1. https://www.rhino3d.com/download
      3. 3D Printing Exercises  – 5th FL.
      4. Coding Tutorial
      5. Thinking Assgn. Checking (if time available)
    2. Introduction
    3. Tutorials
      1. Recursive Rectangles
      2. Recursive Circles
      3. Recursive Plans: Taji Mahal
      4. Recursive Tree with a Single Branch
    4. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Wed: Draw a two-branch tree (do not upload a code, either UMLs)
          2. Thur: Draw a three-branch tree (do not upload a code, either UMLs)
          3. Fri: Draw a three-branch with a randomly angled tree (do not upload a code, either UMLs)
          4. Sat. – Tue: Design your concept using recursions (upload your codes)
        2. Requirements
          1. Please clarify a design concept that you want to express
            1. Please add a comment including the purpose of the code > Problem Abstraction
          2. Please use a skeletal code? > Procedure Abstraction
          3. Please use variables for data and conditions > Data Abstraction
          4. Please use only 10 lines for each function
          5. Please use only 10 words in each line
          6. Format: Rhino 3D can print the top view screen and save it as a JPG file.
            1. Please upload the JPG file.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(Due by assigned day)
        1. Upload the picture of your 3D printed table on the google drive
        2. Bring your 3D printed model to the next class time
      3. Thinking Assignments(Due by Sunday)
        1. Read this article and answer this question
          1. Please pick two most important words in this article that your instructor may think.
          2. Do not post it, just email the answers to the instructor.
        2. After reading this article, Abstraction in Software Engineering, 
          1. Please write 5 reasons why Software Engineering uses abstraction.
          2. Please write 5 methods how Software Engineering uses abstraction
          3. Format
            1. Use a google doc template., 
  5. Week 5 Abstract Thinking 2 + CNC Machine

    1. Prep
      1. Checking Assignments – Coding Assgn.
      2. Coding Tutorial
      3. Thinking Assgn. Checking (if time available)
      4. Material Orders for Each Team For the Project 1(2D) and 2(3D)
        1. 5mm MDF board x 4 (for a table assignment)
        2. 5mm round drill bit x 4 (for a table assignment)
        3. 1.75mm Filament White 1kg (for 3D printing assignment)
        4. Water Color Sketchbook (heavier than 220g, 4절, 40 sheets)
      5. Extra Materials for the Final Projects
    2. Introduction
      • Python File as a Library
        • Save a file in a folder
        • import the file into a new file
        • Run once, then the library file will be visible in the new file.
      • L-System (in week 6)
        • Sample codes will be distributed
    3. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Draw extremely dense recursive paints that represent your concept
            1. but not completely black
          2. Wed. – Fri. Design your concept using other student’s code as a library
          3. Design your concept using multi-level recursions (upload your codes, images, and UMLs)
        2. Requirements
          1. Initial Comments
          2. Each line has a single abstraction
          3. Each function does one purposeful thing
            1. Each function has its own comments.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(by Sunday 6 pm)
        1. Prepare a CAD file for a CNC Table
          1. Upload a CAD file to a google drive
          2. Upload a JPG image of the CAD file (top-view)
          3. Please include CNC joineries: Basic CNC Joinery
          4. We will use a ShapeOko 2 CNC Machine (https://www.shapeoko.com/wiki/index.php/About)
          5. The working area is 30 x 30 cm. Thickness is 5mm
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. After reading the distributed reading materials
          1. Write the number and the name of the chapter
          2. Find 10 definitions of abstraction from the reading
          3. Do not post your paper, just email your link to me.
          4. Use a google doc template., 
  6. Week 6  Creative Thinking  + CNC Machine 2

    1. Prep
      1. Checking Assignments – CNC drawing
      2. Thinking Assgn. Checking (if time available)
    2. Introduction
      • L-System (in week 6)
        • Principles of L-System
          • G: Grammar
          • V: Alphabet – includes Variables and Constants
          • w: Axiom – Initial String
          • P: production rules
          • G = (V, w, P)
        • Covered
          • Algae
          • Koch Curve
        • To be continued
          • Sierpinski Triangle
          • Dragon Curve
          • Fractal Tree
    3. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Wed: Draw your own Algae system
          2. Thur: Draw your own Koch Curve system
          3. Fri: Draw your own Sierpinski Triangle system
          4. Sat: Draw your own Dragon Curve system
          5. Sun: Draw your own Fractal Tree system
          6. Mon. – Tue: Draw your own L-System that represents your design concept
        2. Requirements
          1. Upload your codes, images, and UMLs)
          2. Find the highest iteration number that does not freeze your computer and use it for your daily assignments.
          3. Initial Comments
          4. Each line has a single abstraction
          5. Each function does one purposeful thing
            1. Each function has its own comments.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(by Sunday 6 pm)
        1. Update a CAD file for a CNC Table
          1. Please use two layers
            1. one layer of your furniture design
            2. one layer of the tool path curves.
          2. Please draw the boundary curves of materials
            1. The dimensions of MDF panel size are 40 x 40 cm
            2. The dimensions of working area are 30 x 30 cm.
            3. Thickness is 5mm (order 5T)
          3. Upload a CAD file to a google drive
          4. Upload a JPG image of the CAD file (top-view)
          5. Please include CNC joineries: Basic CNC Joinery
          6. We will use a ShapeOko 2 CNC Machine (https://www.shapeoko.com/wiki/index.php/About)
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. After reading the distributed reading materials “Dimensions of Creativity” (Perkins, 1994) and answer the below questions
          1. What is the purpose of this article?
          2. How does the author solve/fulfill the purpose?
          3. What are the problems in creative thinking
          4. Do not post your paper, just email your google doc. link to me.
          5. Use a google doc template., 
        2. We will continue to read the
  7. Week 7  Object-Oriented Thinking + CNC Drawing 1

    1. Prep
      1. Checking Assignments
      2. Thinking Assgn. Checking (if time available)
      3. Installations
        1. Inkscape (https://inkscape.org/en/release/0.92.3/)
        2. Illustrator (from HEMOS website)
        3. Instruction Rhino File “EleksDrawInstructions.3DM” (in the class google drive)
    2. Introduction
      • L-System (in Week 8)
        • Sierpinski Triangle
        • Dragon Curve
        • Fractal Tree
      • Object-Oriented Programming
      • Class Assignment
        • Write your name + Something in Rhino
        • Draw it using the Drawing Machine
        • Upload the picture of it on the class blog.
    3. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Continue to develop your own L-System
          2. Use Classes and Instances this week.
        2. Requirements
          1. Upload your codes, images, and UMLs)
          2. Initial Comments
          3. Each line has a single abstraction
          4. Each function does one purposeful thing
            1. Each function has its own comments.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(by Sunday 6 pm)
        1. Assignment Scheduler
          1. Please write down your drawing schedules here (google sheets)
        2. Something to Check before you start
          1. Check if the pen holder comes down easily
            1. Your pen may not touch a paper
          2. Move the pen holder at the center of a paper
            1. The center is the sweet spot
          3. Press “Set Home”  in EleksCAM 
            1. The machine does not know where the origin is
          4. If something goes wrong (if you hear some noise)
            1. Just turn the machine off
            2. by pressing the silver button on its controller
            3. To restart
              1. Turn off EleksCAM and turn it on
              2. Turn on the drawing machine
        3. By using the Drawing Machine in the lab,
          1. Draw one of your simple drawings in an A4 paper
          2. Upload the picture of your drawing
          3. Sign and write drawing date
        4. Instructions
          1. Basic File Workflow
            1. DXF > SVG > Machine Drawing (GCode)
            2. Rhino > Inkscape > EleksCAM
          2. In Rhino
            1. Place your drawings inside the red box.Select your drawings
              Export the selected drawings as a DXF file
              Select “2004 Lines” option when you export it
          3.  In INKSCAPE
            1. Open the file in INKSCAPE
              (Press “-” to zoom out your screen)
              Press FILE > DOCUMENT SETTINGS
              Change its unit as “mm”
              Change the Document size as
              width = 74, height = 52
              Select all drawings
              Scale down (x 0.26) your drawing inside the document boundary
              Press CTRL to scale down proportionally
              Save your drawings as a”Plain SVG” file
          4.  In EkeksCAM
            1. Open EleksCAM,
              Locate the pen at the center of a paper sheet
              Press CONTROL > SETHOME
              (The machine does not know where its origin is)
              Press PICKCARVE
              Select the SVG file
              Press Start
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. Write a short reflection paper after reading the previous week’s reading material.
          1. “A reflection paper is your chance to add your thoughts and analysis to what you have read and experienced.”
          2. “A reflection paper is meant to illustrate your understanding of the material and how it affects your ideas and possible practice in future.”
            1. Link to source
  8. Week 8 (Cancelled due to the Mid-Term Exam Week)

  9. Week 9  Having a holiday + CNC Drawing 2

    1. Prep
      1. Checking Assignments
      2. Thinking Assgn. Checking (if time available)
      3. Installations: BENBOX
        1. download the “BenBox.zip” (in the class google drive)
        2. unzip the BenBox
        3. by following the instruction images in the “Operation Instruction” folder
          1. install a BenBox software
      4. Good Grasshopper Tutorial
        1. http://www.grasshopper3d.com/page/tutorials-1
    2. Introduction
      • OOP – inheritance
      • Grasshopper
    3. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Continue to develop your own L-System
          2. Use Classes and Instances this week.
          3. Please use Grasshopper’s python editor throughout this week.
          4. Include inputs and outputs in a python editor of Grasshopper
          5. Design 5 variations every day by changing input parameters, such as iteration number and rule strings.
        2. Requirements
          1. Upload your Grasshopper codes, images, and UMLs
          2. Initial Comments
          3. Each line has a single abstraction
          4. Each function does one purposeful thing
            1. Each function has its own comments.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(by Sunday 6 pm)
        1. Assignment Scheduler
          1. Please write down your drawing schedules here (google sheets)
        2. EXTREMELY IMPORTANT

          1. WEAR A PROTECTION GLASS ALL THE TIME WHILE YOU ARE WORKING WITH THE LASER ENGRAVER MACHINE

          2. OTHER STUDENTS >> DO NOT GO BEHIND THE CURTAIN WHEN SOMEONE IS WORKING

        3. By using the Laser Engraving Machine in the lab,
          1. Draw one of your simple drawings in a distributed sketchbook.
            1. The dimensions are about 440 x 310 cm
          2. Upload the picture of your drawing
          3. Sign and write drawing date
        4. Instructions
          1. Basic File Workflow
            1. Just DXF is good enough
          2. In Rhino
            1. The dimensions of a sketchbook are 440 x 310mm
            2. draw a box similar to a sketchbook
            3. and place all your drawings inside it.
            4. export your drawings as a DXF file (with R12 lines arcs setting)
          3.  In BENBOX
            1. Driver Installation
              1. Run the ” Main board driver.exe” file and click “YES”  a couple of times
            2. Connect the laser machine and open BenBox for the first time
              1. you need to install a HEX file.
              2. click the flash icon
              3. open the LX.HEX file
            3. Setting
              1. Speed = 810
              2. Carve Mode = Scan by line
            4.  Running
              1. Open the file
              2. and Press the green triangle button
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. Write a short paper answering questions after reading the distributed reading – “The Shallows”
          1. “Why do we feel like we think while we actually are not thinking?” 
            1. Write the answer with specific examples.
          2. “How can we train ourselves so we can think deep?”
            1. Write specific training examples and scenarios.
          3. Please email to me your writing. Do not post it.
            1. Use a google doc
  10. Week 10  Parallel Thinking 1 (Game of Life) + CNC Drawing 3

    1. Prep
      1. We will publish a book of your projects!
      2. Thinking Assgn. Checking (if time available)
      3. Missing GH files > upload missing files by the end of today.
    2. Introduction
    3. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Develop your own Game of Life system-based graphic art every day.
          2. Use OOP
          3. Please just use Python Editor throughout this week.
          4. Post your python code and UMLs to the class folder.
        2. Requirements
          1. Upload your Python codes, images, and UMLs
          2. Initial Comments
          3. Each line has a single abstraction
          4. Each function does one purposeful thing
            1. Each function has its own comments.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(by Sunday 6 pm)
        1. Assignment Scheduler
          1. Please write down your drawing schedules here (google sheets)
        2. Please submit one beautiful drawing project by using a laser machine or a drawing machine.
        3. Pre-Process
          1. Use “JOIN” to combine fragmented curves into one
          2. Use “SELDUP” and “DELETE” to remove overlapped curves
          3. You can write a program that can delete any partially overlapped lines and curves.
        4. EXTREMELY IMPORTANT

          1. WEAR A PROTECTION GLASS ALL THE TIME WHILE YOU ARE WORKING WITH THE LASER ENGRAVER MACHINE

          2. OTHER STUDENTS >> DO NOT GO BEHIND THE CURTAIN WHEN SOMEONE IS WORKING

        5. By using the Laser Engraving Machine in the lab,
          1. Draw one of your simple drawings in a distributed sketchbook.
            1. The dimensions are about 440 x 310 cm
          2. Upload the picture of your drawing
          3. Sign and write drawing date
        6. Instructions
          1. In Rhino
            1. The dimensions of a sketchbook are 440 x 310mm
            2. draw a box similar to a sketchbook
            3. and place all your drawings inside it.
            4. export your drawings as a DXF file (with R12 lines arcs setting)
          2.  In BENBOX
            1. Setting
              1. Speed = 810 (please test a good speed for your drawings)
                1. for straight lines > may need higher speed than 810
                2. for curved lines > may need lower speed than 810
              2. Carve Mode = Scan by line
            2.  Running
              1. Open the file
              2. and Press the green triangle button
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. Write a short reflection paper after reading the distributed reading – “Rethink”
          1. Please email me your writing. Do not post it.
            1. Use a google doc
  11. Week 11  Parallel Thinking 2 (Flocking)

    1. Prep
      1. Thinking Assign. Checking (if time available)
      2. controlling density using Python program
        1. all = rs.AllObjects()
        2. for id in all:
          1. rand = rd.random()
          2. if rand>0.5:
            1. rs.HideObject(id)
      3. Start to upload final submission materials
        1. make a folder with your name
        2. Submit one-page description of your design concept and implementation process
        3. 10 best projects needed to be uploaded
        4. For each project, upload
          1. Python (+ Grasshopper code if you use it)
          2. UMLs  (nicely  drawn by hand)
          3. a High-resolution image
        5. By the end of the semester,
          1. submit machine-drawn drawing on paper
    2. Introduction
      • Flocking/Boids Algorithm
    3. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Develop your own Boids system-based graphic art every day.
          2. Use OOP
          3. Please just use Python Editor throughout this week.
          4. Post your python code and UMLs to the class folder.
        2. Requirements
          1. Upload your Python codes, images, and UMLs
          2. Initial Comments
          3. Each line has a single abstraction
          4. Each function does one purposeful thing
            1. Each function has its own comments.
        3.  Conventions
          1. Please write your python code and image file names as follows:
            1. for python codes: “YourName_Week03_CA01.txt” (change PYDE to TXT after saving the file)
            2. for image names: “YourName_Week03_CA01.jpg”
      2. Design Assignments(by Sunday 6 pm)
        1. Assignment Scheduler
          1. Please write down your drawing schedules here (google sheets)
        2. Please submit one beautiful drawing project by using a laser machine or a drawing machine.
        3. EXTREMELY IMPORTANT

          1. WEAR A PROTECTION GLASS ALL THE TIME WHILE YOU ARE WORKING WITH THE LASER ENGRAVER MACHINE

          2. OTHER STUDENTS >> DO NOT GO BEHIND THE CURTAIN WHEN SOMEONE IS WORKING

        4. By using the Laser Engraving Machine in the lab,
          1. Draw one of your simple drawings in a distributed sketchbook.
            1. The dimensions are about 440 x 310 cm
          2. Upload the picture of your drawing
          3. Sign and write drawing date
        5. Instructions
          1. In Rhino
            1. The dimensions of a sketchbook are 440 x 310mm
            2. draw a box similar to a sketchbook
            3. and place all your drawings inside it.
            4. export your drawings as a DXF file (with Default Setting)
          2.  In BENBOX
            1. Setting
              1. Speed = 810 (please test a good speed for your drawings)
                1. for straight lines > may need higher speed than 810
                2. for curved lines > may need lower speed than 810
              2. Carve Mode = Scan by line
            2.  Running
              1. Open the file
              2. and Press the green triangle button
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. Write a short reflection paper after reading the distributed reading – “Thinking Fast and Slow”
          1. Please email me your writing. Do not post it.
            1. Use a google doc
  12. Week 12  Two New CNC Machines are Ready!

    1. Workflow
      1. Rhino > DXF
        1. join your curves
      2. DXF2GCode > gnc
        1. (download this software: LINK )
        2. remove any comments with parenthesis
      3. Medium CNC Machine
        1. Grbl Visualizer
      4. Large CNC Machine
        1. Mach 3 CNC
    2. Medium CNC
      1. Set up
        1. paper
        2. pen
      2. Origin Setting Manually
        1. turn off power
        2. move x-y axis
        3. move z axis down by rotating a motor
      3. Prepare Software
        1. turn on power
        2. start Grbl Visualizer (download LINK)
        3. open connection (use com4 with 9800 baudrate)
        4. move z axis up
        5. open a file
        6. start CNCing
    3. Large CNC
      1. Set up
        1. paper
        2. pen
      2. Origin Setting Electrically
        1. power on
        2. start Mach 3 Mill
        3. connect a machine
        4. move x-y axis
        5. power off & move z axis
        6. power on
        7. reduce feed rate by 30%
      3. Prepare Software
        1. open a file
        2. start CNCing
    4. Assignments
      1. Computational Assignments: upload files and images every day to the class folder
        1. Daily assignments
          1. Develop your own graphic art every day.
          2. Post your python code and UMLs to the class folder.
      2. Design Assignments(by Sunday 6 pm)
        1. Assignment Scheduler
          1. Please write down your drawing schedules here (google sheets)
        2. Please submit one beautiful drawing project by using a CNC machine
      3. Thinking Assignments(Due by Sunday 6 pm)
        1. Just skip through this paper “No Silver Bullet
        2. then, select one paragraph that your instructor may also select to read
        3. Write
          1. the reason why you select the paragraph and a short reflection paper (in Korean)
        4. Please email me your writing. Do not post it.
          1. Use a google doc
      4. Next week prep:
        1. Please print your 10 drawings in A3 paper
  13. Week 13  Pattern Thinking (Design Patterns)

    1. Thinking Assignments(Due by Sunday 6 pm)
      1. Write a reflection paper after reading this paper “No Silver Bullet
  14. Week 14  Final Project Preparation 2 (individual consultation)

  15. Week 15  Final Review

    1. Please print your 10 drawings in A3 paper
    2. Bring total 7 machine-drawn art