Có phải là một quyết định tồi khi phát hành mã không phải là nguồn mở


8

Tôi làm việc cho một công ty sở hữu một số phần mềm nguồn đóng. Một trong những phần mềm của chúng tôi được sử dụng để phục vụ khách hàng và tạo thu nhập để nó có giá trị thương mại đối với chúng tôi (và nó trả lương cho tôi).

Tôi đã nói về việc tìm nguồn mở mã, nhưng tùy chọn tìm nguồn mở theo một cái gì đó như MIT hoặc GPL hoặc bất kỳ giấy phép nguồn mở nào khác cho phép các đối thủ cạnh tranh cài đặt nó và cung cấp cho khách hàng của chúng tôi với giá rẻ hơn đã gặp phải sự kháng cự rõ ràng.

Điều gì về việc hiển thị mã nhưng không theo giấy phép nguồn mở?

Các lập luận tôi đã chống lại điều này là động thái này sẽ gây nhầm lẫn cho khách hàng và nhà phát triển và sẽ khiến chúng tôi công khai xấu hơn bất kỳ điều tốt nào. Nhà phát triển PAINT.NET đã sử dụng để phát hành mã của mình và nhận được rất nhiều lời khen ngợi khi anh ta bắt đầu nhắc nhở các đối thủ rằng mã này chỉ dành cho mục đích giáo dục và không thực sự là nguồn mở.

Tôi cũng đã được thông báo rằng tìm nguồn mở vì mục đích của nguồn mở không có ý nghĩa gì, bla bla bla, và trừ khi tôi có kế hoạch làm thế nào để mang lại nhiều doanh thu hơn, nó không dành cho chúng tôi. Chà, thật lòng tôi không có kế hoạch, nhưng tôi nghĩ tại sao không thử. Tất nhiên tôi không thể nói nếu điều này sẽ giúp chúng tôi hoặc làm tổn thương chúng tôi. Tôi không muốn chịu trách nhiệm cho một động thái có thể làm tổn thương một công ty đang hoạt động tốt và khiến mọi người bị sa thải.

Như tôi đã nói, giấy phép nguồn mở trông không giống như một tùy chọn, do đó, giữa nguồn đóng hoặc hiển thị mã nhưng vẫn thuộc giấy phép bản quyền thông thường. Nhưng như tôi đã nói có sự phản kháng trong việc hiển thị mã vì lo ngại rằng các đối thủ cạnh tranh sẽ sử dụng mã của chúng tôi để tạo mã của riêng họ.

Có ai biết bất kỳ sự thật nào có thể giúp với quyết định này, cho dù ủng hộ hay chống lại việc hiển thị mã.


3
Lý do cho bạn muốn mở mã nguồn là gì?

Rõ ràng tôi đang hy vọng nó sẽ mang lại lợi ích cho công ty bằng cách nào đó, nhưng như tôi đã nói, tôi chưa biết chính xác bằng cách nào.

Bạn có thể muốn xem bài đăng liên quan này, "Tại sao các lập trình viên viết ứng dụng và sau đó làm cho chúng miễn phí?" tại lập trình
AN Khác

6
Dù sao, đó là một ý tưởng tồi để làm những điều quyết liệt vì những lý do mơ hồ.
David Thornley

1
@JoeD: nghe có vẻ như một bình luận có ít hoặc không có bằng chứng. Những công ty nào KHÔNG sử dụng nguồn mở những ngày này? Google và Apple chắc chắn làm - hệ điều hành của họ dựa trên nó. Oracle? MySQL. Mở văn phòng. Adobe? vâng . NHỰA CÂY? kiểm tra . Symantec? chắc chắn . IBM và HP có các chương trình nguồn mở lớn. Nokia sở hữu Qt. Ngay cả Microsoft cũng sử dụng nó ngay bây giờ. Bạn đang nói về "hầu hết các công ty" nào?
nè 101

Câu trả lời:


9

Trong một bình luận mà bạn đề cập khi được hỏi về lý do nguồn mở, bạn đã trả lời "Rõ ràng tôi đang hy vọng nó sẽ có lợi cho công ty bằng cách nào đó, nhưng như tôi đã nói, tôi chưa biết chính xác như thế nào."

Đó không phải là một lý do đủ tốt. Bạn hoàn toàn phải biết làm thế nào nó có lợi cho công ty. Đây không phải là thử và xem nó quyết định như thế nào.

Giống như @Vatine cho biết có nhiều công ty sẽ cấp phép nguồn ngoài phần mềm, đôi khi với giá bổ sung. Điều này mang lại một chút an tâm rằng nếu có một lỗi nghiêm trọng ảnh hưởng đến khách hàng của họ, họ có thể sửa lỗi nóng trong khi họ chờ công ty của bạn sửa nó.

Lợi ích lớn khác của nguồn mở là cộng đồng. Như @Konrad nói, nếu nguồn có sẵn nhưng không mở thì sẽ làm giảm đáng kể hiệu ứng này. Ngoài ra, một cộng đồng không chỉ tự thiết lập, nó cần thúc đẩy chi phí thời gian và / hoặc tiền bạc.

Cũng nghĩ về những gì thực sự tạo ra tiền cho công ty của bạn. Đây có phải là phần mềm không, hay nó là một cái gì đó bên ngoài và phần mềm chỉ là một người hỗ trợ? Google kiếm phần lớn tiền của họ thông qua quảng cáo. Thực tế họ mở nguồn phần lớn phần mềm của họ và là một người ủng hộ nguồn mở khổng lồ không bị ảnh hưởng tiêu cực bởi việc có nguồn ngoài đó. Đó là cơ sở người dùng là tài sản lớn nhất của họ, không phải phần mềm. Nguồn mở giúp xây dựng cơ sở người dùng đó và xây dựng thiện chí.

Công ty của bạn có một mô hình sẽ được hưởng lợi từ một cơ sở người dùng không trả tiền lớn không? Bằng cách không trả tiền tôi có nghĩa là trả tiền cho phần mềm. Nếu bạn đang bán phần mềm trực tiếp, bạn có thể ít nhiều quên nó. Nếu bạn đang cung cấp dịch vụ hỗ trợ hoặc tư vấn thì bạn có thể sử dụng nguồn mở để mang lại cho bạn lợi thế cạnh tranh. Nguồn mở sau đó có thể giúp xây dựng nhận diện thương hiệu. Lưu ý tôi đã nói "có thể" chứ không phải "sẽ". Nó vẫn cần phải được tiếp thị và quảng bá đúng cách nếu không nó vô dụng. Đó là tất cả về việc xây dựng một cộng đồng.

Ngoài những điều trên, đó cũng là một quyết định rất riêng của công ty. Là tính cách của công ty là một văn hóa mở? Nếu nó không được công ty chấp nhận hoàn toàn, đặc biệt là ở đầu, nó sẽ không hoạt động. Một khi nó đi vào nguồn mở, bạn không thể đóng nó. Bạn có thể đóng các sửa đổi trong tương lai, nhưng những gì ở ngoài kia sẽ xuất hiện, bạn không thể lấy lại, vì vậy đó không phải là một quyết định thiếu sáng suốt. Bạn hoàn toàn phải biết làm thế nào và tại sao nó sẽ có lợi cho công ty của bạn một cách cụ thể.


6

Câu hỏi chính ở đây không phải là: bạn nhận được gì từ việc hiển thị nguồn - đó là những gì người khác nhận được từ việc hiển thị nguồn. Nếu bạn không thể trả lời câu hỏi này, thì không ai sẽ phải nhìn vào nó, và điều đó sẽ có nghĩa là bạn và công ty của bạn không được hưởng lợi.

Bây giờ, nếu nguồn không phải là Nguồn mở thì tính hữu ích của mã đối với người khác sẽ giảm đáng kể. Tôi chỉ có thể tưởng tượng hai kịch bản làm cho nó đáng để xuất bản mã:

  1. Đó là một chương trình giới thiệu về kiến ​​trúc và thiết kế tốt. Trong trường hợp đó, bạn có thể chú thích nó và xuất bản nó như một trợ giúp giáo dục.
  2. Nó sử dụng một mô hình hoặc thuật toán chưa biết đến thứ ba mà bạn có thể muốn xuất bản và dự án của bạn đóng vai trò như một minh chứng.

Tôi cũng muốn đề xuất 3. Cung cấp nguồn thư viện công cộng và API để các nhà phát triển bên thứ ba có thể gỡ lỗi các vấn đề tích hợp phức tạp. Ví dụ: Microsoft cung cấp nguồn khung .Net cho mục đích này, với giấy phép hạn chế cấm sử dụng lại hoặc thậm chí biên dịch lại mã.
MarkJ

2

Tôi chắc chắn đã thấy một số công ty (với một số loại phần mềm) cung cấp mã nguồn cho bất kỳ khách hàng trả tiền nào, cho một khoản phí cấp phép bổ sung hoặc là một phần và bưu kiện của một cài đặt thông thường. Tuy nhiên, điều này có xu hướng là thị trường thích hợp, với một vài nhà cung cấp và khách hàng được thành lập với nhu cầu có thể dễ dàng được đáp ứng hơn bằng cách cho phép họ xem xét nguồn.

Nhưng, điều đó sẽ phụ thuộc vào những gì bạn đang xem đang diễn ra bằng cách cho phép mọi người xem mã nguồn của bạn. Trừ khi bạn có một kế hoạch rõ ràng hơn một chút so với "hãy thử và xem điều gì xảy ra", tôi có thể sẽ phải tranh luận chống lại nó.


1

Tùy thuộc vào việc sử dụng mã nguồn của họ. Thậm chí nghĩ rằng bạn đã viết mã đó không phải là mã của bạn. Đó là chủ nhân của bạn. Bạn cần tuân thủ các điều khoản của họ và có đạo đức tốt. Nếu nguồn mở mã làm giảm doanh thu thì đừng mở mã nguồn. Tôi không chống lại phong trào nguồn mở.

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.