Làm thế nào bạn nên đối phó với một dự án phổ biến mà bạn không còn muốn duy trì?


75

Tôi là người duy trì một dự án có lượng người dùng phi kỹ thuật lớn. Tôi đã duy trì nó được khoảng 4 năm và thêm các tính năng mới khi chúng được yêu cầu.

Tôi muốn chuyển sang các dự án khác ngay bây giờ và ngừng phát triển cho ứng dụng này. Do tính chất phi kỹ thuật của người dùng, đã có rất ít đóng góp mã trong quá khứ. Tôi không tin rằng tôi sẽ có thể tìm thấy bất cứ ai khác để tiếp quản dự án thay cho tôi.

Lỗi, sự cố, yêu cầu tính năng - những lỗi này vẫn đang đến. Tôi vẫn đang trả lời email để được giúp đỡ, vì tôi không chắc mình có nên bỏ qua chúng hay không, hãy nói với họ rằng tôi không làm việc trên ứng dụng hoặc nếu tôi nên trả lời đến email chỉ trong một số trường hợp nhất định.

Cách tốt nhất để 'từ bỏ' dự án này, nhưng vẫn cho phép người dùng sử dụng ứng dụng là gì?


Cập nhật (tháng 7 năm 2016) - Nó không đi theo kế hoạch. Tôi đã đưa ra một thông báo trong README và ngay sau đó, tôi bắt đầu nhận được những đóng góp có tính chất quan trọng hơn. Kéo yêu cầu với sửa lỗi, tính năng, tài liệu, hoạt động vấn đề. Kể từ đó, dự án đã cảm thấy 'được hồi sinh' và giờ tôi đang hạnh phúc duy trì nó cùng với các dự án mới hơn. Tôi có cộng tác viên là tốt. Theo phỏng đoán, nó có thể là loại đóng góp ảnh hưởng đến quan điểm của tôi về dự án và với chất lượng đóng góp được cải thiện, nó không còn cảm thấy như là một việc vặt nữa.


1
Bạn có thể chuyển nó sang một nền tảng mới hoặc công nghệ mới? Bằng cách đó, sẽ rất thú vị khi bạn làm việc và bạn có thể giải thích để hỗ trợ các cuộc gọi rằng sửa lỗi và cải tiến sẽ không còn được thực hiện theo mã cũ và đề nghị họ nâng cấp khi nó sẵn sàng, v.v.?
Stefan

5
Vì tò mò, dự án là gì? Liên kết? (giả sử đó là nguồn mở)
Andres F.

70
Đó là Google Reader, phải không?
Kyralessa

3
Kiểm tra kỹ giả định của bạn: Cơ sở người dùng của bạn quá phi kỹ thuật để duy trì dự án hay dự án của bạn quá kín để cho phép tham gia ngoài các vấn đề và yêu cầu tính năng?
Bengt

Bây giờ tất cả chúng ta đều muốn xem dự án ... Bạn nên thêm liên kết.
daviewales

Câu trả lời:


40

Tôi đoán đây không phải là một dự án tại nơi làm việc mà bạn là một nhân viên được trả lương và bạn làm gì đó trong thời gian rảnh rỗi miễn phí?

Nếu bạn không kiếm được tiền từ việc này, thì rõ ràng không có động lực nào cho bạn, và không có động lực nào cho bất kỳ ai khác đến để giải quyết nó. (trừ khi có thể là cho một tổ chức từ thiện hoặc tổ chức tự nguyện tương tự)

Thay thế, tại sao không xem xét khả năng thêm trả tiền cho các tính năng.

Bằng cách này bạn có thể có một số động lực để tiếp tục. Bạn có thể tìm thấy những người sẵn sàng trả tiền, đặc biệt khi giải pháp thay thế là hệ thống ngừng phát triển tích cực. (tất nhiên mọi người có thể từ bỏ hệ thống của bạn, nhưng bạn quan tâm điều gì, bạn đã không được trả tiền).

Một lựa chọn khác có thể là sử dụng dự án để tìm hiểu các công nghệ mới? Có phải là một trang web? Nâng cấp công nghệ mới nhất? Chuyển đổi từ Asp.Net sang MVC4 chẳng hạn? xây dựng phiên bản di động, làm cho nó dựa trên dịch vụ và tạo giao diện ứng dụng iOS cho nó?


23
Một khả năng khác là bán (hoặc tặng) dự án cho một công ty. Bạn có người dùng, một công ty có thể thấy lợi nhuận.
Sulthan

@Sulthan hoàn toàn!
ozz

1
Nếu bạn không kiếm được tiền từ việc tăng giá này hoặc bắt đầu tính phí cho dịch vụ.
Bill Leeper

9
Ông gắn thẻ "nguồn mở". Đó là loại như từ thiện hoặc công việc tình nguyện. Các động cơ chỉ đơn giản là khác nhau. Thông thường, bạn không thể bán các dự án nguồn mở. Nhưng anh ta luôn có thể tính phí cho công việc bổ sung. Nhận một nhóm quyên góp cho những gì được cố định / thêm vào tiếp theo.
Philip

@Sulthan - rất thú vị, đã không xem xét điều đó. Tôi sẽ xem những công ty nào sẽ quan tâm đến điều này.
Mendhak

25

Thông báo bạn từ bỏ sản phẩm cho cộng đồng người dùng của bạn. Có thể bạn sẽ tìm thấy một người kế thừa cho vai trò của bạn như là người duy trì. Cố gắng tổ chức một số thời gian bàn giao, như bạn sẽ làm với một dự án trong công việc hàng ngày của bạn.

Như esr đặt nó trong Nhà thờ và Chợ :

Khi bạn mất hứng thú với một chương trình, nhiệm vụ cuối cùng của bạn là giao nó cho một người kế vị có thẩm quyền.


2
Để thêm vào điều này, nhận xét trên các trang web lập trình và xem nếu có ai sẵn sàng tiếp quản. Một số người không chắc chắn những dự án họ muốn làm nhưng muốn có một số kinh nghiệm mã hóa và mở cho các ý tưởng. Thời gian bàn giao có thể liên quan đến nhiều công việc hơn trong ngắn hạn nhưng hy vọng sẽ trả hết trong dài hạn.
James

11

Một đề nghị khác cho bạn, hơi trái ngược với những gì bạn đang hỏi nhưng tôi nghĩ nên có trong danh sách của bạn để xem xét. Bạn đã cân nhắc việc không từ bỏ nó? Nếu bạn có một dự án có nhiều người tích cực sử dụng và có yêu cầu ngày càng tăng, nhưng không thể tự sửa đổi nó và bạn là chuyên gia duy nhất trong phần mềm ... thì bạn có thể tính tiền cho họ.

Nếu nguồn mở, bạn có thể xem xét đóng nó (lựa chọn của bạn nếu bạn muốn kìm hãm sự cạnh tranh phát triển dự án hơn nữa). Khi yêu cầu tính năng tiếp theo xuất hiện, hãy nói đồng ý với khoản phí $ xyz.

Chỉ là một lựa chọn để xem xét.


11
Sử dụng một ứng dụng nguồn mở trước đó và biến nó thành nguồn đóng sẽ gây khó chịu cho nhiều người dùng và thậm chí có thể không hợp pháp nếu người dùng khác đã đóng góp mã theo một số giấy phép nguồn mở nhất định, tùy thuộc vào bất kỳ thỏa thuận đóng góp nào họ đã làm hoặc không ký. Có một sự khác biệt rất lớn giữa việc tính phí cho công việc của bạn trong một dự án nguồn mở và đột nhiên đóng những gì đã mở trước đó.
James

3
@James Sạc cho công việc được thực hiện không nhất thiết có nghĩa là nguồn đóng. Điều đó chỉ có nghĩa là ai đó muốn phần mềm có các tính năng mới và anh ta muốn khuyến khích thêm nó - không có lý do gì anh ta không thể tính phí cho công việc của mình trong khi vẫn giữ nguồn mở.
Daenyth

1
@Daenyth Tất nhiên, nhưng câu trả lời này đặc biệt đề cập đến việc đóng nó, vì vậy nó là một cái gì đó cần thảo luận.
James

@James Bạn không cần phải làm cho nó đóng nguồn. Bạn vẫn có thể phát hành các tính năng mới dưới dạng nguồn mở ... nhưng không có lý do gì để phát hành để cam kết mã cho đến khi kiểm tra xóa.
Sled

1
@ArtB Có, tôi biết, nhưng câu trả lời này đặc biệt đề cập đến việc đóng nó, vì vậy bình luận của tôi đặc biệt liên quan đến điều đó.
James

7

Đó là một điều khó khăn để từ bỏ cơ sở người hâm mộ của bạn, đặc biệt là khi bạn khác với họ. Nếu có các nhà phát triển trong nhóm người dùng, đó sẽ là một vấn đề dễ giải quyết: chỉ cần thông báo lối thoát sắp xảy ra của bạn và đề nghị ai đó bước lên, đề nghị giúp họ tăng tốc trước khi bạn rời đi. Vì không có, câu hỏi thực sự là: Bạn có thể (hoặc người dùng của bạn) tìm ai đó để thay thế bạn trong một khung thời gian có ý nghĩa với bạn (hoặc người dùng của bạn).

Trước đây, tôi đã duy trì một số dự án trong nhiều năm lâu hơn tôi quan tâm vì nó tốt cho danh tiếng của tôi. Tầm vóc của tôi, tương đối nhỏ, mặc dù vậy, trong lĩnh vực của tôi đã giúp tôi tìm được việc làm khi tôi cần hoặc muốn chúng, và điều đó có giá trị với tôi. Đủ giá trị để làm cho nó đáng để đặt thời gian của tôi khi tôi có thể. Cuối cùng, tất nhiên, tôi bỏ đi, nhưng tôi chắc chắn rằng mã dự án đầy đủ có sẵn cho bất kỳ người kế nhiệm nào.


"Đó là một điều khó khăn để từ bỏ cơ sở người hâm mộ của bạn, đặc biệt là khi bạn khác với họ." - Chính xác! Tôi quan tâm đến họ và một số bài viết khác ở đây đang nói về việc làm cho ý định của tôi rõ ràng + tính phí, có thể hoạt động.
Mendhak

"Tầm vóc của tôi trong lĩnh vực của mình đã giúp tôi tìm được việc làm". Điểm hay - một dự án Nguồn mở luôn trông ấn tượng trong sơ yếu lý lịch / CV.
Mawg

5

Bạn có muốn từ bỏ dự án vì ...

bạn không muốn làm điều đó nữa?

Sau đó: Tắt duyên dáng ala Reader.

Hoặc ... thuê một nhà phát triển (tiếp tục bên dưới)

Hay vì bạn đang mất tiền?

Tính toán chi phí tự trả (và tiếp tục bên dưới)

Hay vì bạn không kiếm được tiền?

Tính toán số tiền bạn cần để bạn cảm thấy khác biệt:

  1. chi phí xuất túi phải được chi trả
  2. chi phí của một nhà phát triển để tiếp tục phát triển
  3. tỷ suất lợi nhuận

Thành thật với người dùng của bạn: giải thích với họ rằng chi phí nhất định về thời gian, năng lượng, v.v. để duy trì dịch vụ.

Sau đó yêu cầu quyên góp và / hoặc tính phí cho các tính năng hiện có. Đừng cố gắng phát minh ra các tính năng cao cấp chỉ trì hoãn việc xác định xem dịch vụ có thực sự đủ giá trị để hỗ trợ hay không. Chỉ cần đi với các tính năng bạn có.

Nếu người dùng chó cái tốt thì họ có thể đi nơi khác. Nếu không đủ đóng góp và / hoặc đăng ký, sau đó tắt máy.

Hãy tàn bạo - một khi bạn rút phích cắm, đừng nhìn lại.


2
+1 cho những ý tưởng này. Bao gồm "hóa đơn" hàng tháng của bạn, bạn sẽ tính phí nếu bạn đang làm việc này cho ai đó về mặt thương mại. Sau đó nói với người dùng của bạn rằng họ có thể tham gia và thuê một người bảo trì từ thời điểm đó. Chết tiệt, có lẽ bạn thậm chí có thể ứng tuyển vào vị trí đó :)
Zlatko

@zladuric - đồng ý rằng đó là lý do tại sao tôi có "chi phí của nhà phát triển để tiếp tục phát triển" (trong đó "bạn" có thể là nhà phát triển đó). Quá nhiều nhà phát triển làm điều gì đó "vui vẻ" mà không nhận ra nhu cầu điều hành doanh nghiệp. TANSTAAFL
Pat

3

Bạn có một vài lựa chọn như những người khác đã lưu ý. Lựa chọn của tôi là đưa ra một thông báo kết thúc cuộc sống. Cho biết rằng sản phẩm sẽ ngừng hoạt động vào một ngày như vậy.

Ngoài ra, chỉ ra rằng sản phẩm này đã gần hết tuổi thọ, chỉ những lỗi nghiêm trọng ảnh hưởng đến khả năng ứng dụng hoạt động như thiết kế hoặc dự định sẽ được xử lý. IE nếu máy chủ ngừng hoạt động, bạn sẽ lấy nó lên và chạy lại.

Nếu người dùng có dữ liệu, bạn có thể phải thêm một cách để họ xuất dữ liệu.

Hãy xem những gì Google gần đây đã làm với Reader để được hướng dẫn. Họ đóng cửa nó và đó là một dịch vụ rất phổ biến, nhưng nó không phù hợp với mục tiêu dài hạn của họ nên quyết định khó khăn là đóng cửa cần phải được đưa ra.


1
+1 Dưới đây là một ví dụ về một dự án tương tự, xuất sắc (IMO): picoos.sourceforge.net
Vorac

3

Là một số loại nửa cách đo là một giải pháp có thể? Giữ dự án đi nhưng giảm khối lượng công việc của bạn?

Ví dụ: bạn nói rằng bạn vẫn đang trả lời email để được giúp đỡ. Bạn có thể thiết lập một diễn đàn người dùng và nhấn mạnh tất cả các truy vấn hỗ trợ được thực hiện thông qua đó để những người dùng quyền lực khác có thể giúp đỡ không?


1
Hơn nữa, giới hạn phát triển chỉ các lỗi chính. Bằng cách đó, ứng dụng (được cho là kết thúc) có chức năng và mạnh mẽ.
Vorac

Cũng có nghĩa là câu trả lời chỉ là trì hoãn không thể tránh khỏi. Giết nó hoặc kiếm tiền. Đừng làm điều đó nửa chừng - sau đó nó sẽ trở thành một sự tiêu hao năng lượng.
Pat

2
@pat bạn dường như đang cho rằng động lực duy nhất mà ai đó có thể có là tiền. Có những động lực khác để viết phần mềm nguồn mở, một điều tôi nghĩ rằng op hiểu khi họ nói về việc muốn giúp đỡ người dùng của họ. Dù thế nào đi nữa, có lẽ câu trả lời này không phù hợp với OP trong trường hợp này nhưng chúng là những giải pháp khác ngoài "Tiền OMG" ít nhất nên được thảo luận.
James

@James - xin lỗi nhưng có. Chúng ta cần tiền để tồn tại. Tất cả chúng ta đều có một khoảng thời gian rất hạn chế trong thế giới này. Chúng ta nên tập trung vào những thứ tạo ra "giá trị" nhất. Làm việc trên các dự án không có giá trị là một sự lãng phí cuộc sống. Làm cách nào để đo lường giá trị: 1) nếu người khác không tìm thấy giá trị trong một dự án (và không sử dụng nó), thì dự án đó "bổ ích" như thế nào? 2) tiền là cách chúng ta đo lường "giá trị". 3) Chi phí cơ hội - nếu OP tiếp tục làm việc với dự án (không có giá trị này?) - OP đang tiếp tục làm việc trên cái gì?
Pat

@Pat OP nêu rõ dự án có một cơ sở người dùng lớn, vì vậy tôi không biết nơi bạn nhận được rác "không có giá trị" này. Chỉ vì hiện tại không ai trả tiền cho điều đó không có nghĩa là không ai coi trọng điều đó. Tiền là một thước đo giá trị; nhiều người cũng đưa cổ phiếu vào các biện pháp khác, chẳng hạn như họ đã tạo ra một phần mềm hữu ích mà nhiều người khác muốn. Nhưng nói về thời gian hạn hẹp, tôi thực sự không thể bận tâm để tranh luận chính trị về vấn đề này trong phần bình luận - tạm biệt.
James

1

Việc chuyển sang thanh toán thuần sẽ giết chết rất nhiều người dùng, nhưng có rất nhiều lựa chọn thay thế cho thanh toán thuần túy. Một trò chơi video tôi chơi cung cấp cho các nhà tài trợ một số đặc quyền bổ sung như tải xuống nhiều hơn mỗi giờ "một trò chơi dựa trên kỹ năng thuần túy, không nhầm lẫn với trả tiền để giành được rác lol". Một trò chơi khác Path of Exile cung cấp nâng cấp mỹ phẩm. Các trang web khác đặt khảo sát để đổi lấy băng thông. Bộ mã hóa quyên góp cung cấp cho người dùng miễn phí giấy phép cho (Thời gian X) có thể gia hạn nhiều lần nếu họ muốn, nhưng các nhà tài trợ có được giấy phép vĩnh viễn.

Có hàng tấn tùy chọn cung cấp nó cho tiền mặt nhưng vẫn giữ cho người dùng miễn phí xung quanh là tốt.

Hầu hết mọi người không có vấn đề gì trong việc hỗ trợ một cái gì đó mà họ thích một cách trung thực, tôi chỉ cần thử hỏi trước bằng cách thiết lập một khu vực tiền tip được tính để trang trải chi phí hàng tháng của bạn.


1
Tôi có thể thấy câu trả lời của bạn liên quan đến câu hỏi của OP như thế nào, nhưng OP đang hỏi một khía cạnh hơi khác. Họ muốn chuyển từ dự án. Nhiều điểm trong câu trả lời của bạn sẽ tạo ra sự ràng buộc liên tục cho dự án.

1

Bạn đã bao gồm open-sourcethẻ, vì vậy tôi đoán dự án của bạn là phần mềm là nguồn mở.

đã có rất ít đóng góp mã trong quá khứ

Điều đó thật đáng tiếc, nhưng có thể hiểu được trong trường hợp bạn đang làm mọi thứ. Nhiều người dùng không tham gia miễn là nó hoạt động hợp lý.

Một số nhà lãnh đạo muốn ủy thác mọi trách nhiệm và một số nhà lãnh đạo muốn kiểm soát chặt chẽ hơn. Mặc dù sự cân bằng là cần thiết, ủy thác càng sớm càng tốt là chìa khóa ở đây.

Tôi đã tạo ra hơn 30 dự án nguồn mở và nhiều dự án vẫn hoạt động mặc dù tôi đã rời bỏ chúng. Đây là những gì tôi muốn giới thiệu:

  1. Cung cấp quyền truy cập theo dõi lỗi RẤT rộng rãi, có thể cho bất kỳ ai đã từng đóng góp một dòng mã. Nếu ai đó bắt đầu làm những điều điên rồ (xác suất rất thấp), bạn vẫn có quyền kiểm soát quản trị viên để loại bỏ chúng. Đừng quên đưa ra các quyền khác: kiểm soát mã nguồn, wiki, dịch thuật đám đông, trang facebook, tài khoản twitter, trang web chính thức, phân tích google, v.v.

  2. Đăng trong diễn đàn (và thông báo trang web) thông báo rằng bạn đang nghỉ hưu và tìm kiếm một nhà lãnh đạo dự án mới.

  3. Ngay cả khi không có ai tham gia với tư cách là trưởng nhóm, các vấn đề nghiêm trọng có thể xảy ra (ví dụ ngớ ngẩn: URL được mã hóa cứng trở thành 404, khiến ứng dụng bị sập khi khởi động), có thể nó sẽ được sửa bởi ai đó. Nếu không ai sửa các lỗi nghiêm trọng, điều đó có nghĩa là bạn không nên lo lắng quá nhiều nữa, bạn đã làm những gì bạn có thể, nhưng dự án dường như không còn khả thi nữa.


Cảm ơn - Tôi cho rằng đây là nơi Github không tỏa sáng chính xác - Tôi không có các loại kiểm soát bảo mật đó. Nền tảng VCS nào hỗ trợ loại tính năng bạn đang nói đến?
Mendhak

Trái lại, Github thực sự là một trong những nơi tốt nhất. Với Github, bạn có thể tạo tài khoản "tổ chức" và mời các nhà phát triển khác tham gia. Ngoài ra, Github giúp dễ dàng nhìn thấy các loại dĩa phổ biến, đó là một điều tốt.
Nicolas Raoul
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.