¿Cómo debería tratar con un proyecto popular que ya no desea mantener?

75

Soy el encargado de mantener un proyecto que tiene una gran base de usuarios no técnicos. Lo he mantenido durante aproximadamente 4 años y he agregado nuevas funciones a medida que se han solicitado.

Me gustaría pasar a otros proyectos ahora y dejar de desarrollar para esta aplicación. Debido a la naturaleza no técnica de los usuarios, ha habido muy pocas contribuciones de código en el pasado. No creo que pueda encontrar a nadie más que se haga cargo del proyecto en mi lugar.

Errores, problemas, solicitudes de funciones: todavía están llegando. Sigo respondiendo a los correos electrónicos de ayuda, ya que no estoy seguro de si debo ignorarlos, les digo que no estoy trabajando en la aplicación o si Debería responder a los correos electrónicos solo en ciertos casos.

¿Cuál es la mejor manera de "abandonar" este proyecto, pero aún así permite que los usuarios utilicen la aplicación?

Actualización (julio de 2016): no salió como estaba previsto. Hice un anuncio en el README y poco después comencé a recibir contribuciones de una naturaleza más sustancial. Extraiga solicitudes con correcciones de errores, características, documentación, actividad de problemas. Desde entonces, el proyecto se ha sentido "revitalizado" y ahora lo mantengo feliz junto con los proyectos más nuevos. También tengo colaboradores. En una conjetura, puede haber sido el tipo de contribuciones que estaban afectando mi visión del proyecto y con la mejora de la calidad de las contribuciones, ya no se sentía como una tarea.

    
pregunta Mendhak 04.04.2013 - 12:11

9 respuestas

40

Supongo que este no es un proyecto en un lugar de trabajo donde eres un empleado remunerado y algo que haces en tu tiempo libre de forma gratuita.

Si no estás ganando dinero con esto, entonces claramente no hay ningún incentivo para ti, y no hay incentivo para que alguien más llegue fresco para lidiar con eso. (a menos que sea para una organización benéfica u otra organización voluntaria similar)

Como alternativa, ¿por qué no considerar la posibilidad de agregar funciones pagadas?

De esta manera puede tener algún incentivo para continuar. Es posible que encuentre personas dispuestas a pagar, especialmente cuando la alternativa es que el sistema deje de desarrollarse activamente. (por supuesto, la gente puede abandonar su sistema, pero a usted le importa, ya no se le paga).

¿Otra opción podría ser usar el proyecto para aprender nuevas tecnologías? ¿Es un sitio web? Actualizar a la última tecnología? ¿Convertir de Asp.Net a MVC4 por ejemplo? crear una versión móvil, hacerla basada en servicios y crear una aplicación iOS para ella?

    
respondido por el ozz 04.04.2013 - 14:16
25

Anuncie su abandono del producto a su comunidad de usuarios. Tal vez encuentre un sucesor para su papel de mantenedor. Intente organizar un tiempo de entrega, como lo haría con un proyecto en su trabajo diario.

Como esr lo puso en La Catedral y el Bazar :

  

Cuando pierdes interés en un programa, tu último deber es entregarlo a un sucesor competente.

    
respondido por el Residuum 05.04.2013 - 02:31
11

Otra sugerencia para usted, que es ligeramente opuesta a lo que está preguntando, pero creo que debería estar en su lista para su consideración. ¿Has considerado no abandonarlo? Si tiene un proyecto para el que hay personas que usan activamente y tiene requisitos cada vez mayores, pero no puede modificarlo por sí mismo y usted es el único experto en el software ... entonces está en condiciones de cobrarles dinero por ello.

Si la fuente está abierta, podría considerar cerrarla (su elección si desea sofocar la competencia desarrollando aún más el proyecto). Cuando llegue la próxima solicitud de función, diga sí por un cargo de $ xyz.

Solo una opción a considerar.

    
respondido por el Ian 04.04.2013 - 14:11
7

Es una cosa difícil abandonar tu base de fans, especialmente cuando eres diferente de ellos. Si hubiera desarrolladores en el grupo de usuarios, sería un problema fácil de resolver: simplemente anuncie su salida inminente y sugiera que alguien más se haga cargo, ofreciéndose para ayudarlos a ponerse al día antes de irse. Dado que no hay, la pregunta es realmente esta: ¿Puede usted (o sus usuarios) encontrar a alguien que lo reemplace en un período de tiempo que tenga sentido para usted (o sus usuarios)?

En el pasado, he mantenido varios proyectos durante años más de lo que me importaba porque era bueno para mi reputación. Mi estatura, por comparativamente pequeña que sea, en mi campo me ha ayudado a encontrar trabajos cuando los necesito o los quiero, y eso tiene valor para mí. Suficiente valor para hacer que valga la pena dedicar mi tiempo cuando pueda. Finalmente, por supuesto, me alejé, pero me aseguré de que el código completo del proyecto estuviera disponible para cualquier sucesor.

    
respondido por el Ross Patterson 04.04.2013 - 13:26
5

¿Quieres abandonar el proyecto porque ...

¿Ya no quieres hacerlo?

Entonces: Apagado agraciado ala Reader.

O ... contrate a un desarrollador (continúe abajo)

¿O porque estás perdiendo dinero?

Calcule los costos de desembolso (y continúe a continuación)

¿O porque no estás ganando dinero?

Calcule cuánto necesita hacer para que se sienta diferente:

  1. los costos de desembolso deben ser cubiertos
  2. costo de un desarrollador para continuar el desarrollo
  3. un margen de beneficio

Sea honesto con sus usuarios: explíqueles que cuesta una cierta cantidad de tiempo, energía, etc. para mantener el servicio.

Luego solicite donaciones y / o cobre por las características existentes . No intente inventar funciones premium que solo retrasen la determinación de si el servicio es lo suficientemente valioso como para soportarse a sí mismo. Solo ve con las características que tienes.

Si los usuarios se quejan, pueden ir a otra parte. Si no hay suficientes donaciones y / o registros, apague.

Sea brutal: una vez que tire del enchufe, no mire hacia atrás.

    
respondido por el Pat 13.07.2013 - 23:13
3

Tienes un par de opciones como otras han señalado. Mi opción es poner un aviso de fin de vida. Indique que el producto se apagará en tal o cual fecha.

Además, indique que dado que este producto está llegando al final de su vida útil, solo se solucionarán los errores críticos que afectan la capacidad de la aplicación para funcionar como se diseñó o pretendió. ES DECIR. si el servidor está inactivo, lo volverá a poner en funcionamiento.

Si los usuarios tienen datos, es posible que tenga que agregar una forma para que los exporten.

Eche un vistazo a lo que Google hizo recientemente con Reader para obtener orientación. Lo cerraron y fue un servicio muy popular, pero no se ajustó a sus objetivos a largo plazo, por lo que fue necesario tomar la difícil decisión de cerrarlo.

    
respondido por el Bill Leeper 04.04.2013 - 17:49
3

¿Es algún tipo de medio camino una posible solución? ¿Mantener el proyecto en marcha pero disminuir su carga de trabajo?

Por ejemplo, usted dice que todavía está respondiendo a los correos electrónicos de ayuda. ¿Puede configurar un foro de usuarios e insistir en que todas las consultas de soporte se realicen para que otros usuarios avanzados puedan ayudarlo?

    
respondido por el James 04.04.2013 - 22:05
1

Bueno, pasar a pago puro matará a muchos usuarios, pero hay muchas alternativas a pago puro. Un videojuego que juego le da a los donadores algunos beneficios adicionales, como más descargas por hora, "un juego basado en habilidades puras, que no debe confundirse con el pago para ganar basura jajaja". Otro juego Path of Exile ofrece mejoras cosméticas. Otros sitios ponen encuestas a cambio de ancho de banda. El programador de donaciones otorga a los usuarios gratuitos licencias para (X Time) renovables tantas veces como lo deseen, pero los donadores obtienen licencias permanentes.

Hay un montón de opciones que lo ofrecen por dinero en efectivo, pero aún así mantiene a los usuarios gratuitos en todo.

La mayoría de las personas no tienen problemas para respaldar algo que les gusta, así que honestamente, solo intentaría preguntar primero configurando un área de propinas calculada para cubrir su costo mensual.

    
respondido por el Drew 14.07.2013 - 12:31
1

Has incluido la etiqueta open-source , así que supongo que tu proyecto es software de código abierto.

  

ha habido muy pocas contribuciones de código en el pasado

Eso es desafortunado, pero comprensible en caso de que estuvieras haciendo todo. Muchos usuarios no se involucran siempre que funcione de manera razonable.

A algunos líderes les gusta delegar todas las responsabilidades, ya algunos líderes les gusta mantener un control más estricto. Si bien es necesario un equilibrio, delegar lo antes posible es la clave aquí.

He creado más de 30 proyectos de código abierto, y muchos todavía están activos aunque los he dejado. Esto es lo que recomendaría:

  1. Proporcione acceso de seguimiento de errores MUY generosamente, quizás a cualquiera que haya contribuido alguna vez con una línea de código. Si alguien comienza a hacer locuras (muy baja probabilidad), todavía tiene control de administrador para eliminarlos. No olvide otorgar otros derechos: control de código fuente, wiki, traducción de público, página de Facebook, cuenta de Twitter, sitio web oficial, Google Analytics, etc.

  2. Publique en el foro (y en el aviso del sitio web) anunciando que se está retirando y en busca de un nuevo líder de proyecto.

  3. Incluso si nadie interviene como líder del equipo, problemas fatales que podrían ocurrir (ejemplo tonto: una URL codificada se convierte en 404, lo que hace que la aplicación se bloquee al inicio), probablemente será reparada por alguien. Si nadie soluciona los defectos fatales, significa que ya no debe preocuparse demasiado, ha hecho lo que pudo, pero el proyecto ya no parece ser viable.

respondido por el Nicolas Raoul 29.07.2013 - 12:36

Lea otras preguntas en las etiquetas