STARTECH AT CO.,LTD

Chào mừng bạn đến với StarTech AI
Developer

Thói quen của các kỹ sư phần mềm giỏi

stressful-professional-male-geek-concentrated-monitor-modern-laptop-wears-optical-glasses-poses-coworking-space-against-blue-background

Vai trò của nhà phát triển phần mềm thường được cô đọng thành một hoạt động đơn lẻ: viết mã. Mặc dù không thể phủ nhận mã hóa là nhịp tim của nghề nghiệp, nhưng việc xác định một nhà phát triển chỉ bằng hành động này cũng giống như định nghĩa một họa sĩ bằng khả năng pha trộn màu sắc của họ. Đó là một phần quan trọng nhưng chỉ là phần nổi của tảng băng chìm. Bản chất thực sự của vai trò nhà phát triển phần mềm là sự kết hợp của nhiều kỹ năng, tư duy và nguyên tắc khác nhau.

Hãy tưởng tượng một thế giới nơi mọi nhà phát triển phần mềm chỉ là một lập trình viên. Trong một thế giới như vậy, mã có thể được viết ra, nhưng liệu nó có giải quyết được vấn đề gì không? Liệu mã này có hữu ích hay chỉ là một cách triển khai thứ gì đó lạ mắt ? Sự khác biệt giữa một nhà phát triển và một nhà phát triển giỏi là chiều rộng và chiều sâu trong cách tiếp cận của họ trong việc mang lại giá trị.

Tôi muốn nói nhiều hơn về điều gì tạo nên một nhà phát triển phần mềm giỏi. Thói quen của các nhà phát triển hiệu quả cao là gì? Và tôi sẽ không nói về việc viết mã (quá nhiều).

Dành cho những ai muốn biết liệu có giá trị hay không trước khi cuộn xuống

Tôi nói về:

  1. Tập trung ngoài mã – với tư cách là nhà phát triển, bạn sẽ viết mã 20% thời gian của mình. Tuy nhiên, bạn nên giỏi về viết mã, nhưng nó sẽ không đủ để trở nên xuất sắc.
  2. Hiệu quả/Khả năng cải thiện nghịch cảnh — Đảm bảo mọi thứ xung quanh bạn diễn ra suôn sẻ và có đà tiến về phía trước
  3. Niềm vui mày mò – xây dựng dự án, thử các framework, xây dựng các công cụ phụ. Giữ tia lửa sống.
  4. Biết lý do tại sao – Điều quan trọng là phải biết tại sao mã của bạn lại hoạt động như vậy, ngày nay có quá nhiều khái niệm trừu tượng mà hiếm khi ai đó nghĩ dưới mức ngôn ngữ của họ, ví dụ: các nhà phát triển JS không nghĩ về công cụ chạy mã của họ.
  5. Suy nghĩ theo hệ thống – biết mã của bạn tác động như thế nào không chỉ đến hệ thống cá nhân của bạn mà còn các phần khác của doanh nghiệp/ứng dụng/cuộc sống.
  6. Giải độc công nghệ – Việc sạc lại từ màn hình giúp bạn trở thành một lập trình viên giỏi hơn.
  7. Nghệ thuật tính gần đúng – Biết các số công nghệ quan trọng để tính toán gần đúng khi đưa ra quyết định khi lập trình.
  8. Nếu điều này nghe có vẻ thú vị thì còn có một vài điều tương tự ở phía dưới. Nhưng bạn sẽ phải đọc nó.

Tuyên bố miễn trừ trách nhiệm: Suy nghĩ hoàn toàn chủ quan, suy nghĩ của bạn có thể khác.

Tập trung ngoài mã

Viết mã đối với một nhà phát triển cũng giống như một chiếc bút vẽ đối với một họa sĩ hay một cái đục đối với một nhà điêu khắc. Nó là công cụ chính, kỹ năng nền tảng để xây dựng mọi thứ khác. Mọi ứng dụng, mọi trang web và mọi giải pháp kỹ thuật số đều bắt đầu bằng một dòng mã. Ai đó đã viết nó. Bạn có thể viết nó hàng ngày là tốt.

Tuy nhiên, mặc dù việc viết mã là cơ bản nhưng điều cần thiết là phải nhận ra rằng đó không phải là mục đích thực sự. Đó là về việc viết những dòng mã có ý nghĩa . Đó là về việc giải quyết vấn đề với mã. Một dòng mã sẽ chẳng có ý nghĩa gì nếu không có ngữ cảnh cho nó.

Trở thành một nhà phát triển giỏi có nghĩa là phải viết mã hiệu quả. Đó không phải là thứ bạn có thể bỏ qua. Đó là tấm vé vào thế giới phát triển phần mềm. Nhưng điều phân biệt giữa điều tốt và điều tuyệt vời là khả năng nhìn xa hơn những dòng mã trực tiếp. Nó sẽ tương tác với các thành phần khác như thế nào? Nó sẽ mở rộng quy mô như thế nào? Làm thế nào có thể duy trì được nó? Đây là những câu hỏi mà một nhà phát triển phần mềm giỏi thường xuyên phải giải quyết.

Chúng ta sẽ không đi quá sâu vào việc viết mã; ngoài kia có những giáo viên giỏi hơn tôi, những người chia sẻ kiến thức thực tế về cách làm chủ máy móc. Dưới đây là một số cuốn sách hoàn toàn về viết mã/lập trình sẽ nâng cao kỹ năng của bạn vô cùng:

(không phải liên kết liên kết, không kiếm tiền ở đây)

Theo đuổi hiệu quả

Tất cả những nhà phát triển giỏi nhất mà tôi từng gặp đều làm việc rất hiệu quả. Tôi không biết họ làm được điều đó như thế nào nhưng có vẻ như họ luôn đi trước bạn một bước. Đó là cảm giác khi bạn ở gần họ; sự tiến bộ được cảm nhận trong không khí. Mọi thứ diễn ra suôn sẻ – các thách thức được giải quyết kịp thời và mọi thứ đều được kiểm soát và hướng tới mục đích mà kỹ sư đã đặt ra.

Cảm giác tuyệt vời.

Một số người có thể lập luận rằng hiệu quả = ngược lại với sự ổn định . Nhưng đây không phải là loại hiệu quả mà tôi đang nói đến. Tôi đang nói nhiều hơn về Khả năng cải thiện nghịch cảnh . Không chạy xung quanh và làm mọi thứ nhanh nhất có thể. Bạn không cần phải đánh đổi bằng cách giảm bớt những khoảng đệm mà bạn có và hãy thận trọng khi thực hiện những thay đổi làm giảm khả năng phục hồi của bạn trước những điều không mong đợi.

Vì vậy, chúng ta đang nói về việc duy trì hiệu quả. Về cốt lõi, hiệu quả là sự tiến bộ – động lực, đảm bảo rằng các bánh xe phát triển luôn quay. Để làm rõ điều tôi đang nói, chúng ta hãy nhìn vào điều ngược lại. Mọi nhà phát triển đều biết cảm giác bị “mắc kẹt” – cho dù đó là một lỗi đặc biệt khó khăn – khi bạn bắt đầu nghi ngờ năng lực của mình hoặc một đoạn mã không hợp tác. Sự tiến bộ dường như đã dừng lại. Trong trường hợp này, việc theo đuổi tính hiệu quả có nghĩa là không để những trở ngại này cản trở bạn. Đó là việc bạn phải tự mình suy nghĩ, tìm kiếm nguồn lực để giải quyết vấn đề, tìm giải pháp thay thế và giữ mục tiêu cuối cùng trong tầm mắt.

🏄 Hãy coi đó là việc áp dụng tư duy chủ động, trong đó làm điều gì đó – ngay cả khi nó không trực tiếp giải quyết được vấn đề của bạn – vẫn tốt hơn là không làm gì cả.

Điều này có nghĩa là chia một vấn đề phức tạp thành các nhiệm vụ nhỏ hơn, dễ quản lý hơn. Nó có nghĩa là tìm kiếm ý kiến ​​đóng góp từ đồng nghiệp khi bạn cảm thấy bế tắc hoặc tạm thời gác lại một nhiệm vụ đầy thách thức để tập trung vào khía cạnh khác của dự án. Điều quan trọng là duy trì đà tiến về phía trước với những bước tăng nhỏ.

Bạn có thể nói: “Giải quyết những vấn đề khó khăn cần có thời gian. Bạn không nên vội vàng”. Và bạn sẽ đúng. Giải quyết các vấn đề phức tạp đòi hỏi rất nhiều thời gian. Nhưng ngay cả việc giải quyết một vấn đề lớn cũng có động lực tiến lên – Ví dụ: nhận được một ngoại lệ mới sau nhiều giờ gỡ lỗi là lý do để ăn mừng khi bạn tiến gần hơn đến việc tìm ra vấn đề.

Niềm vui của việc mày mò

Tôi sẽ thành thật mà nói: những nhà phát triển giỏi không chỉ có kỹ năng hay kiến ​​thức; họ đam mê. Mắt họ sáng lên khi nhắc đến một ngôn ngữ lập trình mới. Họ dành hàng giờ để đào sâu vào một vấn đề đầy thử thách không chỉ vì họ phải làm vậy mà còn vì họ muốn làm vậy. Họ bị thúc đẩy bởi sự tò mò vô độ, khao khát được biết nhiều hơn, làm được nhiều hơn và đạt được nhiều hơn.

Tôi không có ý gì chê bai những người không đam mê lập trình; không sao đâu, nhưng những người này cũng sẽ không theo đuổi sự vĩ đại khi làm công việc 5-9.

Niềm đam mê này thể hiện theo nhiều cách khác nhau, nhưng một trong những cách thể hiện rõ ràng nhất là niềm vui khám phá. Những nhà phát triển vĩ đại thực chất là những nhà thám hiểm. Họ không hài lòng với việc chỉ biết các công cụ và công nghệ ngày nay; họ luôn tìm kiếm những gì ở phía chân trời. Họ mày mò, họ thử nghiệm, họ chơi đùa. Cho dù đó là một khuôn khổ mới, một thuật toán mới hay một xu hướng công nghệ mới nổi, họ đều lao đầu vào, ham học hỏi, hiểu biết và nắm vững.

Đây là George Hotz đang có khoảng thời gian tuyệt vời khi mày mò với LLaMa và xây dựng một chatbot, bạn có thấy niềm vui khi anh ấy viết mã không? Tôi thấy điều này thật tuyệt.

Kiểu mày mò này giữ cho tia lửa luôn sống động. Trong một lĩnh vực rộng lớn và không ngừng phát triển như phát triển phần mềm, bạn rất dễ cảm thấy choáng ngợp hoặc mắc kẹt trong lối mòn. Tuy nhiên, bằng cách khơi dậy sự tò mò và tích cực tìm kiếm những thách thức và cơ hội học tập mới, các nhà phát triển có thể giữ được kỹ năng sắc bén và sự nhiệt tình cao.

Hơn nữa, cuộc khám phá này còn có một giá trị sâu sắc hơn, nội tại hơn: niềm vui tuyệt đối của quá trình này. Tôi nghĩ các nhà phát triển giỏi cũng thích đam mê lập trình. Về mặt cá nhân, tôi có thể nói với bạn rằng tôi không thể nhìn thấy cuộc sống của mình nếu không có một loại chương trình nào đó.

Biết lý do tại sao

Ngày nay, các nhà phát triển thường thấy mình mải mê với các lớp hoặc thành phần cụ thể, có thể là hoàn thiện yêu cầu API REST hoặc tinh chỉnh CSS cho thiết kế web hoàn hảo đó. Chúng ta đã đạt được mức độ trừu tượng rất cao trong khoảng một thập kỷ qua. Không ai viết hợp ngữ và nhiều nhà phát triển thậm chí chưa bao giờ nhìn thấy nó. Các nhà phát triển thường chỉ làm việc với những gì họ có và không đặt câu hỏi tại sao nó lại hoạt động như vậy. Có một lớp hiểu biết cơ bản thường bị bỏ qua: biết tại sao mọi thứ lại diễn ra như vậy.

Bây giờ, lập luận hợp lệ là nhà phát triển không cần phải là chuyên gia ở mọi lớp của ngăn xếp. Người ta không cần phải theo dõi hành trình từ bảng mạch đến bit và byte cho mỗi dòng mã được viết. Nhưng có được sự hiểu biết nền tảng và cảm nhận được bức tranh toàn cảnh có thể mang lại sức mạnh đáng kinh ngạc.

Nhà phát triển giao diện người dùng – tại sao và cách CSS được hiển thị? Rất nhiều điều thú vị trong công cụ kết xuất Blink sẽ thay đổi cách bạn nghĩ về trang.
Nhà phát triển phụ trợ – tại sao và cách thức hoạt động của trình thông dịch Python? Có rất nhiều điều thú vị trong trình thông dịch/biên dịch CPython đến nỗi bạn sẽ ngạc nhiên về cách mã của mình chạy.

Biết được lý do TẠI SAO/THẾ NÀO đằng sau đoạn mã này sẽ mang lại một số lợi ích:

  1. Giải quyết vấn đề: Khi các thách thức nảy sinh, việc hiểu logic cơ bản có thể hướng dẫn bạn tìm ra câu trả lời nhanh hơn nhiều. Ngay cả những lỗi cũng sẽ rõ ràng hơn khi bạn biết chúng được ném ra như thế nào.
  2. Quyết định sáng suốt: Kiến thức của bạn về các hệ thống cơ bản sẽ ảnh hưởng tiềm thức đến mọi quyết định bạn đưa ra. Cho dù đó là chọn một giao thức, xem một chức năng và hiểu ngay rằng nó có thể chạy trong O(n) hay đảm bảo tính bảo mật, thì sự hiểu biết sâu sắc hơn sẽ giúp nhà phát triển đưa ra các quyết định hiệu quả cao.
  3. Thu hẹp khoảng cách: Trong các nhóm đa ngành, việc nắm bắt bối cảnh rộng hơn có thể thúc đẩy giao tiếp và cộng tác tốt hơn, thu hẹp khoảng cách giữa các chuyên gia thuộc các lĩnh vực khác nhau.
  4. Đổi mới: Thông thường, các giải pháp mang tính đột phá xuất hiện ở sự giao thoa giữa các nguyên tắc. Biết được ‘tại sao’ của các lớp khác nhau có thể khơi dậy những ý tưởng và cách tiếp cận sáng tạo.

Tôi không nói rằng bạn nên biết tất cả mọi thứ. Nó không chỉ là chấp nhận một cách mù quáng mọi thứ theo giá trị bề ngoài mà còn đào sâu hơn và mở rộng tầm nhìn của một người. Tôi đảm bảo với bạn những kiến ​​thức này sẽ hữu ích cho bạn.

Tư duy hệ thống

Điều này tương tự như phần đầu tiên không chỉ tập trung vào mã mà còn nghĩ về các hệ thống và sự tương tác của chúng. Trong mắt tôi, một nhà phát triển giỏi không chỉ nhìn thấy từng phần riêng lẻ; họ nhìn thấy toàn bộ câu đố, không chỉ hiểu mỗi mảnh ghép phù hợp với câu đố hiện tại như thế nào mà còn hiểu câu đố đó là gì và liệu có thêm câu đố nào cần được tương tác hay không.

Tư duy hệ thống là nhận ra rằng phần mềm được tạo thành từ nhiều thành phần tương tác với nhau theo những cách phức tạp. Việc đảm bảo rằng mỗi thành phần hoạt động tốt riêng biệt là chưa đủ; điều quan trọng là phải hiểu cách nó hoạt động như một phần của tổng thể và nó có ý nghĩa gì đối với công ty. Đơn giản – không chỉ tập trung vào các bài kiểm tra đơn vị mà còn cả các bài kiểm tra E2E. Đó là việc đặt những câu hỏi như: Tại sao thành phần này lại cần thiết cho doanh nghiệp? Nếu thành phần này bị lỗi thì nó sẽ ảnh hưởng như thế nào đến các hệ thống khác? Làm thế nào chúng ta có thể thiết kế phần mềm của mình để có khả năng phục hồi tốt?

Hơn nữa, tư duy hệ thống còn vượt ra ngoài bản thân phần mềm. Các nhà phát triển giỏi hiểu rằng phần mềm không tồn tại trong chân không. Nó tương tác với người dùng, với các hệ thống khác, với cơ sở dữ liệu bên ngoài và thậm chí với các bộ phận không thuộc CNTT khác.

Đó là việc nhìn thấy khu rừng  cây cối, hiểu cả cấp độ vĩ mô và vi mô của những thứ bạn phát triển. Hãy tưởng tượng bạn là Kỹ sư YouTube, được giao nhiệm vụ cải thiện thuật toán nhằm tăng thời gian trung bình mà người dùng dành cho YouTube. Bạn có thể nghĩ đây là một nhiệm vụ đơn giản, nhưng khi lùi lại một bước và xem xét vấn đề từ cấp độ vĩ mô, bạn sẽ thấy rằng có nhiều hệ thống phức tạp đang hoạt động – từ Khả năng mở rộng đến UX đến các cân nhắc về đạo đức cho đến bộ phận pháp lý.

Hoặc một ví dụ gần đây hay hơn — hãy tưởng tượng bạn là Kỹ sư FTX và bạn được yêu cầu cho phép các tài khoản chuyển sang trạng thái âm. Một lần nữa, đây là một tính năng đơn giản xét từ góc độ hệ thống cá nhân của bạn – một dòng mã. Nhưng một lần nữa, hãy lùi lại và nghĩ về hệ thống quản lý rủi ro, hệ thống tuân thủ và mọi hệ thống khác bị ảnh hưởng bởi sự thay đổi này.

Tạo Sự Cân Bằng: Điều Hướng Trong Không Gian Kỹ Thuật Số Như Một Nhà Phát Triển

Trong thời đại kỹ thuật số, màn hình đã trở nên phổ biến. Từ máy trạm nơi bạn chuyển đổi mã thành ứng dụng cho đến điện thoại thông minh giúp chúng ta kết nối 24/7, công nghệ là một nguồn lực luôn hiện diện trong cuộc sống của chúng ta. Và đối với các nhà phát triển, sự đắm chìm này thậm chí còn sâu sắc hơn.

Các nhà phát triển vĩ đại không chỉ là những bậc thầy trong nghề của họ mà còn là những cá nhân toàn diện, hiểu được giá trị của những trải nghiệm ngoài lĩnh vực kỹ thuật số. Họ nhận ra rằng mặc dù công nghệ có thể mở rộng tầm nhìn nhưng nghịch lý thay, nó cũng có thể trở thành một bong bóng giới hạn.

🏄Đắm chìm liên tục trong thế giới kỹ thuật số có thể dẫn đến tầm nhìn bị thu hẹp. Còn rất nhiều điều khác bên ngoài bong bóng công nghệ.

Tôi sẽ không nói quá nhiều về sự nguy hiểm của việc sử dụng thiết bị liên tục. Về mặt thể chất, nó có thể dẫn đến các bệnh như mỏi mắt, gián đoạn giấc ngủ và các vấn đề liên quan đến lối sống ít vận động. Về mặt tinh thần, nó có thể dẫn đến kiệt sức, căng thẳng gia tăng và cảm giác luôn bị “căng thẳng”. Hơn nữa, cuộc sống chủ yếu trực tuyến có thể dẫn đến cảm giác bị cô lập và mất kết nối với thế giới thực, hữu hình xung quanh chúng ta.

Nhưng việc rời xa màn hình, dù chỉ trong giây lát, cũng có thể mang lại điều kỳ diệu. Giải độc công nghệ có thể giúp trẻ hóa đáng kinh ngạc, có thể là một cuộc đi bộ ngắn trong công viên, một nơi nghỉ ngơi cuối tuần hoặc thậm chí là dành vài giờ cho một sở thích phi kỹ thuật số.

Hơn nữa, những đột phá về công nghệ này đóng vai trò như một lời nhắc nhở về bức tranh toàn cảnh hơn. Họ tạo nền tảng cho chúng tôi, nhắc nhở chúng tôi về ý nghĩa thực tế của công việc của họ, của những người và cộng đồng mà chúng tôi phục vụ cũng như về vô số trải nghiệm và thách thức hình thành nên cuộc sống con người.

Nghệ thuật xấp xỉ

Bạn có thể đọc 10GB từ RAM nhanh đến mức nào? Từ SSD? Có một kỹ năng tinh tế nhưng quan trọng mà nhiều nhà phát triển bỏ qua: nghệ thuật tính gần đúng. Đó không phải là biết tất cả mọi thứ mà là có một bộ công cụ tinh thần gồm các con số để hướng dẫn các quyết định, định hình các giải pháp và ngăn ngừa những sai lầm tốn kém.

Giữa dòng logic và cấu trúc, có những con số quan trọng. Nếu bạn đang xây dựng một ứng dụng có thông lượng cao, chi phí lưu trữ để ghi nhật ký ở mức 100.000 RPS là bao nhiêu? Mặc dù con số chính xác có thể thay đổi dựa trên nhiều yếu tố khác nhau, nhưng ước tính sơ bộ có thể là vô giá. Nó có thể hướng dẫn các quyết định về kiến ​​trúc, cung cấp thông tin tối ưu hóa và cung cấp khả năng kiểm tra thực tế về tính khả thi.

Tôi đã thấy khái niệm thú vị này có tên là “Toán khăn ăn” — dành cho các tình huống mà bạn cần nhanh chóng ước tính chi phí hoặc tốc độ của nó. Trong thế giới tập trung vào đám mây ngày nay, nơi khả năng mở rộng và hiệu suất là tối quan trọng, chi phí có thể sớm vượt khỏi tầm kiểm soát nếu không được kiểm soát. Khả năng tính toán gần đúng một cách nhanh chóng có thể cung cấp một lộ trình vững chắc. Nó có thể giúp bạn dự đoán chi phí, phân bổ nguồn lực hiệu quả và thiết kế các hệ thống hoạt động hiệu quả và tiết kiệm chi phí.

Chuyển kiến ​​thức sang các vấn đề khác

Một trong những khoảnh khắc sâu sắc nhất trong cuộc đời học sinh là nhận ra rằng học tập không chỉ là tiếp thu thông tin mà còn là hiểu bản chất của nó và áp dụng nó vào những vấn đề tương tự. Sự thật này, thường gặp lần đầu tiên trong các lớp toán, vượt xa phạm vi lớp học và đặc biệt phù hợp trong phát triển phần mềm.

Hãy nghĩ lại những bài toán đó. Bạn sẽ dành hàng giờ để hiểu một khái niệm, thực hành nó với một loạt vấn đề cụ thể, chỉ để rồi phải đối mặt với một thử thách khác trong các kỳ thi. Những con số đã thay đổi, bối cảnh đã thay đổi, nhưng nguyên tắc cơ bản vẫn không thay đổi. Bài kiểm tra thực sự không chỉ là kiến ​​thức của bạn về khái niệm mà còn là khả năng thích ứng và áp dụng nó vào một tình huống mới.

Tôi thấy khả năng thích ứng và tư duy chuyển giao này khá quan trọng. Những thách thức luôn luôn xảy ra nhưng chúng hiếm khi đến với những gói hàng quen thuộc. Một giải pháp mã hóa phù hợp với dự án này có thể không phù hợp với dự án khác, ngay cả khi chúng có vẻ giống nhau. Dấu hiệu thực sự về kỹ năng của một nhà phát triển là khả năng họ tiếp thu kiến ​​thức của mình và điều chỉnh nó để phù hợp với nhiệm vụ trước mắt.

Nếu nó trông giống con vịt, bơi như con vịt và kêu như con vịt thì có lẽ nó là con vịt.

🏄 Kinh nghiệm đóng vai trò then chốt trong việc này. Với mỗi thử thách phải đối mặt, nhà phát triển sẽ bổ sung thêm kiến ​​thức của mình, mở rộng hiểu biết và cải tiến cách tiếp cận của mình. Tôi nói với các nhà phát triển của mình rằng: “Mỗi lỗi bạn giải quyết hôm nay sẽ trở thành một kỹ năng vào ngày mai”.

Kiến thức tĩnh, cứng nhắc và không chịu khuất phục, có thể trở thành một hạn chế. Phép thuật thực sự nằm ở việc hiểu và nắm bắt các nguyên tắc cốt lõi để chúng có thể được định hình lại và sử dụng lại khi cần thiết.

Làm cho những điều khó khăn trở nên dễ dàng

Tôi đã gặp khá nhiều nhà phát triển giải thích những điều phức tạp cho tôi bằng những thuật ngữ đơn giản đến mức tôi rất ngạc nhiên rằng a) tôi hiểu nó và b) các khái niệm này không phức tạp như tôi lo sợ.

Ví dụ, tôi không biết nhiều về lập trình mạng hoặc socket Linux. Tôi đã dành nhiều ngày tìm kiếm trên Google nhưng thông tin tôi tìm thấy không thực sự phù hợp với tôi. Nó có thể nói lên nhiều điều về chất lượng tìm kiếm của Google, nhưng sau đó tôi tìm thấy hướng dẫn của beej và nó phù hợp với tôi.

Tôi nghĩ đó là dấu hiệu của những kỹ sư giỏi nếu họ có thể giải thích điều gì đó và được hiểu không chỉ bởi những lập trình viên đồng nghiệp làm việc trong cùng lĩnh vực mà còn bởi những người bình thường.

Hơn nữa, làm cho những việc khó trở nên dễ dàng chính là việc san bằng sân chơi. Đó là việc nhận ra rằng kiến ​​thức không nên là một kho báu được bảo vệ mà là một nguồn tài nguyên được chia sẻ. Bằng cách đơn giản hóa các khái niệm bằng cách làm cho chúng dễ tiếp cận, bạn trao quyền cho người khác. Bạn cung cấp cho họ những công cụ để vươn lên, đạt đến trình độ hiểu biết của bạn và thậm chí có thể vượt qua nó.

Share this post :