Dự luật trách nhiệm của lập trình viên [đã đóng]


40

Vì vậy, tất cả chúng ta đã nghe nói về Quyền lập trình viên của XP và XP có một khái niệm tương tự.

Đó là một khiếu nại phổ biến những ngày này chúng ta nghe nhiều về quyền của mọi người nhưng không quá nhiều về trách nhiệm của họ, vì vậy những gì cần phải có trong dự luật trách nhiệm của các lập trình viên. Đó là những điều họ nên làm, điều mà họ có thể thấy không hấp dẫn, nhưng đó là những lập trình viên riêng biệt hành động chuyên nghiệp và có trách nhiệm, từ những người không.

Tôi chủ yếu quan tâm đến những thứ không hấp dẫn và những thứ có xu hướng không xảy ra. Đó là những điều mà các lập trình viên có xu hướng trốn tránh và tránh, hơn là những điều mà 90% lập trình viên thực sự muốn làm (chẳng hạn như luôn luôn cấu trúc lại và sử dụng kiểm soát nguồn).

Vì vậy, những gì cần có trong Dự luật trách nhiệm của lập trình viên?


4
hơn nữa tôi nghĩ rằng nó phù hợp với hướng dẫn 1,2,4 và 6.
Stephen Furlani

2
Tôi nghĩ đó là một câu hỏi quan trọng để hỏi.
HLGEM

1
Một theo dõi quan trọng có thể là 'làm thế nào để bạn rèn luyện bản thân trở thành một lập trình viên có trách nhiệm?'
Stephen Furlani

2
Câu hỏi này dường như chỉ tạo ra một danh sách các mục. Mặc dù các câu trả lời khá ấn tượng (và tôi khen ngợi những người trả lời đã dành thời gian và công sức cho bài viết của họ), nhưng họ tập trung vào ý kiến ​​và từ ngữ của câu hỏi khiến tôi phải bỏ phiếu.
Thomas Owens

5
@ThomasOwens hoàn toàn không đồng ý rằng "Câu hỏi này không phù hợp với định dạng Hỏi và Đáp của chúng tôi". Điều này đã tạo ra một câu trả lời liên quan đến thử nghiệm của nhà phát triển, phương pháp phát triển, mối quan tâm tự do và kinh doanh, đảm bảo chất lượng và công nghệ phần mềm, thực sự bắt đầu không chắc chắn tại sao chúng ta thậm chí có trang web này nếu các câu hỏi như trên tiếp tục bị đóng.
Joshua Drake

Câu trả lời:


41
  • Một lập trình viên có trách nhiệm đẩy lùi các yêu cầu kém thay vì mù quáng thực hiện chúng. Điều này bao gồm nói với khách hàng rằng những gì họ muốn đắt hơn các lựa chọn khác hoặc có một rủi ro cụ thể. Nó cũng bao gồm việc truyền đạt tin tức xấu một cách chuyên nghiệp - không la hét, gọi mọi người là ngu ngốc, ngụ ý họ là ngu ngốc hoặc hành vi trẻ con khác. Nếu anh ta lùi lại, anh ta nên có một loạt lý do (hơn cả, "Tôi không thích SQL Server và sẽ không sử dụng nó") và một kế hoạch thay thế để trình bày.

  • Tuy nhiên, lập trình viên cũng có trách nhiệm chấp nhận các quyết định và sử dụng các công cụ hoặc thiết kế mà họ có thể không thích nếu phản hồi của họ không được chấp nhận. Nếu một báo cáo được yêu cầu trong SSRS, việc cung cấp nó trong Báo cáo Pha lê (mà khách hàng có thể không có) là không thể chấp nhận được. Nếu một giải pháp .net là bắt buộc, việc cung cấp nó trong Haskell là không thể chấp nhận được. Nếu không có ai khác trong nhóm sử dụng một công cụ hoặc ngôn ngữ mà bạn muốn sử dụng, việc sử dụng nó là không chuyên nghiệp nếu quản lý không đồng ý rằng đó là công cụ tốt nhất cho công việc cụ thể.

  • Một lập trình viên có trách nhiệm kiểm tra công việc của mình. (Đây không phải là thử nghiệm duy nhất, nhưng không có lập trình viên chuyên nghiệp nào nên gửi mã mà anh ta chưa thử nghiệm.) Điều này bao gồm kiểm tra ngay cả các nhánh của mã mà bạn không mong đợi sẽ gặp thường xuyên. Nếu bạn có một bộ IF lồng nhau, hãy kiểm tra tất cả các tuyến đường có thể.

  • Một lập trình viên có trách nhiệm xử lý các lỗi và ngoại lệ một cách duyên dáng và viết các thông báo lỗi mà người dùng sẽ thấy đó là chuyên nghiệp và trung lập không phải là trò đùa hay xúc phạm.

  • Một lập trình viên có trách nhiệm bảo vệ dữ liệu riêng tư, bảo vệ mã độc quyền mà anh ta viết cho công ty và bảo vệ người dùng khỏi thảm họa (thậm chí là tự gây ra thảm họa) khỏi việc sử dụng ứng dụng của họ.

  • Một lập trình viên có trách nhiệm đảm bảo mã của mình có thể duy trì được và nằm trong sự kiểm soát nguồn.

  • Một lập trình viên có trách nhiệm phối hợp với những người khác để đảm bảo những thay đổi của anh ta không ảnh hưởng xấu đến những gì họ đang làm.

  • Một lập trình viên có trách nhiệm đề xuất sự lựa chọn tốt nhất cho khách hàng của các công cụ hoặc ngôn ngữ trong giai đoạn thiết kế chứ không phải công cụ / ngôn ngữ mà anh ta muốn chơi và học.

  • Một lập trình viên có trách nhiệm làm việc với tất cả các nhân viên phù hợp cho một dự án bao gồm cả những người anh ta không thích. Đó không phải là công việc của bạn để thích mọi người, đó là công việc của bạn để làm việc với họ và lịch sự.

  • Một lập trình viên có trách nhiệm sản xuất một sản phẩm thực hiện những gì đã được chỉ định trong một khung thời gian hợp lý. Nếu khung thời gian sẽ không được đáp ứng, anh ấy hoặc cô ấy có trách nhiệm thông báo cho ban quản lý về điều đó ngay khi biết.

  • Một lập trình viên có trách nhiệm cho phép quản lý dự án biết về những trở ngại để hoàn thành công việc. Họ không thể sửa những gì họ không biết.

  • Một lập trình viên có trách nhiệm thực hiện toàn bộ nhiệm vụ không chỉ là những phần thú vị, thú vị. Mỗi công việc có một số phần nhàm chán, họ vẫn cần phải được thực hiện. Điều này bao gồm những thứ như bảng chấm công và thêm các mục thảo luận vào phần mềm quản lý dự án. Nó bao gồm những thứ như tài liệu, đánh giá mã, v.v.

  • Một lập trình viên có trách nhiệm tìm hiểu lĩnh vực kinh doanh mà anh ta đang hỗ trợ không chỉ là các khái niệm lập trình.

  • Một lập trình viên có trách nhiệm giữ cho các kỹ năng của mình được cập nhật.

  • Khi một lập trình viên gây rối, anh ta có trách nhiệm làm tất cả trong khả năng của mình để khắc phục các vấn đề càng sớm càng tốt. Điều này có thể bao gồm mang thông tin xấu cho quản lý thay vì cố gắng che giấu rằng bạn vừa xóa một bảng quan trọng trong cơ sở dữ liệu sản xuất.

  • Một lập trình viên có trách nhiệm giống như bất kỳ nhân viên nào khác - xuất hiện đúng giờ, làm việc theo giờ đã ký hợp đồng, yêu cầu thời gian nghỉ trước, trả lời tin nhắn điện thoại và email (heck để đọc email của họ), để điền vào các mẫu yêu cầu Nhân sự, v.v.


7
Tôi thích thông báo lỗi đùa. Tình hình đã đủ tồi tệ rồi, không cần phải làm nó nghiêm trọng hơn thế nữa - ít nhất là cố gắng làm tôi cười trong khi tát tôi với một lỗi!
dr Hannibal Lecter

2
Tôi đặt câu hỏi về trách nhiệm cho nhà phát triển kiểm tra cá nhân mã của mình trong mọi tình huống ... Tôi sẽ viết lại rằng để đảm bảo rằng mã của anh ta được kiểm tra ... Nếu tổ chức có người kiểm tra chuyên nghiệp (cả tự động và con người) và một quy trình vững chắc để đảm bảo mã được kiểm tra, tôi không thấy lý do tại sao nhà phát triển phải thực hiện nó một cách cá nhân. Nếu tôi đang phát triển một tính năng mới hoặc sửa lỗi, chắc chắn tôi sẽ tự kiểm tra nó, nếu không tôi sẽ không biết liệu mình đã hoàn thành công việc hay chưa. Tuy nhiên, nếu tôi đang thực hiện một phép tái cấu trúc lớn, thì việc kiểm tra toàn bộ sản phẩm sẽ không có ý nghĩa gì đối với tôi.
JoelFan

Tôi không nói kiểm tra hồi quy, nhưng bạn nên kiểm tra các thay đổi của mình để đảm bảo chúng thực hiện những gì bạn dự định.
HLGEM

2
Điều gì về không có dấu chấm than trong thông báo lỗi ... tức là "Ngày không hợp lệ!"
JoelFan

1
Những điều này cần phải trung tính về giới tính. Làm cho chúng trở thành mệnh lệnh sẽ làm cho việc này dễ dàng hơn, ví dụ thay vì "Một lập trình viên có trách nhiệm kiểm tra công việc của mình", nên là "Kiểm tra công việc của bạn".
sigil

42

Mỗi lập trình viên nên làm cho mã của họ có thể đọc được bởi những người khác.


@Kevin D: Đó một trách nhiệm. Bạn có trách nhiệm sản xuất mã có thể đọc được.
doppelgreener

1
@Axidos, Đó là vì tôi đã thay đổi câu trả lời của mình khi tôi nhận ra mình đã làm gì.
dan_waterworth

Tôi sẽ xóa bình luận gốc của tôi vì nó không còn phù hợp.
Kevin D

1
"Có thể đọc được" bởi ai? "Đồng nghiệp" của tôi (tức là người có trình độ học vấn và kinh nghiệm tương tự như tôi)? Một người thực sự được giáo dục tốt về nghệ thuật và khoa học? Hay một Monkey Code Monkey không có kinh doanh với bất kỳ thứ gì cao cấp hơn Dartmouth BASIC?
John R. Strohm

7
@ John, những người khác trong bối cảnh này ngụ ý các lập trình viên khác. Trong câu: "Con hươu cao cổ to hơn những con khác.", Chúng ta không coi người khác có nghĩa là khỉ bay. "Những người khác" có nghĩa là "nhiều người cùng loại chưa được đề cập".
dan_waterworth

22

Lập trình viên chịu trách nhiệm về quyền riêng tư và bảo mật của tất cả dữ liệu do người dùng cung cấp. Đặc biệt là mật khẩu, số thẻ tín dụng, địa chỉ email và vị trí thực tế.


Điều này thực sự sẽ thuộc về kiến ​​trúc sư hệ thống. Trong nhiều, nhiều kịch bản doanh nghiệp, các lập trình viên không có bất kỳ lời nói hay kiểm soát nào đối với các cửa hàng dữ liệu. Làm cách nào tôi có thể chịu trách nhiệm cho một địa chỉ email trong cơ sở dữ liệu, khi tất cả những gì tôi đang làm là truy cập, không tạo, cơ sở dữ liệu đó?
Neal Tibrewala

2
Tôi đoán mọi người trên Facebook không cần phải áp dụng như hầu hết các trách nhiệm nêu trên. :)
MetalMikester

4
-1 đó là quá nhiều trách nhiệm.
Peter Turner

6
Có thể đối với các hệ thống quy mô lớn, nó có thể là quá nhiều cho một lập trình viên quyết định. Nhưng đối với phần lớn các trang web nơi một hoặc một vài lập trình viên làm việc, việc lưu trữ dữ liệu đúng cách là điều hoàn toàn cần thiết. Không cần mã hóa khi băm, không có thuật toán tùy chỉnh hoặc bảo mật bằng cách che khuất. Thực, kiểm tra an ninh.
Malfist

@Neal: Kiến trúc sư hệ thống chỉ là một lập trình viên khác. Chắc chắn, đối với các dự án lớn, có lẽ anh ta sẽ không được lập trình, nhưng điều đó không có nghĩa là anh ta không phải là lập trình viên. Và, điều đó chỉ áp dụng cho các dự án lớn; trong các dự án 2 hoặc 3 người, một lập trình viên thường chịu trách nhiệm cho một phần của cơ sở dữ liệu hoặc toàn bộ; anh ta có trách nhiệm đảm bảo dữ liệu được lưu an toàn.
cấu hình

20

Đừng làm người dùng mất việc.

Điều này khó hơn âm thanh ... công việc không chỉ là "dữ liệu trong một tệp" ... đó là bất cứ lúc nào người dùng đã sử dụng phần mềm của bạn.

Ví dụ: nếu người dùng điền vào biểu mẫu 30 trường của bạn với 29 mục hợp lệ và 1 mục không hợp lệ, đừng xóa tất cả dữ liệu hợp lệ của anh ấy để khiếu nại về 1 mục không hợp lệ (quái, thậm chí không xóa phần không hợp lệ .. . có thể nó dài và chỉ cần một sự điều chỉnh nhỏ hoặc người dùng sẽ không nhớ nó là gì trước đây nếu bạn xóa nó)

Một ví dụ không rõ ràng nhưng quan trọng là những gì Windows và thực tế mọi phần mềm "quản lý tệp" khác đều bị lỗi .... nếu tôi dành nửa giờ cẩn thận Ctrl-Click'ing để chọn một tập hợp các tệp và tôi vô tình làm Nhấp thay vì Ctrl-Click, nó sẽ không xóa tất cả các tệp đã chọn trước đó của tôi, khiến tôi bắt đầu lại.

Một lỗi khác mà họ đã nhầm ... nếu tôi vô tình nhấn Ctrl-A (thay vì Ctrl-S ngay bên cạnh), nó sẽ không mất vị trí của tôi trong tệp và đặt con trỏ ở đầu .... Tôi gọi là tìm đúng nơi trong tập tin "làm việc" mà chương trình đã "mất".

Một điều nữa: Hộp thoại "cam kết" của TortoiseSVN có một danh sách dài các tệp. Trước khi nhấn "Cam kết", bạn có thể truy cập danh sách các tệp, nhấp đúp vào từng tệp để xem các thay đổi của nó trong hộp thoại thứ 2. Để thực hiện việc này một cách nhanh chóng, đôi khi tôi chỉ sử dụng bàn phím, nhấn <Esc>để đóng hộp thoại thứ 2 và quay lại số 1. Nếu tôi vô tình nhấn <Esc> hai lần, nó cũng sẽ đóng hộp thoại thứ 1, kết quả là tôi quên mất tập tin nào.


5
Cố gắng không tạo các phím tắt làm những thứ đối nghịch được gán cho các phím ngay cạnh nhau (ví dụ CTRL-C và CTRL-V, không thể cho bạn biết bao nhiêu lần Nếu được sao chép khi tôi định dán và ngược lại)
HLGEM

5
@HLGEM, Nghịch lý thay, bất cứ ai thiết kế điều này có thể nghĩ rằng anh ta sẽ giúp đỡ chúng tôi bằng cách đặt chúng cạnh nhau
JoelFan

4
Còn anh thì không? Ý tôi là, bạn không có toàn bộ sức mạnh của Emacs hay bất cứ thứ gì, nhưng bạn có thể sao chép và dán mà không cần di chuyển tay nhiều.
compman

1
Sử dụng Tổng chỉ huy. Nhấp chuột phải để chọn và nhấp chuột phải để bỏ chọn. Trừ khi bạn điều hướng ở một nơi khác hoặc mất tập trung trong một thời gian dài trong khi thư mục hiện tại đang được thay đổi, bạn sẽ không mất lựa chọn của mình.
cấu hình

1
Đối với ví dụ cuối cùng (Ctrl-A mất vị trí của tôi trong tệp), gần đây tôi đã tìm thấy một cách giải quyết một phần hoạt động trong nhiều chương trình ... Ctrl-Z, Ctrl-Y .... sẽ hoàn tác chỉnh sửa mới nhất của tôi đối với nội dung tệp, sau đó "làm lại" nó, với kết quả là nội dung vẫn giống như trước và tôi đang ở vị trí chỉnh sửa. Điều này không nhất thiết giống như nơi con trỏ của tôi ở ngay trước khi Ctrl-A bị nhầm, nhưng nó thường đủ gần ... điều này tất nhiên không loại trừ hành vi xấu của chương trình trên Ctrl-A ... nó chỉ là một cách giải quyết một phần và mất một lúc để đánh vào
JoelFan

15

Một lập trình viên có trách nhiệm tôn trọng hệ thống mà chương trình của anh ta sẽ chạy. Sau khi kết thúc quá trình phát triển và thử nghiệm, chương trình sẽ được triển khai để sử dụng cho mục đích của nó và điều đó thường liên quan đến những người khác chạy nó trên máy tính của họ. Lập trình viên cần ghi nhớ điều này: chương trình của anh ta đang chạy trên tài sản của người khác chứ không phải của họ và cần phải cư xử như một vị khách trong nhà của họ thay vì lao vào như sở hữu nơi này.

Ví dụ, chương trình của anh không nên:


1
Tôi thực sự thích những người vừa là người dùng vừa là lập trình viên. Biểu tượng nảy trong bến tàu của tôi là nguyên nhân số một của cơn thịnh nộ đối với những người tôi chưa từng gặp.
Agos

7
Tôi thích tất cả chúng ngoại trừ "tự cập nhật mà không cần sự đồng ý của người dùng". Tôi tìm thấy cách Chrome tự cập nhật - tôi thích tìm các tính năng mới. Cách các chương trình khác làm điều đó, tuy nhiên, là gớm ghiếc. Tôi đang nhìn bạn, Java và bạn, Acrobat Anything. Đừng không hỏi tôi nếu tôi muốn cập nhật cho bạn mỗi ngày. Tôi nói không một lần, hãy gợi ý!
cấu hình

2
Nếu một chương trình tự cập nhật, ít nhất nó phải yêu cầu người dùng đồng ý lần đầu tiên.
gablin

Một hành vi vi phạm khác của TortoiseSVN ... làm bất cứ điều gì với nó khiến hệ thống bị đình trệ
JoelFan

@SpashHit: Hừm? Tôi sử dụng TortoiseSVN hàng ngày và tôi chưa bao giờ nhận thấy rằng ...
Mason Wheeler

8

Từ Tuyên ngôn cho Thợ thủ công phần mềm :

Là những thợ thủ công phần mềm đầy tham vọng, chúng tôi đang nâng cao sự phát triển phần mềm chuyên nghiệp bằng cách thực hành nó và giúp những người khác học nghề. Thông qua công việc này, chúng tôi đã đạt được giá trị:

  • Không chỉ phần mềm làm việc, mà cả phần mềm được chế tạo tốt

  • Không chỉ đáp ứng với thay đổi, mà còn tăng dần giá trị

  • Không chỉ các cá nhân và tương tác, mà còn là một cộng đồng của các chuyên gia

  • Không chỉ hợp tác với khách hàng, mà còn hợp tác hiệu quả

Đó là, theo đuổi các mặt hàng bên trái, chúng tôi đã tìm thấy các mặt hàng bên phải là không thể thiếu.


8

Hãy nhìn vào gương và có thể nhận ra những phẩm chất tồi tệ nhất của một lập trình viên trong chính anh ta. Sau đó làm việc để loại bỏ chúng mỗi ngày.

  1. Không học được gì mới
  2. Không tìm cách mở rộng kỹ năng của bạn
  3. Không cởi mở với những điều mới mẻ, gắn bó với những thói quen cũ
  4. Không quan tâm đến chất lượng công việc của bạn
  5. Không tìm cách cải thiện chất lượng công việc của bạn
  6. Là một công nhân 9-5 không có đam mê
  7. Không có ý kiến ​​riêng về những điều
  8. Chấp nhận ý kiến ​​của người khác mà không cần hỏi
  9. Tin rằng bạn đã học được tất cả
  10. Không chịu bất kỳ lời chỉ trích
  11. Không nghe đầu vào bên ngoài
  12. Là trung tâm, biết tất cả cá nhân
  13. Có tính cách tiêu cực và chỉ trích người khác

+1, nhưng phrasing nó theo cách này làm cho nó khá tiêu cực.
dan_waterworth

1
Tôi thấy # 13 rất mỉa mai, vì đó thực chất là những gì bạn đang làm ở đây, mặc dù theo nghĩa chung.
Dustin Rasener

6
  • Trách nhiệm của Lập trình viên là tạo ra phần mềm đáp ứng nhu cầu của các yêu cầu, phân tích, thiết kế và thông số kỹ thuật như được đặt trong bất kỳ hợp đồng nào giữa lập trình viên và khách hàng.
  • Trách nhiệm của Lập trình viên là tạo ra phần mềm tiết kiệm, đáng tin cậy và hoạt động hiệu quả trên các máy thật.
  • Trách nhiệm của Lập trình viên là làm việc hiệu quả, có đạo đức và với sự liêm chính nhất có thể và tự thực hiện với sự chuyên nghiệp tối đa.

Một số điều đó áp dụng cho Trách nhiệm của " Công ty lập trình ".


4
  • Các lập trình viên nên biết và sử dụng các thư viện và nền tảng cốt lõi được sử dụng.

Đặc biệt khi lập trình viên đến từ nền tảng / ngôn ngữ khác. Thật là khủng khiếp khi tìm thấy các lập trình viên đấu tranh cho một cái gì đó mà thư viện cốt lõi cung cấp hoặc sử dụng sai lợi thế nền tảng do sự thiếu hiểu biết.

  • Các lập trình viên nên tạo mã tài liệu tự

Điều rất quan trọng là phải có mã được ghi lại cho người khác sử dụng, nhưng khi nói đến khả năng bảo trì, mã tự viết tài liệu có thể tiết kiệm hàng giờ và hàng giờ thất vọng.

Ví dụ so sánh:

// validates if is leap year
if(  year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) ) { 
     doSomethingWithFebruary();
}

đến

if( isLeapYear( year ) ) { 
    doSomethingWithFebruary();
}

4

Lập trình là một nghề, không phải là một kỹ năng. Điều này có nghĩa là một lập trình viên có trách nhiệm duy trì hiện tại trong lĩnh vực của mình về các công cụ, kỹ thuật và công nghệ mới nhất.

Điều này có thể có nghĩa là đẩy lùi các nhà quản lý để dành thời gian cho phép học tập và đào tạo liên tục hoặc thực hiện nó vào thời gian của riêng bạn.


2

1) Giải thích rõ ràng rằng một giải pháp cho bất kỳ vấn đề nào sẽ có sự đánh đổi giữa hiệu suất, chi phí, thời gian và chất lượng.

2) Hoàn thành các tài liệu liên quan, có thể là họ phát hành ghi chú hoặc kế hoạch kiểm tra. (tài liệu sẽ thay đổi theo loại hình và quy mô công ty)

3) Yêu cầu các công cụ chính xác cho công việc của họ (rất nhiều người chỉ than vãn về nó nhưng không bao giờ tiếp cận sếp của họ với một trường hợp hợp lý để có được thứ họ cần)

... Những người khác không nghi ngờ gì để làm theo.


2

Câu hỏi bất cứ điều gì - Một lập trình viên phải có trách nhiệm hỏi về bất cứ điều gì mà một hệ thống có thể được yêu cầu phải làm hoặc xử lý. Điều này có thể bao gồm hỏi những gì người dùng có thể xem là những câu hỏi ngớ ngẩn vì có nhiều trang web khác nhau dành để chỉ hiển thị những gì người dùng có thể làm. WTF hàng ngàySharkTank là một vài ví dụ mặc dù tôi chắc chắn có những người khác.


1

Một lập trình viên chịu trách nhiệm chuyển đổi các câu chuyện của người dùng trong sản phẩm tồn đọng thành các phần mềm gia tăng và có thể thay đổi được

Đó là lý do tại sao các nhà quản lý nên đảm bảo rằng họ có mọi thứ cho mục tiêu của mình.


1

Đây là đề xuất của tôi.

  1. Một lập trình viên nên yêu cầu các điều kiện làm việc được nêu trong Dự luật về quyền của Lập trình viên, để không hạ thấp các tiêu chuẩn cho vị trí này.

(Đối với "lập trình viên", ý tôi là "lập trình viên", không phải là "hacker cuối tuần", vì vậy tất cả những điều tiêu chuẩn mà một lập trình viên nên làm đều được ngụ ý.)


-1. Tôi không nghĩ rằng một trách nhiệm có thể là một trách nhiệm "yêu cầu [s]" một quyền.
Craige

1

5 giới luật của bang hội lập trình viên

1.) kiểm tra mã của anh ấy / cô ấy hàng tuần và vào các ngày lễ.

2.) cung cấp cho nhu cầu của cộng đồng lập trình.

3.) đọc ít nhất một cuốn sách lập trình mỗi năm.

4.) đi đến ít nhất một hội nghị lập trình mỗi năm.

5.) sở hữu những sai lầm của bạn.


"kiểm tra mã của anh ấy / cô ấy hàng tuần và vào các ngày lễ"? Bạn có nghĩa là hàng giờ, phải không?
cấu hình

@configurator Ý tôi là những điều này ở mức tối thiểu để tự gọi mình là lập trình viên. Nhưng càng nhiều lượt kiểm tra càng tốt
Peter Turner

1

Tôi sẽ thêm "luôn ghi lại mọi giả định được đưa ra" vào danh sách. :-)


Hay ... không bao giờ đưa ra giả định?
Stephen Furlani

2
@Stephen Furlani - Thật không may, khá nhiều điều không thể đối với một dự án có quy mô bất kỳ.
John Parker

0

Một lập trình viên không nên làm hoặc thực hiện bất cứ điều gì phi đạo đức hoặc bất hợp pháp, chẳng hạn như viết virus hoặc hack hệ thống của người khác (trừ khi phát hiện ra các lỗ hổng bảo mật và sau đó thông báo cho nạn nhân về điều đó và họ có thể làm gì để tránh điều này xảy ra khai thác bởi bất kỳ tin tặc độc hại).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.