Cách học một ngôn ngữ lập trình mới dành cho các DEV bận rộn
Có bao giờ bạn tự nhủ với bản thân “Mình muốn học cách sử dụng Angular!” hay “Mình muốn học Ruby” chưa?
Gần như mỗi ngày tôi đều có cảm giác này. Khi công nghệ thay đổi chóng mặt với những ngôn ngữ mới, thư viện mới, thật khó để có thể theo kịp.
Nếu chưa thể xác định được nên bắt đầu từ đâu, bạn có thể search Google “Cách học Ruby”. Và chúng ta sẽ tìm được một hướng dẫn nào đó. Bạn đọc nó, ghi chú lại và không tham khảo thêm ở nơi nào khác.
Bạn có thể sử dụng hàng giờ xem video và tự mãn: “Trông dễ vãi”. Nhưng sau đó khi bạn bắt tay vào làm, bạn mới thấy “trống rỗng”.
Những bài hướng dẫn có lúc truyền kiến thức quá tải, có lúc lại bị thiếu. Và chúng ta sẽ có cảm giác như kiến thức của mình chưa đủ, bối rối và choáng ngợp. Những cảm giác đó đều không ổn khi chúng ta cố học những thứ mới.
Sau nhiều lần thử và sai, tôi đã tìm ra cách học bắt đầu số 0 để trở thành được việc chỉ trong thời gian ngắn.
Và dưới đây tôi xin chia sẻ cách học một ngôn ngữ lập trình mới, công nghệ mới.
Bắt đầu từ suy nghĩ
“Khi bạn lập mục tiêu cho chính mình, bạn sẽ làm những gì bạn cần” – Johnny Van Zant
Nhiều người cố học ngôn ngữ hay công nghệ mới mà không có mục tiêu. Không có mục tiêu, bạn sẽ giới hạn bản thân, học chỉ để biêt kiến thức mà không ứng dụng. Có mục tiêu sẽ giúp bạn tập trung vào thứ cần phải học và có lý do để học.
Không có mục tiêu, bạn sẽ không biết mình muốn gì và thiếu cảm hứng. Mục tiêu sẽ giúp bạn học được thêm nhiều thứ khác trong quá trình học.
Bạn cần đặt cho mình một mục tiêu, cần có một dự án phụ để thực hiện. Bạn cần có ý tưởng để ứng dụng kiến thức lập trình của mình. Nó không cần phải là thứ gì mới mẻ, đó có thể là dự án nhiều người đã làm, ví dụ như app “to-do”.
Quan trọng là bạn muốn sản phẩm cuối cùng là gì và cách nó hoạt động ra sao. Mục tiêu của bạn càng rõ càng tốt. Bạn muốn sản phẩm của mình như thế nào, ứng dụng và chức của nó ra sao?
Ví dụ, Jessica muốn học phát triển web. Cô nghĩ về dự án vừa có thể giúp chính mình, vừa có thể hỗ trợ cô học công nghệ. Cô quyết định làm một website “to – do” (lên kế hoạch việc cần làm). Jessica viết ra tất cả những yêu cầu cho ứng dụng này, điều này giúp cô phác họa sản phẩm một cách rõ ràng. Viết ra các chức năng của ứng dụng giúp cô định hướng cần học gì trong quá trình tạo ra sản phẩm. Tùy vào những gì đã chọn, cô có thể học phương pháp mới hay học công nghệ mới mà trước đây cô chưa bao giờ dùng đến.
Chọn công cụ
Một trong những cách học một ngôn ngữ lập trình mới hiệu quả là tìm được công cụ phù hợp.
Khi đã có bức tranh rõ ràng về thứ bạn muốn, bạn có thể chọn công nghệ để thực hiện nó. Hãy chọn công nghệ mà bạn muốn học. Ví dụ, nếu bạn muốn tạo một ứng dụng liên quan đến khách hàng (a client-side application), bạn có thể chọn React hoặc Angular (JavaScript).

Sau khi xác định rõ mục tiêu, bước tiếp theo, bạn cần xác định mình nên dùng công cụ nào để tạo sản phẩm
Khi Jessica biết sẽ tạo sản phẩm gì, cô ấy sẽ biết nên chọn công cụ nào. Cô ấy biết Node.js rất hữu ích và phổ biến, vì thế cô quyết định dùng nó trong back-end, React trong front-end, và PostgreSQL cho kho dữ liệu.
Nếu bạn đã chọn được công nghệ nào muốn theo học và dùng nó để tạo sản phẩm, bạn có thể ngồi code được rồi!
Học từ căn bản
Thay vì học trong vô định, giờ bạn đã có định hướng cho dự án của mình. Mục tiêu của bạn bây giờ là tìm kiến thức mình cần để viết code.
Cách tốt nhất để bắt đầu học là xử lý những thứ nhỏ và dễ nhất. Trong hầu hết trường hợp, đó sẽ là phiên bản ứng dụng “Hello, world”. Khi làm theo hướng dẫn, quan trọng là code chính xác và để nó hoạt động.
Jessica đã học thông qua việc hiểu những công cụ hỗ trợ tạo sản phẩm. Không cần biết Node.js và Javascript, cô vẫn có thể tạo ứng dụng “Hello, World” và thử nó. Điều này giúp cô hiểu về các sử dụng cú pháp trong ngôn ngữ.
Bằng cách dành thêm thời gian để code thử, não bạn sẽ tự tạo kết nối các mã code và học cách hoạt động của công nghệ đó. Đây là cách để bạn tiến bộ mỗi ngày.
Đặt câu hỏi
Giờ bạn đã có một số code hoạt động và giúp bạn tạo ra sản phẩm. Bạn muốn có một số phương pháp thay thế để đạt mục tiêu (điều này phụ thuộc và sản phẩm bạn đang làm). Bắt đầu tìm hiểu từng phần cụ thể mà bạn đang cần tìm.
Jessica cần tạo bảng dữ liệu PostgreSQL với cột ID, vì thế cô ấy search “làm sao để tạo bảng với auto-incrementing key PostgreSQL”. Sau đó cô đã nhận được vô số bài viết có thông tin cô cần.
Hỏi đúng câu hỏi là cách để bạn học hỏi nhiều hơn, giúp chúng ta tìm ra câu trả lời đúng.
Ngày nay, kỹ năng “đặt câu hỏi đúng” là kỹ năng cần rèn luyện, không phải tự dưng mà có.
Tôi từng rất kém trong kỹ năng tìm thông tin. Sau khi luyện tập, tôi đã cải thiện hơn và nó đã giúp tôi tiết kiệm thời gian. Có một bí quyết đó là dùng những từ khóa trong việc search, như ngôn ngữ hay framework bạn đang dùng. Nếu không có từ khóa, hãy dùng ngôn ngữ để mô tả vấn đề của mình.
Hãy lặp lại quy trình đến khi bạn đạt được mục tiêu
Giờ bạn đã tìm ra cách để làm dự án của mình, bạn cần thực hiện nó để chuyển thành code của bạn. Hãy giúp nó hoạt động.
Bạn sẽ phải lặp lại quy trình:
- Đặt câu hỏi
- Làm theo một ví dụ
- Thích ứng với nhu cầu của dự án
Bắt đầu học nhanh nào!
Bằng việc theo sát dự án, Jessica có khả năng tạo app “to-do” của cô ấy. Với cách này, cô ấy đã học được một loạt thứ liên quan đến JavaScript, Node, React, client và sự giao tiếp giữa các server, databases, và ứng dụng web.
Quy trình trên đã hữu ích với tôi và với nhiều lập trình viên khác. Tôi hy vọng bạn đã tìm ra được cách học một ngôn ngữ lập trình mới, công nghệ mới ngay hôm nay.
Leave a Reply
Want to join the discussion?Feel free to contribute!