rdwrome / 261sp24

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LMCS-261: Introduction to Computer Programming

Welcome, Programmers!

Description

In this course, students learn the fundamentals of computer programing that serve as a foundation for developing software applications and further exploration of programming languages. Instead of focusing on a single language or platform, this course prepares students to understand computer code in general and to understand the role computers can play in solving real-world and creative problems. By recognizing the concepts that are universal in computer programming, students are better prepared to understand any codes they come across, providing them with advanced problem-solving skills that are important when adapting to different languages based on specific situations. The logical thinking and technical skills students learn in this course can be used to develop a wide range of practical applications on the web, and in game, software, and product development. Because Berklee is an Apple institution, software applications are used with MacOS. This is an introductory survey course of Python, HTML, JavaScript, and SQL.

Class Resources

Think Python, Second Edition Allen B. Downey, 2015

Eloquent JavaScript, Third Edition Marijn Haverbeke, 2018

Everyday Tools

Assignments and Grading

Description Grade
Attendance and Participation 30%
Homework (9 assignments) 30%
Midterm 10%
Final Project 30%
Total 100%

Steps to submit via GitHub+Canvas

  1. Make a subfolder in your GitHub repository named after the assignment (i.e. {yourusername}/itp/scratch, etc.)
  2. Commit all parts of your assignment (i.e. code+documentation) into that folder
  3. Submit the link for that folder in Canvas

Documentation outline

  • The documentation (again, always in Markdown as a .md file) must have the following:
    • what you did
    • how you did it
    • the problems you faced (ABDYD: always be documenting your debugging!)
    • how you overcame them
    • what code you used from others/elsewhere
      • where to find that code (specific links!!!)
      • Other folks' GitHub public repositories and Stack OverFlow are the best places to go for help most of the time
    • Correctly document all your debugging, especially if you code ultimately does not run as intended. I will take points off for code that does not run correctly, but will still give partial credit if it is well-documented.
    • For the purposes of this class, your documentation also helps you prepare to talk about your code in class with your colleagues.
    • In general (unless I specify otherwise), it is permissible to use chat-GPT under the following circumstances:
      • You put your prompt in your Documentation File.
      • You include a screenshot of your interaction with chat-GPT in your Documentation File.
      • You write out in your own words your understanding of what you learned from using chat-GPT.

Tutor Info

  • TBD

Instructor Info

Rachel Devorah Wood Rome, Ph.D.

  • pronouns & honorific: she/her/hers & dr.or prof.
  • Email: rrome@berklee.edu
  • Phone: 336.355.1993
  • Office Hours:
    • Tuesdays 11am-1pm.
    • Meetings will take in person at 1126 Boylston Room 208.
    • Walk-ins welcome, but preference is given to those who make appointments here.

Policies

Communication

  • This is an equitable learning environment.
    • Problem-solve constructively with respectful language;
    • Be patient with yourselves and others (especially when mistakes are made);
    • Never posture/pose/attitudinize;
    • Always speak up and admit when you do not understand something.
  • When you email me, please let me know what class/section you're in.
  • The best way to communicate with me outside of class is always to make an appointment with me in my office hour.
  • I don't answer emails that can be answered with a one-step Google search (i.e. “How do I change the timezone on my Google Calendar?”).
  • I don't answer emails when the answer can be found in the syllabus (here).
  • I don't answer emails evenings or weekends.
  • In an emergency, please call me.

Grading

  • The lowest homework grade will be dropped.
  • Assignment extensions are granted more than 12 hours in advance.
  • You will be held to the Berklee Policy on Honesty in Academic Work (see Student Handbook).
  • Late assignments are not accepted.
  • If you have a question about a grade, you must come ask it in person at my office hour.

Attendance

  • The lowest attendance grade will be dropped.
  • Remote attendance is not permitted.
  • You must attend class with the computer you're using for class projects (no phones, no tablets, no borrowed laptops). If you do not, you'll receive a partial attendance grade for the week.
  • If you are more than 5 minutes late for class or leave more than 5 minutes early, you'll receive a partial attendance grade for the week.
  • If you miss more than 30 minutes of class, you'll be marked absent.
  • If you are disruptive in the class (talking, sleeping, using your laptop or phone beyond classwork) you'll receive one written warning and then receive a partial attendance grade if/when the disruptive behavior continues.
  • When you are absent you are responsible for the materials of the class you missed. I will not catch you up over email, but you may come ask me questions during my office hour after you have reviewed the materials.
  • Attendance the week of Finals is mandatory (see Student Handbook).

About


Languages

Language:Python 65.8%Language:HTML 26.8%Language:JavaScript 7.3%