Hai sai lầm lớn nhất trong quá trình học lập trình

Hôm nay, mình sẽ nói về hai sai lầm lớn nhất trong quá trình học lập trình. Qua trao đổi, mình nhận thấy có khá nhiều bạn sinh viên mắc phải những sai lầm này (cá nhân mình hồi năm nhất năm hai cũng thế). Do đó, mình viết bài này để cảnh tỉnh một số bạn, đồng thời chia sẻ chút kinh nghiệm để các bạn đi theo vết xe đổ của mình ngày trước.

Câu nói hay gặp – trường em không dạy A, B, C …

Dưới đây là một mẫu đối thoại giữa mình và một bạn nào đó giấu tên

Bạn: Anh ơi, học C với C++ ra trường thì làm được gì anh?
Mình: Làm hệ thống nhúng hoặc game em nhé, lương khủng lắm đấy.
Bạn: Em thích làm Web hoặc làm app mobile cơ, C++ làm được không anh?
Mình: Không em nhé, muốn làm web thì học HTML/CSS/JS. Sau đó có thể chuyển qua làm hybrid app mobile, hoặc học Android để viết app.
Bạn: Mấy cái đó trường em không dạy anh ơi!!!
Mình: ...

Một câu mình nói mình hay được nghe các bạn nói là: trường em chỉ dạy C, trường em chỉ dạy Java, mấy thầy cô không dạy HTML hay làm Web… Mình đã từng nhắc tới vấn đề nhiều lần  này trong series Những điều trường đại học không dạy bạn. Đại học chỉ cho bạn các kiến thức nền tảng về lập trình, cấu trúc dữ liệu, cơ sở dữ liệu. Họ sẽ không dạy bạn cách code như thế nào, cách dùng source control, cách sử dụng một ngôn ngữ/framework ra sao, mà bạn sẽ phải tự dạy mình!!.

Thái độ trường không dạy nên không biết là một thái độ học tập cực kỳ sai lầm. Vấn đề không phải người ta dạy cho bạn cái gì, mà là bạn có thể học được cái gì. Thái độ chờ sung rụng, có người dạy mới học này sẽ cản trở bạn trên con đường tìm hiểu cái mới, tự update kiến thức cho bản thân. Nếu giữ thái độ này, kiến thức của bạn sẽ nhanh chóng lạc hậu, lỗi thời, gây ra nhiều khó khăn trên con đường thăng tiến của bạn.

old man sitting in a chair and working with computer

Học tập thế nào cho đúng??

Việc học phải mang tính chất chủ động chứ không phải là bị động. Bạn phải tự tìm cái cần học, tự sắp xếp thời gian để học. Bạn nào kiến thức vững, đủ kiên nhẫn để tự học thì có thể tải ebook tiếng Anh, hoặc tìm nguồn tự học trên mạng. Bạn nào kiến thức còn yếu thì có thể ra trung tâm để có người kèm cặp.

Nhà tuyển dụng chỉ cần biết bạn có kiến thức hay không, có làm được việc hay không. Họ không quan tâm là kiến thức đó bạn có được từ nhà trường, từ trung tâm hay tự học. Thứ duy nhất cần nhớ là: thầy cô, hay trung tâm cũng không thể vá lỗ hổng kiến thức hay dạy cho bạn tường tận được, mà chính bạn mới là người nỗ lực hấp thu, biến kiến thức của họ thành thứ của mình.

Chưa kể, chương trình học ở các trường bây giờ cũ xì, quanh đi quẩn lại chỉ có WinForm, WebForm, Java Servlet… . Nếu cứ “há miệng chờ sung, dạy gì học nấy”, bạn sẽ không có đủ skill cần thiết để xin việc khi ra trường đâu nhé (FSOFT tuyển Fresher vào cũng phải đào tạo lại phần lớn đấy).

Ngoài ra, đừng nghĩ rằng chỉ học một lần cho biết là xong nhé, nguy hiểm lắm. Công nghệ liên tục thay đổi, bạn cũng phải thường xuyên update để làm mới bản thân.

Trước đây mình từng có khoảng 2 năm kinh nghiệm lập trình C# và làm việc với ASP.NET MVC. Đầu tháng này, vừa lên pluralsight thì thấy ASP.NET 5 đã đổi tên thành ASP.NET Core 1, thay đổi đủ thứ từ cấu trúc project cho tới cách cấu hình và cách chạy code. Điều này làm kiến thức cũ của mình lỗi thời hết cả! Thay vì than trời trách đất, mình đành phải lên pluralsight để cập nhật kiến thức mới thôi.

ASP.NET mới bây giờ đã chạy được trên MAC rồi này, ahihi :P
ASP.NET mới bây giờ đã chạy được trên MAC rồi này, ahihi 😛

Sai lầm thứ hai: Cẩn thận, chưa chắc học nhiều/xem nhiều là sẽ giỏi!!

Người Việt chúng ta có thói quen ghét ai ghét cả đường đi lối về. Khi đã tin tưởng/thần tượng ai đó thì nó nói gì cũng tin; khi đã ghét thằng nào thì nó nói gì cũng sai, cũng nhảm nhí. Thái độ này dễ làm bạn tiếp nhận sai tiếp nhận thông tin sai cách!

Mình hay đọc Tony Buổi Sáng, có những bài viết về cách nhìn cuộc sống khá hay. Thay vì hâm mộ, nuốt từng câu từng chữ của “dượng”, vẫn có những đoạn chém gió, cách nhìn mà mình không đồng tình.Tuy vậy, mình vẫn chắt lọc những điều hay, những điều tác giả muốn gửi gắm, còn mấy vấn đề mình không đồng tình thì bỏ qua thôi.

Tương tự, các bạn nên theo dõi blog mình nhưng đừng nên tin hoàn toàn những gì mình viết. Hãy tự hỏi xem: Thằng code dạo này phán như vậy đúng hay sai, có chứng cứ gì không? Cuộc sống có câu “Không có gì là vĩnh cửu”, có thể bây giờ mình cho điều đó là đúng, nhưng trong tương lại điều đó lại sai thì sao? (VD mình khuyên các bạn học JavaScript chẳng hạn). Chính mình đôi khi xem lại các bài viết cũ cũng thấy một hai chỗ võ đoán, chưa hợp lý cơ mà.

Đừng tin toàn bộ những gì sách nói, cũng đừng nuốt từng câu từng lời của tác giả. Nghe người ta nói cái gì cũng phải nghi ngờ vả kiểm chứng. Hãy xem tác giả là một thanh niên đang chém gió với mình thông qua sách, cái gì đúng thì gật gù đồng ý, cái gì sai thì mình chửi, phản bác lại liền.

Assume-Nothing-Question-Everything-e1450318509586

Ngoài việc học nhiều, bạn còn phải biết cách lọc bỏ, chọn lựa những thông tin có ích cho mình. Những gì hay thì hãy ghi nhớ và học theo; những gì nhảm nhí thì cứ bỏ qua, coi như nó không tồn tại. Nói một cách dân dã, cuộc sống của mình do mình quyết định, tại sao phải đi tin lời tư vấn/chém gió của thằng ất ơ, của ông dượng nào đó trên mạng cơ chứ. (Blog Tôi đi code dạo toàn bài hay nên các bạn cứ đọc thoải mái, không cần lọc nhiều đâu).

Kết

Sửa được hai sai lầm về thái độ học tập bị độngchọn lọc kiến thức này, bạn sẽ thấy mình trở nên vô cùng tự tin. Công nghệ A/B/C mình không biết? Chả sao, chỉ cần tự học vài buổi là xong! Càng học nhiều, bạn sẽ càng thấy việc học cái mới trở nên rất dễ dàng và nhanh chóng.

Hi vọng, qua bài viết này, mình sẽ không còn phải nghe câu “em không biết cái ABC này, trường với thầy cô không dạy”, mà mình hi vọng được nghe câu: “Em đang tự tìm hiểu cái ABC anh chỉ em một số nguồn học và những điều cần lưu ý nha”.

Bonus: Dạo này hơi chán code nên mình học thêm kĩ năng thuyết trình và public speaking, nhiều cái hay lắm các bạn à. Mấy kĩ năng này cũng khá cần thiết, nếu rảnh các bạn nên học thử.

Screen Shot 2016-05-14 at 13.11.13

30s quảng cáo

book.jpg

Đây là một bài viết được trích dẫn từ cuốn sách “Code dạo kí sự – Lập trình viên đâu phải chỉ biết code” do mình viết. Quyển sách bao gồm những kĩ năng từ mềm đến cứng mà mỗi developer phải có, đảm bảo sẽ rất có ích cho các bạn sinh viên hoặc lập trình viên đã đi làm. Các bạn xem thông tin và đặt mua sách tại đây nhé: Sách Code Dạo Ký Sự.

10 thoughts on “Hai sai lầm lớn nhất trong quá trình học lập trình”

  1. Anh ghi nhầm kìa, là ‘ASP.NET 5’ đổi tên thành ‘ASP.NET Core 1.0’ chứ không phải MVC 5 đổi tên thành ASP.NET Core 1.0 anh ơi 😀

    Like

  2. cảm ơn những bài viết của anh lắm, em đang là SV năm 4 nhưng mà kiến thức lập trình hỏng cả do …lười thực hành, tự nhiên đọc mấy bài của anh thấy lửa cháy trở lại, hy vọng cháy đc lâu lâu, hì hì.

    Like

  3. Cảm ơn bạn, bài viết ngắn gọn nhưng rất bổ ích cho mình. Công nghệ mới ngày càng nhiều làm nhiều người như mình cảm thấy theo không kịp vì đủ lý do abc, nhưng quan trọng là cách học để tiếp thu như thế nào và nên học cái gì.

    Like

Leave a comment