Est-il courant d'imprimer un code sur du papier? [fermé]

36

J'aime garder mes lignes de code sous 80 caractères pour les raisons suivantes:

  • Je n'ai pas à faire de défilement horizontal;
  • Je sais que la ligne est probablement trop compliquée si elle dépasse cette limite; et
  • ça s'imprime bien sur le papier.

En ce qui concerne ces derniers, je n’ai rencontré que quelques-uns qui imprimaient du code à consulter (je suis l’un d’eux). Dans quelle mesure est-il courant d’imprimer du code?

gablin
la source
1
Je pense que la question est pourquoi imprimez-vous le code sur du papier?
Anon.
14
Je ne saurais dire à quel point il est courant d'imprimer du code, mais si l'imprimante n'est pas une relique d'une époque oubliée , elle peut imprimer plus de 80 caractères par ligne. 80 caractères sont utilisés pour favoriser la lisibilité et, historiquement, parce que de nombreux terminaux ne faisaient que 80 colonnes de large, et non à cause des imprimantes.
12
@Mark En réalité, 80 caractères proviennent de l'écriture de code sur des cartes perforées d'une largeur de 80 caractères. Et les 6 premiers concernaient les codes de contrôle et les numéros de ligne. C'est pourquoi le code FORTRAN doit commencer à la colonne 7.
ChrisF
3
@Aaron - C'est probablement bon pour les programmeurs '
ChrisF
5
@Aaron - Programmers 'est destiné aux questions plus subjectives (mais toujours constructives) qui entourent notre profession.
ChrisF

Réponses:

50

J'imprime encore très occasionnellement du code - mais seulement s'il s'agit d'un problème particulièrement épineux.

Cela indique généralement que le code est trop compliqué et nécessite une refactorisation. Par conséquent, le fait d'avoir quelque chose à gribouiller permet dans un premier temps de trouver et de résoudre le problème, puis de déterminer à quel endroit le code doit être scindé.

Dans un monde idéal de principes SOLID et DRY , vous devriez pouvoir visualiser l'ensemble d'une méthode sur un seul écran. Cependant, nous ne travaillons pas dans un monde idéal ...

ChrisF
la source
4
+1 pour "[ayant besoin de regarder le code imprimé] indique généralement que le code est trop compliqué et nécessite un refactoring ..."
Bill
Cela a également bien fonctionné pour comprendre les conditions de course. Imprimez les traces de la pile et comparez-les côte à côte, prenez des notes, etc.
rperetti
4
@rperetti: L'impression d'éléments tels que les traces de pile est très différente de l'impression de code. Cependant, ne les comparez pas côte à côte. Trouvez une fenêtre (le type de verre, pas le type de Microsoft.) Placez les deux impressions les unes sur les autres et les différences sont évidentes. (Évidemment, seulement en plein jour.)
Loren Pechtel
5
Ne serait-il pas plus simple de les comparer avec un outil de comparaison?
Jeanne Pindar
14

Tu paries. Mais rappelez-vous que l'impression en paysage permettait 132 caractères

texte alternatif

Chez Uni, j’imprimais régulièrement mon code sur du papier-barre vert. Il est étonnant de constater à quel point vous avez une idée de la profondeur et de la complexité de votre code lorsque vous le regardez sur papier. Nous sommes (du moins à compter d’aujourd’hui) encore mentalement imprimés de pages consacrées à la lecture des pages de l’école élémentaire et de ce que chaque page peut représenter. Cela met une bonne métaphore de complexité au code informatique.

texte alternatif

Jé Queue
la source
13

de temps en temps, vous devrez peut-être examiner de près un code (généralement nouveau pour vous) dans lequel vous devez essentiellement en voir beaucoup en même temps. Ensuite, une impression peut être une aide précieuse pour pouvoir regarder l’ensemble en une fois.

Combiné avec un surligneur et un stylo rouge et vert, il aide vraiment à obtenir une vue d'ensemble. Les notes que vous avez écrites sont ensuite ajoutées sous une forme quelconque au code.

Remarque: avec les imprimantes couleur modernes, vous pouvez également obtenir la coloration syntaxique sur papier. C'est une aide précieuse et hautement recommandée.

(J'imprime aussi les spécifications à lire - c'est-à-dire à mettre des notes dans la marge.)

utilisateur1249
la source
8
+1 Quand quelqu'un me donne un bazar au refactor, je l'imprime habituellement et vais passer du bon temps dans un bel endroit ensoleillé.
Sharpie
En règle générale, si tout le module ne tient pas sur un seul écran, il doit probablement être revu en profondeur. Cela est particulièrement vrai depuis que le mode VGA à 50 lignes est disponible, il y a 20 ans à peine. Je l'ai déjà dit, et je le répète: en près de 40 ans dans cette raquette folle, j'ai vu exactement UN (1) module qui devait comporter plus de 60 lignes (une page imprimée) de long. . (J'ai vu BEAUCOUP de modules plus longs que cela et ils ont tous "laissé beaucoup à désirer". (Phrase polie.)
John R. Strohm
@ John, pourquoi devait-il être plus long que 60 lignes?
@ user1249: C'était la routine de torpille à photons du jeu "STARTRK" ("Star Trek") de Matuszek-Reynolds-McGehearty-Cohen. C'était écrit dans FORTRAN IV. Il devait analyser la commande, simuler le vol d’un ou de trois torpilles à photons (éventuellement en cas d’abandon en cas de raté), avec perturbations ET mettre en place une pile permettant de connecter 8 étoiles à la nova lorsqu’un torpille ou en cours de adjacente à une étoile allant de nova et tuant tous les Klingons adjacents à ces étoiles. FORTRAN IV ne faisait pas de récursivité et il n’y avait aucun moyen de penser que cela n’aggraverait la situation.
John R. Strohm
12

Parfois, je l'imprime pour le lire dans le train et prendre des notes. Lorsque je suis coincé, j'aime l'étaler sur une table dans une salle de conférence calme. Je ne sais pas si cela aide vraiment, mais c'est un bon changement de rythme.

Un autre: trouvé un vieux code qui était une instruction Si / Alors à plusieurs imbrications qui ne tiendrait pas à l'écran. Ils auraient dû renvoyer l'ancien programmeur qui avait écrit ça, mais je n'aurais plus de travail;)

JeffO
la source
4
+1 pour un changement de scène. Parfois, le simple fait de voir quelque chose dans un contexte différent vous fait penser différemment.
Jon Hopkins
3
+1 Vous pouvez placer plus de pages côte à côte sur une grande table de conférence que sur l'écran de l'ordinateur. Et vous ne serez pas distrait par Twitter ou par courrier électronique
Alex Jasmin Le
1
Si vous êtes distrait par Twitter ou par courrier électronique, vous vous trompez. Les e-mails ainsi que Twitter ou divers autres messagers sont asynchrones. Vous n'avez pas besoin de répondre dès que possible.
mhr
8

Je n'imprime le code que pour en faire un examen par les pairs . À mon avis, effectuer l'examen hors ligne est plus efficace que de le faire sur un ordinateur avec tous les éléments perturbants (mais parfois utiles) de l'EDI.

Si vous avez un (ou deux ou plusieurs) écrans de largeur raisonnable, vous pouvez facilement ouvrir deux fichiers source divisés verticalement en mode plein écran sans devoir vous conformer à des règles trop restrictives en matière de largeur de trait.

Et dans certains cas, je n'ai pas besoin de voir tout le contenu de la ligne (c'est-à-dire les lignes imprimant des messages de débogage ou autres) et, par conséquent, peu importe si la ligne est coupée à droite.

Mais pour répondre à votre question: à mon avis, il n’est plus aussi courant d’imprimer du code sur du papier.

eckes
la source
8

J'imprime rarement le code sur du papier, mais je le faisais tout le temps à l'époque.

Les raisons habituelles ces jours-ci sont de s'asseoir dans un endroit calme et d'expliquer le code à un junior, ou si une méthode longue est vraiment déréglée et nécessite un peu de travail à la plume et au papier. Les écrans ne suffisent pas toujours, surtout quand vous voulez des notes et des surlignages partout.

Je respecte presque toujours la limite de 80 caractères, car je suis enclin à corriger rapidement les bogues via SSH en cas d’urgence et je n’aime pas disposer de terminaux étendus. En outre, le défilement horizontal est le diable.

Orbite
la source
5
+1 "le défilement horizontal est le diable". Je disais à quelqu'un la même chose la semaine dernière.
morganpdx
8

À l'adolescence, au lycée (21 ans à présent), je n'avais pas de connexion Internet à la maison. J'imprimais donc fréquemment des échantillons de code et diverses documentations d'API à emporter chez moi.

Remarque secondaire: il est étonnant de constater combien de travail supplémentaire vous pouvez effectuer sans connexion Internet, à condition que vous disposiez déjà des informations dont vous avez besoin.

Kevin Wiskia
la source
6

Je n'ai jamais imprimé mon code source. Je n'ai jamais eu à faire ça. Le seul code source que j'ai vu à l'extérieur d'un écran d'ordinateur était dans des livres.

J'ai utilisé mes imprimantes pour autre chose.

texte alternatif

utilisateur2567
la source
1
Maintenant, je me sens vieux: D
expressions sauvages
En tant que personne née après ce logiciel, c'était amusant de chercher.
Naltroc
5

J'imprime du code lorsque mes deux moniteurs sont remplis et que je dois constamment faire référence à quelque chose. Une feuille de papier sur le bureau est un moniteur supplémentaire pour l’homme pauvre.

comment s'appelle-t-il
la source
Mettez-le sur le moniteur n ° 3 alors!
Loren Pechtel
4

Dans quelle mesure est-il courant d’imprimer du code?

C'était courant il y a de nombreuses années à l'époque de la programmation DOS, 80 caractères remplissaient précisément une page imprimée. Nous avions alors des imprimantes matricielles, de sorte que la limitation concernait probablement le matériel. C'était aussi la limite sur un écran de console.

De nos jours, les gens n’impriment pratiquement pas de code, la seule exception étant les petits extraits de code imprimés comme exemples de tests pour les entretiens d’emploi.

De nos jours, les gens travaillent principalement avec de grands écrans, Full HD, etc. Je m'étire généralement de 150 à 200 caractères sans penser aux effets secondaires d'impression.

Lorsqu'il est temps de discuter en équipe, quelqu'un saisit habituellement un ordinateur portable et le connecte à un projecteur. Encore une fois, personne n’imprime le code.

La dernière fois que j'ai imprimé le code, c'était il y a environ 8 ans pour mon diplôme universitaire que je suis presque sûr que personne n'a lu - le code je veux dire :-). Jamais dû depuis.

utilisateur8685
la source
Cela fait des siècles que j'ai imprimé du code autrement que sur une page Web. Je ne suis pas d'accord avec votre longueur de ligne, cependant - même si vous pouvez obtenir autant, il est difficile de suivre. Je dépasse rarement environ 100 caractères et j'aime bien le garder à environ 80.
Loren Pechtel Le
@ Loren Pechtel: J'aime les noms descriptifs longs pour les méthodes et les variables. Avec seulement 80 caractères de largeur, j'aurais du mal à le garder compact et correctement formaté. Bien sûr que c'est juste mon cas.
Vous avez programmé DOS sur une console crt? Nous avions des cartes perforées. La limite de 80 caractères résultait des cartes perforées. Pouvoir étudier le code sur 3 ou 4 pages à la fois est très pratique. Je suppose que c'est pourquoi je préfère toujours les impressions. Il est plus facile de naviguer parmi les fonctions associées.
Huperniketes
J'aime les noms longs, et c’est pourquoi j’ai parfois jusqu’à 100 caractères.
Loren Pechtel
4

Le code d'impression est devenu obsolète quelque part entre 1975 et 1982, sauf pour des raisons particulières:

  • code pour le lire pendant un trajet
  • ancien code qui entre dans la spécification d'un nouveau projet qui doit le remplacer
  • faire face à des erreurs flagrantes; il est plus sûr d'affaiblir un collègue avec une pile de papier qu'un moniteur
utilisateur281377
la source
1
Pummeling est sous-estimé.
Keith Layne
3

Nos avocats en propriété intellectuelle exigent une "copie papier" pour le dépôt du droit d'auteur.

Je ne sais pas s'ils l'impriment réellement sur papier. Je leur envoie un PDF qu’ils peuvent imprimer ou inclure dans le fichier de copyright.

S.Lott
la source
3

Plus maintenant. Je le faisais tout le temps avant l'IDE, à l'époque où la matrice de points avec alimentation continue était la norme. Vous pouvez étendre ces impressions et les feuilleter assez facilement. Les imprimantes laser / jet d'encre à feuilles modernes représentent un énorme pas en arrière. Les agrafer ensemble ne coule pas aussi bien, et ne pas agrafer entraîne des feuilles volantes qui sont mélangées. Les IDE modernes avec mise en surbrillance et méthodes de navigation automatiques éliminent également des classes entières d'erreurs détectées lors de l'examen des impressions.

Brian Knoblauch
la source
2

J'imprime parfois mon code parce que je suis sur un moniteur simple assez petit (15 "). J'ai parfois besoin de combiner deux programmes et il est très difficile de passer d'un programme à l'autre. Je ne le fais pas souvent, mais seulement lorsque cela est nécessaire. .

étonnant
la source
Deux moniteurs! ;)
Pemdas
@Pemdas je souhaite, lol.
Etrange
J'utilise un 15 "à la maison en raison du manque d'espace de bureau.
Orbling
2

J'imprime mon code sur du papier très occasionnellement et uniquement lorsque je souhaite effectuer un débogage hors ligne sérieux ou que je me familiarise avec le code de quelqu'un d'autre - cela peut donc valoir la peine de le faire par simple courtoisie.

En outre, je serais probablement plus apte à imprimer un schéma de base de données sur papier que du code.

Je pense que la question du défilement horizontal est un problème plus important et une raison de ne pas dépasser 120 caractères.

Peter Turner
la source
En fait, 80 caractères sont toujours un bon marqueur pour le problème du défilement horizontal. Les développeurs ont souvent deux panneaux de source et même sur ma résolution 1680, je ne peux obtenir que 107 caractères avant de devoir faire défiler lorsque j'ai deux panneaux côte à côte. Aussi, je préfère si le code ne va pas complètement à la marge droite.
Craige
1
@Craige dépend un peu de votre taille de police et de la résolution (DPI), ainsi que de la quantité de fichiers indésirables que vous avez de chaque côté de votre écran (si vous êtes dans un IDE). J'ai commencé à utiliser XTerm au lieu du terminal Gnome standard lors du codage via SSH pour cette raison - non pas que je n'aurais pas pu changer la police.
Peter Turner
@Petur Turner - c'est vrai, mais mon Eclipse est configuré de manière à minimiser l'espace perdu lorsque je dois coder. Il n'y a presque pas d'espace perdu à gauche et à droite de mes éditeurs. La taille de la police est également assez standard. Point car - 80 caractères est une bonne longueur cible pour rendre la source lisible dans les conditions les plus diverses.
Craige
2

Je n'imprime que le code fourni avec un article scientifique. Parce que ce code fournit fréquemment l'implémentation d'un algorithme (complexe, je dirais), et qu'il vous faut quelques heures pour le traiter.
Je doute que j'imprimerais le code contenant les instructions SQL ou une programmation graphique.

Sorantis
la source
2

J'imprime parfois le code pour essayer de comprendre les problèmes épineux de plusieurs pages.

Christopher Mahan
la source
+1 me fait souhaiter que nous ayons toujours une imprimante matricielle avec des restes de papier sans fin.
Peter Turner
avec alternance de lignes vertes et bronzées? Mais si lent !!!
Christopher Mahan
2

Presque jamais

J'ai vraiment du mal à me souvenir d'une époque où j'ai imprimé du code ou vu du code imprimé. Et honnêtement, je peux dire que je ne me souviens pas d'une seule fois (à moins de pseudo-code).

Je ne dis pas qu'il n'y a aucune raison légitime d'imprimer du code.

Nuit noire
la source
2

Je trouve plus facile de comprendre de gros modules si je peux les imprimer et voir rapidement différentes sections. Je pourrais probablement faire quelque chose de similaire avec plusieurs moniteurs, mais si j'ai plus de 2 ou 3 positions dans le code à examiner, il est plus rapide de tout déployer au même endroit plutôt que de continuer à faire défiler et à garder une trace des signets. J'aime également marquer les modifications imprimées avec des modifications plutôt que de les créer dans l'éditeur, car je peux voir l'ancien code et le nouveau code côte à côte. Bien sûr, je pourrais commenter l'ancien code dans l'éditeur, mais si vous remplacez plus de quelques lignes, vous finissez par faire défiler l'ancien code sur le moniteur, de sorte que vous n'êtes pas mieux loti.

Cela dit, je n’imprime presque plus le code. C’était génial sur du papier à fanfold, où toute la liste était continue et où il y avait beaucoup de place pour les notes dans les marges, mais imprimer le tout sur des pages individuelles de format lettre est presque aussi grave que de simplement le garder à l’écran. Surtout quand votre éditeur insiste pour que les en-têtes et les pieds de page soient séparés de 1 ". Heureusement, les IDE modernes offrent de nombreux outils qui réduisent le besoin d'imprimer des éléments.

RGT
la source
1

Je n'imprime rien pour moi et je n'imprime que pour les autres quand je ne peux pas m'en sortir. Je déteste recevoir des impressions aussi. Ils encombrent mon bureau et puis je suis responsable d'eux (enregistrez-le? Rangez-le? Déchiquetez-le? Utilisez-le comme ferraille?)

Notez que je travaille près de quelqu'un qui pratique le codage sur ordinateur central depuis quelques décennies et qui possède une pile d'impressions de code très haute à côté de lui.

Faites ce qui fonctionne pour vous, je suppose. Juste ne laissez pas vos impressions à mon bureau, merci.

Geai
la source
1

Une réponse légèrement différente de celles mentionnées ci-dessus.

Je suis un étudiant et je me trouve à imprimer du code pour divers documents de cours, mais pas pour chaque unité où je dois écrire du code.

Au cours de ma première année, la plupart des unités nécessitaient une copie papier en plus d'un téléchargement électronique ou d'une copie gravée sur CD (oui, un CD pour un fichier zip de 5 Mo ...) [choix du conférencier]

Je suis actuellement en deuxième année et, à ce jour, nous n’avons reçu qu’un seul téléchargement électronique et une copie papier + CD.

Considérant que nous avons Moodle qui permet la soumission électronique des cours, nous ne pouvons pas toujours télécharger le code, cela me dépasse: nous devons payer pour imprimer des documents sur les imprimantes de l'université et il n'y a pas un seul graveur de CD sur les PC que je sache. Bien sûr, les conférenciers n'aiment pas Moodle - mais c'est une autre question.

BTW, je suis un étudiant britannique, pas un petit inconnu. La mienne était dans le top 10 de Uni selon le Times / Guardian lors de ma dernière visite.

Megan Walker
la source
Cela me rappelle un projet que j'ai réalisé à l'université, où un rapport écrit était requis. Le code devait être compris dans une dizaine de pages et le code devait être joint en annexe car le conférencier aimait le consulter tout en lisant le rapport. Heureusement, l'annexe ne comptait pas dans le nombre total de pages. Le conférencier a donc reçu un fichier PDF de 90 pages. Je ne sais pas s'il a réellement imprimé le document. ^^
Gablin
1

Les nouveaux outils me prennent mieux en charge et me permettent de naviguer rapidement. Ils fournissent de nombreux types de résumés et de vues. Par conséquent, je n'imprime pas aussi souvent qu'avant. Mais la lecture séquentielle des impressions est toujours plus facile. Ma principale raison personnelle d’imprimer est psychologique: elle m’empêche de continuer à chercher et pendant que l’imprimeur imprime, je commence à réfléchir! De plus, il ne faut pas sous-estimer l'effet bénéfique de se lever et de marcher jusqu'à l'imprimante. :)

fausto
la source
0

J'imprime du code pour pouvoir faire une comparaison côte à côte (mes moniteurs au travail ne sont pas grand écran). À la maison, j’ai un écran large pour pouvoir visualiser confortablement deux documents côte à côte.

Résumé
la source
0

À l'époque où les lois américaines n'autorisaient pas l'exportation de cryptographie puissante, les développeurs open source basés aux États-Unis avaient l'habitude d'imprimer du code et de l'envoyer en dehors des États-Unis, où ils étaient scannés par des utilisateurs. Mais je ne suis pas sûr que cela réponde à votre question;)

RDA
la source
0

J'imprime du code poilu à l'occasion pour essayer de le comprendre. J'ai également imprimé désassemblage lors du débogage de quelque chose "bizarre".

Logan Capaldo
la source
0

Lors de mon dernier emploi, j'imprimais du code pour les révisions de code. Il est agréable de pouvoir mettre en évidence / annoter un peu de code lors d'une révision de code afin de disposer d'une bonne référence pour tous les problèmes soulevés lors de la révision.

De plus, quand je devais refactoriser (en fin de compte être une ré-écriture) un morceau de code particulièrement noueux et tordu, j’imprimais le code source, collais les impressions sur le mur, puis utilisais des bouts de ficelle pour montrer comment la logique était tissée ensemble.

Cercerilla
la source
0

Ces jours-ci, jamais. J'ai le support de plusieurs moniteurs si je dois référencer un code particulièrement difficile. Les disques durs modernes ne vont pas me lâcher pour stocker du code de plusieurs milliers de lignes. Imprimer le code IMHO est un gaspillage et généralement inutile, mais ce n'est que moi.

Cela dit, lorsque j'ai appris à développer et à programmer, je ne pensais pas à imprimer 20 pages de code. Je suppose donc qu'il pourrait y avoir un endroit et une heure pour cela, mais je trouve que ces jours-ci, cela ne sert pas à grand chose.

Mark D
la source
0

J'imprime mon code tout le temps, mais uniquement parce que je suis un étudiant qui doit le faire pour le transmettre à l'instructeur.

Cependant, étant donné que j’ai accès à plusieurs moniteurs ( comme tout bon développeur ), j’ai rarement eu à imprimer le code source à des fins de référence. Une fois, j'ai imprimé l'un des scripts que j'avais l'habitude de remplir une base de données pour que je puisse voir le schéma d'un coup d'œil, mais il me semble que je ne l'utilise pas beaucoup.

DragonLord
la source
0

J'avais l'habitude d'imprimer du code assez souvent, mais je le fais moins maintenant que j'ai plusieurs moniteurs sur mon bureau. Je garde souvent une partie d'une liste que je suis en train d'utiliser comme référence sur mon moniteur droit côté), et mon travail actuel devant moi.

Si j’imprime effectivement un ode, c’est presque toujours le code que je veux étudier et qui doit être retourné.

J'imprime presque toujours le code en mode paysage, à cause de la tendance à utiliser de longues lignes.

tcrosley
la source
0

Au cours des 10 dernières années environ, je ne me souviens que de l’impression de code, je peux donc utiliser des surligneurs dessus pour baliser les sections qui ont quelque chose en commun avant de planifier la réfraction du code.

Cependant, je manque parfois de pouvoir imprimer sur du papier grand format continu, car le code posé au sol pourrait donner un bon aperçu, principalement avec des stylos surligneurs colorés et des notes postit. Les pagers A4 imprimés ne sont pas meilleurs que ce qu’un moniteur raisonnable donne.

Les moniteurs sont bien meilleurs et plus grands alors que les imprimantes sont moins performantes qu’avant.

Ian
la source