Bức hình này sẽ thay đổi các bạn viết code
Bài dịch từ trang Medium.FreeCodeCamp Gần đây, một số hình ảnh tuyệt vời thuộc về một số công nghệ khác nhau được các web developers sử dụng năm 2017 đã xuất hiện trên Interwebs. Một trong số chúng (hướng tới backend developers) được mô tả ở trên. Đây là những resources rất ổn cho cả người mới ...
Bài dịch từ trang Medium.FreeCodeCamp Gần đây, một số hình ảnh tuyệt vời thuộc về một số công nghệ khác nhau được các web developers sử dụng năm 2017 đã xuất hiện trên Interwebs. Một trong số chúng (hướng tới backend developers) được mô tả ở trên. Đây là những resources rất ổn cho cả người mới bắt đầu và các chuyên gia. Họ xác định rõ những công nghệ nào bạn nên biết nếu bạn muốn nhận công việc làm web developer hàng đầu, backend web developer hoặc system administrator. Nhưng tôi nghĩ rằng chúng rất có ích cho người mới bắt đầu học code. Lý do là Tôi đã lập trình trong hơn 15 năm (bắt đầu với các trò chơi QBASIC lúc tuổi 8). Tôi coi mình là một full stack web developer, và như vậy, mọi thứ được hiển thị trong tôi theo cách này hay cách khác. Bây giờ thì hãy nhìn vào bức ảnh kia. Nhìn trông khá đáng sợ phải không ? Nhưng nó không phải là một thứ bản đồ để nói lên rằng bạn phải biết tất cả để trở thành một developer. Không có gì đâu ! Có phải bạn thật sự nghĩ rằng tôi hoặc bất kì developer nào khác cũng thực sự biết cách sử dụng tất cả những thứ trên ?
Điều này chẳng thể sảy ra đâu.
Khi bạn mới bắt đầu viết code, bạn thật sự sẽ bị "ngợp". Bạn được nghe kể về những sinh viên có thể code trên 10 ngôn ngữ khác nhau, gặp một chuyên gia về Linux, hoặc cố gắng theo kịp tốc độ truyền tải bởi giảng viên của bạn thông qua hàng chục các khái niệm khác nhau về khoa học máy tính. Và như hàng ngàn người khác, bạn có thể mắc phải một sai lầm rất có thể hiểu được: bạn nghĩ bạn nên biết tất cả mọi thứ cần biết về lập trình. Bạn không cần phải làm thế, và cũng chẳng ai chờ đợi bạn làm được như vậy.
Ngay cả sau nhiều năm làm developer, tôi chỉ biết một phần nhỏ các công nghệ trong những bức ảnh ở mức độ "expert". Tôi thậm chí không biết một vài trong số chúng! Tôi đã sử dụng có thể một nửa trong số chúng ở lúc này hay lúc khác, nhưng 75% sử dụng có lẽ là dưới một giờ trong cuộc sống của tôi. Nhưng nếu bạn ngồi xuống và tìm hiểu bất kì cái gì đó trong một giờ, có thể tôi sẽ sử dụng được nó. Lý do là bởi vì tôi biết cách học và tìm hiểu như một developer.
Với tư cách là một developer, bạn sẽ luôn thất bại nếu bạn lúc nào cũng cố gắng cập nhật mọi công nghệ mới. Có quá nhiều sự thay đổi trong một thời gian ngắn. Tốt nhất, bạn nên chọn một vài công nghệ và luôn cập nhật chúng. Vì vậy, thay vì dành thời gian để học mọi ngôn ngữ lập trình và công nghệ, bạn nên học cách học như một developer. Đây là những điều bạn nên nghi nhớ:
Học cách đọc Documentation Hãy thử đọc một vài ví dụ của Python và Golang đi. Tìm kiếm sự tương đồng, các đoạn code ví dụ, tóm tắt ngắn gọn và typed interfaces. Đây là câu trả lời tốt nhất cho các câu hỏi:
- Thư viện này có thể làm những gì tôi muốn ?
- Làm sao tôi có thể làm được những gì tôi muốn ?
- Có cách nào tốt hơn để đạt được mục tiêu mà tôi có trong đầu?
Học cách đọc source code Hãy đọc thử một đoạn JSON encoder trong Python. Nếu một phần thư viện này không chạy như cách bạn muốn, hoặc thiếu tài liệu, đọc được source code sẽ cung cấp cho bạn những gì bạn muốn ở dạng dễ tiếp cận hơn. Một vài thủ thuật ở đây là:
- Tìm kiếm trên Github
- REPLs cho phép bạn xem source code
- Cloning open source projects và thử debug chúng xem chúng hoạt động ra sao
Học cách debug code Debuggers. Break. Print. Học cách sử dụng những thứ này để trau dồi các vấn đề trong code của bạn, bởi vì đó là những gì bạn sẽ dành phần lớn thời gian của mình đang làm. Một số điều hữu ích cần lưu ý là:
- Khi bạn bắt đầu sửa bug, hãy nghĩ thoáng một chút. Có phải tất cả đều là do code, nhưng server thì vẫn đang chạy ? Dữ liệu không đúng định dạng ? Nếu bạn không nhận thấy cái gì đó sai sai thì bạn đang tìm nhầm chỗ rồi.
- Hãy nghỉ ngơi một lúc khi đang debug, vì khi debug bạn có thể chỉ nhìn vào một hướng mà bạn đã tự xác định trước đó. Đây thật sự là điều không tốt khi bạn có thể bỏ sót một số điều khác. Để khám phá ra chúng, đừng bao giờ quên rằng bộ não của bạn chủ yếu chỉ là "một chuỗi" dây kết nối, vì vậy nếu bạn đi quá xa một con đường, thật khó để nhảy đến một con đường song song có thể là con đường bạn đang thực sự tìm kiếm. Vì vậy, hãy đứng lên, suy nghĩ về cái gì khác, và để cho bộ não của bạn thiết lập lại. Khi bạn trở lại, bug sẽ được nhìn chằm chằm vào mặt bạn. Đảm bảo là như vậy.
- Những dòng code gần như luôn luôn đúng. Nó làm chính xác những gì bạn đã nói với nó, đó là cả một phước lành và một lời nguyền. Bạn chỉ cần tìm nơi bạn (hoặc ai đó - nhìn bạn Steve!) Nói với nó để làm điều sai trái.
Học cách hỏi Có rất nhiều nơi tuyệt vời để được trợ giúp khi bạn bị mắc kẹt. Thứ tự của tôi thường là:
- StackOverflow (thường thì thấy từ Google)
- Phần issues của các thư viện trên Github
Khi bạn yêu cầu người khác giúp đỡ, đây là một số điều cần nhớ:
- Những người giúp bạn sẽ không biết nhiều về vấn đề cụ thể của bạn. Cung cấp cho họ bối cảnh cần thiết, nhưng đừng nhiều quá. Điều này đôi khi có thể có nghĩa là bao gồm các phần code của bạn, nhật ký ứng dụng, cấu hình chương trình hoặc bất kỳ sắc thái cụ thể nào đối với trường hợp sử dụng của bạn.
- Giữ nó thật clean. Thật khó để đọc một báo cáo lỗi đầy các lỗi chính tả, code không có định dạng và không bao giờ có kết thúc khi mô tả một vấn đề.
- Không đăng các dữ liệu nhạy cảm (code dự án ở công ty chẳng hạn). Hãy kiểm tra bài đăng của bạn về mật khẩu, truy cập mã và dữ liệu người dùng. Và nếu bạn phạm sai lầm, hãy chịu trách nhiệm và giải quyết nó nhanh nhất có thể.
Cuối cùng Là một developer, có quá nhiều nơi để làm chủ mọi thứ. Tìm hiểu cách bạn làm việc tốt nhất với tư cách là một developer, xây dựng một bộ công cụ phù hợp với bạn và đừng cố gắng có tất cả các câu trả lời. Tập trung vào việc tìm hiểu cách tìm câu trả lời một cách nhanh chóng. Cho dù bạn chỉ bắt đầu code hoặc ngón tay của bạn đã được mòn bởi bàn phím cơ khí của bạn, tôi hy vọng bài đăng này đã được hữu ích cho bạn. Hãy nhớ rằng: Không ai mong bạn biết tất cả mọi thứ. Thoải mái đi, và không bao giờ ngừng học tập.
Happy coding!