En este repositorio voy a ir almacenando todos los apuntes y ejercicios que realice de la curricula para Computer Science de OSSU (Open Source Society University). Probablemente modifique y complemente el temario con aportes de Teach Yourself Computer Science + cursos, libros y artículos que sean de mi interés.
La intención de este repo es documentar mi proceso, almacenar información que sea relevante y trackear los avances. Este es un desafío grande pero intentaré hacerlo lo mejor posible 💪
Para más información sobre el temario: https://cs.ossu.dev/
Fecha de inicio: 05/07/2024
Important
Para no romper el código de conducta de los proveedores de cursos que forman parte de la currícula, los repositorios con los ejercicios de cada cursada los mantendré en privado siempre que me sea exigido. Los que pueda tener de forma pública obviamente los compartiré por aquí.
Note
Además de este tracker general, también llevo un registro diario de mis avances que se puede encontrar en la carpeta tracker/daily-tracker
. Adicionalmente escribo un artículo por mes contando mis experiencias que se puede encontrar en mi blog personal
(Matemáticas de secundario)
- Fecha de inicio: 08/07/2024
- Fecha de finalización: 20/07/2024
- Link lecciones: https://www.youtube.com/playlist?list=PL3F15A8958082DEDE
- Fecha de inicio: 22/07/2024
- Fecha de finalización:
- Link lecciones: https://www.youtube.com/playlist?list=PLDesaqWTN6ESsmwELdrzhcGiRhk5DjwLP
- Fecha de inicio:
- Fecha de finalización:
Note
(For students to try out CS and see if it's right for them)
Topics covered: simple programs
simple data structures
computation
imperative programming
basic data structures and algorithms
✅ CS50p: Introduction to Programming with Python
- Institución: Harvard
- Fecha de inicio: 05/07/2024
- Fecha de finalización: 27/12/2024
- Apuntes: [[cs50p-intro-cs-python]]
- Repositorio: Repositorio privado
💪 MIT - 6.100L - Introduction to Computer Science and Programming using Python
- Institución: MIT
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
(Corresponds roughly to the first three years of a computer science curriculum, taking classes that all majors would be required to take)
Note
Topics covered: functional programming
design for testing
program requirements
common design patterns
unit testing
object-oriented design
static typing
dynamic typing
ML-family languages (via Standard ML)
Lisp-family languages (via Racket)
Ruby
and more
- Institución: UBCx
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Programming Languages (Part A)
- Institución: University of Washington
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
- Institución: University of Washington
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
- Institución: University of Washington
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
- Institución: University of Alberta
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
- Institución: University of Alberta
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
- Institución: University of Alberta
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Topics covered:
discrete mathematics
mathematical proofs
basic statistics
O-notation
discrete probability
and more
- Institución: MIT Open Learning Library
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
- Institución: MIT Open Learning Library
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Calculus 1C: Coordinate Systems & Infinite Series
- Institución: MIT Open Learning Library
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Mathematics for Computer Science
- Institución: MIT Open Learning Library
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Topics covered:
terminals and shell scripting
vim
command line environments
version control
and more
The Missing Semester of Your CS Education
- Institución: MIT Open Learning Library
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Topics covered:
procedural programming
manual memory management
boolean algebra
gate logic
memory
computer architecture
assembly
machine language
virtual machines
high-level languages
compilers
operating systems
network protocols
and more
Build a Modern Computer from First Principles: From Nand to Tetris
- Institución: Hebrew University of Jerusalem
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Build a Modern Computer from First Principles: Nand to Tetris Part II
- Institución: Hebrew University of Jerusalem
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Operating Systems: Three Easy Pieces
- Institución: University of Wisconsin-Madison
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Computer Networking: a Top-Down Approach
- Institución: University of Massachusetts Amherst
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Topics covered:
divide and conquer
sorting and searching
randomized algorithms
graph search
shortest paths
data structures
greedy algorithms
minimum spanning trees
dynamic programming
NP-completeness
and more
Divide and Conquer, Sorting and Searching, and Randomized Algorithms
- Institución: Stanford University
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Graph Search, Shortest Paths, and Data Structures
- Institución: Stanford University
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming
- Institución: Stanford University
- Fecha inicio:
- Fecha finalización:
- Apuntes:
- Repositorio:
Shortest Paths Revisited, NP-Complete Problems and What To Do About Them
- Institución: Stanford University
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Topics covered
Confidentiality, Integrity, Availability
Secure Design
Defensive Programming
Threats and Attacks
Network Security
Cryptography
and more
- Institución: RITx
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
- Institución: UC Davis
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Identifying Security Vulnerabilities
- Institución: UC Davis
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Identifying Security Vulnerabilities in C/C++ Programming
- Institución: UC Davis
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Exploiting and Securing Vulnerabilities in Java Applications
- Institución: UC Davis
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Topics covered:
Agile methodology
REST
software specifications
refactoring
relational databases
transaction processing
data modeling
neural networks
supervised learning
unsupervised learning
OpenGL
ray tracing
and more
Databases: Modeling and Theory
- Institución: Stanford Online
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Databases: Relational Databases and SQL
- Institución: Stanford Online
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Databases: Semistructured Data
- Institución: Stanford Online
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
- Institución: Stanford Online
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
- Institución: UC San Diego X
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Introduction to Software Engineering
- Institución: IBM
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Topics covered:
Social Context
Analytical Tools
Professional Ethics
Intellectual Property
Privacy and Civil Liberties
and more
Ethics, Technology and Engineering
- Institución: Eindhoven University of Technology
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
Introduction to Intellectual Property
- Institución: University of Pennsylvania
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
- Institución: Northeastern University
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
(Corresponds roughly to the final year of a computer science curriculum, taking electives according to the student's interests)
Topics covered:
debugging theory and practice
goal-oriented programming
parallel computing
object-oriented analysis and design
UML
large-scale software architecture and design
and more
- Institución: EPFL
- Fecha de inicio:
- Fecha de finalización:
- Apuntes:
- Repositorio:
(Cursos y libros externos a la currícula que fui sumando porque me interesaban)
The Linux Command Line (William Shotts - 5ta edición)
- Fecha de inicio: 16/07/2024
- Fecha de finalización:
- Apuntes: [[the-linux-command-line]]
Think Python (Allen B. Downey - 2da edición)
- Fecha de inicio: 19/07/2024
- Fecha de finalización:
- Apuntes: [[think-python]]
Nombre | Detalles | Fecha de inicio (YYYY-MM-DD) |
Fecha de finalización (YYYY-MM-DD) |
---|---|---|---|
BookPal | A CLI program to help you organize your reading lists 📖📚 Made with love and Python. | 2025-01-02 | |
Nombre | Detalles | Fecha de inicio (YYYY-MM-DD) |
Fecha de finalización (YYYY-MM-DD) |
---|---|---|---|
(A project for students to validate, consolidate, and display their knowledge, to be evaluated by their peers worldwide)
https://github.com/ForrestKnight/open-source-cs
https://github.com/jwasham/coding-interview-university/blob/main/translations/README-es.md#el-plan-diario