Cuando está bloqueado, ¿con qué rapidez se debe recurrir a Stack Overflow? [cerrado]

51

Estoy aprendiendo el desarrollo de iOS a través del curso iTunes U CS193p, y a menudo me encuentro estancado. Yo mismo he intentado desengancharme, pero me puede llevar horas y horas descubrir qué estoy haciendo mal, ya sea faltar un método o no tener un concepto completo como delegación.

Me preocupa que pueda estar perdiendo demasiado tiempo, y será mejor que vaya a Stack Overflow poco después de quedarme atascado para poder seguir adelante.

Según su experiencia, ¿el hecho de preguntar sobre el Desbordamiento de pila dificulta el proceso de aprendizaje o lo mejora?

    
pregunta MaxGabriel 06.02.2012 - 06:45

8 respuestas

35

Cuando trabajo con nuevos desarrolladores, los aliento a que hagan preguntas después de cinco o diez minutos en los que no están progresando.

Eso tiene dos beneficios: el primero es que pueden obtener ayuda sin pasar demasiado tiempo mirando un problema, pero solo preguntan cuando no están llegando a alguna parte. Si están aprendiendo, incluso en algo que en última instancia no es la respuesta, es mucho más probable que retengan esa información de manera útil.

La segunda es que después de tanto tiempo tienen que explicar el problema a otra persona. Eso resuelve una gran proporción de problemas, porque recorrerlo de extremo a extremo en orden significa que puede detectar lo que perdió en su trabajo anterior.

Ya que parece que estás haciendo esto solo, trata de cambiarte a un juguete de peluche, al reloj o a la pared, y pregúntale eso sobre el problema. Explícalo como lo harías con una persona y mira si eso soluciona las cosas.

Si no lo hace y no está progresando, pregúntele a alguien. Pasar más de cinco o diez minutos estancados es una pérdida de tiempo, a menos que continúe haciendo otra cosa, luego vuelva al problema con una mente fresca.

    
respondido por el Daniel Pittman 06.02.2012 - 06:50
22

Mi única adición a las excelentes respuestas de todos los demás:

TIRAR tu pregunta en la interfaz de preguntas de StackOverflow es una excelente manera de asegurarte de que estás analizándola completamente. No puedo comenzar a decirle cuántas preguntas he respondido por mí mismo en el proceso de presentarlas con la suficiente claridad para formularlas correctamente. Las preguntas que comencé y no envié VASTLY superan en número a las que realmente hice.

Por lo tanto, diría que adelante y pregunte (después de buscar, por supuesto), simplemente no se adjunte a "Enviar".

    
respondido por el Dan Ray 06.02.2012 - 14:34
20

Stack Overflow, y todos los demás sitios de Stack Exchange, tienen un conjunto de pautas para hacer preguntas :

  
  • Haz tu tarea
  •   
  • Sé específico
  •   
  • Hazlo relevante para otros
  •   
  • Estar en el tema
  •   
  • Mantén una mente abierta
  •   

"Haz tu tarea" implica que no deberías ser demasiado rápido para preguntar. "Sea específico" implica que comprende el dominio de su problema lo suficientemente bien como para resumirlo de manera concisa. Si no, se aplica "haz tu tarea". "Mantener una mente abierta" implica que debería estar listo para explorar soluciones que nunca pensó que serían relevantes para su problema.

Por lo tanto, no se trata de preguntar sobre el desbordamiento de pila, sino de si sus preguntas son buenas. Esencialmente el esfuerzo requerido es una experiencia de aprendizaje en sí misma. Si lo haces bien, probablemente aprenderás un par de cosas nuevas simplemente buscando duplicados. Si no, hazme un ping, tengo un par de votos negativos de sobra. : P

    
respondido por el yannis 06.02.2012 - 07:10
3

Personalmente, cuando comencé a programar pasé mucho tiempo tratando de resolver las cosas. Podría pasar horas tratando de arreglar algo. No veo que esa hora no sea productiva, en esas horas aprendí a buscar cosas en línea y realmente obtuve una idea de cómo funcionaba mi lenguaje de programación. Así que creo que preguntar demasiado rápido en SO le roba una experiencia de aprendizaje. Entrar en la programación solo toma mucho tiempo.

Luego hay una pregunta de qué tan pronto preguntar, yo diría que pasar algunas horas en un problema en particular no es largo (tenga en cuenta que provengo de una formación académica, tal vez en antecedentes comerciales esto sea menos aceptado).

Y cuando haga una pregunta en SO, invierta tiempo en la pregunta:

  • Cuando tenga un error, publique el texto exacto del error. También publique el código que llevó al error, preferiblemente un ejemplo independiente que se ejecute en cualquier computadora.
  • Muestra lo que ya has probado.
  • Mencione las versiones del software que usa: versiones del compilador, versión de python.

Estos son sólo algunos puntos. Al invertir tiempo en una pregunta que respeta a las personas en SO, utiliza su tiempo de forma gratuita. Más importante aún, usted estructura su problema. Esto podría ya resolver su problema :).

Sólo mi 2 ct ...

    
respondido por el Paul Hiemstra 06.02.2012 - 07:21
1

Creo que lo importante aquí es entender realmente en qué estás atascado y tratar de llegar al problema principal. Después de realmente descifrar cuál es el problema real, usar Stack Overflow es una de las primeras cosas que hago.

Pero, no es hacer una pregunta.

Está buscando a través de todas las grandes respuestas. Es probable que alguien más haya tenido el problema que estás teniendo ahora y ya hicieron tu pregunta. Si te sientes obligado a usar Stack Overflow, recuerda que no es solo un sitio para que hagas una pregunta cuando estás perplejo. También es un repositorio de información realmente importante sobre programación de computadoras; utilizar la función de búsqueda.

Si buscó con un par de términos / palabras clave diferentes y aún obtiene nilch, ha hecho su tarea y tiene ejemplos de código que puede mostrar y está realmente seguro de que su pregunta no es realmente un duplicado. , entonces, por todos los medios, haga su pregunta sobre Stack Overflow. Eso es lo que el sitio está ahí por última vez que revisé.

    
respondido por el Charles Sprayberry 06.02.2012 - 11:35
1

Es completamente subjetivo, pero aquí están mis reglas básicas para mi uso.

1) ¿Se incendia mi casa? Obviamente, no literalmente, pero es un problema que necesita no solo una solución inmediata, sino una solución de emergencia. Si es así, inténtelo, falle rápidamente, obtenga la mejor ayuda posible.

2) ¿Es esto algo que puedo investigar? Si es algo en el que tengo tiempo y es investigable, seguiré esa ruta, y eso incluye a SO como un recurso complementario. SO es genial, también lo es Wiki, al igual que las otras docenas de recursos.
Lea mucho, le ayuda a comprender cuándo hay diferentes enfoques para un problema, pero primero dedique el tiempo a tratar de ver si su conocimiento existente puede volver a aplicarse al problema, luego se ha creado una nueva herramienta mental.

3) ¿Esto es algo que cae fuera de mi conjunto de habilidades / es tan oscuro que probablemente haya 100 personas que lo hayan visto alguna vez? Esto sucede, y sucede a menudo. En general, trataré de investigar durante una o dos horas y luego iré aquí u otros recursos.

Sé que es más noble sentarse y hacer la investigación y pasar el tiempo, pero a menudo tenemos limitaciones de tiempo y usted utiliza todos los recursos disponibles, incluso si se siente como "engañar" al sistema.

    
respondido por el Nicholas Smith 06.02.2012 - 17:57
0

"Qué tan rápido" va a ser, por su naturaleza, subjetivo. Todos van a tener una opinión ligeramente diferente.

Si no puede descubrir la causa de su problema en aproximadamente 5 minutos de mirar el código real, al menos lo buscaría en Google. Si una buena búsqueda no tiene las respuestas, entonces comenzaría a escribir su pregunta en SO.

Tenga en cuenta que está bien no publicar esa pregunta; ha habido ocasiones en las que, al poner la pregunta en palabras escritas, la solución se ha presentado por sí misma y no tuve que formularla realmente a ustedes.

    
respondido por el KeithS 06.02.2012 - 16:13
0

Puede escribir su pregunta antes, pero no debe publicarla hasta que haya investigado correctamente la fuente de su problema. Escribe las cosas que has eliminado y cómo las eliminaste. También deberías buscar otras preguntas similares y si realmente quieres publicar tu pregunta, explica por qué esta no es la misma pregunta.

Si lo haces correctamente, encontrarás que muchas veces resolverás tu propio problema.

    
respondido por el Marcin 06.02.2012 - 17:27

Lea otras preguntas en las etiquetas