Học lập trình đơn giản mà? Đừng tin

0
432
Khóa học lập trình online cực rẻ trên Unica

Khi bạn thử tìm kiếm các khóa trên mạng, các lời khuyên từ nhiều tiền bố thì chắc hẳn gặp nhiều lời quảng cáo như: Học lập trình đơn giản, chỉ cần nhìn ví dụ là code ầm ầm, hay tự học lập trình chỉ với vài tiếng đồng hồ…

Thực ra thì luận điểm học một kỹ năng mới, cụ thể là lập trình thì có rất nhiều quan điểm: người thì học lập trình cảm thấy dễ dàng, đơn giản. Người thì lại cực kỳ vấn vả, gian nan… Mỗi quan điểm đều có cái đúng của nó.

c
Liệu học lập trình có thật sự đơn giản như bạn nghĩ?

Dựa vào kinh nghiệm thực tế bản thân của mình thì thấy học lập trình không dễ, cũng không khó. Chỉ cần bạn có 2 yếu tố này là bạn có thể trở thành một developer giỏi, đó là: thích lập trình và chăm chỉ.

Dưới đây là những chia sẻ về những bài học và trải nghiệm học lập trình của mình.

Lưu ý: Bài viết này chỉ thể hiện quan điểm cá nhân, không phải triết lý được kiểm chứng cho tất cả mọi người. Chỉ để tham khảo thôi nhé

#Học lập trình đơn giản thật không?

Một trong những “tiêm nhiễm” phổ biến nhất của những bạn mới học lập trình từ các nhà tiếp thị đó là: Học lập trình đơn giản.

Bạn cứ thử tìm các khóa học dạy lập trình trên mạng xem. Đập vào mắt là những lời quảng cáo như thế này:

Rất nhiều lời quảng cáo rằng học lập trình đơn giản
Rất nhiều khóa học giúp bạn học lập trình nghĩ là dễ. Liệu có đúng không?

Trong đầu bạn sẽ có luồng suy nghĩ như thế này:

Suy nghĩ về học lập trình

Hầu hết các ngôn ngữ lập trình đều không yêu cầu một người thật sự xuất chúng mới học được. Nhưng trong thế giới lập trình, nó lại rất lộn xộn, lộn xộn tới mức mà bạn không thể tưởng tượng được.

Có hàng ngàn blog dạy lập trình, lớp học trực tuyến, rồi đến cả các trung tâm học offline…nhằm mục đích lôi kéo học viên với một lời hứa về một quy trình học, mà chỉ cần theo một thời gian ngắn là thành chuyên gia.

Nhưng họ thường né tránh nói về sự tẻ nhạt của việc viết code, của debug, rồi “xì tress” khi bất thình bị lỗi không hiểu vì sao?…

Họ cũng không nói với bạn biết rằng, học lập trình cần rất nhiều kỹ năng. Ví dụ như kỹ năng search trên Google, kỹ năng kiếm mã nguồn mở, rồi kiểm chứng chúng có thật sự tốt hay không?v.v…

Trải nghiệm của bản thân

Để mình kể trải nghiệm của bản thân khi mình chuyển sang học lập trình iOS cách đây 1 năm!

Hồi mới tốt nghiệp đại học, mình biết lập trình Android, và mình quyết định thử sức với lập trình iOS, nghe mọi người bảo là chỉ biết một loại ngôn ngữ thì việc chuyển sang ngôn ngữ khác rất đơn giản. Do vậy, mình khá tự tin khi bắt đầu nghiên cứu về lập trình iOS.

Nhưng khi bắt tay vào học thì mới thấy nó khó khăn thế nào. Đầu tiên là việc làm quen với Xcode, nó khác xa so với Android Studio. Sau đó tiếp đến là việc thiết kế layout trong Xcode nó cũng “dị” so với thói quen làm xml trên Android…

Mình bắt đầu cảm thấy bối rồi, bực bội với chính bản thân mình.

Điều mình quên mất đó là tâm lý của lập trình viên thường có cảm giác không thỏa mãn. Là một lập trình viên, họ có vô số thứ để học.

Bạn có thể trở thành một chuyên gia về một ngôn ngữ, một framework. Nhưng nếu công việc của bạn chỉ bó buộc bạn vào một ngôn ngữ, một kỹ thuật, một framework… đó là lúc bạn cảm thấy chán nản bản thân, chán nản công việc. Và rất nhiều bạn nghỉ việc ở công ty đó với cùng một lý do: Công việc quá nhàm chán, không có gì mới để học.

Theo nghiên cứu của nhà tâm lý học Mihaly Csikszentmihalyi thì đây là sơ đồ diễn biến tâm lý với quá trình học tập của bạn.

Tâm lý khi học lập trình

>> Đọc thêm: 3 kinh nghiệm học lập trình cực nhanh

#Kinh nghiệm để học lập trình bớt khó khăn hơn

Với kinh nghiệm bản thân, mình có một vài điều muốn chia sẻ để việc học lập trình bớt gian nan hơn.

Step 1: Làm theo một tutorial nào đó

Mình là người rất thích học một kỹ năng mới thông qua các tutorial. Do vậy, mình sẽ cố gắng làm theo từng bước được hướng dẫn trong tutorial. Kể cả có những chỗ mình không hiểu bước đó để làm gì.

Thông qua từng bước làm theo tutorial, bạn sẽ cảm nhận được những điều làm được bởi một ngôn ngữ lập trình mới/framework.

Phần này có thể bạn sẽ cảm thấy dễ dàng. Vì đơn giản là bạn chỉ đang làm theo người khác, chưa phải suy nghĩ nhiều.

Step 2: Cố gắng tạo “biến thể” của bài hướng dẫn.

Sau khi bạn đã hoàn thành bài tutorial ở bước trên, đây là lúc bạn cần suy nghĩ một chút. Cố gắng tự thực hiện lại mà không đọc hướng dẫn. Hoặc thêm thắt tính năng cho bài hướng dẫn theo ý hiểu của mình.

Ví dụ, bạn đọc bài viết về: tạo website với Node.Js chẳng hạn. Sau khi bạn hoàn thành như hướng dẫn. Đầu tiên, bạn hãy tự làm lại mà không đọc tutorial. Sau đó bạn có thể suy nghĩ xem mình có thể tự thêm tính năng nào mới nào, như tính năng đăng nhập, xóa profile…

Có thể bạn làm chậm và mất thời gian, nhưng hãy cứ kiên trì, đừng sốt ruột. Ai cũng vậy mà.

Step 3: Suy nghĩ về một thứ gì đó đơn gian mà bạn muốn làm

Lúc này, bạn cũng biết một kiến thức nhất định với một ngôn ngữ/framework mới, bạn thử nhìn xung quanh xem có thứ gì đó đơn giản để bạn có thể làm và ứng dụng điều vừa mới học được hay không?

Nếu có chợt nhận ra mình không biết làm gì cả [cảm thấy thất vọng với bản thân]. Thì cũng đừng bỏ cuộc, mình cũng từng như thế.

Step 4: Tìm một tutorial mới liên quan đến dự án

Lúc này, khi đã có ý tưởng để làm, bạn tiếp tục tìm kiếm những tutorial có liên quan đến dự án. Hoặc một phần dự án được xác định ở bước 3.

Hi vọng bạn đọc các tutorial mới này sẽ cảm thấy thân quen hơn, không còn quá lạ lẫm. Vì dù sao, ở step 1 đã giúp bạn phần nào rồi.

Trong lúc làm, nếu có khó khăn có thể nhờ sự trợ giúp qua: Stackoverflow, group trênfacebook, hoặc nhờ mình trên vntalking…

Cứ lặp lại các bước trên cho đến khi bạn cảm thấy tự tin về bản thân.

#Tạm kết

Để kết thúc bài viết này, mình chỉ muốn nói với các bạn rằng: trên thế giới này không có gì là dễ dàng cả. Chỉ có chăm chỉ mới giúp bạn đặt được điều mong muốn.

Vì vậy, giờ có ai nói với bạn: Học lập trình đơn giản lắm –> đừng tin nhé!

Hi vọng bài viết này sẽ giúp bạn giải trí và rút ra được điều gì đó cho bản thân. Tiếp tục ủng hộ VNTALKING nhé!

Bình luận. Đặt câu hỏi cũng là một cách học

avatar
  Theo dõi bình luận  
Thông báo