Skip to content
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
1441 lines (1121 sloc) 64.3 KB
Curated Self Study Guide for Computer Science and DevOps/SRE/SysAdmin
An always updated copy of this document can be found at
For updates/corrections , visit
Reach me at
Computer Science:
Programming Concepts
Computer Architecture
Alogrithms and Data Structures
Mathematics for Computer Science
Operating Systems Concepts
Database Concepts
Data Center
SQL Server
Web Developement
Microsoft Excel
Machine Learning
Interview Guides
Resume Improvement
Job Portals
Job Search Engines
Company and Salary Reviews
Foreign Language
Study Tools:
Ambient Music
Ear Plugs
Computer Science:
Sources: (Unofficial Guide to CS at Harvard) (Ask HN: What are the bibles of Computer Science?) (Ask HN: What's the best computer science book you've read recently?) (Teach Yourself Computer Science) (Ask HN: Is Georgia Tech's Online Master in CS Worth It?) (Ask HN: What is your favorite CS paper?) (Ask HN: What are some interesting papers in CS for a beginner?) (A computer science study plan) ( Ask HN: Fully online CS degrees?) (Ask HN: “Write your own” or “Build your own” software projects) (Ask HN: Books you should have read when you start a career in SE / CS?) (If not SICP, then what? Maybe HTDP?) (How Harvard's CS50 Renewed My Hope For Online Education)
Teach Yourself Computer Science
Path to a free self-taught education in Computer Science!
Structure and Interpretation of Computer Programs - 2nd Edition (Instructor: John DeNero)
Computer Science 61A, UCBerkeley 001 - Spring 2011
Programming Concepts:
Sources: (Popular Programming Podcast episodes) (Composing Programs – Python 3 in the tradition of SICP) (Programming books you might want to consider reading) (Beautiful Online SICP) (Ask HN: What language-agnostic programming books should I read?) (CS61A Structure and Interpretation of Computer Programs) (Ask HN: What habits make a programmer great?) (More Good Programming Quotes (2016)) (Ask HN: What books had the greatest effect on how you structure your code?) (Ask HN: What programming blogs do you follow?) (Ask HN: What are your favourite developer blogs?) (YouTube Programming Channels) (Ask HN: How do you read programming books?) (Stanford Compilers Course ( (Ask HN: What coding challenge sites should I try next?) (Ask HN: How would you relearn programming?) (Ask HN: Best way to learn modern C++?) (Competitive Programmer's Handbook (2017) [pdf] ( (DevTube: Searchable index of developer videos ( (Composing Programs – An introduction to programming in the tradition of SICP) (Paul Graham on SICP (2000)) (Ask HN: What's a starting point for learning how to write programming languages?) (What are some things that only someone who has been programming 20 years knows? ( (Ask HN: What is your best advice for a junior software developer?) (Ask HN: Where to find someone to review my code?)
CS50 Introduction to Computer Science , Harvard University
Introduction to Computer Science and Programming Using Python , MIT
How to Design Programs, Second Edition
Coding Games and Programming Challenges to Code Better
Computer Architecture:
Sources: (Build a Modern Computer from First Principles: Nand to Tetris Part II)
The Elements of Computing Systems: Building a Modern Computer from First Principles
Computer Organization and Design MIPS Edition, Fifth Edition
Computer Science 61C, UCBerkeley 001 - Spring 2015
Computation Structures | Electrical Engineering and Computer Science | MIT OpenCourseWare
Modern Microprocessors A 90-Minute Guide! A brief, pulls-no-punches, fast-paced introduction to the main design aspects of modern processor microarchitecture
Computer Architecture, Fifth Edition: A Quantitative Approach (The Morgan Kaufmann Series in Computer Architecture and Design) 5th Edition
Alogrithms and Data Structures:
Sources: (Algorithms ( (A Comparison of Four Algorithms Textbooks (2016)) (Ask HN: What's the best algorithms and data structures online course?) (Algorithms Behind Modern Storage Systems) (Algorithms, by Jeff Erickson (
The Algorithm Design Manual 2nd Edition
Steven Skiena Dept. of Computer Science Stony Brook University Video Lectures
Algorithms by S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani
Additional Material:
Introduction to Algorithms, 3rd Edition
Mathematics for Computer Science:
Sources: ( Mathematics for Computer Science [pdf] ( (Calculus Made Easy (1914)) (Georgia Tech's free math textbook collective) (How to Study Mathematics (2017) ( (Ask HN: How to self-learn math?) (Classic Mathematics Books for Lifelong Learners ) (3Blue1Brown Channel)
Lecture notes by László Lovász
Mathematics for Computer Science , MIT (MIT 6.042J Mathematics for Computer Science, Spring 2015 YouTube)
Essence of linear algebra
Introduction to Linear Algebra, Fifth Edition
Operating Systems Concepts:
Sources: (Operating Systems: Three Easy Pieces ( (How to create an OS from scratch – tutorial ( (A book list for OS kernel developers and device driver writers (2006) (
Operating Systems: Three Easy Pieces (Video Course based on the book by CS 537 at Wisconsin with Remzi)
Computer Science 162, 001 - Spring 2015. Operating Systems and System Programming - John Kubiatowicz UCBerkeley
Additional Material:
Operating System Concepts , 9th Edition
Modern Operating Systems , 4th Edition
Networking :
Sources: (Beej's Guide to Network Programming) (Let's Code a TCP/IP Stack: TCP Retransmission (
Computer Networking: A Top-Down Approach (7th Edition) (Supplements: Wireshark Labs)
CS144 Introduction to Computer Networking Stanford University
High Performance Browser Networking
Beej's Guide to Network Programming
Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition)
Additional Material:
CCNA Routing and Switching 200-125 Official Cert Guide Library
CBT Nuggets by Jeremey Cioara
Eli The Computer Guy
Load Balancing Servers, Firewalls, and Caches
Database Concepts:
Sources: (Ask HN: What is the best online resource to learn advanced SQL?)
Architecture of a Database System
Readings in Database Systems
Computer Science 186, 001 - Spring 2015 UCBerkeley Introduction to Database Systems - Joseph Hellerstein
Stanford's Databases MOOC
Database Design by Caleb Curry
Database Design for Mere Mortals: A Hands-On Guide to Relational Database Design (3rd Edition)
Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
Sources: (What Is ‘Site Reliability Engineering’?) (Ask HN: DevOps learning resources) (Ask HN: Which books describe modern devops?)
Sources: (What's the one Linux command you wish you knew years ago?)
UNIX and Linux System Administration Handbook (5th Edition)
How Linux Works: What Every Superuser Should Know Second Edition
RHCSA/RHCE Red Hat Linux Certification Study Guide, Seventh Edition (Exams EX200 & EX300) 7th Edition
Additional Material:
Linux From Scratch!
Build yourself a Linux
The Linux Programming Interface: A Linux and UNIX System Programming Handbook
Unix Power Tools,Third Edition
Linux Journey
FreeBSD Quickstart Guide for Linux Users
FreeBSD Handbook
The Design and Implementation of the FreeBSD Operating System (2nd Edition)
Sources: (Ask HN: How can I get better at bash?)
ABS Guide
All commands sorted by votes |
HackerRank Bash Challenges
Windows Server 2016 - TechNet - Microsoft
Windows Server Courses from Microsoft Virtual Academy
Windows Internals, Part 1: System architecture, processes, threads, memory management, and more (7th Edition)
Learn Windows PowerShell in a Month of Lunches 3rd Edition
Data Storage Networking: Real World Skills for the CompTIA Storage+ Certification and Beyond 1st Edition
Play with Docker Classroom
Docker Documentation
Docker for Beginners
Docker and Kubernetes: The Complete Guide by Stephen Grider
An Introduction to Kubernetes
Kubernetes official tutorials
VMware vSphere 6.5 (VCP6.5-DCV) with 6.7 Updates
Mastering VMware vSphere 6 1st Edition
OpenStack for Architects: Design production-ready private cloud infrastructure, 2nd Edition
OpenStack Cloud Computing Cookbook - Fourth Edition
Data Center:
Data Center Fundamentals
Amazon Web Services — a practical guide
Amazon Web Services in Action 2nd Edition
NGINX documentation
NGINX HTTP Server - Third Edition
Apache HTTP Server Documentation
IIS 10.0 - The Official Microsoft IIS Site
Load Balancing with HAProxy
Stanford DB5 Course on SQL
SQL Server:
Ansible for DevOps
Ansible Videos
Interactive Ansible tutorials with dead simple setup via Docker
Ansible Essentials: Simplicity in Automation Technical Overview
Download the Puppet Learning VM
Puppet 5 Beginner's Guide - Third Edition: Go from newbie to pro with Puppet 5
Sources: (At full speed with Python: a book for self-learners)
Learn Python 3 the Hard Way (Videos)
Automate the Boring Stuff with Python
The Python Tutorial
A Gentle Introduction to Programming Using Python
Sources: (To become a good C programmer (2011) ( (“Learn C the Hard Way” is no longer available for free) (Beej's Guide to C Programming (2007)) (Brushing up on operating systems and C programming) (Ask HN: What project did you tackle to learn C?) (Show HN: Learn C and its lower levels interactively, in the browser)
Learn C The Hard Way (Videos)
C Programming: A Modern Approach
Object-Oriented programming with Java
Complete Java Masterclass
Head First Java 2nd Edition
Murach's Java Servlets and JSP
Web Development:
The Web Developer Bootcamp by Colt Steele
CS50's Web Programming with Python and JavaScript
Tomcat: The Definitive Guide
Regular Expressions Cookbook: Detailed Solutions in Eight Programming Languages 2nd Edition
Sources: (How to teach Git (
Pro Git
Learn Git Branching
Sources: (Interactive Vim tutorial) (Learn Vim Progressively)
Learn Vim Progressively
Practical Vim: Edit Text at the Speed of Thought , 2nd Edition
Sources: (A practical security guide for web developers ( (Cybersecurity Humble Book Bundle) (Ask HN: How can I learn computer security?) (Ask HN: What are the best resources for learning security and pen testing?) (Ask HN: Recommendations of good cybercrime novels?) (Ask HN: Starting a career in security at 40?)
Penetration Testing: A Hands-On Introduction to Hacking
Offensive Computer Security Spring 2014 Homepage Florida State University
Offensive Security Certified Professional
The Hacker Playbook 3: Practical Guide To Penetration Testing
MIT Course Number 6.858 :Computer Systems Security
Sources: (Ask HN: What's the Hacker News of hardware?) (What are hardware development learning web tutorials?)
Professor Messer’s CompTIA 220-901 and 220-902 A+ Training Videos
Microsoft Excel:
Sources: (You Suck at Excel with Joel Spolsky (2015) [video])
You Suck at Excel with Joel Spolsky
Excel 2016 Bible 1st Edition
Sources: (Ask HN: How to self-learn electronics?) (Ask HN: Where did you learn modular electronics?)
The Art of Electronics 3rd Edition
6.002.1x "Circuits and Electronics 1: Basic Circuit Analysis" Based on 6.002 MIT Course
Sources: (Ask HN: What are some of the best documentaries you've seen?)
What If?: Serious Scientific Answers to Absurd Hypothetical Questions
Thing Explainer: Complicated Stuff in Simple Words
The Selfish Gene
A Short History of Nearly Everything
Planet Earth
Cosmos: A Spacetime Odyssey
Sources: (Ask HN: Learn Modern web design and CSS)
The Design of Everyday Things
The ultimate guide for mobile developers, who want to design
Machine Learning:
Sources: (Ask HN: How to get started with machine learning?) (Machine Learning Crash Course) (Foundations of ML and AI: Book recommendations (
Machine Learning by Andrew Ng
Deep Learning Specialization by Andrew Ng
Sources: (Ask HN: How do you backup your files without depending on a third party service?) (Ask HN: Best Centralized Backup Solution)
rclone - rsync for cloud storage
Backblaze B2 Cloud Storage
Interview Guides:
Sources: (How to Pass a Programming Interview) (Questions to ask at the end of a technical interview) (How to talk about yourself in a developer interview) (Technical and non-technical tips for rocking your coding interview) (Questions to ask in interviews ( (How to solve a hard programming interview question) (Ask HN: How do I prepare for an interview for AMZ/GOOG/APL/FB?) (Ask HN: Types of Questions to Ask Team Members Before Accepting Role?) (C++ Programming Questions to Ask on Interview (2017) (
An attempt to answer the age old interview question "What happens when you type into your browser and press enter?"
Linux System Administrator/DevOps Interview Questions
The System Design Primer
Devops Interview Questions
Awesome Interviews
Coding Interview University
Everything you need to prepare for your technical interview
Algorithms, front end and behavioral content for rocking your coding interview
500 Data Structures and Algorithms practice problems and their solutions
Cracking the Coding Interview: 189 Programming Questions and Solutions
Elements of Programming Interviews in Python: The Insiders' Guide
Company Interview Corner - GeeksforGeeks
Technical Interview Questions | CareerCup
Search Interview Questions
A collection of *nix Sysadmin Test Questions and Answers for Interview/Exam (2018 Edition)
Watch technical mock interviews with engineers from Google, Facebook, Airbnb, and more
Resume Improvement:
Sources: (Ask HN: Resumes that look good but professional too) (Building a Kickass Portfolio)
Job Portals:
Sources: (Ask HN: What are some of the best job boards you have seen (any industry)?) (Ask HN: What do you care about the most in a tech job post?) (Ask HN: What is your favorite place to find work?) (Ask HN: How Did You Find a Job Abroad?) (List of places to find remote jobs and freelancing projects) (Ask HN: How to become a remote contractor?) (Ask HN: Highest paying remote companies?) (Ask HN: Tools or sites you use to scope out a workplace before taking a job?)
Note: Update your resume on the above sites every Sunday post 12 AM (IST).
Job Search Engines:
Company and Salary Reviews:,5_IN115.htm
Sources: (Remote Jobs or Gigs Platforms) (Ask HN: How do you find freelance work?) (Ask HN: Fastest way to get started with freelancing?) (Ask HN: How bad is freelancing?)
Sources: (Guide to the Systems Administration Body of Knowledge) (A collection of awesome companies offering free/discounted plans for eligible startups) (Why you probably don't need an MBA) (Ask HN: How do I get freelance developer jobs?) (Ask HN: What do you use to align your daily todos with your long term goals?) (Ask HN: Best business advice for software developers) (Ask HN: Should I create a clone of a popular SaaS with rock-bottom pricing?) (Ask HN: Freelance Management Services/Apps) (Ask HN: Where to find co-developers for side projects?) (Ask HN: As an employee of a company, how do you assess its health?) (Ask HN: How to prepare for an Engineering Manager interview?) (Ask HN: What costly inefficiency do you see at work?) (Ask HN: How do you take idea notes / voice memos / reminders to yourself?) (Ask HN: Time Management Tricks and Tips) (Ask HN: Simple tools/hack for small project management) (Ask HN: Best project management practices in 2018?) (Ask HN: How do you overcome the problems of task switching?) (Ask HN: Successful one-person online businesses?) (Ask HN: What are your best domestic time saving tips?) (Ask HN: What are good writing tips for software developers?) (Ask HN: What tools have most helped your day-to-day productivity?) (How to Fall Asleep in Two Minutes or Less) (Tell HN: My best productivity hack) (Ask HN: Advice to your younger self) (Ask HN: Recommendations on books and documentaries on tech companies/people?) (How to be a Manager – A step-by-step guide to leading a team) (Ask HN: Is there a new habit you cultivated recently that is really paying off?) (Ask HN: How do you manage your mental health?) (Ask HN: What are the things that you have automated in your personal life?) (Ask HN: Which project management and team communication software do you use?) (Ask HN: How do you focus at work?) (Ask HN: How to organize personal knowledge?) (Ask HN: As a technical founder what is the best business book you've read?) (Ask HN: What was the best decision you made in your career?) (Ask HN: What things have richly rewarded the time invested in mastering them?) (Ask HN: What did you learn the hard way?) (How to Get Things Done When You Don't Feel Like It ( (Ask HN: What are your ?brain hacks? that help you manage every day situations?) (Ask HN: How to speak like a leader, not like an engineer?)
Site Reliability Engineering: How Google Runs Production Systems
The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win
The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations
The Practice of System and Network Administration: Volume 1: DevOps and other Best Practices for Enterprise IT (3rd Edition)
The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change
The Personal MBA: Master the Art of Business
The Art Of War
How to Win Friends & Influence People
The Power Broker: Robert Moses and the Fall of New York
Zero to One: Notes on Start Ups, or How to Build the Future
Startup School is a free 10-week massively open online course (MOOC)
Never Split the Difference: Negotiating as if Your Life Depended on It
Sources: (Ask HN: What are the must-read books about economics/finance?) (A Guide to Crypto Currencies ( (A New Way to Learn Economics ( (A good resource for financial advice to share with people in their twenties?) (Stanford CS007: Personal Finance For Engineers) (Ask HN: What are some good resources to learn how to invest and build wealth?) (Ask HN: Online banks where I can open account worldwide?)
Basic Economics 5th Edition
Financial Markets by Robert Shiller
The Intelligent Investor
Computational Investing, Part I
Foreign Language:
Study Tools:
Sources: (8,760 Hours: How to get the most out of next year) (Ask HN: How do you keep improving?) (How to Study: A Brief Guide (
Sources: (The most mentioned books on Stack Overflow) (Pinker Book Recommendations) (The most mentioned books on Stack Overflow) (Ask HN: What books fundamentally changed the way you think about the world?) (Ask HN: Books you wish you had read earlier?) (Ask HN: What books have made the biggest impact on your mental models?) (Ask HN: What are your favorite books of all time, and why?) (Ask HN: Books on specific topics that have applied to many areas of your life?) (Reddit's favorite programming books, from 3.5B comments) (Ask HN: What books have most influenced the way you see the world?) (Ask HN: Which books do you wish you'd read earlier in life?) (Ask HN: What are the books you wish your colleagues had read?) (Ask HN: What books do you keep on your desk?) (Ask HN: Which books have made you introspect?) (Ask HN: Which non-programming books are a beneficial read for programmers?) (Ask HN: Which books are “must-read” for anyone trying to learn about your field?) (Ask HN: What are your favorite non-fiction books of all time?) (Ask HN: What was the one book that you read and it actually changed your life?) (Ask HN: What are the best textbooks in your field of expertise?) (Ask HN: Older textbooks/papers you consider classics still worth studying today?) (Ask HN: What books changed the way you think about almost everything?) or or or
irc:// # An ACM Membership provides Safari Books online membership for less.India Sign up page (Google Custom Search Engine for Ebooks) (Google Custom Search Engine for Ebooks)
Sources: (Ask HN: What's your favorite online course?) (Ask HN: What is your favorite YouTube channel for developers?) (Ask HN: Which Berkeley Courses Should I Archive?) (Startup School 2017 Presentations ( (Ask HN: Any “bootcamps” or courses for intermediate/advanced people?) (Ask HN: What are the best MOOCs you've taken?) (Ask HN: Any good examples of learning through games/puzzles, for adults?) (Ask HN: Favorite teachers on YouTube?) Science Courses (Georgia Tech Online Master of Science in Computer Science)
Sources: (Ask HN: Mailing lists that HN readers ought to know about?) (Ask HN: Which companies have the best blogs written by their engineering team?) (Ask HN: What is your content discovery daily routine?) (Ask HN: How do you manage to go through so much of good content posted on HN?) (Ask HN: What's the Hacker News for different industries?) (Ask HN: What is your favourite tech talk?) (Ask HN: Which YouTube channels do you watch regularly?) (Ask HN: What are some niche communities you enjoy?) (Ask HN: What are some of the best technical talks you've heard?) (Ask HN: Other online communities like HN?) (Ask HN: What tech blogs, podcasts do you follow outside of HN?)
Curated Tech and World News:
RSS Reader:
Import , into
News Notifications (iOS/Android):
Install the IFTTT Mobile app .Turn on the applet and add into the 'Feed URL' field of the applet.
Sources: (Ask HN: What are your favorite tech podcasts?) (Ask HN: What podcasts are you listening to?) (Ask HN: What are your favorite podcasts?) (Ask HN: What audio resources can improve my technical skills during my commute?) (Ask HN: What podcasts do you listen to regularly?) (Ask HN: What podcast has been most influential on your life?) (Ask HN: Favorite podcasts?)
Collection of awesome podcasts
Ambient Music:
Sources: (AI generated music to improve focus, relaxation and sleep ( (Music for Programming ( (Ask HN: What, if anything, do you listen to while coding?) ( Music to improve focus, meditation and sleep)
soma fm's Drone Zone Channel
myNoise : Custom Background Noise Machines
Focus Playlists on Spotify
The Best Noise-Cancelling Headphones
Amazon Best Sellers in Audio Headphones
Ear Plugs:
Mack's Ultra Soft Foam Earplugs
Additional Sources : (Find an Expert on Hacker News),-680.3,0 (How to Read a Book [pdf]) (Ask HN: What are some 'must watch' talks?) (Ask HN: What are some great “Free” services provided by IBM, Amazon, etc.?) (Resources on creating programming languages) (Ask HN: Which websites do you visit?) (Ask HN: What's your process for learning?) (Ask HN: Which sites you visit on a regular basis for knowledge and inspiration?) (Ask HN: What online communities offer a high level of discussion?) (Ask HN: What are your favourite self hosted tools?) (Ask HN: Any resources to learn the fundamentals of critical thinking?) (Ask HN: What VPN service are you currently using?) (Find an Expert on Reddit) (Google Custom Search Engine for Sharjeel's Bookmarks)
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.