2010-10-30 7 views
9

Por lo tanto, aquellos de nosotros que hemos estado respondiendo preguntas y lidiando con informes de fallas por un tiempo estamos muy familiarizados con el concepto de un "ejemplo completo y mínimo". Empiezas con una enorme pila de código que tiene un error extraño, y quieres preguntarle a alguien al respecto. Pero no quieres enviarles todo el desorden, así que empiezas a cortar el montón de código en pedazos más pequeños, hasta que obtengas esta gema cristalizada de 20 líneas que todavía tiene el mismo error con el que comenzaste.¿Buenas instrucciones para principiantes para crear ejemplos mínimos de errores completos?

(Y entonces, al menos la mitad del tiempo, te das cuenta de lo que es el error porque te está mirando a la cara como una luna polilla, y no tienes que preguntar después de todo. Pero eso es un efecto secundario).

Hacer ese tipo de reducción de código no es una habilidad que todo el mundo tiene - se necesita un poco de práctica, más allá del hecho de que muchos novatos aún no han aprendido que deberían hacerlo en el primer lugar. Existen varios conjuntos excelentes de instrucciones para novatos sobre cómo hacer buenas preguntas (por ejemplo, el clásico de ESR "Cómo formular preguntas de una manera inteligente"). ¿Hay buenas instrucciones que expliquen exactamente qué es un ejemplo completo mínimo, y cómo y por qué crearlos?

Respuesta

3

Todo está en el nombre. Un ejemplo mínimo completo es un ejemplo completo y mínimo. Completo significa que contiene toda la información pertinente, y significa que no contiene información que no sea pertinente. La capacidad de identificar lo que es no es relevante es algo que solo viene con la práctica: tratar de dar instrucciones para esto parece un poco como intentar dar instrucciones sobre andar en bicicleta. Puedes dar la explicación técnica y describir la mecánica (y las preguntas frecuentes de TeX a las que te has vinculado lo hace muy bien) pero al final la única forma de realmente aprender es hacerlo.

+0

No estoy completamente de acuerdo, incluso cuando la única forma de aprender algo es haciendo, casi siempre es posible dar ilustraciones de cómo se ve el proceso y cómo se está haciendo. Sin embargo, es probable que haya algo de verdad en lo que dices. ¡Gracias por la respuesta! –

+0

De nada :). – Benubird

2

Comenzaré con las que estoy familiarizado; estos dos provienen de la comunidad TeX, por lo que son un poco oblicuos para la programación. Espero que otras personas tengan mejores respuestas.

Las Preguntas frecuentes sobre TeX del Reino Unido tienen una entrada en "Cómo crear un ejemplo mínimo" en http://www.tex.ac.uk/cgi-bin/texfaq2html?label=minxampl.

Esa página apunta a un artículo algo más extenso sobre "¿Qué es un ejemplo de trabajo mínimo?", Aquí: http://www.minimalbeispiel.de/mini-en.html. De nuevo, esto es para documentos TeX; las ideas son las mismas, pero las herramientas y los detalles son un poco diferentes.

Editar (2013/01): Otro que me di cuenta en un comentario Stackoverflow: El "corto, autónoma, correcta (compilable), Ejemplo" en la página http://sscce.org/. No es perfecto, y sugiere 20kb (!) Como límite superior, pero es una buena adición a la lista.

Editar (2013/02): Jon Skeet tiene una entrada de blog acerca de cómo escribir buenas preguntas, que incluye una sección sobre código de ejemplo que parece útil: http://msmvps.com/blogs/jon_skeet/archive/2010/08/29/writing-the-perfect-question.aspx

Cuestiones relacionadas