Bắt đầu học lập trình giống như đi vào một thành phố lạ — nhiều ngả đường, không biết hướng nào đúng. Mình đã từng học sai đường: chọn C++ trước, làm theo tutorial 3 tháng vẫn không tự code được gì. Sau khi đổi cách, 6 tháng đầu mình tự xây được app web đơn giản.
1. Chọn ngôn ngữ đầu tiên
Quy tắc vàng: chọn ngôn ngữ phù hợp với mục tiêu, không chọn vì "đang hot".
- Muốn làm web: bắt đầu với JavaScript
- Muốn làm AI/Data: Python
- Muốn làm app điện thoại: Dart (Flutter) hoặc Kotlin (Android)
- Chưa biết muốn gì: Python — dễ học, dùng được nhiều
2. Lộ trình 6 tháng cho Python
Tháng 1: Cú pháp cơ bản
Biến, kiểu dữ liệu, if/else, for/while, function. Học qua "Python for Everybody" của Đại học Michigan trên Coursera (audit free), hoặc CS50P của Harvard. Mục tiêu: tự viết được chương trình tính BMI, máy tính đơn giản.
Tháng 2: Cấu trúc dữ liệu
List, dictionary, set, tuple. Đọc/ghi file. Mục tiêu: tự viết script đọc file Excel.
Tháng 3: OOP và module
Class, object, kế thừa. Mục tiêu: mini project — quản lý danh bạ với class.
Tháng 4: Web scraping hoặc API
Học requests, BeautifulSoup. Mục tiêu: scrape giá từ web, lưu vào file.
Tháng 5: Web với Flask
Tạo web đơn giản với Flask. Mục tiêu: web blog cá nhân chạy local.
Tháng 6: Deploy & Git
Học Git/GitHub, deploy lên Render hoặc Vercel miễn phí. Mục tiêu: 1 web app online, link share được.
3. Sai lầm phổ biến của người mới
- Tutorial hell: xem video hết tutorial này đến tutorial khác mà không tự code. Quy tắc: 30% xem, 70% tự gõ
- Copy-paste: không hiểu code thì 1 tuần sau quên sạch
- Học quá nhiều ngôn ngữ cùng lúc: master 1 cái trước
- Không làm dự án: dự án mới giúp lên trình thật
4. Khi bí code phải làm gì?
- Đọc lại error message — 80% câu trả lời nằm ở đó
- Google + Stack Overflow — copy error vào search
- Hỏi ChatGPT/Claude — giải thích từng dòng giúp hiểu sâu
- Hỏi cộng đồng: nhóm Facebook "Cộng đồng lập trình Việt Nam"
5. Học bao nhiêu giờ mỗi ngày?
Quan trọng hơn số giờ là tính đều đặn. 1 giờ/ngày × 6 ngày/tuần > 6 giờ vào chủ nhật. Lập kế hoạch trên Lịch Học: khoá khung 19:30-20:30 mỗi tối là giờ code.
6. Tài nguyên miễn phí tốt nhất
- FreeCodeCamp.org: miễn phí, có chứng chỉ
- CS50 của Harvard: nền tảng CS chắc, miễn phí trên edX
- YouTube channels VN: "Easy Frontend", "F8 Official"
Kết luận
Lập trình là kỹ năng dân chủ — không cần nhà giàu, không cần năng khiếu đặc biệt, chỉ cần kiên trì 6 tháng đầu.
Lập kế hoạch học lập trình 6 tháng trên lichhoc.com.vn — chia nhỏ thành mục tiêu tuần với nhắc nhở tự động.