This is a compilation of notes and resources covering essential computer science concepts needed by software Engineers/developers of all experience levels.
During my work as Software Engineer Consultant I've worked on a variety of projects across diverse industries, including electric cars, agriculture, passanger safety and comfort.
I thought it'd be helpful to create a sort of Whole Computer Science Catalog to gather all resources in one place. I hope you find it helpful and feel free to contribute.
- Access the notebook anywhere, online or offline.
- Use it as a knowledge base for software engineering concepts and practices.
- Refresh your memory with the notebook's quick overviews.
- Prepare for job interviews with the notebook's comprehensive guidance.
- Review your CS foundations with the notebook's structured approach.
- Stay updated on the latest software engineering trends.
- Accelerate Your Learning: Use concise and short notes curated by passionate software engineers, to boost your productivity.
- Wide-Ranging Resources: From algorithms to data structures, design patterns to coding best practices, the notebook covers it all.
- Interactive Learning: Discover engaging code examples, real-world applications, and interactive challenges to solidify your understanding.
- Community-Driven: The notebook is maintained by a vibrant community of developers like yourself, all working together to shape the future to make CS resources accessible to all.
From programming languages, design patterns, and testing to more advanced topics such as Data Science, and computer vision. You will also find the latest research papers and notebooks about AI, ML, DL, LLMs, IoT, robotics, and more.
If you'd like to read the notes online, you can visit https://afondiel.github.io/computer-science-notes/.
If you'd like to read it locally, install Rust, and then:
git clone https://github.com/afondiel/computer-science-notes
cd computer-science-notes
cargo install mdbook
mdbook build
mdbook serve
Happy learning and have fun!
Please refer to CONTRIBUTING.md to see how you can help this project grow and make learning accessible to all.
Some to-do tasks:
- Add guidelines of "essential resources to get into a specific industry/company"
- Add more industries notes: Telecommunications & Network, Aerospace, Defense, Naval-Maritime ...
- Create a pipeline to generate a 'minimum' note content using hello_world_prompt.md + OpenAI API / Bard API
As a lifelong learner and someone who believes that free education will make the world a better a place, I hope you find this project useful and inspiring as I do.
Cheers,