Skip to content

Aliqazilbash/CS50-Harvard-Projects

Repository files navigation

CERTIFICATE

CS50 Certificate.pdf

CS50-Harvard-Projects

Welcome to my CS50-Harvard-Projects repository! This repository showcases my journey through Harvard University's CS50 course, where I explored various computer science topics and completed several exciting projects.

Subjects Covered

Throughout the CS50 course, I delved into a wide range of computer science subjects, including:

  • Week 0: Scratch - Introduction to programming concepts using MIT's Scratch language.

  • Week 1: C Programming - Fundamentals of C programming, covering data types, control structures, and algorithms.

  • Week 2: Data Structures - Exploring arrays, memory management, and sorting algorithms.

  • Week 3: Algorithms - Further study of sorting algorithms and introduction to searching algorithms.

  • Week 4: Memory Management - Understanding memory allocation, pointers, and dynamic data structures.

  • Week 5: Data Structures Continued - Implementation and usage of data structures like linked lists, stacks, and queues.

  • Week 6: Python - Transitioning to Python, covering syntax, data types, and object-oriented programming.

  • Week 7: SQL Databases - Database management and SQL queries.

  • Week 8: Web Development (HTML, CSS, JavaScript) - Introduction to web development, including front-end technologies.

  • Week 9: Web Applications with Flask - Building web applications using the Flask framework in Python.

  • Week 10: Ethics in Computer Science - Exploring ethical considerations in technology.

Notable Projects

Here are some of the exciting projects I completed during the CS50 course:

  1. Space Odyssey (Week 0) - An interactive space-themed game created using Scratch, where you navigate a spaceship through asteroid fields.

  2. Cryptography Suite (Week 1) - Developed a command-line program in C to encrypt and decrypt messages using various cryptographic algorithms.

  3. Dynamic Memory Allocator (Week 4) - Implemented a custom dynamic memory allocator in C, providing memory management features similar to malloc and free functions.

  4. Web Portfolio (Week 8) - Designed and developed a personal web portfolio using HTML, CSS, and JavaScript to showcase my projects and skills.

  5. Flask Blog (Week 9) - Created a simple website to manage stock portfolios using the Flask web framework, allowing users to "buy" and "sell" the stocks.

  6. Ethical Tech Report (Week 11) - Wrote a comprehensive report discussing ethical issues related to emerging technologies like AI and surveillance.

Feel free to explore this repository to find more details about each project. If you have any questions or feedback, please don't hesitate to reach out.

Happy coding!