Tại sao nên học viết code? –
Trong bài viết trước về “Hành Trình đi tìm chính mình”, tôi đã có đề cập đến chủ đề làm việc cùng với dữ liệu. Có rất nhiều công cụ khác nhau để bạn có thể làm việc với dữ liệu, từ những công cụ đơn giản như khi bạn viết dữ liệu ra giấy và làm việc với nó bằng tay cho đến những công cụ phức tạp như sử dụng không gian ảo (virtual reality) để mô phỏng dữ liệu (như cách mà tỷ phú Tony Stark đã làm trong bộ phim “Iron Man”). Tùy theo mục đích sử dụng, tính chất của dữ liệu cũng như sở thích và khả năng của bản thân, bạn sẽ tự lựa chọn được công cụ phù hợp cho riêng mình.
Do hoàn cảnh cũng như tính chất công việc của tôi, tôi đã chọn cách viết code. Vì chỉ khi viết code, tôi mới có khả năng xử lí một lượng dữ liệu khổng lồ và hơn thế nữa, viết code còn cho tôi khả năng tự động hóa quy trình làm việc, khiến tôi tiết kiệm được vô số thời gian.
Tôi đã đến với việc viết code như thế nào? –
Mọi chuyện tùy duyên, việc viết code nó cũng đến với tôi như một cái duyên vậy. Công việc làm thêm đầu tiên khi tôi còn đang cắp sách đến giảng đường là ở trong bộ phận Controlling của một công ty nhỏ nằm gần khu tôi ở. Tại đây, tôi có một công việc thường nhật, đó là tổng hợp dữ liệu từ nhiều file Excel khác nhau vào cùng một chỗ, để tiện cho việc chúng tôi viết báo cáo. Vì nó là một công việc lặp đi lặp lại, sếp tôi khi đó đã gợi ý cho tôi áp dụng VBA (một ngôn ngữ lập trình trong các ứng dụng của Microsoft) để tự động hóa công việc này. Vì tôi vốn “lười” mà lại thích tìm hiểu về cái mới, rồi cũng vừa hay là ở trường tôi đã được học qua về ngôn ngữ này, nên tôi lập tức đồng ý với sếp. Và đó cũng là lần đầu tiên tôi được trải nghiệm việc viết code.
May mắn hơn nữa là trong những chặng đường tiếp theo trong sự nghiệp của tôi, tôi luôn có cơ hội được đối mặt với nhiều trường hợp khác (use cases), nơi mà tôi có thể sử dụng công cụ viết code để đem lại nhiều giá trị tốt cho nhà tuyển dụng. Theo đó, tôi cũng được nâng cao kỹ năng viết code của bản thân và được cọ sát với nhiều ngôn ngữ viết code khác nhau. Tới thời điểm hiện tại, tôi rất biết ơn những trải nghiệm này, vì nó đã giúp tôi đến với một hoạt động bổ ích và bản thân tôi cũng nhận ra là tôi đã tìm được niềm vui trong hoạt động này.
Tôi đã học viết code như thế nào? –
Tôi không được học viết code một cách bài bản, vì vậy so với chuyên gia trong lĩnh vực tin học thì trình độ viết code của tôi không đáng nhắc tới. Tuy vậy, khả năng viết code của tôi cũng vừa đủ để thỏa mãn những tác vụ mà tôi cần dùng. Vì vậy, tôi vẫn muốn chia sẻ cho các bạn những kinh nghiệm học viết code của tôi nhưng dưới góc nhìn của một phàm nhân.
1. Hãy thay đổi cách tư duy
Trước khi bắt tay vào việc viết code thì tôi nghĩ chúng ta nên hiểu cách mà máy tính hoạt động. Tạm bỏ qua về chủ đề trí tuệ nhân tạo, thì máy tính của chúng ta vốn là một vật vô tri. Vì vậy, chúng ta cần phải hiểu rõ rằng nhận biết của nó là có hạn và (thông thường) nó sẽ chỉ hiểu những gì mà chúng ta định nghĩa cho nó cũng như làm những việc mà chúng ta giao cho nó. Hơn thế nữa, máy tính không thể tự đưa ra cách giải quyết vấn đề mà nó chỉ có thể dựa vào những chỉ dẫn của chúng ta mà vận hành. Vì lí do này, “giao việc” cho một chiếc máy tính sẽ có những điểm khác biệt so với một con người và do đó, chúng ta không thể áp dụng cùng một tư duy cho hai đối tượng này. Những điều trên thoạt nghe thì nó là những điều rất hiển nhiên, nhưng đối với tôi, đó là bước đầu tiên khi bắt đầu với hành trình viết code bởi trong suy nghĩ của tôi, việc viết code nó cũng như một cách giao tiếp với máy tính, chỉ khi chúng ta nắm rõ cách vận hành của nó và thay đổi được tư duy của mình, thì việc giao tiếp mới trở nên hiệu quả.
2. Hãy nghĩ ra cách giải quyết vấn đề
Mặc dù máy tính giỏi hơn chúng ta ở rất nhiều tác vụ, nhưng như đã nói ở phần trên, ít nhất là khi chúng ta chưa “dạy” nó, thì máy tính sẽ không thể tự mình đưa ra cách giải quyết vấn đề. Do đó, khi chúng ta gặp phải một vấn đề, hãy tự ngồi suy nghĩ về những cách có thể làm để hóa giải vấn đề đó. Sau đó, hãy chọn cách giải quyết tối ưu nhất và chia cách giải quyết đó thành những bước nhỏ dọc theo một quy trình. Từ đó, chúng ta có thể “dạy” chiếc máy tình làm sao để có thể thực hiện từng bước nhỏ và đi đến kết quả mà chúng ta mong muốn.
3. Hãy học cách giao tiếp với máy tính
Cuối cùng, sau khi chúng ta đã hiểu hơn về máy tính cũng như nghĩ ra hướng giải quyết vấn đề. Bước tiếp theo sẽ là học cách giao tiếp với máy tính bằng ngôn ngữ của nó. Có rất nhiền ngôn ngữ khác nhau để giao tiếp với máy tính, nhưng tôi nghĩ có 2 cách chung để học những ngôn ngữ này (hay con gọi là ngôn ngữ lập trình):
- Cách 1 – Học ngôn ngữ lập trình trọn vẹn từng bước: Nghĩa là bạn sẽ tìm một khóa học về ngôn ngữ đó và học theo giáo trình. Ưu điểm của việc học theo cách này là nó sẽ cho bạn một nền tảng vững vàng nhưng nhược điểm của nó là quá trình học sẽ khá lâu và nếu không được tiếp xúc với vấn đề thực tiễn thì sẽ rất khó hình dung ra cách để vận dụng nó.
- Cách 2 – Học đi cùng với thực tiễn (learning by doing): Nghĩa là sau khi bạn đã định rõ ra những bước để giải quyết vấn đề, bạn sẽ chỉ tập trung học cách viết code cho những bước đó. Ưu điểm của cách này là sát với thực tiễn và nhanh có được kết quả, khiến bạn không bị chán nản trong quá trình học. Nhưng nhược điểm của nó là khi bạn chưa có căn bản vững chắc, thì quá trình tìm kiếm sẽ khá gian nan. Hơn nữa, đối với những ngôn ngữ lập trình phức tạp thì cách này chưa chắc đã hiệu quả khi bạn thiếu kiến thức căn bản.
Sau khi tự học một số ngôn ngữ lập trình, thì mình rút được những kinh nghiệm như sau:
- Hãy bắt đầu với ngôn ngữ gần gũi với bạn nhất hoặc dễ học nhất. Khi bạn đã thành công học được một ngôn ngữ, thì ngôn ngữ thứ 2 sẽ dễ dàng hơn rất nhiều vì chí ít thì bạn cũng đã học được cách vận hành của máy tính và thay đổi được tư duy cũng như biết được những từ khóa cần sử dụng để tìm kiếm kiến thức mới.
- Thay vì chỉ học theo cách 1 hay cách 2 ở trên, hãy kết hợp cả 2 cách cùng một lúc. Hãy sử dụng cách 2 để tiếp cận vấn đề và sử dụng cách 1 như một công cụ tra cứu. Như vậy, bạn có thể có được ưu điểm của cả 2 cách cũng như hạn chế được những khuyết điểm của nó.
- Hãy tập trung vào kết quá nhiều hơn là cách làm. Có rất nhiều cách khác nhau để viết code cho một vấn đề giống nhau và sẽ có những cách viết tối ưu hơn những cách còn lại. Tuy nhiên, khi mới bắt đầu, hãy bỏ qua việc đánh giá cách viết của mình, vì kể cả những cách viết không tối ưu cũng có thể dạy cho bạn những bài học quý báu về viết code. Hơn nữa, chí ít là đối với tôi, thì thành công sẽ được tạo ra từ những chiến thắng nhỏ và những chiến thắng nhỏ này sẽ là động lực để mình tiến xa hơn.
Tổng kết
Trong chủ đề tự học viết code này, tôi muốn tóm gọn lại bài viết với những ý sau đây:
- Viết code là một trong những công cụ hữu hiệu để làm việc cùng dữ liệu. Trong thời đại số hóa, khi lượng dữ liệu cứ tăng dần, thì kỹ năng viết code lại càng trở nên quan trọng
- Theo ý kiến chủ quan tôi, thì trước khi hay trong khi học viết code, chúng ta nên học cách để thay đổi tư duy và cách chia nhỏ từng bước để giải quyết vấn đề.
- Có nhiều cách để học giao tiếp với máy tình bằng viết code, hãy tự chọn cho mình cách học hiệu quả nhất nhưng hãy bắt đầu càng sớm càng tốt.

Leave a comment