Prepare for the next class#

These tasks are not always based on things that we have already done. Sometimes they are to have you start thinking about the topic that we are about to cover. Getting whatever you know about the topic fresh in your mind in advance of class will help what we do in class stick for you when we start.

The correct answer is not as important for these activities as it is to do them before class. We will build on these in class.

2023-01-24#

related notes

Activities:

  1. Read the syllabus section of the course website carefully and explore the whole course website

  2. Bring questions about the course to class

  3. Think about one thing you’ve learned really well (computing or not). Be prepared to discuss the following: How do you know that you know it? What was it llike to first learn it?

  4. Post an introduction to your classmates on our discussion forum

2023-01-26#

related notes

Activities:

  1. Find the glossary page for the course website. Preview the terms for the next class: shell, terminal, bash, git, GitHub

  2. Check your kwl repo before class and see if you have recieved feedback,reply or merge accordingly.

  3. Make sure you have a working environment, see the list in the syllabus. Use the discussions to ask for help

2023-01-31#

related notes

Activities:

  1. Make a list of questions you have about using the terminal

  2. Be prepared to compare and contrast bash, shell, terminal, and git.

  3. (optional) If you like to read about things before you do them, read about merge conflicts. If you prefer to see them first, come to class on Thursday and read this after.

2023-02-02#

related notes

Activities:

  1. Examine a large project you have done or by finding an open source project on GitHub. Answer the reflection questions in software.md in your kwl repo. (will be in notes)

  2. map out how you think about data moving through a small program and bring it with you to class (no need to submit)

## Software Reflection

1. link to public repo if applicable or title of your project
1. What types of files are there that are not code?
1. What different types of code files are in the project? Do they serve different goals?
1. Is it all in one language or are there multiple?
1. Try to figure out (remember) how the project works. What types of things, without running the code can you look at at a high level?

2023-02-07#

related notes

Activities:

  1. Read through the grading section and all of your feedback as it arrives.

  2. Bring git questions or scenarios you want to be able to solve to class on Thursday

  3. Update your .github/workflows/experiencereflection.yml file as follows: replace the two lines team-reviewers: | and instructors with reviewers: <ta-gh-name> where ta-gh-name is whichever TA is in your group. You can see your group on the organiation teams page named like “Spring 2023 Group X”. Make a PR and ask that TA for a review.

  4. Answer the following in a comment on your prepare issue. Tag @brownsarahm on the issue

# Plan for success

__Target Grade:__ (A,B,..)

## Plan to get there: 
- 24 experience badges 
- (other badges you plan)

<!-- If you plan any build badges,uncomment the line below and list some ideas, topics from the course website your are curios about or questions you have. Also think about what timeline you could realistically achieve them on.  -->
<!-- ## Builds -->

<!-- If you plan any explore badges, create a schedule and propose one topic for your first explore badge -->

2023-02-09#

related notes

Activities:

  1. Bring questions about git to class on Wednesday.

  2. Make sure that the gh CLI tool works by using it to create an issue called test on your kwl repo with gh issue create

  3. Read sections 1.1,1.2, and 1.3 of the pro git book this is mostly review at this point, but we are going to go into more of how git works next, so you need to make sure these concepts are all sorted out. Comment on your prepare issue if reading helped clarify confusion, made you more confused, or gave you new understanding. Either explain what you learned or ask a question you have. Tag @brownsarahm on the issue.

2023-02-14#

related notes

Activities:

  1. install jupyterbook on Mac or linux those instructions will work on your regular terminal, if you have python installed. On Windows those instructions will work in the Anaconda prompt or any other terminal that is set up with python. If these steps do not make sense see the recommendations in the syllabus for more instructions including videos of the Python install process in both Mac and Windows.

  2. If you like to read about things before trying them, skim the jupyterbook docs.

  3. Think about and be prepared to reply to questions in class about your past experiences with documentation, both using it and writing it.

2023-02-16#

related notes

Activities:

  1. Try exploring your a repo manually and bring more questions

  2. Make sure that you have submitted and gotten feedback on your plan for the course. (Feb 7 prepare for class)

2023-02-21#

related notes

Activities:

  1. In a gitunderstanding.md list 3-5 items from the following categories (a) things you have had trouble with in git in the past and how they relate to your new understanding (b) things that your understanding has changed based on today’s class © things about git you still have questions about

  2. Follow up on your progress issue and plan for the course

2023-02-23#

related notes

Activities:

  1. Start recording notes on how you use IDEs for the next couple of weeks using the template file in the course notes (will provide prompts and tips). We will come back to these notes in class later, but it is best to record over a time period instead of trying to remember at that time. Store your notes in your kwl repo in idethoughts.md on an ide_prep branch. This is prep for the week after spring break, it does not have to be in the Feb 28 Experience Badge.

  2. make sure that you have a test git repo that matches the notes. this is very important and if you do not have it you will not be able to follow along in class on Feb 28

# IDE Thoughts

## Actions Accomplished
<!-- list what things you do: run code/ edit code/ create new files/ etc; no need to comment on what the code you write does -->


## Features Used
<!-- list features of it that you use, like a file explorer, debugger, etc -->

2023-03-02#

related notes

Activities:

  1. Read about the Learn more about the SHA-1 collision attach

  2. Think about different ways you know to represent numbers.

2023-03-07#

related notes

Activities:

  1. Make sure you can run python code from bash and that you hve gh CLI installed. You will need to be able to run gh and python in the same terminal. This should happen for free on not-Windows or WSL. On Windows, check the GitBash settings.

2023-03-09#

related notes

Activities:

  1. install putty on windows

  2. spend 10 minutes after break before class, thinking about what you know about networking and how it works, what examples you have of it.

2023-03-21#

related notes

Activities:

  1. Review your notes on IDE use,make sure they are complete (from 2023-02-23 Prepare)

  2. Preview the Stack Overflow Developer Survey Technology section parts that are about tools.

2023-03-23#

related notes

Activities:

  1. Read about connection protocols in general and specifically https and ssh. Wikipedia is a good source to start from, use sources to veirfy anything you find confusing. Be sure you have the basic terminology down and bring questions to class. Plan to check off your questions as they are answered during class on Tuesdady and then submit others in your experience reflection.

2023-03-28#

related notes

Activities:

  1. See prep from 2023-03-23, no additional prep.

2023-04-04#

related notes

Activities:

  1. install this hardware simulator

  2. Create operators.md and make some notes about what you know about operators. What kinds of operators are you familiar with? Which have you seen in programming? math?

2023-03-30#

related notes

Activities:

2023-04-06#

related notes

Activities:

  1. In fractionalbinary.md use 8 bits to represent the following numbers by using 4 bits as usual (8,2,4,1) and the other 4 bits are 1/2, 1/4, 1/8, 1/16th:

  • 3.75

  • 7.5

  • 11.625

  • 5.1875

  1. Add to your file some notes about the limitations of representing non integer values this way. How much would using more bits help with, what limitations are not resolved by adding more bits.

2023-04-11#

related notes

Activities:

None, come as you are.

2023-04-13#

related notes

Activities:

  1. Read gates out of anything and watch the marble adder. Create gates.md and answer the questions below:

    1. What do all of the gates described have in common?
    1. How does the marble adder compare to the half adder and the full adder, which is it most like?
    
  2. Study the 8 bit ALU. Try it out and be prepared to answer questions about it in class. Some questions to guide your exploration: What can it do? Try to compare it to the adder that we have seen. What components does it have that we have not yet seen? How does it represent different operations?

  3. (optional, for 3 community badges) Add an additional workflow to your repo creates badge issues triggered by a workflow_dispatch and uses inputs of a date formatted like YYYY-MM-DD and boolean inputs for if review and/or practice should have issue created

2023-04-20#

related notes

Activities:

Review the prep from 2023-04-18, nothing new.

2023-04-25#

related notes

Activities:

  1. (optional, get a head start on the final review/practice badges) Bring 2 multiple choice questions about computer systems, machine representation, or building code to class.

  2. (optional, community badge opportunity) Try out the Pycharm extenstion created by one of your classmates as a build badge. You can download it by searching “gcc integration” in pycharm directly in the plugin marketplace or by following the instructions on the documentation website. If you succeed, comment on your prepare issue with which technique (pluging marketpalce or manual) you used to install it and tag Professor Brown. If it does not work, open an issue that describes what you did, what happened, and what you expected instead and link to that issue on your prepare issue and tag Professor Brown for the community badge. (write a long full review of the extension comparing it to similar available tools for an explore badge)

2023-04-27#

related notes

Activities:

(optional, community badge opportunity) Try out the Pycharm extenstion created by one of your classmates as a build badge. You can download it by searching “gcc integration” in pycharm directly in the plugin marketplace or by following the instructions on the documentation website. If you succeed, comment on your prepare issue with which technique (pluging marketpalce or manual) you used to install it and tag Professor Brown. If it does not work, open an issue that describes what you did, what happened, and what you expected instead and link to that issue on your prepare issue and tag Professor Brown for the community badge. (write a long full review of the extension comparing it to similar available tools for an explore badge)