5 kỹ năng mọi coder nên phát triển

Mất bao lâu để một người trở thành coder?

Đây là câu hỏi mà tôi đã tự hỏi chính bản thân mình khi tôi đang làm việc trên website của khách hàng. Khách hàng yêu cầu tôi thực hiện một số thay đổi trên site của họ mà tôi không biết cách nào để làm. Bởi tôi bắt đầu với thiết kế web bằng cách chỉ sử dụng các themes có sẵn.

Chắc chắn là tôi có thể thêm một hình ảnh ở vị trí nào đó và thêm một số nội dung cho trang, nhưng khi nói đến những thứ như…

Định vị lại một element (phần tử) ở nơi khác trên trang hay thêm một số thứ giống trên site khác vào trang của mình thì tôi đã không thể thực hiện.

Và khi mọi thứ không nằm trong theme đã được dựng sẵn, tôi phải trình bày với khách hàng một cách “chống chế”. Nhưng điều này là tôi thật sự chán nản. Khi đó tôi tự hỏi, người ta đã làm những website này như thế nào? Đây là bước khởi đầu đưa tôi vào thế giới code.

5 điều cơ bản coder cần biết khi mới bắt đầu lập trình

1. Luôn Sẵn sàng học viết code

Sẵn sàng học viết code và yêu thích nó
Sẵn sàng học viết code và yêu thích nó

Đúng vậy, điều đầu tiên để bắt đầu học chỉ đơn giản là bạn có mong muốn học. Bạn cần bắt đầu với sự sẵn sàng, một mục tiêu và niềm tin chắc chắn. Nếu bạn bắt đầu với những nghi ngờ hay chẳng có kế hoạch thì thật khó để đạt được điều gì.

Tôi biết khi nghe đến thuật ngữ mã, mọi người thường cho rằng chỉ có thiên tài mới có thể học cách viết mã. Nhưng tôi ở đây để nói rằng tôi không phải thiên tài, tôi đã trượt môn vật lý khi còn ở trung học nhưng tôi vẫn có thể học được thứ gọi là mã hóa.

Tôi đã học được rằng code đơn giản là một ngôn ngữ giao tiếp với máy tính. Nếu bạn có thể học các khái niệm và ngữ pháp cơ bản, hay còn gọi là cú pháp của ngôn ngữ ngữ máy tính thì bạn có thể viết code.

Vì vậy, hãy đặt mục tiêu, tạo ra kế hoạch cần thiết để đạt được mục tiêu của bạn và thực hiện nó một cách nhất quán.

2. Kiên trì

Kiên trì khi học code để theo đuổi mục tiêu
Kiên trì khi học code để theo đuổi mục tiêu
  • Lần cuối cùng bạn mắc kẹt với một thứ gì đó cho đến khi bạn hoàn thành nó là khi nào?
  • Có bao nhiêu quyết tâm hàng năm bạn nói rằng sẽ thực hiện và rồi sau một vài tuần là bỏ dở?
  • Ngày một ngày hai, rồi bạn bè rủ đi chơi và tập gym không còn nằm trong danh sách ưu tiên của bạn?

Tất cả chúng ta đều làm được, tôi không khác biệt, nhưng điều gì khiến một ai đó thành công hơn những người khác?

Chìa khóa ở đây là “kiên trì”.

Làm thế nào để ai đó giỏi bất cứ điều gì trong cuộc sống? Hãy kiên định làm nó và thực hành cho đến khi nó trở thành một phần của cuộc sống bạn.

Tôi nhớ khi lớn lên, tôi luôn muốn học lái ô tô số, hoặc hướng dẫn sử dụng cho người khác. Tôi chỉ nghĩ rằng điều đó thật tuyệt. Và trong nhiều năm tôi đã bỏ suy nghĩ đó đi cho đến một lần tôi có cơ hội học từ người bạn của mình. Tôi đã học được nhưng khi vào bài kiểm tra thực tế là lái xe trên đường phố, bạn tôi ngỏ ý cho mượn xe trong ngày để đi tập thêm và tôi không muốn vì sợ hãi. Nếu xe tắt máy giữa đường thì ai có thể giúp mình.

Tuy nhiên, để đạt được mục tiêu thì tôi hiểu phải có sự kiên trì – bền bỉ. Vì vậy, tôi đã thực hiện tập luyện theo đề nghị của bạn mình. Mặc dù chiếc xe từng tắt máy trên đường nhưng tôi đã vượt qua. Bây giờ tôi đã sở hữu cho mình một chiếc xe như thế và cảm thấy rất vui vẻ mỗi khi lái nó. Nếu ngày đó không kiên trì theo đuổi việc học lái, tôi sẽ không bao giờ có được giây phút hiện tại.

Học code cũng vậy.

Khi lần đầu tiên học cách viết mã, nó có vẻ khó khăn và đáng sợ. Nhưng trong quá trình học tập liên tục mà không để sự chán nản, chống đối hay thất bại đánh gục, bạn sẽ học được cách viết code.

Sẽ có những lúc, bạn cảm thấy như “chiếc xe tắt máy khi đang lưu thông”, nhưng chỉ cần khởi động lại nó và tiếp tục.

Bạn cần biết rằng những lập trình viên có kinh nghiệm nhiều năm đôi khi cũng phải tra cứu kiến thức gì đó để tham khảo. Đó là lý do tại sao có rất nhiều tài nguyên trực tuyến giúp chúng ta trong những khoảnh khắc như vậy. Nó là một cộng đồng tuyệt vời để giúp đỡ lẫn nhau.

Nếu bạn học cách nắm bắt các kiến thức cơ bản và các nguyên tắc cơ bản, bạn sẽ bắt đầu viết code dễ dàng và tốt hơn nhiều. Hầu hết các ngôn ngữ mã hóa hoạt động dựa trên các nguyên tắc và nguyên tắc cơ bản giống nhau.

3. Thực hành có chủ ý

Thực hành có chủ ý khi code
Thực hành có chủ ý khi học code

Để theo kịp những ý tưởng hay kiên trì trong bất cứ điều gì thì cần phải thực hành. Nhưng không chỉ là thực hành tùy hứng. Hãy thực hành có chủ đích.

Có nghĩa là thực hành với mục đích trở nên tốt hơn.

Điều này có nghĩa là bạn cần thực sự luyện tập để cải thiện kỹ năng của mình và thúc đẩy cho hoạt động khó hơn. Khi hoạt động đó trở nên quen thuộc với bạn, hãy lặp lại quy trình để liên tục cải tiến và phát triển trong một kỹ năng hoặc mục tiêu cụ thể.

Một sai lầm mà chúng ta hay mắc phải là luôn muốn tạo ra những dự án lớn hơn khả năng của mình. Tuy nhiên, tôi đã gặp khó khăn ngay trong những nhiệm vụ đơn giản. Sau đó, tôi quyết định lùi lại và dành thời gian để thực hành các nguyên tắc cơ bản, và đương nhiên nó không phải chỉ là một hoặc hai lần.

Trên thực tế, những gì tôi thực sự đã làm là nghiên cứu một hướng dẫn cụ thể, thực hiện nó và xem đi xem lại, viết đi viết lại nhiều lần cho đến khi tôi có thể viết code toàn bộ dự án bằng bộ nhớ của mình. Sau khi hoàn thành code và kiểm tra xem mọi thứ đã hoạt động chưa và so sánh công việc của tôi với chỉ dẫn, tôi biết mình đã hiểu được nó.

Nhưng, điều gì đó khác đã xảy ra trong khi tôi đang cố nhớ các bước code. Tôi bắt đầu xử lý những gì mình cần tiếp theo trong code để một hàm hoạt động và hiểu được cách các phần tử cụ thể hoạt động cùng nhau. Thực hiện những điều này đã giúp tôi thay đổi cách nhìn và hiểu tất cả code.

Tôi ở đây để khuyên bạn cũng nên làm điều đó với các bài tập và nguyên tắc cơ bản về code. Người ta nói rằng sự lặp đi lặp lại sinh ra bất cứ kỹ năng nào. Vì vậy hãy tiếp tục nỗ lực cho đến khi bạn trau dồi kỹ năng của mình.

4. Nghiên cứu

Nghiên cứu giúp coder phát triển dự án và kỹ năng
Nghiên cứu giúp lập trình viên phát triển dự án và kỹ năng

Đây có lẽ là một trong những điều tôi yêu thích, và thực tế nó nên được ưu tiên số 1. Đây là một kỹ năng mà mọi lập trình viên nên biết để làm việc hiệu quả hơn.

Khi còn học đại học, tôi đã vật lộn trong nhiều năm để cố gắng tìm ra những gì sẽ làm với cuộc đời mình. Tôi đã trả tiền để được đi học nhưng không phải mọi điều chúng ta sẽ được dạy ở trường đại học. Như làm thế nào để tạo ra cuộc sống cho chính mình, hoặc ít nhất làm thế nào để có được một công việc?

Đó là lúc tôi học được rằng không phải cứ gặp khó khăn là sẽ có người đến và giúp đỡ bạn chỉ vì bạn đang cần hoặc muốn thế. Chính vì vậy, chúng ta phải tích cực theo đuổi việc tự học. Có nghĩa là hãy đặt câu hỏi, nghiên cứu, đọc sách… để đạt được điều mình mong muốn trong cuộc sống. Và khi bạn gặp khó khăn mà không biết phải làm gì, đừng quên Google là “bậc thầy” của bạn.

5. Giải quyết vấn đề

Giải quyết vấn đề là kỹ năng coder không thể thiếu
Giải quyết vấn đề là kỹ năng người viết code không thể thiếu

Bạn có khả năng tự giải quyết các vấn đề nếu tìm thấy công cụ và nguồn lực phù hợp. Tin tôi đi!

Kỹ năng mà nhiều lập trình viên phát triển là giải quyết vấn đề. Có phải bạn đang nghĩ mình không giỏi giải quyết vấn đề?

Nhưng thực tế là…

Càng chìm đắm vào thế giới mã hóa, bạn sẽ càng sớm bắt đầu thấy những điều mà trước đây bạn chưa từng có và nhìn nhận vấn đề theo cách khác. Tôi phát hiện ra điều này đúng với bản thân tôi khi bắt đầu học.

Là một người từ chối trách nhiệm khi mới bắt đầu, tôi không thực sự nghĩ mình có thể giải quyết vấn đề, nhưng càng nghiên cứu về code, tôi càng nhận ra mình có thể.

Ví dụ: khi bạn bắt đầu viết code lần đầu tiên, bạn sẽ gặp khó khăn không hiểu tại sao mã của bạn không hoạt động, hay còn gọi là một vấn đề. Vậy bạn sẽ làm gì?

Đầu tiên, bạn cần tìm ra lỗi nằm ở đâu trong code của bạn. Sau đó là xem xét và thực hiện cách tôi đề xuất bên trên – hỏi google. Nó đơn giản chính là giải quyết vấn đề. Bây giờ nhìn lại tôi biết mình đang giải quyết vấn đề hàng ngày. Và điều tuyệt vời là nó giúp bạn hiểu được mục tiêu bạn đang làm. Nếu ai đó hỏi tôi mục đích chính của việc code là gì hoặc tại sao nó được tạo ra. Tôi sẽ nói rằng người viết code đang tìm cách giải quyết một vấn đề nào đó.

“Làm thế nào để có thể tự động hóa nhiệm vụ này?” Những nhà tạo mã thường đặt câu hỏi như vậy khi gặp các vấn đề trong cuộc sống. Nghe có vẻ giống như một người lười biếng, nhưng thực sự nó làm cho cuộc sống dễ dàng hơn. Vì vậy, hãy bắt đầu đặt những câu hỏi như thế cho chính mình: “Làm cách nào để mình có thể khiến việc này trở nên tự động cho mình hoặc cho người khác?”

Công nghệ làm cho cuộc sống của chúng ta dễ dàng hơn nhiều. Và thật tuyệt vời nếu bạn chính là người tạo ra nó phải không nào?

Cuối cùng, hãy nhớ lấy 5 điều này nếu bạn muốn trở thành một coder thành công nhé: sự sẵn sàng/yêu thích, sự kiên trì, thực hành có chủ ý, nghiên cứu và giải quyết vấn đề. Tôi biết chúng nghe có vẻ không giống kỹ năng nhưng hãy tin tôi, phát triển chúng thực sự có thể góp phần phát triển kỹ năng code của bạn. Hãy coi chúng như bản đồ lộ trình để đạt được mục tiêu của bạn. Chúc bạn thành công!