Je développe moi-même mon apprentissage iOS via le cours iTunes U CS193p et je me trouve souvent coincé. J'essaie de me débrouiller moi-même, mais il me faudra peut-être des heures et des heures pour comprendre ce que je fais de mal, qu'il s'agisse de rater une méthode ou de ne pas vraiment comprendre tout un concept comme la délégation.
Je crains de perdre trop de temps et je ferais mieux d'aller à Stack Overflow peu de temps après mon blocage pour que je puisse passer à autre chose.
D'après votre expérience, le fait de demander rapidement un dépassement de capacité entrave-t-il ou améliore-t-il le processus d'apprentissage?
productivity
education
Max Gabriel
la source
la source
Réponses:
Lorsque je travaille avec de nouveaux développeurs, je les encourage à venir poser des questions après cinq ou dix minutes sans faire de progrès.
Cela présente deux avantages: le premier est qu’ils peuvent obtenir de l’aide sans perdre trop de temps à regarder le problème en face, mais ils ne demandent que s’ils ne vont pas quelque part. S'ils apprennent - même sur quelque chose qui n'est pas la solution ultime - ils sont beaucoup plus susceptibles de conserver utilement ces informations.
La seconde est qu’après environ autant de temps, ils doivent expliquer le problème à quelqu'un d’autre. Cela résout une énorme proportion de problèmes, car en procédant de bout en bout, vous pouvez repérer ce que vous avez manqué dans votre travail précédent.
Puisqu'il semble que vous le faites seul, essayez de vous tourner vers un jouet en peluche, ou une horloge ou le mur, et posez-lui des questions à propos du problème. Expliquez-le comme vous le feriez à une personne et voyez si cela résout les problèmes.
Si ce n'est pas le cas et que vous ne faites pas de progrès, demandez à quelqu'un. Consacrer plus de cinq ou dix minutes de retard est une perte de temps. Si vous ne faites pas autre chose, revenez au problème avec un esprit neuf.
la source
Mon seul ajout aux réponses de tous les autres:
Taper votre question dans l’interface de questions StackOverflow est un excellent moyen de s’assurer que vous y réfléchissez bien. Je ne peux pas commencer à vous dire combien de questions j'ai répondues moi-même en train de les exposer assez clairement pour les poser correctement. Les questions que j'ai posées et que je n'ai pas soumises dépassent VASTEMENT celles que j'ai posées.
Donc, je dirais allez-y et demandez (après la recherche, bien sûr), mais ne soyez pas attaché à frapper "Soumettre".
la source
Stack Overflow, et tous les autres sites Stack Exchange, propose un ensemble de directives pour poser des questions :
"Faites vos devoirs" implique que vous ne devriez pas être trop prompts à demander. "Soyez spécifique" implique que vous compreniez suffisamment le domaine de votre problème pour le décrire de manière concise. Sinon, "faites vos devoirs" s'applique. "Gardez l'esprit ouvert" implique que vous devriez être prêt à explorer des solutions que vous n'auriez jamais pensé pertinentes pour votre problème.
Il ne s'agit donc pas de demander à Stack Overflow, mais de savoir si vos questions sont bonnes. Essentiellement, l'effort requis est une expérience d'apprentissage en soi. Si vous le faites correctement, vous apprendrez probablement quelques nouvelles choses simplement en recherchant des doublons. Si ce n'est pas le cas, envoyez-moi une requête ping. : P
la source
Personnellement, quand j'ai commencé à programmer, j'ai passé beaucoup de temps à essayer de comprendre. Je pourrais passer des heures à essayer de réparer quelque chose. Je ne vois pas ces heures comme n'étant pas productives. Pendant ces heures, j'ai appris à chercher des choses en ligne et j'ai vraiment compris comment mon langage de programmation fonctionnait. Donc, je pense que poser trop rapidement sur SO vous prive d'une expérience d'apprentissage. Entrer dans la programmation ne prend que très longtemps.
Ensuite, il faut se demander combien de temps il faut poser, je dirais que passer quelques heures à un problème particulier n’est pas long (notez que je viens d’un milieu universitaire, peut-être que dans le milieu commercial, cela est moins accepté).
Et lorsque vous posez une question sur les SO, investissez du temps dans la question:
Ce ne sont que quelques points. En investissant du temps dans une question, vous respectez les personnes qui utilisent des SO, vous utilisez leur temps gratuitement. Plus important encore, vous structurez votre problème. Cela pourrait déjà résoudre votre problème :).
Juste mon 2 ct ...
la source
Je pense que l’important ici est de bien comprendre ce sur quoi vous êtes bloqué et d’essayer d’atteindre le principal problème. Une fois que vous avez vraiment cerné le problème réel, utiliser Stack Overflow est l'une des premières choses que je fais.
Mais ce n'est pas poser une question.
Il cherche toutes les bonnes réponses. Il y a de fortes chances que quelqu'un d'autre ait déjà eu le problème que vous avez actuellement et qu'il vous ait déjà posé votre question. Si vous vous sentez obligé d'utiliser Stack Overflow, souvenez-vous que ce n'est pas simplement un site pour vous de poser une question lorsque vous êtes perplexe. C'est également un référentiel pour de très bonnes informations sur la programmation informatique; utilisez la fonction de recherche.
Si vous avez cherché avec quelques termes / mots clés différents et que vous obtenez toujours rien, et que vous avez fait vos devoirs et que vous avez des exemples de code que vous pouvez montrer et que vous êtes vraiment sûr que votre question n'est pas vraiment une duplication , alors n'hésitez surtout pas à demander votre question sur Stack Overflow. C'est ce que le site est là pour la dernière fois que j'ai vérifié.
la source
C'est entièrement subjectif, mais voici mes règles de base pour mon utilisation.
1) Est-ce que ma maison est en feu? Évidemment, pas littéralement, mais s'agit-il d'un problème qui nécessite non seulement une solution immédiate, mais une solution d'urgence. Si tel est le cas, tentez votre chance, échouez rapidement et obtenez la meilleure aide possible.
2) Est-ce quelque chose que je peux rechercher? Si c'est quelque chose qui me laisse le temps et la possibilité d'être recherché, je m'engage dans cette voie, et cela inclut SO comme ressource complémentaire. SO est excellent, tout comme Wiki, ainsi que les autres dizaines de ressources.
Lisez beaucoup, cela vous aidera à comprendre les différentes approches d'un problème, mais passez d'abord votre temps à essayer de voir si vos connaissances existantes peuvent être réutilisées, puis vous vous êtes construit un nouvel outil mental.
3) Est-ce que quelque chose qui dépasse mes compétences / est si obscur qu'il y a probablement 100 personnes qui l'ont déjà vu? Cela arrive et arrive souvent. Je vais généralement faire des recherches pendant une heure ou deux, puis me diriger vers d’autres ressources.
Je sais que c’est plus noble de faire des recherches et de passer du temps, mais nous avons souvent des contraintes de temps et vous utilisez toutes les ressources disponibles, même si vous avez l’impression de «tricher» le système.
la source
"À quelle vitesse" va être, par nature, subjectif. Tout le monde va avoir une opinion légèrement différente.
Si vous ne parvenez pas à identifier la cause de votre problème environ 5 minutes après avoir consulté le code réel, consultez au moins Google. Si une bonne recherche ne donne pas les réponses, je commencerais par rédiger votre question sur SO.
N'oubliez pas qu'il est correct de ne pas poster cette question. Il est arrivé que, en formulant la question par écrit, la solution se soit présentée et que je n’aie pas eu à vous la poser.
la source
Vous pouvez écrire votre question plus tôt, mais vous ne devriez pas la poster avant d’avoir recherché la source de votre problème. Ecrivez les choses que vous avez éliminées et comment vous les avez éliminées. Vous devriez également rechercher d’autres questions similaires et, si vous souhaitez vraiment poser votre question, expliquez pourquoi ce n’est pas la même question.
Si vous le faites correctement, vous constaterez souvent que vous résolvez votre propre problème.
la source