Làm thế nào để các công ty lớn duy trì mã nguồn sản phẩm của họ mà không rơi vào tay kẻ xấu? [đóng cửa]


8

Tôi đang phát triển một ứng dụng web bằng cách sử dụng ASP.NET. Tôi muốn thuê một số nhà phát triển để tăng tốc quá trình của mình nhưng tôi sợ điều gì xảy ra nếu các thành viên của tôi lấy mã của tôi và biến mất? Tôi chỉ tự hỏi làm thế nào các công ty lớn duy trì mã sản phẩm của họ mà không rơi vào tay kẻ xấu. Ví dụ: Như tôi đã nói với bạn trước đó, tôi đang thuê một số nhân viên để tăng tốc quá trình của tôi nhưng bạn biết mọi người đều không giống nhau. Một số người có thể làm việc chăm chỉ và một số có thể nhận được toàn bộ mã và rời đi.

Vì vậy, câu hỏi của tôi là làm thế nào các công ty lớn như Microsoft, Facebook, Yahoo giữ mã của họ được bảo vệ?

Facebook hiện có gần 8.348 thành viên (tháng 9 năm 2014). Nếu tôi nói mỗi người đều có mã Facebook đầy đủ thì tôi đúng hay sai?

Vì vậy, những thực hành tốt nhất tôi nên làm theo nếu tôi thuê nhân viên để tăng tốc quá trình là gì?


11
(1) Đừng thuê tội phạm, (2) Gọi cảnh sát nếu (1) thất bại.
Jörg W Mittag

6
Đây là một vấn đề pháp lý, không phải là một vấn đề kỹ thuật. Và bạn cũng nên tự bảo vệ mình khỏi bị giết bởi một nhân viên bất mãn .... :-) BTW, không ai nghiêm túc chấp nhận sử dụng một số mã nguồn bất hợp pháp
Basile Starynkevitch

3
Câu hỏi này dường như lạc đề vì nó liên quan đến các vấn đề pháp lý
Basile Starynkevitch

1
Họ làm hợp đồng và kiện nếu những hợp đồng đó bị phá vỡ. Ngoài ra, họ chỉ thực hiện hợp đồng với những người / công ty mà họ nghĩ rằng họ có thể tin tưởng (có danh tiếng tốt, có thể cho thấy họ đã thực hiện các dự án tương tự trong quá khứ, được đề xuất bởi những người khác có vị thế tốt ...). Và không, không phải tất cả mọi người tại facebook đều có quyền truy cập đầy đủ vào tất cả các mã.
thorsten müller

Nhân viên 8K không nhỏ, nhưng một công ty lớn thường có nhiều hơn thế. Wikipedia cho biết IBM có 431K, Microsoft có 128K, có 122K. Heck, theo Wikipedia, Microsoft đã sa thải 18K giữa tháng Bảy và tháng Mười.
Ross Patterson

Câu trả lời:


33

Bạn đang đánh giá quá cao tầm quan trọng của mã nguồn và đánh giá thấp tầm quan trọng của mọi thứ khác trong chuỗi giá trị của phần mềm bán hàng.

Chắc chắn, một nhà thầu có thể đánh cắp mã nguồn của bạn. Nhưng sau đó thì sao? Liệu họ có thể tạo ra một bản phát hành, duy trì mã hơn nữa, liên hệ với khách hàng của bạn và bán cho họ một loại trực tiếp với giá thấp hơn không? Hầu như chắc chắn là không. Riêng đối với các công ty cực kỳ lớn như Microsoft, kiếm tiền từ phần mềm liên quan đến nhiều thứ hơn sau đó biên dịch các lớp và chuyển chúng cho mọi người để kiếm tiền. Không ai có thể đánh cắp mã nguồn Windows và tiến hành loại bỏ Microsoft; các rào cản pháp lý, thực tế và hậu cần chỉ là quá cao để kéo nó đi.

Điều đó khiến người ta sợ rằng bằng cách đọc nguồn, các đối thủ cạnh tranh sẽ học được những mánh khóe thông minh mà bạn đã sử dụng và đạt được lợi thế. Điều này cũng vậy, hầu như luôn luôn được đánh giá quá cao; nếu ý tưởng của bạn là tốt, bạn sẽ phải hạ thấp chúng xuống! Phần mềm thành công lớn không phải vì nó sử dụng các thủ thuật thông minh, mà vì nó đáp ứng chính xác một nhu cầu. Các cửa hàng phần mềm thành công thực hiện nghiên cứu thị trường tốt, thu thập các yêu cầu tốt, có quy trình sản xuất và thử nghiệm vững chắc và thường làm mọi việc theo cách dễ dự đoán nhất, dễ lập kế hoạch.

Để chắc chắn, đôi khi có một lợi thế thị trường để thu được từ việc kỹ sư xuất sắc hơn đối thủ cạnh tranh. Đọc mô tả về Viaweb của Paul Graham một ngày - cuộc thi thậm chí còn không biết họ đang sử dụng Common Lisp! Nhưng bạn có thực sự là một Paul Graham? Chắc là không.

(Và Microsoft nào trong thực tế làm cho mã cửa sổ nguồn cung cấp cho nhiều trường đại học đối tác - theo thỏa thuận không tiết lộ, để chắc chắn, nhưng vẫn còn, chính xác cho người dân có thể sử dụng những ý tưởng lượm lặt từ nó để cạnh tranh với Microsoft Nhưng điều này không bao giờ xảy ra! , bởi vì sở hữu mã nguồn của ai đó không tương đương một cách kỳ diệu để chiếm đoạt vị trí thị trường của họ.)


Microsoft cung cấp mã nguồn cho nhiều trường đại học. Họ cung cấp nó cho bất cứ ai có lý do chính đáng để muốn xem mã nguồn. Và bao gồm các nhà phát triển (có nghĩa là bất kỳ ai, nhưng bạn cần phải có một công ty đã đăng ký): microsoft.com/en-us/
Sharedsource / default.aspx

1
Ngoài ra, các bản sao của cơ sở mã Windows đã bị rò rỉ hơn một lần; nhưng bạn không thấy copycats sử dụng mã bị rò rỉ để xây dựng các phiên bản hệ điều hành riêng của họ.
Dan đang loay hoay bởi Firelight

"Các đối thủ cạnh tranh sẽ học được những mánh khóe thông minh mà bạn đã sử dụng và đạt được lợi thế" hoặc "những kẻ tấn công sẽ học được những lỗ hổng tinh vi mà bạn có và phát triển các khai thác 0 ngày"
Joshua Taylor

7

Tại sao tập trung vào cách các công ty lớn xử lý nó khi các công ty nhỏ cũng có vấn đề tương tự? Tôi là nhà phát triển phụ trợ duy nhất cho một công ty nhỏ và có quyền truy cập vào tất cả các kho Git của công ty tôi, cả ở nơi làm việc và ở nhà. Về lý thuyết tôi có thể đảm nhận tất cả công việc này và chạy theo nó bất cứ lúc nào. Có nhiều lý do tại sao tôi không bao gồm, nhưng không giới hạn ở:

  • Trộm cắp là bất hợp pháp
  • Mất việc đồng nghĩa với việc mất tiền lương của tôi, điều này có thể sẽ có giá trị lâu dài hơn bất kỳ dự án nào tôi có thể đánh cắp trừ khi nó thực sự rất tốt
  • Ăn cắp mã không phải là ăn cắp cơ sở hạ tầng. Tôi không có khả năng cũng như kiến ​​thức cần thiết để tự chạy và duy trì Facebook ngay cả khi tôi có quyền truy cập đầy đủ vào mã nguồn
  • Ăn cắp mã không phải là đánh cắp khán giả. Đã có rất nhiều bản sao của Facebook, mọi người sẽ không đổ xô vào một bản sao theo nghĩa đen chỉ vì nó tồn tại
  • Ăn cắp mã sẽ ngăn cản hoặc cản trở tôi một công việc khác trong lĩnh vực này do không ai khác muốn thuê một kẻ trộm mã nguồn

Nói tóm lại, có rất ít động cơ để thực sự đánh cắp mã. Tôi nghĩ vấn đề lớn hơn là tạo cho các lập trình viên cảm hứng để phát triển ý tưởng của bạn theo cách riêng của họ, nhưng đến một lúc nào đó, bạn phải sẵn sàng tin tưởng dự án của mình cho người khác nếu bạn muốn họ có thể làm việc với nó. Đó là một canh bạc nhưng trừ khi bạn sẽ tự mình làm tất cả công việc phát triển, đó là một canh bạc bạn sẽ phải thực hiện.


1

Các công ty lớn hạn chế những nhân viên của họ có quyền truy cập vào mã nguồn của họ. Và có quyền truy cập vào nguồn cho một sản phẩm không có nghĩa là bạn có quyền truy cập vào nguồn cho tất cả các sản phẩm.

Nhưng tôi nghĩ rằng điều này ít liên quan đến việc ngăn chặn loại hành vi trộm cắp mà bạn đang nói đến, và nhiều việc phải làm để tránh những thay đổi vô tình đối với mã sai.

Một trong những công ty lớn mà bạn đặt tên chắc chắn đã có một sự cố trong đó một nhân viên hoặc nhân viên thực tập đã đăng một số mã nguồn trực tuyến. Họ không hài lòng về điều đó, nhưng cuối cùng, thiệt hại chủ yếu là uy tín (tức là họ cho phép điều đó xảy ra).

Tôi với Kilian. Mã nguồn không quan trọng như bạn nghĩ. Tôi tạo mã nguồn và rất thích tin rằng thành quả của công việc của tôi là thứ quý giá nhất mà khách hàng của tôi sở hữu, nhưng đơn giản là không phải vậy.

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.