Electrical Engineer turned Data Scientist. Married to Awesome. Occasional drawer of Minions.

[John Sonmez] Tự học lập trình? Dễ hay khó? Nên chăng? (Phần 2/3)

TỰ HỌC LẬP TRÌNH (PHẦN 2)

Sách: The Complete Software Developer's Career Guide Tác giả: John Sonmez

Xem phần 1 tại đây

“DISADVANTAGES TO SELF-TAUGHT PROGRAMMING”

Ngoài những ưu điểm đã nói trong phần I, tự học lập trình bản thân cũng đi kèm với nhiều thách thức để các bạn phải cân nhắc. Bạn càng được tự do để chọn thứ mình học và lịch học bao nhiêu, thì bạn sẽ càng đau đầu vì không biết chọn gì để học, cũng như chẳng được ai chỉ bảo hướng dẫn.

BẠN PHẢI TỰ BIẾT NÊN HỌC CÁI GÌ VÀ HỌC NHƯ THẾ NÀO

Hãy nhớ rằng khi bạn có tự do tuyệt đối, điều khó khắn nhất không phải là "làm gì" mà là quyết định sẽ phải làm gì.

"Bạn sẽ học cái gì đầu tiên?”, “Làm thế nào để bạn biết mình đang đi đúng hướng?", "Làm thế nào để biết là đã hoàn thành được 1 hạng mục?", v.v. Đây chỉ là một vài câu hỏi sẽ nảy sinh khi bạn bắt đầu quá trình tự học. Đây là một phần lý do tại sao tôi viết ra bản hướng dẫn từng bước cho việc học ngôn ngữ lập trình đầu tiên trong sự nghiệp ở chương "Học ngôn ngữ lập trình đầu tiên của bạn.“

Tôi luôn nói với mọi người là ai cũng muốn một cuộc sống tự do, nhưng không nhiều người có thể chịu trách nhiệm với cái tự do đấy.

Do vậy, nếu bạn không phải là người tự lập, luôn cảm thấy khó để thúc đẩy bản thân tự làm cái gì để vượt qua con đường chưa rõ ràng trước mắt, tốt nhất bạn hãy học lập trình với một sự hướng dẫn nào đó.

KHÔNG AI GIÚP BẠN TÌM VIỆC

Khi mà các trường thường không có một sự hỗ trợ mạnh mẽ nào giup sinh viên tìm việc sau khi tốt nghiệp, thì việc đi thực tập hoặc có một mạng lưới bạn bè thân quen sẽ giúp bạn tăng khả năng tìm được công việc đầu tiên lúc mới ra trường. Các chương trình boot camps thậm chí còn nhấn mạnh hơn vào tiêu chí làm việc của họ, đó là giúp sinh viên hoàn thành khoá học có một chỗ trong các công ty. Tuy nhiên, một khi bạn đã tự học, thì mọi thứ khác sẽ phụ thuộc vào chỉ bản thân các bạn.

Vậy đấy, sẽ thực sự khó để tìm được công việc đầu tiên nếu bạn tự học lập trình.” Khó ở chỗ làm sao bạn vượt qua được vòng gửi xe (tức là quét hồ sơ cá nhân - CV), chứng minh với nhà tuyển dụng rằng bạn có thể làm gì, trong khi trong tay không hề có kinh nghiệm, bằng cấp, chứng chỉ? Đương nhiên, điều này vẫn có thể làm được. Hãy đọc ở chương kế tiếp trong quyển sách này, mục "Tìm việc", nơi tôi sẽ nói chi tiết hơn về chủ đề này. Bạn dĩ nhiên nên tìm hiểu về nó trước khi dành toàn bộ thời gian và công sức cho hành trình tự học.

NHIỆT HUYẾT BAN ĐẦU CÓ THỂ NHANH CHÓNG NGUỘI LẠNH

Thực sự thì rất ít người có thể tự lên dây cót tinh thần và hoàn thành một mục tiêu nào đó trong khi chẳng có chút động lực. Khả năng này hiếm lắm, dù nó là kỹ năng vô cùng giá trị trong cuộc sống.

Nhiều người chỉ có thể làm việc gì đó khi mà họ có động lực để làm, điều thường có sẵn khi mới bắt đầu. Động lực này sẽ có khi ta đăng ký để trở thành sinh viên của một trường cao đẳng, đại học, hoặc thậm chí là học viên của một khoá học ngắn hạn 3 - 6 tháng tại một trung tâm học lập trình. Bạn sẽ cảm thấy buộc phải hoàn thành chương trình học bởi vì đã ném vào đó rất nhiều tiền, hoặc đã tốn bao thời gian học ở đấy. Cảm giác này sẽ giúp bạn tiến lên về phía trước, cho dù động lực lúc đầu đã giảm đi ít nhiều.

Hơn nữa, có bạn bè ở bên cũng giúp tiếp thêm tinh thần và sự máu lửa mỗi lúc bạn thấy mình muốn bỏ cuộc.

Chú ý rằng mọi thứ cuối cùng cũng sẽ trở nên nhàm chán. Cái mới không còn mới nữa, sự háo hức đi qua. Sẽ đến một lúc nào đấy, việc học lập trình lúc 7:30 tối, sau một ngày làm việc vất vả, không còn là một niềm vui nữa. Liệu đến lúc đó, bạn có đủ kiên trì để bước tiếp?

SỰ CÔ LẬP VỚI THẾ GIỚI

Đừng quên về chuyện bạn sẽ bị cô lập với thế giới khi tự học. Đây là một thử thách khắc nghiệt với rất nhiều người, và thường bị bỏ quên không tính đến lúc đầu. Nếu bạn đi học ở trường hoặc các trung tâm, xung quanh bạn toàn là những người đồng chí hướng, bạn có thể học cùng học, tán gẫu cùng họ, đi chơi với họ và cảm thấy mình được cân bằng.

Còn nếu tự học, lúc đầu mọi thứ có vẻ ổn, nhưng sau đó một vài tuần, khi hàng ngày tự khoá cửa trong phòng với chiếc máy tính, bạn sẽ bắt đầu thấy bứt dứt.

Cá nhân tôi thường dành rất nhiều thời gian làm việc một mình trong văn phòng, cho nên tôi rất hiểu cảm giác đó. Để vượt qua cảm giác bị cô lập, tôi cố gắng đi loanh quanh gặp gỡ bạn bè, kết nối nhiều nhất có thể. Và tôi vẫn thích đến văn phòng, xung quanh có người ra người vào, hơn là một mình một phòng suốt cả ngày.

Đây là yếu tố bạn nên tính đến trước khi quyết có nên tự học hay không.

DỄ CÓ NHỮNG LỖ HỔNG TRONG KIẾN THỨC

Kha khá các lập trình viên tự học thiếu những kỹ năng và sự hệ thống hoá mà các trường và trung tâm trang bị cho học viên của họ. Đó là bởi vì khi bạn làm việc một cách độc lập (và cô lập), tự giải các bài toán, bạn bắt đầu phát triển việc giải quyết vấn đề theo lối tư duy của mình. Việc này không hẳn là xấu, nhưng bạn sẽ khó mà hình dung được sẽ có những cách làm khác nhưng hay hơn cách của mình, những cách mà được cộng đồng chấp nhận rộng rãi, còn bạn thì không biết và không thực lòng muốn học kể cả lúc có được việc làm.