Awesome Lập trình
Một trang Awesome lấy ý tưởng từ computer-science!
Giới thiệu
Một danh sách những gì liên quan đến lập trình và việc học lập trình. Có rất nhiều những tài liệu lập trình bằng Tiếng Việt tốt. Trang này chỉ đơn giản là một trang tổng hợp không bao giờ đầy đủ về những nguồn tài nguyên chất lượng có mặt.
Tất nhiên, Tiếng Anh vẫn sẽ luôn luôn nhiều hơn và rất gợi ý nếu bạn có thể đọc được Tiếng Anh. Nhưng nếu bạn chưa đọc được Tiếng Anh đủ tốt để hiểu thì có thể cân nhắc sử dụng bất kì tài nguyên nào ở dưới đây.
Nhưng hãy nhớ là PHẢI HỌC TIẾNG ANH, vì nguồn tài nguyên Tiếng Việt rất ít, mình sẽ làm riêng một khu để tổng hợp phần này.
Các hạng mục sẽ được phân chia theo teachyourselfcs và bản dịch Tiếng Việt tương ứng của trang. Các tài nguyên sẽ được chọn dưới hai kiểu chính:
- Hoàn toàn bằng Tiếng Việt.
- Tiếng Anh nhưng có phụ đề Tiếng Việt.
Mục tiêu của chương trình
- Để có thời gian rèn luyện một Tiếng Anh thật tốt: Trong khi bạn học những quy tắc nền tảng của lập trình bằng Tiếng Việt, hãy dành thời gian để làm vững chắc Tiếng Anh của bạn lên. Cá nhân mình gợi ý Level B2, hoặc đạt được ít nhất 1500 giờ nghe Tiếng Anh (Có thể là các nội dung liên quan đến lập trình, nhưng không phải là Tiếng Anh của mấy ông Ấn). Đích đến của việc này để đảm bảo bạn có khả năng phát âm và nghe hiểu thật vững.
- Đọc tài liệu bằng Tiếng Anh không được dùng đến Google Dịch hay dịch tự động: Có nhiều người mình biết khi đọc bài tập hoặc hướng dẫn bằng Tiếng Anh thì hay dùng Google Dịch hoặc ChatGPT, nhưng bạn có dám đảm bảo là nó dịch đúng không? Nó sẽ luôn dịch cả những thuật ngữ bao gồm trong đó và có thể ra một nghĩa khác (Giờ chưa biết đỡ chưa nhưng gét gô học thôi).
Mình không bao giờ phủ nhận tầm quan trọng của Tiếng Anh trong quá trình học này. Và để khiến cho nó trở lên dễ dàng hơn nữa, bạn có thể sẽ muốn xem xét tạm dừng lại và làm hai điều này:
- Học nền tảng của KHOA HỌC MÁY TÍNH (Lý thuyết cơ bản thì khó bị lỗi thời theo thời gian).
- Học Tiếng Anh (Đưa Tiếng Anh của bạn lên mức tốt hơn nhiều so với bây giờ).
Tiếng Anh chuyên ngành
Kiến trúc máy tính
Cấu trúc dữ liệu và giải thuật
Toán
Hệ điều hành
Cơ sở dữ liệu
Mạng máy tính
Trí tuệ nhân tạo
- d2l-vi - Một cuốn sách về Học Sâu đề cập đến nhiều framework phổ biến, được sử dụng trên 300 trường Đại học từ 55 đất nước bao gồm MIT, Stanford, Harvard, và Cambridge.
- ml-yearning-vi - Một cuốn sách tập trung vào hướng dẫn cách cấu trúc các dự án Học Máy và phân tích cách làm cho các thuật toán Học Máy hoạt động.
- handson-ml2-vn - Jupyter Notebook cung cấp các kiến thức cơ bản về Học Máy và Học Sâu bằng Python với Scikit-Learn, Keras, và TensorFlow 2.
Ngôn ngữ lập trình
Dành cho việc học một ngôn ngữ lập trình cụ thể.
HTML/CSS/JS
Các Framework (Hệ sinh thái JS)
C/C++
Java
Python
C#
Rust
Bảo mật
- opsec-guide - Hướng dẫn thực hành căn bản về bảo mật thông tin cá nhân/danh tính trên không gian mạng, chống lại việc dò tìm thông tin.
Hệ thống
Hệ thống phân tán
Học ở bậc đại học
Những thứ linh tinh khác