{"id":15660420,"url":"https://github.com/avivace/compsci","last_synced_at":"2025-08-08T17:45:50.038Z","repository":{"id":106677989,"uuid":"89068951","full_name":"avivace/compsci","owner":"avivace","description":"Lecture notes, projects, and more resources on the courses I attended for my Bachelor's and Master's degrees in Computer Science","archived":false,"fork":false,"pushed_at":"2022-01-25T14:57:29.000Z","size":7693,"stargazers_count":22,"open_issues_count":0,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-30T23:41:12.425Z","etag":null,"topics":["computer-science","lecture-material","lecture-notes","notes"],"latest_commit_sha":null,"homepage":"https://avivace.github.io/compsci/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/avivace.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-22T12:44:52.000Z","updated_at":"2025-01-23T15:11:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"b8a8b804-58e0-4805-9020-f3ce1d8aedee","html_url":"https://github.com/avivace/compsci","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avivace%2Fcompsci","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avivace%2Fcompsci/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avivace%2Fcompsci/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avivace%2Fcompsci/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avivace","download_url":"https://codeload.github.com/avivace/compsci/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252576929,"owners_count":21770720,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["computer-science","lecture-material","lecture-notes","notes"],"created_at":"2024-10-03T13:21:39.110Z","updated_at":"2025-05-05T20:55:47.306Z","avatar_url":"https://github.com/avivace.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# compsci\n\n\u003e Lecture notes, projects and various resources on the courses I attended at *Università degli Studi di Milano Bicocca* for my Bachelor's and Master's degrees in *Computer Science*.\n\nYou're welcome to contribute and send feeback opening Issues or proposing modifications with Pull Requests.\n\n### Contents\n\n- [General resources](#general-resources)\n- [Master's](#masters)\n    + [Probabilistic Models for decision making](#probabilistic-models-for-decision-making)\n    + [Data Analytics](#data-analytics)\n    + [Complex Systems](#complex-systems)\n    + [Cloud Computing](#cloud-computing)\n    + [Data and Text Mining](#data-and-text-mining)\n    + [Software Design Lab](#software-design-lab)\n    + [Theory of Computation](#theory-of-computation)\n    + [Concurrent Models](#concurrent-models)\n    + [Data Technology and Machine Learning](#data-technology-and-machine-learning)\n    + [Informatics for industrial applications (Digital systems)](#informatics-for-industrial-applications--digital-systems-)\n    + [Methods of Scientific Computing](#methods-of-scientific-computing)\n- [Bachelor's](#bachelors)\n    + [Internship/Thesis](#internship-thesis)\n    + [Operations Research](#operations-research)\n    + [Information Security](#information-security)\n    + [Databases](#databases)\n    + [Bioinformatics](#bioinformatics)\n    + [Operative Systems](#operative-systems)\n    + [Programming Paradigms](#programming-paradigms)\n    + [Embedded Systems](#embedded-systems)\n  * [Building](#building)\n\n## General resources\n\nMaster thesis guidelines:\n\n- [Technische Universität Chemnitz](https://www.tu-chemnitz.de/informatik/ce/files/Guidelines-Master-Thesis.pdf)\n- [Università della Svizzera Italiana](https://content.usi.ch/sites/default/files/storage/attachments/inf/inf-thesis-guidelines.pdf)\n\nMore courses notes:\n\n- [C. Baldi](https://github.com/crisbal/Appunti-Unimib) (Bachelor's)\n\nSome theses I appreciated and used as examples for the graduating students I advised:\n\n- [M. Rota - *Rilevamento di elementi testuali in immagini digitali*](https://github.com/dubvulture/thesis/blob/master/thesis.pdf) - Fully convutional networks. Advisors: R. Schettini, M.Buzzelli.\n- [L. Soligo - *Generazione di reti Bayesiane\na partire da ontologie*](https://gitlab.com/LolloneS/Tesi-Triennale) - Advisors: F. Stella, G. Sottocornola.\n- [R. Pozzi - *Aggiornamento e ripristino delle funzionalità in sistemi Linux Embedded*](https://gitlab.com/rpo254/texis/blob/master/Tesi.pdf) - Advisors: L. Mariani, A. Vivace.\n\n## Master's\n\n2018-2020\n\n#### Thesis\n\n- [*Modernising the CERN CMS Trigger Rates Monitoring software*](https://github.com/avivace/master-thesis)\n\n#### Probabilistic Models for decision making\n\n- Course project: [kalman2d](https://avivace.github.io/kalman/) - Interactive 2D simulation of the *Kalman Filter* (LQE) in use to reduce (statistical) input noise.\n\n#### Data Analytics\n\n- Course project: [Amazon Reviews Analytics](https://github.com/avivace/reviews-sentiment) - Data exploration, Analytics, Sentiment Analysis, Topic Analysis (LDA) and a web demo exposing the ML trained models.\n- [Notes, definitions and solved questions](masters/data-analytics/notes.md)\n- Unbalaced data: [Survey of resampling techniques for improving classification performance in unbalanced datasets](https://arxiv.org/abs/1608.06048)\n- Community Detection approaches: [Web Structure Mining: Community Detection and Evaluation](https://www.irit.fr/~Yoann.Pitarch/Docs/M2Stats/WebMining/wsm_communities.pdf)\n- Spectral Clustering:\n    + [On Spectral Clustering: ANalysis and an algorithm - Ng, Jordan, WWeiss](http://ai.stanford.edu/~ang/papers/nips01-spectral.pdf)\n    + [Spectral clustering - The intuition and math behind how it works!](https://towardsdatascience.com/spectral-clustering-82d3cff3d3b7)\n    + [Spectral Clustering: A quick overview](https://calculatedcontent.com/2012/10/09/spectral-clustering/)\n    + (Video) [Spectral Clustering](https://www.youtube.com/watch?v=zkgm0i77jQ8)\n    + (Video) [Spectral Clustering Algorithm](https://www.youtube.com/watch?v=P-LEH-AFovE)\n\n#### Complex Systems\n\n- Course project: [Physarum](https://github.com/avivace/Physarum) - Final course project. Physarum polycephalum slime mould computing simulations.\n\n#### Cloud Computing\n\n- [Cloud Computing and Distributed Systems](https://github.com/Cinofix/Afternotes) - Afternotes by Antonio E. Cinà from the course at University Ca' Foscari of Venice, master in Computer Science - Data Management and Analytics.\n- [Cambridge - Concurrent and Distributed Systems](https://www.cl.cam.ac.uk/teaching/2021/ConcDisSys/materials.html)\n\n#### Data and Text Mining\n\n- Course Project: [Cervical Cancer](https://github.com/avivace/cervical-cancer) -  Exploratory study on Cervical Cancer: verifying known causal relations and assessing risk factors from women medical history datasets. \n\n#### Software Design Lab\n\n- Course project: [Smart Home Automation](https://github.com/avivace/sha) - A Rasberry Pi integrated domotic solution with MQTT supporting sensors, actuators and a thermostat. Controllable from a fancy web application, smart speakers or a basic SMS interface. Documentation (Software Requirements Specification, Software Architecture, Testing, Deploy and Implementation) and a software implementation in Connexion (OpenAPI 3) and VueJS.\n\n\n#### Theory of Computation\n\n- [Notes](https://github.com/avivace/compsci/blob/master/masters/computation-theory/notes.pdf)\n\n#### Concurrent Models\n\n- [Axiomatic semantics solved exercises](masters/concurrent-models) (Hoare triples)\n- [Paolo Mancarella (Università degli studi di Pisa) - *Note di semantica assiomatica*](http://pages.di.unipi.it/corradini/Didattica/LPP-13/Logica%20di%20Hoare.pdf)\n- [Luca Aceto - Reactive Systems: Modelling, Specification and Verification](http://www.cs.ioc.ee/yik/schools/win2007/ingolfsdottir/sv-book-part1.pdf)\n- [Linear Temporal Logic examples](http://www.dis.uniroma1.it/liberato/ar/ltl/ltl.html)\n\n#### Data Technology and Machine Learning\n\n- Course project: [Basket Shots](https://github.com/avivace/basket-shots) - Predicting Basket Shots outcomes using Suppor Vector Machines ([documentation](https://github.com/avivace/basket-shots/raw/master/docs/index.pdf)).\n- Course project: [pokemon-fights](https://github.com/avivace/pokemon-fights) - Predicting Pokèmon fights outcomes with decision trees.\n- Notes: [Introduction to non-centralized DBMSs](https://github.com/avivace/compsci/blob/master/masters/data-technology/2.pdf), [Data Quality dimensions](https://github.com/avivace/compsci/blob/master/masters/data-technology/dataquality.pdf).\n\n\n#### Informatics for industrial applications (Digital systems)\n\n- Course project: [VHDLtrafficlights](https://github.com/avivace/VHDLtrafficlights) - Implement a semaphore with a Xilinx FPGA.\n- [Elementi di Programmazione Logica](https://elearning.unimib.it/pluginfile.php/477370/mod_resource/content/2/DispenseInformaticaIndustriale.pdf)\n\n\n#### Methods of Scientific Computing\n\nFinal course projects:\n\n- [MSC1-SparseMatrix](https://github.com/avivace/mcs1-sparsematrix) - Comparing open source and propetary solvers for sparse matrices.\n- [MSC2-DCT](https://github.com/avivace/mcs2-dct) - Comparing naïve and scipy implementations of *Discrete Cosine Transform* 2 (and its inverse) and exposing the scipy implementation on a web appplication allowing to apply it on user provided images (BMP format).\n\n\n## Bachelor's\n\n2014-2017\n\n#### Internship/Thesis\n\n- [DNA Recombination](https://github.com/avivace/dna-recombination).  Approaching a Computational Biology problem with integer linear programming tools.\n\n#### Operations Research\n\n- [Soluzioni domande esami scritti](https://github.com/avivace/compsci/blob/master/bachelors/operative-research/risposte.pdf)\n\n#### Information Security\n\n- [Applicazioni](https://github.com/avivace/compsci/blob/master/bachelors/sicurezza/1applicazioni.pdf)\n- [Crittografia](https://github.com/avivace/compsci/blob/master/bachelors/sicurezza/2crittografia.pdf)\n- [Sistemi Operativi](https://github.com/avivace/compsci/blob/master/bachelors/sicurezza/3sistemi_operativi.pdf)\n- [Reti](https://github.com/avivace/compsci/blob/master/bachelors/sicurezza/4reti.pdf)\n\n#### Databases\n\n- [Relational algebra exercises](https://github.com/avivace/compsci/blob/master/bachelors/databases/relational_algebra.md)\n- [Logic programming](https://github.com/avivace/compsci/raw/master/bachelors/databases/teoria_progLogica.pdf)\n- [Relational algebra](https://github.com/avivace/compsci/blob/master/bachelors/databases/teoria_AlgebraRelazionale.pdf)\n- [SQL](https://github.com/avivace/compsci/blob/master/bachelors/databases/teoria_SQL.pdf)\n\n#### Bioinformatics\n\n- Theory: [Pattern Matching, Suffix Trees and Alignment](https://github.com/avivace/compsci/raw/master/bachelors/bioinformatics/bio.pdf)\n- Final project: [scripts](https://github.com/avivace/bio-p), [final PR](https://github.com/avivace/rgfa). Add a method to compare sequence graphs to the RGFA library (Ruby).\n\n#### Operative Systems\n\n- [Process Synchronization, deadlocks](https://avivace.com/assets/OS.pdf)\n\n#### Programming Paradigms\n\n- Theory: [Functional Programming and Lisp](https://github.com/avivace/compsci/raw/master/bachelors/programming-paradigms/FP_Lisp.pdf)\n- [Final project](https://github.com/avivace/mvpoli). Two libraries (Prolog and Common Lisp) to manipulate multivariate polynomials. Available predicates allows parsing, sorting, operations(sum, product), evaluating and printing polynomials.\n\n#### Embedded Systems\n\n- [Theory](https://github.com/avivace/compsci/raw/master/bachelors/embedded-systems/teoria.pdf)\n- [Final Project](https://github.com/avivace/EmbeddedSystems-8051). Implement in C, on a Silicon Labs C8051F020 board (and an additional board driven via SMBus):\n    + continuos detection of the inclination and the temperature, \n    + continuos display of the value on the LCD display, \n    + LCD controls (turn on, off, backlight intensity) with an hardware button.\n\n    Using interrupts and PWM techniques.\n\n### Building\n\nMarkdown files are compiled to PDF using _pandoc_.\n\n```bash\npandoc $file_base_name.md -o $file_base_name.pdf template.tex\n```\n\nThe LaTeX template used is hosted [here](https://github.com/avivace/dotfiles).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favivace%2Fcompsci","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favivace%2Fcompsci","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favivace%2Fcompsci/lists"}