Giter VIP home page Giter VIP logo

intro-prog's Introduction

This repository contains notes for the Introduction to Programming class at UPY. The content is heavily based on the CS50 course by David Malan at Stanford.

Requirements

There are some requirements to be able to follow the notes and do the problem sets.

  1. You need Linux, so please either install a distribution on your machine or setup a virtual machine from within Windows. Instructions to setup a virtual machine can be found here: https://blog.storagecraft.com/the-dead-simple-guide-to-installing-a-linux-virtual-machine-on-windows/

    I recommend Xubuntu, as it is able to run with fewer resources than other distributions. Download it at https://xubuntu.org.

    Another alternative is the Windows Subsystem for Linux (WSL), which give you access to a Linux terminal in Windows. To install the WSL follow this instructions: https://docs.microsoft.com/en-us/windows/wsl/install-win10. Remember that if using WSL you need to change to your Windows working directory every time you start up WSL.

  2. You need to install the compiler and git to upload the solutions to the problem sets to GitHub. Run the following code in a terminal of your Linux OS:
    sudo apt update
    sudo apt install gcc git
        
  3. You’ll also need the CS50 library. If on Xubuntu, install it by running the following in the terminal.
    sudo apt install curl
    curl -s https://packagecloud.io/install/repositories/cs50/repo/script.deb.sh | sudo bash
    sudo apt-get install libcs50
        

    If not on Xubuntu, follow the instructions at https://github.com/cs50/libcs50.

  4. You need a GitHub account. If you don’t have one, create one at https://www.github.com.

Problem Sets

This are the GitHub Classroom links for the problem sets, you need to follow them only once. After you have accepted the assignment, you should have a private copy of the assignment repository for you to work it.

Resources

  • We will use the command line heavily throughout the course, a list of common used command can be found at: resources/01-command-line.org
  • To submit the solutions to the problem sets, you are required to push your code onto GitHub. To learn how to work with GitHub repositories, please follow the tutorial at:

    In summary, every time you want to submit your work, you’ll need to perform two actions on the command line from within the folder’s repository:

    git commit -a -m "<useful message here>"
    git push
        
  • The CS50 C reference can be found here: https://reference.cs50.net/
  • The CS50 C style guide can be found here: https://cs50.readthedocs.io/style/c/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.