paint-brush
Hài hòa hóa quy trình đánh giá mã: Cách tiếp cận thống nhất cho con người và AItừ tác giả@rabiaahmed
325 lượt đọc
325 lượt đọc

Hài hòa hóa quy trình đánh giá mã: Cách tiếp cận thống nhất cho con người và AI

từ tác giả Pullflow6m2023/09/12
Read on Terminal Reader

dài quá đọc không nổi

Tất cả chúng ta đều ở xa và điều đó gây rối loạn tinh thần đánh giá mã của chúng tôi. Nó giống như việc bạn đang cố gắng chơi một trò chơi điện tử co-op khi bạn của bạn có kết nối Internet chậm.
featured image - Hài hòa hóa quy trình đánh giá mã: Cách tiếp cận thống nhất cho con người và AI
Pullflow HackerNoon profile picture
0-item
1-item

Bài học chính

  1. Tính không đồng bộ không phải lúc nào cũng tuyệt vời : Tính linh hoạt của công việc từ xa đi kèm với thách thức về giao tiếp không đồng bộ, có thể làm chậm quá trình xem xét mã.
  2. Chuyển đổi ngữ cảnh là một điều thú vị : Việc liên tục chuyển đổi giữa mã hóa và đánh giá mã có thể làm giảm năng suất của bạn nhanh hơn mức bạn có thể nói "hợp nhất xung đột".
  3. AI và tự động hóa là những yếu tố thay đổi cuộc chơi : Chúng có thể xử lý các nhiệm vụ lặp đi lặp lại và thậm chí cung cấp những hiểu biết có giá trị, nhưng chúng không thể thay thế kiến thức chuyên môn của con người.
  4. Quy trình làm việc hợp nhất, dựa trên hội thoại là tương lai : Việc kết hợp con người, AI và tự động hóa vào một cuộc trò chuyện liền mạch có thể giúp quá trình xem xét mã trở nên hiệu quả và thú vị hơn.

Được rồi, hãy bắt đầu cuộc rượt đuổi. Bây giờ tất cả chúng ta đều đang viết mã trong bộ đồ ngủ của mình và mặc dù điều đó thật tuyệt vời để cân bằng giữa công việc và cuộc sống, nhưng việc đánh giá mã lại hơi khó chịu. Hãy nhớ lại những ngày xưa khi bạn có thể lăn ghế đến bàn của đồng nghiệp và nói: "Này, bạn có thể xem nhanh chức năng này không?" Vâng, những ngày đó đã qua như giắc cắm tai nghe trên iPhone.


Vậy thỏa thuận là gì? Tất cả chúng ta đều ở xa và điều đó đang gây rối loạn tinh thần đánh giá mã của chúng ta. Nó giống như việc cố gắng chơi một trò chơi điện tử co-op khi bạn của bạn có kết nối Internet chậm—điều đó thật khó chịu và kém vui hơn. Nhưng này, chúng tôi là kỹ sư. Chúng ta giải quyết vấn đề để kiếm sống, phải không? Vì vậy, hãy đi sâu vào mớ hỗn độn này và xem liệu chúng ta có thể dọn dẹp nó một chút không.

Mặt tốt, mặt xấu và mặt xấu của việc đánh giá mã từ xa

Tai ương không đồng bộ: Trò chơi chờ đợi

Giao tiếp không đồng bộ vừa là điều may mắn vừa là lời nguyền của công việc từ xa. Một mặt, nó thật tuyệt vời. Bạn có thể làm việc khi bạn làm việc hiệu quả nhất, cho dù bạn là người dậy sớm hay cú đêm. Nhưng điều thú vị là: trong khi bạn đang nhấm nháp ly cà phê buổi sáng, đồng đội của bạn ở bên kia thế giới có lẽ đang ở nửa chừng giấc ngủ REM. Vì vậy, bạn đang mắc kẹt trong trò chơi chờ đợi và hy vọng họ sẽ xem xét mã của bạn trước khi thời hạn đến. Nó giống như việc chờ đợi một bản cập nhật phần mềm hoàn tất—bạn biết điều đó là cần thiết, nhưng ôi trời, điều đó thật tẻ nhạt.

Chuyển đổi bối cảnh: Kẻ thù tồi tệ nhất của bộ não

Bạn đang tìm hiểu sâu về mã, trong khu vực và sau đó—BAM!—Thông báo thiếu. Đó là một yêu cầu xem xét mã. Thông thường, điều này sẽ làm bạn mất tập trung, buộc bạn phải chuyển hướng và bối cảnh. Nhưng điều gì sẽ xảy ra nếu thông báo Slack đó thực sự hữu ích? Điều gì sẽ xảy ra nếu nó cho phép bạn xử lý việc đánh giá mà không cần rời khỏi môi trường mã hóa của mình?


Pullflow giải quyết vấn đề bằng cách cung cấp tích hợp hai chiều với các công cụ hiện có của bạn. Nó hợp lý hóa quy trình làm việc của bạn để ngay cả thông báo Slack cũng trở thành một phần liền mạch trong quá trình mã hóa của bạn chứ không phải là một yếu tố gây gián đoạn.

Quá tải công cụ: Cơn ác mộng của quân đội Thụy Sĩ

GitHub, Jira, Slack, Jenkins và thậm chí đừng để tôi bắt đầu với các công cụ nội bộ dành riêng mà các công ty yêu thích để xây dựng lời hứa đó là "hợp lý hóa quy trình làm việc của bạn". Nhưng hãy thành thật mà nói, bạn thường có cảm giác như mình là một nghệ sĩ xiếc đang quay đĩa. Mỗi công cụ đều có bộ thông báo, yêu cầu riêng và các tính năng "phải sử dụng" mà bạn thậm chí không yêu cầu. Nó giống như việc sở hữu một con dao Quân đội Thụy Sĩ mà bạn chỉ sử dụng lưỡi dao nhưng phải mang theo một cái mở nút chai, một cây tăm và một chiếc tuốc nơ vít mini "để đề phòng".

AI và tự động hóa: Tương lai hay chỉ là mốt nhất thời?

AI: Con vịt cao su biết nói lại

AI trong quá trình đánh giá mã không còn chỉ là một công cụ kiểm tra chính tả được tôn vinh nữa. Hãy coi nó như một nhà tư vấn mã có bằng Tiến sĩ. trong khoa học máy tính. Tận dụng các thuật toán học máy như Cây quyết định, nó tối ưu hóa mã của bạn và thậm chí còn đề xuất các cải tiến về thuật toán. Sử dụng Xử lý ngôn ngữ tự nhiên (NLP), nó có thể phân tích giọng điệu nhận xét của bạn. Nó giống như việc có một người đánh giá mã luôn cảnh giác và đồng thời cảnh báo các rủi ro bảo mật trong thời gian thực.

Tự động hóa: Bản giao hưởng CI/CD

Tích hợp liên tục và Triển khai liên tục (CI/CD) giống như phần nhịp điệu của một ban nhạc—thường bị bỏ qua nhưng lại rất quan trọng trong việc giữ nhịp độ. Kiểm tra, xây dựng và triển khai tự động đã trở thành một phần không thể thiếu trong quy trình đánh giá mã hiện đại. Khi bạn gửi yêu cầu kéo, các thử nghiệm tự động sẽ hoạt động giống như kim đồng hồ, cung cấp phản hồi ngay lập tức về việc các thay đổi của bạn có phù hợp hay không. Nó giống như có một người hiệu đính cá nhân kiểm tra tác phẩm của bạn trước khi người khác nhìn thấy nó. Nhưng hãy nhớ, CI/CD chỉ tốt khi bạn viết bài kiểm tra. Rác vào, rác ra.

Chatbots: Thực tập sinh kỹ thuật số mà chúng tôi chưa bao giờ biết là mình cần

Chatbots trong quá trình xem xét mã giống như những thực tập sinh luôn sẵn sàng giúp đỡ nhưng không mong đợi được trả lương. Họ có thể xử lý các công việc đơn giản như cập nhật trạng thái yêu cầu, hợp nhất các yêu cầu kéo đã được phê duyệt và thậm chí thông báo cho các thành viên trong nhóm về các đánh giá đang chờ xử lý.


Nó giống như có thêm một đôi tay đảm nhiệm những công việc nặng nhọc, cho phép bạn tập trung vào những nhiệm vụ phức tạp và sáng tạo hơn. Nhưng hãy cẩn thận, chatbot được lập trình theo nghĩa đen. Một bot được cấu hình kém có thể gây ra sự tàn phá, giống như một thực tập sinh hiểu nhầm "pha cà phê cho tôi" và cuối cùng đặt mua 100 máy pha cà phê espresso.

Giải quyết sự phức tạp của việc xem xét mã bằng Pullflow

Hãy dành chút thời gian để thảo luận về Pullflow, một công cụ đang tạo nên làn sóng trong cộng đồng nhà phát triển nhờ cách tiếp cận độc đáo đối với các thách thức đánh giá mã. Thay vì chỉ là một nền tảng khác, Pullflow hướng tới mục tiêu trở thành giải pháp cho các vấn đề cụ thể mà chúng tôi đang mổ xẻ.

Cách Pullflow giải quyết các vấn đề:

  1. Chuyển đổi ngữ cảnh : Bạn có nhớ sự phức tạp về mặt tinh thần khi phải chuyển đổi giữa các IDE, ứng dụng trò chuyện và kho mã không? Pullflow tích hợp các nền tảng này hai chiều, giảm nhu cầu chuyển đổi tab liên tục.
  2. Vấn đề không đồng bộ : Một luồng duy nhất cho tất cả các hoạt động PR giúp mọi người được cập nhật theo thời gian thực, giảm thiểu sự chậm trễ do chênh lệch múi giờ và giao tiếp không đồng bộ.
  3. Cuộc trò chuyện được hỗ trợ bởi AI : AI theo ngữ cảnh của Pullflow đưa ra câu trả lời và phản hồi theo thời gian thực trong các cuộc thảo luận PR Slack của bạn, hoạt động giống như một chuyên gia đánh giá mã theo yêu cầu.
  4. Lệnh có thể thực hiện được : Cho phép thực hiện các hành động ngay lập tức thông qua các lệnh Slack, giảm nhu cầu chuyển đổi ngữ cảnh chỉ để thực hiện các tác vụ đơn giản như gán PR.
  5. Số liệu hiệu suất : Cung cấp số liệu thời gian thực để giúp bạn theo dõi và cải thiện chu kỳ đánh giá cũng như thời gian phản hồi

Hãy cẩn thận để xem xét:

  1. Hạn chế về nền tảng : Hiện tại, nó chỉ hỗ trợ GitHub, Slack và VS Code, đây có thể là một hạn chế đối với một số nhóm.


Pullflow tập hợp tất cả các hoạt động PR, tự động hóa và hội thoại của bạn vào một nơi. Nó giống như có một trung tâm kiểm soát sứ mệnh để đánh giá mã của bạn.

Ước mơ: Một quy trình làm việc thống nhất, hướng đến hội thoại

Điều mà tất cả chúng tôi đều mong đợi là một quy trình làm việc thống nhất, dựa trên hội thoại để đánh giá mã. Hãy tưởng tượng sự tích hợp liền mạch giữa chuyên môn của con người, hiểu biết sâu sắc về AI và tự động hóa, tất cả đều hoạt động hài hòa. Hãy tưởng tượng một luồng duy nhất trong đó mã, nhận xét và phản hồi tự động cùng tồn tại, cho phép cộng tác và ra quyết định theo thời gian thực.

Yếu tố con người: trọng tâm của việc đánh giá mã

Cốt lõi của bất kỳ quy trình đánh giá mã nào đều là những người đánh giá con người. Chúng tôi mang đến kinh nghiệm, trực giác và sự sáng tạo của mình. Chúng tôi nắm bắt những sắc thái mà AI có thể bỏ sót, hiểu bối cảnh mà mã sẽ chạy và cung cấp những hiểu biết sâu sắc vượt xa cú pháp và logic đơn thuần. Chúng tôi là những nhạc sĩ nhạc jazz biết khi nào nên bám vào bản nhạc và khi nào nên ứng biến.

AI và tự động hóa: Dàn diễn viên hỗ trợ

AI và tự động hóa rất tuyệt vời, nhưng chúng chỉ là diễn viên hỗ trợ chứ không phải diễn viên chính. Họ nên đề cao yếu tố con người chứ không phải thay thế nó. Nó giống như sử dụng máy tính để làm toán—bạn vẫn cần biết cách làm toán; máy tính chỉ làm cho nó nhanh hơn và chính xác hơn.

Công cụ: Công cụ giao dịch

Các công cụ chúng tôi sử dụng—nền tảng GitHub, Jira, CI/CD, chatbot—là những công cụ tạo ra âm thanh. Chúng cần được tinh chỉnh và bảo trì tốt để tạo ra kết quả hài hòa. Việc lựa chọn công cụ có thể tạo ra hoặc phá vỡ quá trình xem xét mã của bạn, vì vậy hãy chọn một cách khôn ngoan.

Nghiên cứu điển hình: từ chiến hào: Quá trình xem xét mã của Runn.io

Đây là một số thực phẩm để suy nghĩ. Runn.io phải đối mặt với những trở ngại tương tự trong việc xem xét mã mà nhiều người trong chúng ta đều biết rất rõ. Sau khi tích hợp Pullflow, thời gian chờ xem xét của họ đã giảm mạnh từ mức kéo dài 14 giờ xuống còn 4 giờ. Đó là thời gian chờ đợi ít hơn và thời gian viết mã nhiều hơn, đó là điều tất cả chúng ta mong muốn, phải không?

Kết luận: tương lai là do chúng ta tạo ra, vì vậy hãy bắt tay vào làm việc

Chúng ta đang ở ngã ba đường của sự khéo léo của con người và đổi mới công nghệ, với một tay cầm bàn phím và tay kia thực hiện yêu cầu kéo. Tương lai của việc đánh giá mã không phải là chọn công cụ hoặc phương pháp hoàn hảo; đó là việc tạo ra một cách tiếp cận toàn diện kết hợp kỹ năng tốt nhất của con người và công nghệ tiên tiến.

Bước đi tiếp theo của bạn

  1. Kiểm tra quy trình làm việc hiện tại của bạn : Xác định các điểm nghẽn và các khu vực cần cải thiện.
  2. Tìm hiểu về AI : Nếu AI chưa có trong bộ công cụ của bạn thì bây giờ là lúc để bắt đầu thử nghiệm.
  3. Tối ưu hóa giao tiếp : Xem xét các công cụ như Pullflow tập trung các hoạt động PR và giảm chuyển đổi ngữ cảnh.
  4. Đầu tư vào đào tạo : Đảm bảo nhóm của bạn được cập nhật các phương pháp hay nhất mới nhất về đánh giá mã, cho dù đó là thông qua đào tạo nội bộ hay các khóa học bên ngoài.


Vì vậy, hãy trở thành kiến trúc sư của một tương lai nơi việc đánh giá mã không chỉ là một hộp kiểm mà còn là một quy trình hợp tác, phong phú nhằm nâng cao cả mã và chính chúng ta. Và nếu chúng ta có thể làm điều đó trong khi nhấm nháp cà phê thủ công và lắc lư chiếc áo phông của ban nhạc yêu thích của mình, thì chúng ta đã thực sự trúng số độc đắc.