Introduction to Computer Science I Course

Introduction to Computer Science I

David J. Malan
Harvard

Course Description

Introduction to Computer Science I is a first course in computer science at Harvard College for concentrators and non-concentrators alike. More than just teach you how to program, this course teaches you how to think more methodically and how to solve problems more effectively. As such, its lessons are applicable well beyond the boundaries of computer science itself. That the course does teach you how to program, though, is perhaps its most empowering return. With this skill comes the ability to solve real-world problems in ways and at speeds beyond the abilities of most humans.

Lectures

  1. How Computers Work, Binary Lecture favorites
  2. Introduction to Programming and Scratch Lecture favorites
  3. Threads and Programs with Multiple Scripts Lecture favorites
  4. Binary Numbers, Programming Languages, Working in Linux, and Programming in C Lecture favorites
  5. Secure File Transfer, Variable Types, and Arithmetic Operators Lecture favorites
  6. Standard Input Functions, Boolean Expressions, and Loops Lecture favorites
  7. Cryptography, Bugs, Integer Casting, and Functions Lecture favorites
  8. Local and Global Variables, the Stack, Return Values, and Arrays Lecture favorites
  9. Strings as Arrays, Command-Line Arguments, and more Cryptography Lecture favorites
  10. Run Times and Algorithms, Recursion Lecture favorites
  11. Sorting: Bubble Sort, Selection Sort, and Merge Sort Lecture favorites
  12. Hardware, Processors, and Implications for Software Lecture favorites
  13. Greedy Algorithms, Software Design and Debugging Lecture favorites
  14. Pointers Lecture favorites
  15. Pointers and Arrays, Dynamic Memory Allocation Lecture favorites
  16. Pointer Arithmetic, Structures, File I/O Lecture favorites
  17. Linked Lists Lecture favorites
  18. Inserting and Deleting Elements in Linked Lists, Doubly-Linked Lists Lecture favorites
  19. Hash Tables, Dealing with Collisions Lecture favorites
  20. Pointers to Pointers, Binary Search Tree, Tries, Heaps Lecture favorites
  21. Heapsort, Jeopardy! Lecture favorites
  22. Huffman Coding Theory Lecture favorites
  23. Bitwise Operators, Underneath the Hood - From Code to Executable File Lecture favorites
  24. Dangerous Functions, Secure Code Lecture favorites
  25. The Internet and Webpages - HTTP and XHTML Lecture favorites
  26. Introduction to PHP Lecture favorites
  27. User Input, Setting up a Login Page, SQL Lecture favorites
  28. Threats, Part 1 Lecture favorites
  29. Threats, Part 2 Lecture favorites
  30. Introduction to LISP Lecture favorites
  31. Brief Introduction to System Programming and Machine Organization Lecture favorites
  32. Conclusions Lecture favorites
Leave Feedback