Question:
Est-il possible de demander au professeur de vérifier le devoir avant de le soumettre?
nikki
2018-07-23 07:02:59 UTC
view on stackexchange narkive permalink

J'ai des missions liées à la programmation. Ils sont durs et mes amis n'ont pas pu obtenir de résultats. Je voulais demander à mon professeur de les diriger pour voir si je les faisais bien ou non. (la date limite arrive rapidement.) Je suis un étudiant diplômé. C'est mon premier mandat.

Comprenez-vous ce que le programme est censé faire?
Pourquoi avez-vous besoin de votre professeur pour diriger le programme?Ne pouvez-vous pas simplement l'exécuter sur votre machine et voir si cela fonctionne comme prévu?
Arrête de t'en faire.Vous faites déjà mieux que vos amis s'ils ne peuvent même pas obtenir de résultat.Faites de votre mieux et vous verrez ce que vous avez fait lorsque les notes vous seront rendues.
Votre professeur a-t-il proposé des exemples d'entrées et les résultats attendus correspondants?Dans mes cours, nous avons généralement au moins quelques cas de test pour chaque mission.
Êtes-vous un étudiant diplômé en informatique ou dans un autre domaine qui utilise simplement la programmation.Beaucoup de ce qui est ici n'a pas beaucoup de sens sans le savoir.
Quelle est la taille du cours?d'après mon expérience (des deux côtés de cela), des cours plus petits augmentent considérablement les chances que l'instructeur soit prêt à jeter un coup d'œil préliminaire à vos devoirs et à fournir des commentaires.
Si vous rencontrez des problèmes avec une affectation, vous pouvez contacter l'assistant d'enseignement s'il y en a.
Oui.Il est possible de demander.Demander est la seule façon dont vous allez savoir s'ils sont prêts à le faire (à moins que ce ne soit déjà dans une documentation. Ne posez pas de questions à votre professeur si vous n'avez pas lu le programme / le manuel du cours / quoi que ce soit)
Je vais faire écho à @Buffy - comme dans ma majeure (IS), nous avons beaucoup utilisé Python pour des travaux mathématiques qui n'avaient pas d'entrée ou de sortie attendue (juste des exigences et des normes pour la collecte de données).Ce type d'information affectera grandement les réponses.
Je ne m'attendrais pas à ce que le professeur fasse cela pour vous à moins que ce ne soit la politique pour tous les étudiants.Renseignez-vous simplement pendant les heures de bureau.
Rappel à tous: répondez en réponses, pas en commentaires.Les commentaires n'ont pas les mécanismes d'assurance qualité que les réponses ont.
Lorsque le professeur marque le devoir, c'est le professeur qui le vérifie.Pré-marquage afin que vous puissiez "tricher", il est peu probable que le processus de marquage se produise!
Neuf réponses:
#1
+41
Nicole Hamilton
2018-07-23 08:43:25 UTC
view on stackexchange narkive permalink

La plupart des instructeurs refuseront de vérifier vos devoirs à votre place avant de les remettre. Vous les notez une et une seule fois. Il n'y a pas de do-over où vous pouvez le retourner la première fois, ils signalent vos erreurs, puis vous pouvez le rendre à nouveau après l'avoir corrigé.

Si vous êtes confus , vous pouvez poser des questions de clarification sur ce que le devoir demande (par exemple, le comportement souhaité dans les cas d'angle, le formatage de sortie, la gestion des erreurs, d'autres contraintes et tout ce qui semble ambigu) et sur le matériel sous-jacent (par exemple, un algorithme discuté dans la conférence besoin de postuler) mais pas sur la bonne réponse ou si votre réponse est correcte. Certains instructeurs (par exemple, moi) aideront un étudiant à déboguer, mais généralement uniquement pour vous aider à acquérir les compétences impliquées. Ils ne débogueront généralement pas votre programme à votre place.

Merci pour votre réponse.Je suis un peu confus.les questions sont difficiles.Comment puis-je m'assurer que je vais bien?
@nikki2 si vous avez un ensemble d'entrées et un ensemble de sorties attendues, vous pouvez utiliser n'importe quel compilateur en ligne ou hors ligne pour exécuter réellement votre code.https://tio.run/ peut exécuter la plupart du langage et est fréquemment utilisé sur la pile de codegolf.
J'ai eu au moins un professeur qui a explicitement * recommandé * cette approche à ses étudiants pour un cours noté, et j'ai eu plusieurs instructeurs qui l'ont autorisé (bien qu'il y ait généralement des limitations qu'ils donnent).En tant que tuteur, j'étais disposé (et autorisé) à aider les étudiants avec leurs devoirs notés dans des limites raisonnables.
@nikki2 apprendre à vérifier la validité d'un programme est une partie fondamentale de l'informatique, et quelque chose que vous devriez apprendre rapidement.De plus, vous devez assister aux heures de bureau ou organiser une rencontre avec votre professeur en personne pour parler conceptuellement du code si vous ne comprenez pas comment faire les devoirs.
-1.J'ai eu des instructeurs, de premier cycle et de deuxième cycle, dire aux étudiants si ce qu'ils font est mal et pourquoi.Les devoirs ne devraient pas être un casse-tête cryptique que les élèves doivent déchiffrer et ne pas savoir si le produit final est correct ou non.Je ne vois rien de mal à ce qu'OP aille voir le professeur, expliquant ce qu'il a fait (peut-être montrer du code) et demandant au professeur si c'est ce qu'il voulait parce que ce n'était pas clair dans la description du devoir.
@chevybow Dans tous les cas, leur professeur pourra répondre selon les règles qui existent pour les affectations.Donc pas de mal à demander.
@chevybow Les questions qui clarifient ce que le devoir demande (par exemple, le comportement souhaité dans les cas d'angle, le formatage de sortie, la gestion des erreurs, d'autres contraintes) sont explicitement envisagées dans ma dernière phrase comme toujours autorisé.Certains instructeurs (par exemple, moi) aideront un étudiant avec le débogage.
#2
+23
xLeitix
2018-07-23 18:03:38 UTC
view on stackexchange narkive permalink

Comme Nicole le souligne à juste titre, la plupart des instructeurs ne pourront ou ne voudront pas «pré-noter» les devoirs, mais certains le peuvent. Donc, si cela vous tient à cœur, vous pouvez certainement demander.

Cela dit, il est probablement plus utile de poser une ou plusieurs question (s) ciblée (s) sur les choses dont vous n'êtes pas sûr. Notez que "s'il vous plaît lancez mon programme et dites-moi s'il fonctionne" n'est pas une question ciblée, ni "voici mon code, vais-je obtenir tous les points pour cela". Une question ciblée peut inclure un résumé succinct de votre approche et des parties dont vous n'êtes pas sûr, et vous demander si vous êtes sur la bonne voie. J'imagine que la plupart des instructeurs seront plus que disposés à vous donner des commentaires à ce sujet.

En règle générale: si une question était fermée sur Stack Exchange (en particulier, si elle était fermée car manquante auparavant recherche ou étant trop localisé), il y a de fortes chances qu'un instructeur n'en soit pas non plus content. Soit dit en passant, c'est l'une des principales raisons pour lesquelles je soutiens fermement que mes étudiants soient actifs sur Stack Exchange - cela les apprend à demander des commentaires de manière productive mieux que tout autre moyen que je connaisse.

Nitpicking: "trop localisé" a été supprimé comme raison proche, et l'IIRC il n'y a jamais eu de raison étroite "recherche préalable manquante", c'était toujours juste une raison pour voter contre.
@jrh: Cela dit, SO ferme agressivement les questions de la forme "Mon code ne fonctionne pas" qui ne contiennent aucun code.
#3
+12
Patricia Shanahan
2018-07-23 11:28:48 UTC
view on stackexchange narkive permalink

Il y a deux cas à considérer:

  1. Vous ne comprenez pas ce que le programme est censé faire. Dans ce cas, il convient de poser au professeur des questions de la forme "Que doit-il se passer dans ce cas?" ou similaire.

  2. Vous comprenez ce que le programme est censé faire. La façon dont vous vous assurez que vous le faites correctement est une combinaison de vérification et de tests sur place. N'oubliez pas de tester les modules non triviaux, ainsi que de tester l'ensemble du programme.

Les tests font partie du travail de programmation. Il n’est pas raisonnable d’attendre de votre professeur qu’il le fasse pour vous.

Je ne pense pas que les tests unitaires soient quelque chose que les étudiants du premier trimestre doivent savoir ou comprendre.Ce qu'est exactement un objet est déjà assez difficile pour eux.
quel est le test unitaire?
@nikki2 [Lien] (https://en.wikipedia.org/wiki/Unit_testing) + des tonnes de tutoriels que vous pouvez trouver facilement.Vous devriez certainement l'essayer, mais au début, ne vous inquiétez pas si cela ne se passe pas bien.Même quelques tests les plus primitifs s'avéreront vraiment utiles.
@Belle-Sophie Les tests unitaires ne sont pas limités aux classes, bien qu'une classe soit une unité naturelle dans la programmation OO.Cela peut être une fonction.Il peut s'agir d'une structure de données et de certaines fonctions qui y opèrent.
@PatriciaShanahan Je sais, j'essaie juste de dire que les tests unitaires sont un stade plus avancé qu'il n'y paraît.
L'OP est un étudiant diplômé.J'espère que les étudiants diplômés ont été exposés aux tests unitaires.
J'espère que les étudiants diplômés ont été exposés à des tests unitaires et ont supposé que l'OP le saurait, mais les tests et le débogage semblent être des sujets négligés dans certaines formations en programmation.
Autrement dit, si les études précédentes contenaient du tout de la programmation
En tant qu'étudiant diplômé, choisir l'OP pour pouvoir le faire jusqu'au test me semble être une exigence minimale.Bien sûr, tous les étudiants diplômés CS ne viennent pas d'un premier cycle CS, mais il incombe à l'étudiant de s'assurer qu'il est prêt pour ses cours.C'est doublement vrai s'ils proviennent d'un milieu non standard.
@StellaBiderman, certaines choses sont plus difficiles à tester unitaire que d'autres.Les algorithmes génétiques, par exemple, sont assez difficiles.Les problèmes eux-mêmes peuvent être non déterministes.
@Buffy Je suis d'accord.Moi, et je pense que d’autres, répondons au commentaire du PO "Qu'est-ce que les tests unitaires?"
@StellaBiderman, J'ai des problèmes avec ça moi-même.J'aimerais en savoir un peu plus sur l'OP et les paramètres de la situation.Si elle (?) Est d'un autre domaine, il serait logique de ne pas le savoir, mais si CS, alors quelqu'un l'a ratée.Je me concentre davantage sur le fait que la classe peut généralement être perdue.Cela m'a fait penser à quel point le Machine Learning peut être différent lorsque vous le faites pour la première fois.Je pourrais même imaginer donner une telle mission - les jeter dans le fond pour se vautrer un peu.La première mission de mon cours de compilation a été un choc pour certains, mais au moins assez bien structurée.
#4
+7
Nate
2018-07-23 19:04:15 UTC
view on stackexchange narkive permalink

Cela dépend du professeur. Ma politique a toujours été quelque chose comme ceci:

  • Vous voulez que je lise votre article, que je le commente, que je souligne tous les endroits où il pourrait être renforcé et que je le note essentiellement - AVANT de le noter réellement ?
  • (En règle générale, lorsque les élèves récupèrent un tel article, ils s'attendent à ce qu'ils obtiennent un A sur ledit papier. En général, ils ne le feront pas, car il y a probablement encore des défauts ou autres avec le papier. le travail de notation n'est pas de réécrire le document, mais d'évaluer ce qui est devant moi et de signaler les problèmes les plus importants. Ces problèmes ne sont que rarement de simples solutions techniques, bien que les étudiants les traitent comme tels.)

Ma réponse a été «non». Noter une fois est déjà assez mauvais. Noter deux fois est plus tortueux et injuste pour les autres élèves de la classe qui n'ont pas obtenu une double notation.

Je ne suis pas sûr de ce que vous entendez par «pas juste»;Sûrement si l'option de faire vérifier quelque chose à l'avance est une option pour certains étudiants, vous l'autoriseriez à tous?Si certains étudiants ne profitent pas d'une telle option, c'est sur eux.
@Cubic Ce n'est pas juste parce qu'il n'a pas le temps de le faire pour tous.Et puisque la chose juste à faire est de le faire pour certains pour l'offrir à tous, et qu'il ne peut pas le faire pour tous, la seule chose juste à faire est de le faire pour personne.
Il y a au moins deux raisons possibles pour lesquelles ils pourraient vouloir faire cela.(1) Ils écrivent bien, ou du moins raisonnablement bien, et veulent être absolument sûrs d'obtenir un A. (2) Ils ne savent absolument pas comment écrire et ont vraiment besoin d'aide.Je n'ai pas beaucoup de sympathie pour ces étudiants qui relèvent du cas (1).Mais vous devez vraiment vous assurer que les étudiants qui relèvent du cas (2) sont en quelque sorte en mesure d'obtenir de l'aide.Sinon, ils n'apprendront jamais à écrire, et n'est-ce pas une des choses que vous êtes censé leur apprendre?
Idem pour la programmation, mais ici, on dirait que l'OP tombe probablement dans le cas (1).
#5
+6
regents
2018-07-23 23:32:25 UTC
view on stackexchange narkive permalink

J'étais dans votre situation à l'automne. J'ai constaté que si je me rendais chez mon professeur au début de la mission avec des questions très précises, il était généralement plus qu'heureux de lui offrir des conseils. Ils ne "pré-classeraient" pas mais ils essaieraient de me diriger dans la bonne direction. Des questions telles que «pourquoi cela ne fonctionne-t-il pas? Je sais que ce n'est pas correct parce que ... Avez-vous des suggestions ou des endroits où chercher des conseils? J'ai examiné les documents de la classe mais je n'ai toujours pas été en mesure de trouver des solutions efficaces. Cela démontre au professeur que vous avez fait plusieurs tentatives valables tout en montrant que vous êtes capable de comprendre pourquoi vos tentatives de résolution de problèmes ont échoué. Si vous le formulez d'une manière qui indique clairement que vous avez épuisé toutes les ressources, que vous n'avez pas tergiversé à la dernière minute et que vous ne leur demandez pas de vous donner la réponse, vous êtes beaucoup plus susceptible d'obtenir une forme d'aide. vous et vos camarades de classe avez tous discuté de la tâche et ne pouvez toujours pas trouver de solution, il est toujours utile de demander à plusieurs personnes de contacter le professeur. Le professeur peut alors voir qu'il doit soit offrir des instructions plus claires, soit consacrer plus de temps à certains domaines.

#6
+4
Buffy
2018-07-23 18:53:40 UTC
view on stackexchange narkive permalink

Vous ne le dites pas ici, et cela rend les choses difficiles, mais ailleurs sur le site vous indiquez que votre domaine est l'IA et en particulier le Machine Learning. Si ce cours porte en effet sur l'apprentissage automatique, je peux comprendre votre état actuel.

Tout étudiant titulaire d'un diplôme de premier cycle en CS devrait être capable d'écrire à peu près n'importe quel programme dans une langue qu'ils connaissent déjà . Chacun de ces étudiants doit également être familiarisé avec les méthodologies courantes telles que les tests unitaires. Cependant, vos antécédents sont peut-être quelque peu différents, ce qui rend difficile d'assumer ces connaissances.

Puisque vous dites que vos camarades de classe sont dans un état similaire, je dois deviner qu'il y a quelque chose de fondamentalement nouveau à ce sujet pour tout le monde.

Si votre "programme" est dans une nouvelle langue et que le sujet est l'apprentissage automatique, dans lequel la "preuve" du succès de l'apprentissage est quelque chose de fondamentalement différent, par exemple, de la mise en œuvre d'un algorithme standard avec état initial et final, alors je peux aussi comprendre la difficulté.

Si tel est le cas, alors il pourrait être utile pour le professeur de savoir que tout le monde a des difficultés avec cela et de chercher un peu plus de conseils sur ce à quoi s'attendre. Vous n'avez cependant pas besoin de demander une analyse de pré-notation pour ce faire. Dans une classe assez grande, le professeur a peut-être un assistant qui peut fournir une aide appropriée (avec les connaissances du prof, bien sûr). Ou il / elle peut simplement être disposé à dire un peu en classe, si on le lui demande, cela vous donnera l'assurance que vous êtes sur la bonne voie ou que vous vous êtes égaré.

Si j'ai mal interprété, je m'excuse, mais ce serait bien si, dans vos questions ou dans votre profil, vous donniez un peu plus de détails sur votre situation actuelle.

Et une note à tous ici. Si j'ai fait les bonnes hypothèses, notez que AI / MachineLearning est un peu différent des autres sujets CS en ce que, bien que l'état d'entrée puisse être spécifié avec précision, l'état final peut ne pas l'être dans de nombreux cas. En fait, DARPA vient de lancer un programme pour créer des IA qui pourraient expliquer leur production. C'est en fait une nouveauté et l'une des difficultés traditionnelles de l'IA. Ils peuvent arriver à une «conclusion» mais ne peuvent pas dire pourquoi.


Permettez-moi d'ajouter un peu sur les langues. Si vous êtes un programmeur Java, par exemple, vous devriez être capable d'écrire un programme compétent en Python avec seulement un peu d'aide et de pratique. Cependant, si le nouveau langage est Scheme ou Haskell, ou un langage spécialement adapté, la courbe d'apprentissage est un peu plus raide, car ils proviennent de paradigmes assez différents. Différents paradigmes nécessitent des processus de pensée différents, pas seulement une syntaxe différente.

J'ai supposé que les difficultés de ML ne s'appliqueraient pas parce que la question disait "exécutez-les pour voir si je les ai bien faites ou non" indiquant que des tests simples fonctionneraient.
@PatriciaShanahan à moins que cette instruction ne signifie vraiment "exécutez-les et recevez des résultats qui * correspondent * au modèle".Je sais que dans mes cours d'études supérieures, apprendre à coder était beaucoup plus facile (même si je venais d'un fond professionnel de l'informatique) puis apprendre à interpréter et à expliquer les résultats.Jusqu'à ce que l'OP ajoute des informations sur le type de programme, il est difficile de comprendre quel est le problème (et par conséquent ce qu'il faut faire).Pour info, j'ai lu ceci et j'ai supposé que c'était un problème de sélection de bonnes parcelles et de vérification de la qualité de l'ajustement.Comme une question que je me souviens avoir posée une fois était "les faibles valeurs du R carré sont-elles mauvaises?"pensant que mon code était mauvais.
#7
+4
Peter K.
2018-07-23 19:46:42 UTC
view on stackexchange narkive permalink

J'adopte généralement une approche contraire à la plupart des réponses ici. Lorsque je configure des affectations (généralement dans Blackboard), je fixe le nombre de soumissions autorisées (généralement à trois). Je donne également aux étudiants l'engagement que j'essaierai de marquer toutes les premières soumissions dès que possible, sous réserve de mes autres contraintes de travail.

Je pense que:

  • Du point de vue des élèves:

    • Ils reçoivent des commentaires précis sur leur travail dans le temps.
    • S'ils ont vraiment merdé, ils ne sont pas pénalisés d'une erreur ponctuelle. Plusieurs de mes étudiants n'ont pas l'anglais comme langue maternelle, donc des problèmes de communication se produisent.
    • Ils ont de bonnes chances d'obtenir 100% sur tous ces travaux soumis.
  • De mon point de vue:

    • J'ai plus de temps pour noter les devoirs, car les étudiants n'attendent pas la dernière minute pour soumettre.
    • Je peux identifier les problèmes un peu plus tôt et les résoudre avec toute la classe avant la date d'échéance.
    • Le marquage des mises à jour des devoirs prend beaucoup moins de temps que le marquage initial, donc le temps supplémentaire n'est pas de une grande importance.
    • Je considère que refaire le devoir est une forme de répétition du matériel, ce qui, à mon avis, est bon pour leurs résultats d'apprentissage.

Mon objectif général est que les élèves apprennent le matériel. Forcer des soumissions «ponctuelles» peut être contre-productif pour atteindre cet objectif.

Notez que cela vise spécifiquement les devoirs et les quiz en cours de session. Les midterms et les finales ne reçoivent pas de soumissions anticipées ni de reprises.

#8
+3
Sarah Stark
2018-07-23 16:15:24 UTC
view on stackexchange narkive permalink

La seule façon d'en être sûr serait d'envoyer un e-mail à votre professeur. Je suppose que cela appuierait ce que les autres réponses vous ont dit.

S'assurer de bien comprendre le devoir est également une bonne idée (c'est-à-dire à quoi ressemble ce devoir / se dérouler quand il est fait correctement?), mais demandez également à votre professeur où obtenir de l'aide. Il ou elle est probablement conscient que ce n'est pas une tâche facile. Le prof vous expliquera probablement dans quelle mesure il ou elle est disposé à aider, et peut-être aura une liste de tuteurs ou de ressources où vous pouvez obtenir une aide spécifique.

Juste une autre note, soyez très prudent lorsque vous obtenez de l'aide au codage (c'est pourquoi c'est une bonne idée de demander au prof où obtenir de l'aide). Soyez extrêmement clair sur ce que votre professeur considère comme du plagiat. Demander à vos amis leur code qui a fonctionné et le copier pourrait vous causer de gros problèmes.

#9
+2
BlueRaja - Danny Pflughoeft
2018-07-23 23:36:51 UTC
view on stackexchange narkive permalink

Votre professeur (ou l'un de ses AT) a-t-il des heures de bureau ouvertes? J'imagine que si vous entrez, montrez-leur le programme et dites-leur que vous ne savez pas si cela fonctionne comme prévu, ils seraient plus qu'heureux de vous aider.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 4.0 sous laquelle il est distribué.
Loading...