A good worker is known by their tools. – proverb quoted by F.P. Brooks, The Mythical Man-Month, 1975
  1. Software development process

    1. What is a life-cycle model?
    2. What are the five basic phases of the waterfall model and what general tasks are done in each one?
    3. Which of the software development models listed in the article best describes your personal development habits? Could it be the “Code and fix” model?!
  2. Project Management Tools

    1. Trello

      1. Review this background information on Trello.
        • What is KanBan and how does it relate to Trello?
        • Is Trello tailored for software development?
      2. Create an account for yourself on Trello and familiarize yourself with its basic features. Please create your account before Friday so that your team can build its project management board during the lab period. For a more detailed tutorial, see Getting Started with Trello.
    2. Clockify

      1. Familiarize yourself with the basic features of Clockify by working through this tutorial on Trello Time Tracking Integration.
        • Review the first video, entitled “How to track time in Trello”.
        • Step 1 — Create a Clockify account for yourself.
        • Step 2 — Install the Clockify browser extension.
        • Steps 3–5 — You can do the other exercises as time allows; your team will start this work in the lab.
        For more details, see Time Tracking Tutorials.
    3. Slack

      1. Read this Slack features page.
        • Compare and contrast Slack with Trello and traditional email.

      You don’t need to create a separate Slack account. Wait until this lab in which your team will create a new Slack workspace for your project.

  3. Technology Stack

    1. React Native Introduction — Work through “The Basics” using the in-line Snack examples. Be able to explain and/or implement:

      1. The distinction between:
        1. React vs. React Native.
        2. Function vs. Class components (we’ll be using the former).
        3. Core vs. Native components (we’ll generally be using the former).
      2. React:
        1. Components.
        2. JSX vs. HTML.
        3. Props vs. State.
        4. Hooks.
      3. The View; Text; ScrollView; FlatList; TextInput; Button, and TouchableOpacity components.

      You can find more information on React, see Learn React > Quick Start, particularly the “Thinking in React” section.