¿Por qué la implementación de bibliotecas científicas en software no se considera equivalente a una publicación?

En la academia, los investigadores viven bajo el mantra de "publicar o perecer". Esto se debe a que el aporte a la sociedad que da la academia es la ampliación del conocimiento humano.

Sin embargo, dada la importancia del software para realizar investigaciones, no entiendo por qué la implementación de muchos algoritmos o la creación de API para fines de investigación no es igualmente relevante cuando se trata de obtener financiación.

Vea, por ejemplo, cómo pocos artículos en matemáticas, ciencias de la computación e ingeniería de software proporcionan código fuente, a pesar de que el enfoque completo del artículo es la implementación de un algoritmo y su rendimiento en hardware real.

Además, vea cuánta investigación se basa en las API. Tenemos API de álgebra lineal, cálculo, visiones por computadora, simulaciones de física, etc. Muchos de los cuales son software pago (por ejemplo, Matlab).

Si alguien está dispuesto a dedicar tiempo a desarrollar una API para un tema determinado (una biblioteca de visión artificial, un algoritmo de renderizado, física cuántica/simulaciones informáticas) y ese software proporciona herramientas nuevas y útiles en software abierto y gratuito para que los investigadores puedan realizar sus investigar de manera más eficiente, no veo cómo esto no es equivalente en utilidad a hacer un artículo.

En campos como la estadística, muchos de los trabajos mejor citados son implementaciones de software de algoritmos, las viñetas de esas implementaciones se publican como cualquier otro artículo, y los autores de los más populares probablemente sean mejor conocidos por esas contribuciones. Un profesor de neurociencia que conocí cuando era estudiante me aconsejó que el mejor movimiento profesional que hizo fue compartir un software de análisis de datos que se extendió rápidamente en su campo y atrajo mucha más atención a su trabajo que cualquier otra publicación. En resumen, discrepo un poco con la premisa aquí.
¿Por qué quieres ser académico? Si es bueno y le apasiona la implementación, debe buscar un trabajo de programación que lo recompense exactamente.
Me encantan las dos cosas. Pero sobre todo, lo que más disfruto es aprender un algoritmo e implementarlo desde cero para comprenderlo completamente y analizarlo. También me encanta investigar. Pero lo más importante es que siento que hay una gran falta de recursos de software abierto para la ciencia. Y creo que este es un problema que debe solucionarse.
He escrito una respuesta más larga a continuación, pero la premisa de que los científicos no pueden obtener crédito por su software es incorrecta hoy en día.
1) muchos programas tienen publicaciones adjuntas, que pueden estar entre los artículos más citados; 2) las publicaciones se refieren a resultados notables de investigación, mientras que la codificación de algoritmos ya existentes es algo totalmente diferente. Manzanas con naranjas.

Respuestas (4)

El software es un producto de investigación que tiene valor y se considera valioso, pero usted, como investigador, debe asegurarse de extraer el valor de él. Extraer valor de cualquier producto de investigación requiere hacer algún tipo de redacción formal y distribuir las ideas entre la audiencia relevante. Para el software, esto es muchas veces en forma de publicación de software. Muchas revistas de computación científica tradicionales toman un artículo de software y estos artículos pueden funcionar bastante bien en términos de citas. Por ejemplo, "The MATLAB ODE Suite" de Shampine es uno de los artículos más leídos y citados en SIAM Journal of Scientific Computing .

Tomando ese documento como referencia, observe que identifica el problema que está resolviendo, explica cómo tuvo que modificar los algoritmos para lograr sus objetivos y el tipo de resultados que puede lograr. Esto luego da un recurso citable y muchas de las personas que usan el documento citarán esta fuente. El software tiende a ser poco citado, pero dado que puede ser tan utilizado, encontrará que el software exitoso tiene algunas de las publicaciones más citadas. Otra revista clásica como esta es ACM Transactions on Mathematical Software (ACM TOMS) . Las revistas de software más recientes son Journal of Open Research Software y SoftwareX .

En una dirección ligeramente diferente, el Journal for Open Source Software reduce la importancia del artículo al hacer que el software y su documentación formen parte de la revisión por pares. Como ejemplo, Optim.jl tiene un documento JOSS que, como puede ver, es mucho más breve que los documentos académicos tradicionales, pero al menos resume el valor del software en forma citable.

Al solicitar puestos de trabajo, notará que las personas, naturalmente, asignan un valor diferente a los documentos de software. Si bien definitivamente está cambiando, algunos profesores que conozco adoptan una postura de línea dura de que el software es solo una implementación y no amplía el conocimiento y lo valorarán menos que otros documentos (razón por la cual estos puntos exactos deberían ser refutados en una publicación sobre dicho software). Por el contrario, algunas personas se preocupan más por el impacto o las citas, por lo que un software ampliamente utilizado tendrá un gran efecto en ellas. En general, en mi experiencia, el valor del software parece estar aumentando con el tiempo, siendo más probable que los profesores veteranos adopten la primera postura y que los profesores más nuevos adopten la segunda.

Pero mi consejo sería simplemente hacer lo que creas que tiene un gran impacto en la comunidad investigadora. Si tiene un gran impacto, la gente lo notará y, a veces, solo ser notado es lo que necesitas.

Gracias por el consejo, esta respuesta parece bien equilibrada y redondeada.

No estoy seguro de en qué campo se encuentra, pero para mí, esta pregunta casi no tiene sentido.

Nada es equivalente a un papel... excepto un papel. También puede preguntarse por qué hacer una investigación sin publicarla no es equivalente a un artículo. Ese no es el modelo que tenemos.

En mis campos, si publicas una biblioteca/caja de herramientas, escribes un artículo sobre ella. Si coloca un conjunto de datos abierto, escribe un artículo sobre él. Si investigas, escribes un artículo sobre ello. Hay muchas personas que se enfocan en desarrollar cajas de herramientas, y muchas personas que quizás nunca toquen el desarrollo en absoluto y solo publicarán ciencia "real".

En otras palabras, no está validado y "cuenta" hasta que haya sido al menos algo revisado por pares.

'En otras palabras, no está validado y "cuenta" hasta que haya sido al menos algo revisado por pares.' - Creo que esta declaración solo lleva a la pregunta de seguimiento obvia que no se responde en su respuesta: ¿Por qué no tenemos un modo de publicación que incluya bibliotecas/cajas de herramientas revisadas por pares?
@orm ¿Lo hacemos? Al menos mi campo lo hace. se llaman diarios
Suena prometedor. Entonces, ¿su campo tiene revistas que aceptan el código (y posiblemente alguna documentación técnica de la API) de una biblioteca/caja de herramientas, sin ningún documento adicional en papel sobre la biblioteca o la caja de herramientas?
@ORMapper Oh, veo lo que estás preguntando. No, no creo que estemos allí todavía. No sé qué tan grandes son las bibliotecas/cajas de herramientas en su campo, pero en el mío, nunca se revisarían completamente por pares porque son demasiado grandes. Sin embargo, generalmente están en GitHub.
Veo varias formas de llegar a ese objetivo (por ejemplo, una "revisión de la biblioteca científica" significa una revisión del código en línea, o más bien una revisión del diseño de la API pública con respecto al propósito de la biblioteca + por ejemplo, la integridad de las pruebas unitarias y el informe de prueba para establecer la calidad). Sin embargo, creo que esto toca su confusión expresada en los dos primeros párrafos: entiendo que la pregunta se refiere a artefactos "equivalentes a un papel" en pie, sin asumir que solo los documentos de texto en papel pueden revisarse o publicarse en la forma habitual. lugares.
@ORMapper "más bien una revisión del diseño de la API pública con respecto al propósito de la biblioteca +, por ejemplo, la integridad de las pruebas unitarias y el informe de prueba para establecer la calidad" Sí, pero nunca obtendrá eso fuera de CS o lo que sea. Ni siquiera sé lo que eso significa.
Por supuesto, cualquier trabajo de este tipo (incluidos los documentos convencionales) solo es útil en un nivel de detalle para su público objetivo. Del mismo modo, alguien que no usa bibliotecas ni remotamente probablemente no las revisaría, al menos no por los aspectos antes mencionados.
@ORMapper hay revistas así. El Journal of Open Source Software (JOSS) es un ejemplo destacado en el que el artículo es breve pero el código y su documentación se consideran parte del artículo. Así que esta es una revista que realiza una revisión por pares de software y cajas de herramientas, y ha visto mucha adopción entre los científicos desarrolladores de código abierto.
@ChrisRackauckas: Wow, a primera vista, se parece mucho a lo que había imaginado. ¡¿Por qué esto no es más conocido?!

Estás equivocado en tus suposiciones. El software científico es valorado y, de hecho, ahora hay varias revistas dedicadas exactamente a esto; lo sé, entre otras razones, porque resulta que soy el editor en jefe de ACM Transactions on Mathematical Software (ACM TOMS). Existe (en realidad: existía) también la revista Computational Science and Discovery, y luego está Computing in Science and Engineering (CiSE). Todos estos publican artículos que describen el software computacional.

En términos más generales, existen esfuerzos sustanciales para asegurarse de que los autores de software científico obtengan un crédito comparable al de otros tipos de publicaciones, como los artículos de revistas. Le animo a echar un vistazo a la serie de talleres WSSSPE, el grupo de trabajo Force11 y una serie de otros esfuerzos para garantizar que el software se pueda citar de la misma manera que los documentos (por ejemplo, a través del servicio Zenodo).

Agregaría el Journal of Open Research Software (JORS) y el Journal of Open Source Software (JOSS) a su lista. Estas son probablemente las revistas más modernas en el campo en este momento. Diría que las publicaciones de software no son tan valoradas como las publicaciones "científicas" o "matemáticas" fuera de los campos de la informática en este momento, pero eso definitivamente está cambiando.
@ChrisRackauckas: sí, buenas adiciones. ¡Gracias!

Hay diferentes tipos de valor . Y diferentes personas lo miden de manera diferente.

La investigación científica que da como resultado publicaciones tradicionales trata de ampliar el conocimiento . El valor está en el conocimiento.

La implementación normalmente se trata de construir un producto de algún tipo, ya sea comercial o no. Pero implementar algo para lo cual el conocimiento ya está presente, no amplía el conocimiento, por lo que no es el mismo tipo de valor que la investigación que resulta en nuevas ideas. No es menos valioso , sino diferentemente valioso. Una implementación puede permitir que se haga algo más, sin ampliar el conocimiento. Construir bibliotecas científicas se siente como este tipo de cosas.

Pero te equivocas en algunos aspectos en tus suposiciones. Algunas personas obtienen al menos un impulso de reputación local al construir cosas. Eso es ciertamente cierto en empresas basadas en IP como Google, pero también en algunas universidades. No es uno u otro. Me han dado accesorios para algunas de las cosas que he construido, ya sea, estrictamente hablando, investigación o no. Mi material principalmente permite a los estudiantes aprender algo, en lugar de la extensión del conocimiento per se.

Pero también, gran parte de la investigación doctoral en CS se basa, de hecho, en la implementación. Una famosa tesis doctoral explica cómo construir un compilador basado en la semántica de un lenguaje en lugar de (lo habitual) su sintaxis. Fue un gran problema. Pero Peter Lee tuvo que construirlo para demostrar que la idea era buena. La implementación no fue la disertación, sino la investigación y la extensión del conocimiento que la implementación demostró ser sólida. También en el campo del compilador, si tiene una idea para hacer que un recolector de basura para un nuevo idioma se ejecute un 3% más rápido y use un 3% menos de memoria que la solución más conocida, puede obtener un doctorado. Pero tienes que construirlo y medirlo (extensamente) para probar la idea.

Entonces, la implementación puede no ser, en sí misma, lo valioso, pero permite la verificación de una nueva idea: la extensión del conocimiento.

Sin embargo, cosas como la enciclopedia, los documentos de encuestas, los libros... se basan en el conocimiento existente sin ampliar el conocimiento. Y todos esos vienen de la academia también. Es más, fuera de las ciencias, por ejemplo en la literatura. Realmente no estás ampliando más conocimiento, sino agregando un nuevo análisis de un autor o género, que agrega conocimiento sin realmente ampliarlo. Me parece que es muy beneficioso animar a los académicos a desarrollar mejores herramientas de investigación, no solo ampliar el conocimiento.
@Makogan Y nadie se convierte en profesor escribiendo una enciclopedia.
Pero cada profesor usa uno. Es por eso que tenemos bases de datos masivas mantenidas por universidades, llenas de datos, definiciones, artículos, resultados...
@Makogan Y (casi supongo) todos los profesores usan una silla para sentarse.
Uno está directamente relacionado con su trabajo, el otro no. la persona más calificada para hacer una enciclopedia es un profesor universitario. Mientras que la persona más calificada para hacer una silla es un carpintero
@Makogan Creo que mi silla es el objeto que más uso (junto con mi escritorio). Y no estoy de acuerdo con que los profesores sean las mejores personas para hacer enciclopedia. Algunos profesores sí, otros no tanto; y los no profesores pueden estar igualmente calificados. Hay un aspecto no trivial de vulgarizar al escribir enciclopedias.
@makogan eso no es necesariamente cierto. Algo puede ser mayor que la suma de sus partes
Este es el punto de vista tradicional en los departamentos de matemáticas, y lo encuentro muy erróneo/incompleto. La implementación suele ser una fuente de sus propias investigaciones y resultados. PERO, el investigador debe dar los pasos para comercializar dicho software por este valor. Muchas veces pueden escribir la primera implementación real optimizada de algún método: tener puntos de referencia de implementaciones de calidad de producción puede ser innovador para el campo y proporcionar nuevas direcciones. Sin embargo, el investigador necesita tomar medidas para compartir este tipo de conocimiento. Las revistas basadas en software son buenos puntos de venta para esta investigación.