Tại sao phát triển các chương trình nguồn mở, miễn phí? [đóng cửa]


36

Tại sao ai đó sử dụng thời gian của mình để phát triển một dự án nguồn mở miễn phí và không phải bồi thường?


10
Oh thực sự, chúng ta phải thảo luận về chủ đề này nhiều lần? Ngay cả MS cũng tạo ra một vài chương trình OpenSource hiện nay.
user281377

18
@ammoQ: Mặc dù bạn đúng, nhưng điều này không đặc biệt hữu ích.
back2dos

5
Chà ... tôi không viết mã miễn phí, nhưng tôi dành 37,8 giờ một tuần để ngồi tại một phần mềm viết bàn được phát hành theo GPL. Đôi khi phần mềm được tạo ra để đáp ứng nhu cầu kinh doanh hoặc hoạt động. Bản thân phần mềm không có giá trị thương mại cho người tiêu dùng trong khi vẫn cung cấp giá trị cho đơn vị kinh doanh. Những người không sử dụng các sản phẩm khác từ công ty sẽ không quan tâm đến ứng dụng nguồn mở sẽ không thu được gì cho họ - và ngay cả khi họ đã làm, ai quan tâm?
TZHX

25
Giả định cơ bản không được nói ra của bạn, rằng động lực hợp lệ duy nhất cho hành vi của con người là động cơ lợi nhuận, là phi nhân cách, gây khó chịu và quan trọng nhất là sai lầm một cách khủng khiếp. Xem youtube.com/watch?v=u6XAPnuFjJc để biết một số nghiên cứu thực tế về chủ đề này.
Mason Wheeler

16
Tại sao mọi người ngồi trên StackExchange và giúp mọi người mà không được trả tiền?
kba

Câu trả lời:


58

Đối với các dự án nhỏ, lý do có thể là "sở thích", "nhận được một số kinh nghiệm", "danh tiếng", "niềm vui", v.v. nhưng đó không phải là cách các dự án nguồn mở lớn như Mozilla, OpenOffice, Linux hoạt động.

Tại sao Sun mua StarDivision và biến StarOffice thành một chương trình nguồn mở (được gọi là OpenOffice.org)? Tại sao Mozilla tạo ra một trình duyệt nổi tiếng và cung cấp nó dưới dạng nguồn mở? Tại sao có người tạo Linux, viết trình điều khiển và không có gì, và cung cấp miễn phí cho mọi người? Tại sao Microsoft tạo trình điều khiển mã nguồn mở cho Linux để nó có thể chạy tốt hơn trong ảo hóa của MS?

Bởi vì nó làm cho một số ý nghĩa kinh doanh cho họ. Họ kiếm tiền theo cách đó, hoặc ít nhất là lên kế hoạch.

Trong một số trường hợp, sự thống trị của các sản phẩm của MS, như Windows, Office, Internet Explorer, là lý do tạo ra một sản phẩm cạnh tranh, do đó, MS sẽ khó sử dụng sự thống trị máy tính để bàn của mình để chinh phục các miền khác, ví dụ như máy chủ, dịch vụ internet, quá. Điều này giải thích, với một số phần mở rộng, OpenOffice.org và Mozilla.

Trong các trường hợp khác, phần mềm nguồn mở có nghĩa là thúc đẩy doanh số phần cứng, phần mềm hoặc dịch vụ khác. Trình điều khiển nguồn mở rõ ràng giúp bán các thành phần phần cứng cho người dùng Linux. RedHat bán hỗ trợ cho bản phân phối Linux của họ và họ bán thực tế rằng Linux của họ là RedHat chính hãng. Các sản phẩm khác, ví dụ như Oracle, được chứng nhận để sử dụng trên Redhat, nhưng không phải trên CentOS, mặc dù có thể nó cũng chạy tốt. Phần cứng máy chủ được chứng nhận cho Redhat, mặc dù các bản phân phối linux khác có thể chạy tốt. Những khách hàng lớn không quan tâm đến giá cả, họ muốn có chứng chỉ.

Một số công ty, ví dụ Google, tài trợ cho nhiều dự án nguồn mở, vì nó giúp ích cho công việc kinh doanh của họ. Họ không làm điều đó vì lòng vị tha. Họ muốn có một internet miễn phí, một mạng internet phổ biến, một mạng internet rộng khắp, nơi mọi người sử dụng các dịch vụ của Google để Google tạo doanh thu.


5
Hơi nghi ngờ về việc Google muốn có "Internet miễn phí". Họ muốn có một mạng internet được sử dụng rộng rãi và thường xuyên sẽ dẫn đến nhiều cơ hội hơn và cuối cùng là lợi nhuận cho họ. Miễn phí là một cái gì đó gây tranh cãi hơn. +1 tất cả giống nhau cho một câu trả lời tốt.
Jon Hopkins

13
Jon: miễn phí như trong "không được kiểm soát bởi một nhà cung cấp duy nhất" (có thể ngoại trừ họ)
user281377

1
Tôi nghĩ rằng điều này không liên quan đến chủ đề: joelonsoftware.com/articles/StrargetyLetterV.html
back2dos

back2dos: cảm ơn vì liên kết; Tôi đã đọc nó trước đây, nhưng không thể nhớ ở đâu và khi nào.
user281377

Google tài trợ cho các dự án nguồn mở như Chrome vì nó mang lại cho họ một sản phẩm mới tương đối rẻ, cạnh tranh với các nhà lãnh đạo thị trường về các tính năng và hiệu suất nhưng họ có thể tăng cường nó với các cơ chế kiểm soát vừa đủ để tạo cho họ doanh thu cao hơn - mặc định Nhà cung cấp tìm kiếm đến với tâm trí. Nghe có vẻ hoài nghi, nhưng tại sao lại phát hành Chrome khi các trình duyệt dựa trên Webkit khác đã có ( en.wikipedia.org/wiki/ mẹo ).
JBRWilkinson

26

Tại sao mọi thứ phải liên quan đến tiền? Bạn nghĩ wikipedia hoạt động như thế nào? Không ai được trả tiền để đưa nội dung lên Wikipedia, nhưng người ta cho rằng đây là cuốn bách khoa toàn thư hay nhất.

chỉnh sửa:

Hãy nói chuyện tiền bạc.

Các dự án nguồn mở, như bất kỳ dự án nào, được viết ra khỏi sự cần thiết. Bạn gặp vấn đề X và bạn viết thư viện Y hoặc ứng dụng Z để giải quyết nó, bởi vì

  • Không có công cụ, giải quyết nó hoặc
  • Họ không đủ tốt hoặc
  • Chúng không đáng tiền (viết công cụ của riêng bạn có thể "tốn kém" hơn, nhưng cuối cùng bạn có chính xác những gì bạn muốn và bạn có thể sửa đổi nó theo ý muốn, vì vậy chi phí được khấu hao nhanh chóng).

Vì vậy, bây giờ bạn đã dành một vài buổi tối và cuối tuần (và / hoặc thời gian được trả tiền) để viết điều nóng bỏng tiếp theo cho đến khi bạn đạt đến một điểm, nơi em bé bắt đầu đi bộ. Bây giờ bạn phải chọn giữa:

  • Phân phối thương mại: điều này liên quan đến tiếp thị, công cụ pháp lý, hỗ trợ khách hàng, tự mình thực hiện tất cả các bản sửa lỗi, nhận hàng tấn yêu cầu tính năng cực kỳ ngu ngốc và ít phản hồi vô dụng. Cuối cùng, bạn nhận được những gì còn lại của số tiền một khi tất cả các ký sinh trùng có được miếng bánh của họ. Và có lẽ sẽ không có ai thích sản phẩm của bạn vì chi phí quá cao.
  • Phân phối nguồn mở: điều này liên quan đến ... uhm ... đẩy mã đến một kho lưu trữ công cộng và đưa ra một hoặc hai thông báo trong danh sách gửi thư có liên quan. Bạn sẽ nhận được sự thừa nhận hoặc thậm chí một số danh tiếng. Bạn sẽ có được một cơ sở người dùng, cung cấp phản hồi mang tính xây dựng, các lỗi hữu ích và thậm chí có thể là các bản vá. Bạn nhận được một số đóng góp hoặc được mời tham gia một số hội nghị hoặc được trả tiền để thực hiện các tính năng a hoặc b. Và bạn đã tạo ra rất nhiều giá trị, mặc dù không ai trả tiền cho bất cứ điều gì. Và lần tới khi bạn hoặc công ty của bạn cần thứ gì đó, cơ hội rất tốt, bạn sẽ nhận được nó và bạn sẽ nhận được nó miễn phí.

Nguồn mở hoạt động, bởi vì nó là một cộng đồng. Vì nó là tương hỗ. Bạn không nhận được tiền bằng cách viết mã nguồn mở. Bạn nhận được tiền bằng cách tiêu thụ mã nguồn mở. Vậy tại sao bạn viết mã nguồn mở? Để trả lại một cái gì đó.


4
"Tại sao mọi thứ phải liên quan đến tiền?" tất nhiên là không, nhưng chương trình là thứ mà mọi người thường thích được trả tiền để làm điều đó. (ngay cả khi bạn thích nó, tôi là một lập trình viên và yêu thích lập trình nhưng tôi sẽ không làm điều đó miễn phí)
Diego

@Diego: Biên dịch bách khoa toàn thư cũng là điều mọi người thường được trả tiền để làm. BTW: cập nhật bài viết của tôi.
back2dos

12
@Diego: tha thứ cho sự ngây thơ của tôi nhưng làm sao bạn có thể nói bạn yêu nó nếu bạn không làm điều đó vì tình yêu một mình?
Matt Ellen

6
@Matt: tình yêu không bao giờ chỉ dành cho tình yêu, đó là một quan niệm sai lầm.
user281377

1
Tôi làm điều đó vì tình yêu một mình khi đó là điều tôi muốn làm, một số "thử thách lập trình" cho bản thân tôi. Không chỉ là một "phần mềm nhàm chán thông thường".
Diego

24

Đây là một sở thích của một số người; tin hay không.

Gillette sẽ rất vui khi được tặng bạn một chiếc dao cạo râu miễn phí và bán cho bạn những lưỡi dao.

Một số người kiếm tiền theo những cách khác và muốn trả lại cho cộng đồng. Tôi chắc chắn Linus Torvalds đã kiếm được rất nhiều tiền từ 'Linux' mà không thực sự bán mã và có thể biến tiền đi.

Không phải tất cả phần mềm nguồn mở đều được dự định hoặc thiết kế cho bất kỳ người dùng nào chỉ cần tải xuống, cài đặt và sử dụng, do đó bạn có thể sẽ dành nhiều thời gian hơn tùy thuộc vào mức độ kỹ năng và hầu hết mọi người đều coi trọng thời gian của họ.


3
Bạn có nghĩa là một tay cầm cạo râu miễn phí. Dao cạo lưỡi dao.
Joe Z.

Nó được gọi là mô hình kinh doanh mồi và móc. Cùng có thể nói về máy in và hộp mực en.wikipedia.org/wiki/Razor_and_blades_business_model
Sorter

Trong khu vực của tôi, bạn phải trả tiền ngay cả cho một tay cầm :)
Nik

@JoeZ. - Tôi lớn lên gọi toàn bộ là dao cạo râu. và chưa bao giờ gặp bất cứ ai không biết những gì tôi đã nói về cho đến bây giờ. Có thể bạn đề cập đến tay cầm, giá đỡ lưỡi và lưỡi dao / dao cạo như một máy cạo râu?
JeffO

11

Bồi thường tiền tệ không phải là bồi thường duy nhất có thể. Danh tiếng (mặc dù chủ yếu là một vòng tròn giới hạn) là một người khác. Niềm vui của việc thể hiện những gì bạn đã làm là một điều khác.

Tôi, tôi chủ yếu làm điều đó bởi vì tôi có nhu cầu viết phần mềm và nếu điều đó xảy ra để giúp đỡ người khác, mọi người đều thắng.


4
Và nó giúp bạn có được một công việc.
đúng

5

Câu hỏi này không dành riêng cho nguồn mở, vì bạn có thể viết mã miễn phí và không bao giờ phát hành ra công chúng (mặc dù điều đó rất hiếm vì tất cả các lợi ích đã biết của việc chia sẻ mã).

Câu hỏi thực sự là, tại sao làm bất cứ điều gì miễn phí? Câu trả lời là, bởi vì nó làm cho bạn hạnh phúc .

Cá nhân, tôi thích học hỏi và tôi học được nhiều hơn khi làm việc với nguồn mở hơn là làm việc trong công việc được trả lương của mình. Bởi vì học tập cải thiện các kỹ năng của tôi, nó cũng giúp tôi có được công việc lương cao hơn.


4

Có một số lý do để phát triển các ứng dụng nguồn mở. Nói chung, nhu cầu càng cơ bản thì càng phù hợp với nguồn mở. Ví dụ, ASP.NET MVC, Ruby on Rails, Django, PHP và các khung web khác đều là nguồn mở. Điều đó đúng, ngay cả Microsoft cũng có một dự án nguồn mở khá nổi tiếng. Nhu cầu về một khung web được tổ chức tốt cho phép bạn tập trung vào việc xây dựng một ứng dụng web lớn hơn ứng dụng web cụ thể mà bạn đang xây dựng.

Nhiều người (bao gồm cả tôi) đóng góp cho nguồn mở vì chúng tôi sử dụng các khung này trong công việc hàng ngày của chúng tôi. Đó là tự bảo quản trong một ý nghĩa. Nếu tôi không phải tiếp tục phát minh lại bánh xe chỉ vì tôi đang ở một công ty mới, tại sao tôi phải làm thế?

Để kiếm tiền với nguồn mở, đó là một chủ đề khó khăn. Hầu hết các giấy phép nguồn mở cho phép bạn bán phần mềm của mình. Giấy phép cụ thể chi phối xem bạn có cần chia sẻ các sửa đổi của mình không (giấy phép kiểu BSD / ASL không trong khi hầu hết các giấy phép kiểu GPL làm trong hầu hết các trường hợp), hoặc cung cấp phân bổ cho dự án ban đầu.

Các trường hợp mà tôi thấy công việc thường xuyên nhất là:

  • Hỗ trợ bán hàng. MySQL, Spring và một vài người khác theo mô hình này và làm tốt với nó.
  • Bán tiện lợi. RedHat, SuSE và các bản phân phối Linux khác đóng gói một nhóm các ứng dụng với nhau để thuận tiện cho người dùng.
  • Bán đồ gia dụng. Nói tóm lại, đây là cách các công ty như Google, Nokia, Linksys, v.v ... kiếm tiền đóng gói các sản phẩm độc quyền và nguồn mở cùng nhau và giữ chúng an toàn. Đây có lẽ là lựa chọn sinh lợi nhất.
  • Bán áo phông / cốc / vv Không mang lại rất nhiều, nhưng tốt hơn là không có gì.

Điểm mấu chốt là mã nguồn có thể được mở, nhưng luôn có những người cần nhiều hơn mã thô. Tôi chắc chắn có nhiều cách để kiếm tiền từ nguồn mở, bạn chỉ cần sáng tạo.


2

Có nhiều lý do.

Một số người được trả tiền để viết nó, bởi vì chủ nhân của họ nghĩ rằng nó đáng giá (và có rất nhiều lý do tiềm năng cho điều đó). Một số người bắt đầu các công ty dựa trên F / OSS vì họ có thể kiếm tiền từ nó.

Một số người sử dụng F / OSS và muốn trả lại.

Một số người coi nó như một trò chơi danh tiếng, như nghiên cứu học thuật hoặc trả lời các câu hỏi ở đây.

Một số người muốn có một phần mềm nhất định cho mục đích riêng của họ và chỉ phát hành phần mềm vì điều họ muốn là sử dụng phần mềm và đôi khi họ có thể nhận được các đề xuất hữu ích nếu người khác cũng có thể sử dụng phần mềm.


1

Bên cạnh tiền, tất nhiên còn có sự nổi tiếng - và sau đó họ đang học cách làm một cái gì đó hoạt động bằng cách xây dựng nó và tự xây dựng nó. Đạt được kinh nghiệm có giá trị và thị trường bên ngoài cuộc sống công việc bình thường của bạn. Tôi nghĩ Ayende là một ví dụ tốt về điều này.

Ở một khía cạnh khác - nói chung tôi đã tìm thấy một số dự án và khung công tác trực quan nhất, tốt nhất mà tôi đã làm việc để trở thành nguồn mở - Tôi nghĩ rằng những người thực sự đam mê đủ để dành thời gian rảnh rỗi để xây dựng một dự án từ cào hoặc đơn giản là duy trì nó tạo ra một sản phẩm tốt hơn sau đó những người chỉ được nhóm lại với nhau từ 9-5.


1

Nó không chỉ để kiếm tiền mà thường xuyên hơn để tiết kiệm tiền . Thư viện rộng lớn gồm các thư viện và công cụ OSS tốt làm cho nó trở thành một lựa chọn tự nhiên.

Trong các trường hợp tương tự (GPL và bạn bè) có nghĩa là bạn bị ràng buộc về mặt pháp lý để tạo mã OSS kết quả. Trong các trường hợp khác, đó chỉ là một lựa chọn cá nhân, nhưng bạn vẫn nhận được các phần thưởng khác (chủ yếu là sự công nhận, đôi khi là cơ hội bán hỗ trợ, đôi khi (xảy ra với tôi) một tài liệu tham khảo tốt để hiển thị cho nhà tuyển dụng tiềm năng)


1

Bạn có thể phát hành nó theo giấy phép Miễn phí hạn chế, chẳng hạn như GNU AGPL, sau đó tính phí cho các trường hợp ngoại lệ.


Đó là một ý tưởng khủng khiếp.
đúng

@WTP. Đó là mô hình kinh doanh của MySQL và x264, trong số những người khác (mặc dù cả hai đều không sử dụng GNU AGPL, theo như tôi biết).
TRiG

1

Hơn một lần, tôi đã đóng góp một bản vá cho một dự án nguồn mở chỉ vì tôi muốn đảm bảo rằng tính năng / sửa lỗi sẽ được đưa vào các phiên bản trong tương lai.

Dường như không có gì căng thẳng khi ai đó sẽ phát hành thứ gì đó dưới dạng nguồn mở đơn giản vì nó mang đến khả năng người khác sẽ sử dụng nó và giữ cho nó hiện tại.

Tôi đã làm việc với một người đã viết mã rằng (IIRC) đã xác thực các CUSIP . Ông đã phát hành nó trên mạng. Nhiều năm sau, anh tải xuống một lib CUSIP cho một hệ thống khác. Anh ấy đã rất ngạc nhiên khi thấy một tài liệu tham khảo về mã mà anh ấy đã viết nhiều năm trước.


0

Bạn có thể hỗ trợ nó để có được tiền. Nếu bạn có một chương trình được cộng đồng nghĩ và sử dụng rất tốt, hãy nói như jboss, bạn có thể cung cấp dịch vụ và hỗ trợ của mình. Mọi người sẽ trả tiền cho nó.


0

Trang phục tôi làm việc, bắt đầu bằng mã miền công cộng (được viết bởi chủ doanh nghiệp) [Nguồn mở là nhiều năm kể từ khi được phát minh]. Mô hình kinh doanh ban đầu của ông là trở thành một nhà tư vấn về việc sử dụng nó (việc sử dụng không đơn giản và nhiều hàng trăm người thực hiện tư vấn sống). Tất nhiên, nhu cầu cải tiến tính năng rất lớn, nó đã trở thành một mã thương mại độc quyền *. Tuy nhiên, phần lớn số tiền lương kiếm được đang giảm dần theo tỷ lệ: (1) Người dùng thực hiện công việc của họ, (2) Tư vấn cho nhóm (1), cuối cùng (3) Nhà phát triển / người thử nghiệm, v.v.

Tôi sử dụng số nhiều, bởi vì một số mã độc quyền khác xuất hiện từ cùng một bản phát hành mã nguồn miền công cộng.


0

Bạn có thể thấy mình ở vị trí sau:

  • bạn cần phần mềm tốt để làm mọi thứ cho bạn
  • bạn thấy bạn cần kiểm soát nhiều hơn về cách thức hoạt động của phần mềm so với các tùy chọn cấu hình của các dịch vụ có sẵn cung cấp
  • bạn có quyền truy cập vào mã nguồn cho phần mềm gần như đáp ứng nhu cầu của bạn và chuyên môn để sửa đổi nó để thực hiện kiểm soát bạn cần
  • bạn chỉ cần thực hiện các sửa đổi nhỏ cho mục đích của mình, nhưng bạn muốn hưởng lợi từ nhiều sửa đổi khác do người khác thực hiện và tương lai phát triển của phần mềm có vẻ tươi sáng
  • sửa đổi của bạn không bị cô lập và đủ lớn để coi chúng là tài sản đáng để bảo vệ hoặc bán, hoặc chi phí bổ sung khi làm như vậy sẽ vượt xa lợi ích
  • bạn biết sửa đổi của bạn có thể mang lại lợi ích cho nhiều người khác có nhu cầu tương tự như của bạn; Kết hợp chúng vào dòng phát triển chính sẽ giúp bạn tiết kiệm công sức, so với việc duy trì bản sao của chính bạn

Trong tình huống này, tham gia vào một dự án nguồn mở là một quyết định kinh doanh hoàn toàn hợp lý.

Nó có thể là quảng cáo khá tốt, quá.

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.