self-engineering

[[toc]]

Introduction Self-Engineering Module 1

What is Metacognition?

55 minute module

Instructional Objectives

  1. Students will define the concept of metacognition and relate it to their journey in software engineering.
  2. Students will understand metacognitive thinking related to self-engineering.
  3. Students will apply metacognitive thinking to problem solving using LAUNCHr.

Opener

You are a human being. Among all the creatures on Earth, what are the superpowers of a human being? Some have said it is long-distance running. Others may say that it is opposable thumbs. But ultimately, your brain is your superpower. Using your brain is a unique ability as a human being - other creatures cannot achieve and it gives us the ability to overcome our past. With our brain, we can self-reflect, which is our superpower.

Metacognition is our superpower, as it gives us our ability to self-reflect and be self-aware.

Video 1

What is Metacognition? (2 min)

Discuss

Describe Metacognition in your own words.

(5 min)

What does this picture show?

Metacognition is often described as “thinking about your own thinking.” Consider the word: “META.” It is the awareness which we already defined as our superpower - our self-reflection on thoughts, plans, and progress toward a task or goal. Metacognition also includes asking ourselves questions for the purpose of organizing our thoughts, emotions, and/or actions.

Self-Questioning

Visualization is important to observe our thoughts, actions, and behaviors from the outside. Because humans are not good at being objective and accurate in describing our behaviors and thoughts, outward monitoring is required to access metacognitive awareness. The graphic below demonstrates self-questioning as a form of self-monitoring, which is an essential piece of metacognitive thinking.

Instructions: (5 min) Look at the visual below. Take notice of the “meta” questions shown in the word bubbles. For a moment, pose a few of these questions to yourself in regard to what you are learning in this metacognition lesson and orientation, including what you know and do not know.

Reflection and Visualization

Instructions: (10 min) Stop and reflect upon your current start as a Kenzie Software Engineering student. Jot down 1-2 sentences in response to each of the following questions.

1. What do you already know about software engineering?

Be thoughtful. You may not know a lot of technical detail, but even as someone who has used a lot of software, and with your research on the field before joining Kenzie.

2. What “self” skills do you feel you need to develop (areas for growth) to be successful in a software engineering program?

Be as specific as you reasonably can right now.

3. What are your biggest goals for a career in software engineering?

Where would you like to be in 10-15 years in the tech field?

4. What does this life ahead look like?

Visualize yourself getting there and write or draw from that view.

Metacognition is Self-Engineering

Here we introduce the term, “Executive Functioning” (EF). EF is the ability to organize your cognitive processes toward a task or challenge. This includes planning ahead, prioritizing tasks, stopping and starting activities, shifting from one activity to another, and monitoring your thoughts and behavior.

What does “self-engineering” mean to you? (3 min)

Metacognitive Skills for Problem-Solving

(12 min) As a software engineer, you will problem-solve on a daily basis. You will need to adopt a working method to understand each challenge and respond with effective steps to solve the challenge. As you practice these steps in the problem-solving process, they will soon become second-nature and almost invisible.

We use metacognitive thinking to problem solve. Below is a summary of the steps that are included in most problem-solving methods, and work especially well in solving challenges when building software.

1. Understand the problem - ask questions of key persons to grasp the request or challenge.

2. Go learn more - collect, read and absorb new information in relation to the problem.

3. Start - create a first try at a solution; make an attempt to solve the issue.

4. Monitor your progress - check to be sure that you are on the right track; check your assumptions and check for the appearance of disorganized thinking in the process.

5. Iterate - use feedback from this first attempt; if the first strategy did not work, try again but with new ideas and revised steps.

Video 2

5 Steps to Problem Solving - Critical Thinking (5 min)

Launch and Release (LAUNCHr)

(7 min) This is a specific problem-solving method that also demonstrates the metacognitive steps.

Adapted from (Spencer)

L: Look, Listen, and Learn

The first step is about gaining awareness and the vehicle is observation. Here you will develop an understanding for the problem, a sense of wonder or empathy for the end-user, audience, or stakeholders. Figure out who has a stake in solving this issue.

A: Ask Tons of Questions

Use your curiosity and ask as many, and as diverse questions as you can to grasp the need for the project, end-goal, and a great starting point for your research of solutions. View the problem from many valid perspectives.

U: Understand the Process or Problem

Begin an authentic research experience. Read material (documents, case study articles, etc.), watch videos, and/or conduct interviews with individuals who have solved similar problems.

N: Navigate Ideas

Apply new knowledge from your research to design possible solutions. Brainstorm, list, analyze, and combine ideas to generate a concept for how you will create your solution. You may whiteboard, doodle on napkins, wireframe, and/or use other experiments to translate concepts into something more visual, tangible, or otherwise meaningful.

C: Create a Prototype or Minimum-Viable Product

Design a prototype or MVP that you feel will resolve the task. Begin the action steps to directly engineer a digital work or a tangible product.

H: Highlight and Fix

Take note of what’s working and fix what’s failing; check your assumptions about what “should” or “should not” be; and, revise! The revisions process is an series of iterations (“let’s try again!”), where every “flaw” is a necessary lesson and brings you closer to success.

R: Release.

You have to commit. Launch your solution to an audience when at a shareable state, to obtain feedback, learn even more about the challenge and refine the product.

Each step is an opportunity for learning.

Metacognitive Questioning Cheatsheet

(2 min) Here is a quick reference for questioning when working through the LAUNCHr problem-solving steps. These questions are metacognitive in nature and can be used in gaining understanding for what you know and do not know related to a problem you are attempting to solve.