Skip to content

rdwrome/261sp25

Repository files navigation

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. Based on this course. Because Berklee is an Apple institution, software applications are used with MacOS. This is an introductory survey course of Python, HTML, JavaScript, and SQL.

Weekly Topics

  • hello, world
  • git & shell
  • SQL
  • javascript - operators & bindings
  • javascript - control flow
  • javascript - functions
  • midterm presentations
  • html & css
  • html group project & intro to python
  • python - lists
  • python - libraries
  • (final project meetings if time allows)
  • python - webservers
  • intro to machine learning/artificial intelligence
  • final project presentations

Class Resources

Eloquent JavaScript, Third Edition Marijn Haverbeke, 2018

Think Python, Second Edition Allen B. Downey, 2015

Everyday Tools

Assignments and Grading

Description Grade
Attendance and Participation 30%
Homework 30%
Midterm 10%
Final Project 30%
Total 100%

ALL DUE DATES ARE IN UNDER THE "ASSIGNMENTS" SECTION IN CANVAS

Steps to submit assignments via GitHub+Canvas

  1. Make a subfolder in your GitHub repository (not the class respository!) named after the assignment (i.e. {yourusername}/{course}/{assignment}, etc.)
  2. Commit all parts of your assignment (i.e. code+documentation file) into that subfolder
  3. Submit the link to that folder in the appropriate Canvas assignment by the deadline

Documentation File outline

  • The documentation file (always in Markdown, saved 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, Stack OverFlow, language forums are the best places to go for help most of the time
      • do not submit paywalled links
      • if you submit YouTube links (which is discouraged), they must have TIME STAMPS
    • 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 file 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 or other large-language models under the following circumstances:
      • You document the ENTIRE INTERACTION with screenshots and include images of those screen shots with your documentation.
      • You write out in your own words your SPECIFIC understanding of what you learned from using chat-GPT in your documentation file.

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 EST.
    • Meetings will always take place in person at 1126 Boylston Room 208 (never zoom).
    • Walk-ins welcome, but preference is given to those who make appointments here.
    • If you are not available during my office hour, you are welcome to use Berklee Google Calendar (be signed into your own account and search for "r.d.w.rome") to look at my whole calendar and make an appointment that way. It is up-to-date; no need to email me. Just drop the appointment in my calendar.

Policies

Communication

  • This is an equitable learning environment.
    • Use inclusive language.
    • Problem-solve constructively with respectful language;
    • Accept constructive criticism gracefully.
    • 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.
    • Always try keep the needs of whole classroom community in mind.
  • 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.
  • If you'd like constructive criticism on music, I'm happy to give that in my office hour in real-time. I won't give feedback on recordings via email.
  • 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).
  • In an emergency, please call me (really).

Grading

  • Two assignment extensions may be granted more than 12 hours in advance, but will not necessarily be granted for large projects.
  • Assignment extensions are not implicit with absences: if you are missing class the date something is due, you must explicitly ask for an assignment extension more than 12 hours in advance.
  • You will be held to the Berklee Policy on Honesty in Academic Work (see Student Handbook).
  • Late assignments (without granted extensions) are not accepted.
  • If you have a question or comment about a grade, you must come ask it in person at my office hour.

Attendance

  • The lowest attendance grade will be dropped at the end of the semester.
  • 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 (50 %) 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).
  • If you need an accommodation for this course, please see Accessibility Resources as soon as possible.
  • If you are subject to discrimination, harassment, or sexual misconduct in the Berklee community, please do not hesitate to talk to the Equity Office.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors