Certaines personnes pensent que la programmation consiste simplement à taper répétitivement sur un clavier. Rien de tout cela n'est vrai. Tout d'abord, il y a tellement plus à faire que de taper réellement le code, comme l'architecture de conception, etc. Deuxièmement, il pourrait s'agir d'une tâche non répétitive très variable, avec de nouveaux défis à venir tout le temps.
Comment expliquer que la programmation n'est pas une tâche répétitive pour les non-programmeurs ?
Réponses:
Donnez-leur des exemples auxquels ils peuvent se rapporter.
Le tennis est répétitif. Vous continuez à frapper la balle tout le temps de l'autre côté du filet.
Le football est répétitif. Vous continuez à frapper le ballon à chaque fois jusqu'à ce que vous trouviez un poteau de but.
Jouer du piano est répétitif. Vous continuez à bouger vos doigts sur la planche.
Merde, tous tellement ennuyeux !!!
la source
Vous pouvez toujours dire que la programmation est une frappe répétitive exactement dans la même mesure que l'écriture de prose est une frappe répétitive. Écrira-t-on un grand roman (ou même médiocre) en s'asseyant et en assemblant soigneusement les lettres?
la source
Eh bien, c'est en quelque sorte. Vous tapez à plusieurs reprises les mêmes lettres (AZ, az, 0-9) encore et encore. Juste dans différentes combinaisons.
J'essaie généralement d'éviter de telles discussions avec de telles personnes.
la source
La programmation est à peu près comme la composition musicale . Ce qui est loin d'être un processus répétitif.
Parfois, vous ne savez pas ce que vous voulez et vous jouez. Probablement la meilleure façon d'obtenir les compositions les plus intéressantes ...
la source
J'explique généralement que la programmation est une solution créative aux problèmes. Vous avez un problème - vous voulez une fonctionnalité dans un produit (et je choisis généralement un produit bien connu, Amazon.com, MS Word, etc.), et ce n'est pas là. Cela n'a jamais été fait auparavant, et vous êtes le premier, c'est donc comme n'importe quel projet artistique - vous avez une vision, mais vous devez trouver un chemin.
Je me concentre également sur le fait qu'il y a plus d'une façon de résoudre le problème, un tas de très mauvaises façons, et probablement plus d'une bonne façon. À long terme, il pourrait y avoir un meilleur moyen, mais ce meilleur moyen ne sera pas évident pendant longtemps (extensibilité, réutilisation, etc.), donc au moment du développement, il y a beaucoup d'appels de jugement importants.
Enfin, le produit final peut être aimé ou détesté par le destinataire. Tout comme certaines personnes aiment Picasso et d'autres ne peuvent pas faire des têtes ou des queues d'art moderne - certaines personnes peuvent aimer une fonctionnalité, et certaines peuvent la détester. Vous faites du mieux que vous pouvez pour la plupart des gens et pensez que vous ne pouvez pas plaire à tout le monde.
En se concentrant sur:
Montre que ce travail ressemble beaucoup plus à de l'art et beaucoup moins à un travail ennuyeux répétitif.
J'en parle assez souvent avec des artistes (et ils semblent avoir une croyance instinctive que le travail sur ordinateur est peu créatif. Habituellement, je peux aussi le relier à la forme d'art préférée de l'artiste. À un certain niveau, la plupart des artistes sont aussi des techniciens - peinture , danser, faire de la musique et probablement tout autre art - tous impliquent une série d'activités répétitives qui vous amènent au point d'exécution de quelque chose de nouveau, de différent et de créatif. En d'autres termes, les artistes ont généralement du mal à nier que des activités apparemment répétitives peuvent conduire aux oeuvres d'inspiration et de beauté.
À ce stade, ils sont généralement prêts à admettre que le simple fait que mon "art" implique un ensemble d'instructions de syntaxe à l'aspect bizarre et de diagrammes UML à l'aspect fade ne signifie pas qu'il n'est pas créatif dans la mesure où ces lignes de code et les modèles du système finissent par faire quelque chose de tout à fait différent de la somme de ses parties.
la source
La programmation concerne les abstractions. Plus vous écrivez, plus vous pouvez voir de similitudes. Mais alors il est temps d'abstraire. En refactorisant un cadre évolue ce qui élimine les doublons. Cela réduit la complexité du code de domaine problématique.
Une programmation répétitive est possible. Mais c'est inefficace.
la source
Si c'était vraiment le cas, nous utiliserions simplement le copier-coller: D
L'un des principaux défis de la programmation est de façonner des blocs de construction de haute qualité, de
De par sa nature même, ce défi vous demande de ne pas vous répéter .
En corollaire: si vous vous répétez en tant que programmeur, vous perdez du temps à construire des logiciels, qui ne sont ni stables, ni flexibles.
la source
Mis à part les autres réponses qui soulignent à quel point la répétitivité ou la frappe / le clic est superficielle, vous pouvez également souligner que la programmation est généralement beaucoup plus une question de résolution de problèmes que de dactylographie (et je pense que c'est Djikstra qui a dit que l'informatique est aussi beaucoup sur les ordinateurs comme l'astronomie est sur les télescopes - ou quelque chose de similaire ).
La saisie n'est qu'une façon d'implémenter la solution (et actuellement la plus populaire), bien qu'il existe d'autres façons, telles que:
la source
Une grande partie de l'acte de programmation consiste à taper. La peinture consiste à caresser avec un pinceau, mais appeler répétitif est assez superficiel.
Appliqueraient-ils cette logique pour: - Les vendeurs parlent beaucoup au téléphone. - Les managers participent à de nombreuses réunions. - Les chanteurs chantent juste. - Les acteurs répètent des scripts.
Si c'est le cas, c'est pourquoi ils ne sont pas programmeurs.
la source
Si vous voulez être bon en programmation, c'est répétitif mais la même chose peut être dite pour n'importe quoi. La répétition est au cœur de la maîtrise de toute compétence.
la source
Eh bien, la programmation peut vraiment être une tâche assez répétitive. Surtout quand l'infrastructure a été construite, le processus ennuyeux de construction du même logiciel de dialogue / entreprise (seulement légèrement différent) recommence encore et encore. Vous avez de la chance si vous n'avez pas à participer pour respecter les délais ou si vous avez suffisamment de juniors pour faire ce genre de travail.
la source