Inconvénients du code kata


41

Le code kata est un concept qui propose de perfectionner les compétences du programmeur en faisant de petits problèmes plusieurs fois en essayant d'améliorer le code à chaque itération. Le nom vient d'une analogie avec le kata d'art martial où les formes (alias kata) sont des pratiques répétées conduisant à des améliorations.

De la réaction à ma dernière question sur le sujet, j'aimerais savoir quels sont les inconvénients de cette approche?


+1 pour contrer l'improductif -1 appliqué. Cela me semble une question valable, tout comme mes doutes sur le code kata, mais je ne peux pas comprendre pourquoi.
mattnz

9
Jusqu'à aujourd'hui, je ne savais pas du tout à quoi ressemblait ce kata. Maintenant, je viens de le vérifier et à mon humble avis, c’est un nom sophistiqué pour quelque chose que tout programmeur sensé fait et apprend automatiquement en développant: pratiquer. Donc, l’inconvénient pour moi serait: cela prend juste un temps supplémentaire qui pourrait être utilisé autrement.
Stijn

11
Hmm… apparemment, un inconvénient majeur du code kata semble être que les gens critiquent le kata sans comprendre ce que sont les codes :-)
Jörg W Mittag Le

19
@ JörgWMittag - C'est parce que le terme «kata» est une mauvaise analogie puisqu'il implique la pratique d'une forme rigide avec peu de sens pratique dans des situations réelles. Appliquer des mots d'arts martiaux, tels que "ceinture noire" ou "kata", à la programmation ou à des situations professionnelles m'énerve.
Jfrankcarr

Réponses:


22

En principe, je ne vois pas d'inconvénients dans le code kata. Vous essayez d'accomplir la même tâche plusieurs fois, avec des approches et des langages différents. Mais

  1. il est assez difficile de l'introduire sur un lieu de travail. On s'attend généralement à ce que vous soyez compétent ou raisonnablement productif. Je ne dis pas que cela ne serait pas utile (il serait préférable de passer du temps à améliorer les compétences d'un nouvel employé plutôt que de payer pour le code moins bon qu'il écrira dans le temps à venir) mais c'est quand même assez difficile.
  2. vous devez réellement essayer d’améliorer dans un certain sens. Écrire le même code de la même manière mille fois ne vous fera pas progresser (cela vous ennuiera plutôt). Vous devez comprendre vos erreurs précédentes, ce qui s'est mal passé ou ce qui n'a pas fonctionné comme prévu. C'est la partie la plus importante. C'est une forme d'étude personnelle, vous devez donc étudier.

1
J'ai accepté cette réponse car elle répond directement à la question (au lieu de la terminologie "kata") et se concentre sur les problèmes potentiels liés à la pratique du code kata. Cela ne veut pas dire que les autres réponses ne sont pas bonnes - en fait, je serais heureux d'en accepter plus d'une!
Sardathrion - Réintégrer Monica

43

Je pense que la programmation du kata, comme celle des arts martiaux, concerne principalement la forme plutôt que la fonction. Cela peut vous apprendre à écrire du code élégant, mais cela ne vous apprendra pas à résoudre les problèmes pour lesquels vous écrivez le code. Je pense qu'une meilleure façon de s'améliorer en tant que programmeur est de résoudre des énigmes qui nécessitent une résolution de problème réel, et de travailler sur des projets plus vastes qui vous apprendront la valeur d'un code bien factorisé d'une manière que le code kata ne pourra jamais vous apprendre.

En passant, je pense que les termes tels que «code kata» et «savoir-faire logiciel» visent plus à romancer notre métier qu’à décrire quelque chose de nouveau ou d’utile.


4
Faites que +2 pour cette phrase.
Erik Dietrich

6
Bien que je sois d’accord pour dire que la résolution de problèmes est un bon moyen de s’améliorer en tant que programmeur, apprendre à écrire du code élégant peut également être une activité utile. J'aimerais que certains des développeurs de code que je maintiens actuellement aient consacré du temps et des efforts à l'écriture de code élégant au lieu de copier-coller pour que les choses fonctionnent correctement.
Mike Partridge

1
+3 pour le commentaire de Mike. En général, la maintenance du code demande plus de temps que l'écriture initiale. Vous vous attendez à ce que l'artisanat soit appliqué lorsque quelqu'un construit votre maison, car vous allez y vivre longtemps. La même chose devrait être appliquée lorsque quelqu'un construit un logiciel - mais la plupart du temps, ce n'est pas le cas.
Kaleb Brasee

@KaptajnKold: Parlez-vous de votre expérience? J'aimerais entendre des commentaires de quelqu'un qui a vraiment essayé d'améliorer ses compétences via CodeKata et qui a échoué.
jeudi

2
@dzieciou: J'ai de l'expérience dans les arts martiaux kata après avoir pratiqué le karaté pendant plusieurs années. Et alors que je crois qu'il ya certains aspects utiles de combats qui peuvent être tirés de katas, je crois aussi qu'il est finalement pas un moyen très efficace de train. Vous devriez vous entraîner pendant que vous vous battez comme on dit. Si votre but est de devenir un meilleur combattant. Certaines personnes trouvent que la pratique du kata est une activité joyeuse en soi. Il n'y a rien de mal à ça. Certains finissent par devenir très bons. Au kata.
KaptajnKold

20

Le code kata prend juste du temps.

En tant que développeur et père à temps plein, je ne veux pas faire de l’informatique un loisir.

Et je ne pense pas que mon patron me paierait pour développer des applications sans lien avec mon projet actuel.


10
Existe-t-il un type d'apprentissage qui ne prend pas de temps? Sauf si vous avez la chance de travailler à chaque fois sur de nouveaux projets.
Den

38
Si vous ne passez pas au moins une partie de votre temps libre à améliorer régulièrement vos compétences en programmation, votre carrière professionnelle est en grand danger.
Ladislav Mrnka

7
+1 à cela. Bien que j'adore la programmation et que je puisse gagner de l'argent sur quelque chose que j'aime faire, je ne vois pas l'intérêt de faire PLUS de programmation en dehors du travail. J'ai tellement d'autres passe-temps (DJing, produire de la musique, soulever des poids, dessiner et danser de rue par exemple) que je ne vois pas l'intérêt de passer plus d'heures à quelque chose que je fais déjà 40 heures par semaine.
Andreas Johansson

7
@mouviciel: Et c'est exactement le problème: votre patron est prêt à payer pour votre développement professionnel, si cela est nécessaire pour le projet, mais vous devriez être disposé à améliorer vos compétences qui ne sont pas liées à votre projet actuel - peut-être pas à votre projet actuel. plate-forme du tout. C'est ce qui construit votre carrière / sécurité sociale.
Ladislav Mrnka

6
@ LadislavMrnka - Je suis d'accord avec vous. Néanmoins, le code kata n'est pas la solution à ce problème.
mouviciel

13

En tant que boxeur, je devrais être en désaccord avec le principe du kata. C'est trop rigide pour être réellement utile. Sur le ring, vous devez comprendre comment appliquer les principes que vous avez appris dans un environnement fluide.

Cela ne veut pas dire que l'apprentissage et l'amélioration de la technique ne devraient pas être faits. Pratiquer sur les sacs vous permet de travailler avec un coup de poing et de sentir comment vous le lancez, comme un kata. Mais ce n'est pas aussi rigide. Vous pratiquez beaucoup de choses en même temps, bougez dans le sac, lancez depuis une plate-forme stable, visez, respirez, la liste est longue.

Plus important encore, tout est appris ensemble de la manière dont il sera réellement utilisé. Si vous pouvez écrire la plus belle boucle de tous les temps, mais que vous ne comprenez pas comment l'intégrer dans un programme, à quoi sert-il?

Je dirais qu'une meilleure chose à faire si vous voulez vous entraîner serait de vous construire des outils, ou de travailler sur des outils que vous utilisez. Cela nécessite d’exercer toutes vos compétences et vous aurez peut-être quelque chose d’utile.


place sur. fwiw, je suis aussi un boxeur / programmeur :).
Paul Sanwald

1
Les katas de code ne concernent pas la répétition rigide; il s’agit plus de travailler à résoudre un problème, puis d’améliorer votre solution jusqu’à ce que vous soyez satisfait. De Kata One: "Le but de ce kata est de pratiquer un style de modélisation expérimentale plus souple. Cherchez autant de manières différentes que possible de traiter les problèmes. Considérez les différents compromis de chacun. Quelles techniques utilisez-vous le mieux pour explorer ces modèles? Pour Comment les enregistrer? Comment valider un modèle est-il raisonnable? "
Mike Partridge

4
Je conviens que le terme «kata» est imparfait, mais ne perdez pas de vue son sens à cause de son nom. En outre, ils ne sont pas tous des problèmes de mots; de Kata Two: "Implémentez une routine de recherche binaire (en utilisant la spécification ci-dessous) dans le langage et la technique de votre choix. Demain, réinstallez-la à nouveau, en utilisant une technique totalement différente. Procédez de même le lendemain, jusqu'à cinq totalement uniques. implémentations d'une côtelette binaire. (Par exemple, une solution pourrait être l'approche itérative traditionnelle, une solution récursive, un style fonctionnel permettant de faire passer des tranches de tableau, etc.). "
Mike Partridge

3
@ MikePartridge Cela illustre mon point. Un kata impliquerait une méthode de recherche binaire améliorée chaque jour, disons avec moins de lignes ou moins de temps pour l'écrire à partir de zéro. Comment définir un concept est important pour le définir. Il aurait pu simplement appeler cela de la programmation pratique, qui est le sujet des articles, sans apporter de bagages incorrects. Il incombe à l’auteur de choisir des mots et des concepts qui définissent correctement son idée, et non de se plaindre du fait que son public fait des associations incorrectes en raison de son choix de métaphore.
Spencer Rathbun

3
@ MikePartridge Dans mon cas, je crois que tous les programmeurs apprennent / s'améliorent, ou devraient l'être, tout le temps. Ainsi, le code kata est une technique permettant d’atteindre cet objectif, et ma réponse a été que cette technique, telle que je l’avais vue, n’en valait pas la peine. Je suis tout à fait d'accord avec l'objectif, mais ce n'était pas la question.
Spencer Rathbun

11

De mon point de vue, le principal inconvénient est que ce serait terriblement ennuyeux. De plus, les programmeurs semblent s’épanouir en développant des logiciels utiles ou intéressants. L’approche du code kata semble être l’opposé de cela.


2
Les Katas vous apprennent de nouvelles choses. Comment cela peut-il être le contraire de ce que les programmeurs veulent faire? C'est aussi résoudre un casse-tête, ce que la majorité des bons programmeurs ne percevraient pas comme «ennuyeux». En fait, ceci est au cœur même du piratage.
Konrad Rudolph

5
@ KonradRudolph Je pensais que la répétition était le cœur des katas? Vous résolverez donc un problème une fois (nouveau et excitant peut-être), mais vous continuerez à résoudre le même problème encore et encore. J'ai à peine regardé Katas pour que je puisse me tromper.
Kevin D

@ Kevin, je suis d'accord pour dire que cela semble stupide (à moins que vous n'essayiez spécifiquement de trouver différentes manières de résoudre le problème). Je n'ai jamais fait de "katas" en tant que tels, juste des puzzles de programmation génériques.
Konrad Rudolph

Comment faire la même chose encore et encore "vous apprendre de nouvelles choses"?

Il est clair dans votre réponse que vous n’avez pas lu le lien fourni dans la question.
Mike Partridge

8

Kata signifie exactement le contraire de ce que vous devriez rechercher.

un exercice consistant en une séquence des mouvements spécifiques d'un art martial, utilisé dans l'entraînement et conçu pour montrer une habileté technique

Le terme Kata (origine: 1950-1955; <japonais: forme, motif) utilisé dans les arts martiaux, et votre question concernent la mémorisation par cœur de la mémoire musculaire, comme la dactylographie au toucher .

Dans le Karaté Kid original, cirer les voitures, poncer les sols, peindre la clôture, c’étaient tous des Katas enseignés, complètement hors contexte et, dans ce cas, sans explication, uniquement pour fournir de la mémoire musculaire. Ce n'est que lorsqu'un sensei est entré et a donné à ces activités creuses un contexte qu'elles ne voulaient rien dire.

Je pense que la même chose s’applique ici, sans un mentor pour mettre les choses en contexte, refaire le problème en résolvant le problème dans plusieurs langues n’est pas mieux qu’un seul. Sans le mentor pour vous dire où améliorer, c'est une perte de temps.

C’est exactement le contraire de la résolution créative de problèmes en apprenant de nouvelles variations d’idiomes et de sémantique d’un langage ou d’une plate-forme.

Si vous voulez être capable de taper le System.out.println()plus facilement possible, pratiquez alors un Kata.

Si vous souhaitez améliorer une solution à un problème dans une implémentation différente , réduire les contraintes de temps et / ou d'espace ou appliquer des principes plus idiomatiques, ce n'est pas quelque chose que Kata vous aidera.

Il existe déjà un terme industriel accepté pour ré-implémenter la même chose encore et encore après que cela fonctionne déjà, en essayant d'obtenir de petites améliorations incrémentielles et des avantages discutables de perfection, ce s'appelle Gold Plating !

Les termes qu’ils auraient dû utiliser sont le refactoring lorsqu’ils sont appliqués à la même langue / exécution / plate-forme. Et le portage lors du déplacement d'un programme de travail vers une autre langue / exécution / plate-forme. Kata a probablement été choisi à tort parce que ça a l'air hipster, cool et mystique sans comprendre complètement la sémantique.

Résoudre différents problèmes difficiles avec peu de planification, d'expérience et de conseils est ce que la plupart des développeurs, en particulier les développeurs débutants, doivent faire tous les jours.

Seuls les universitaires ont la possibilité de faire le même exercice encore et encore juste pour affiner une solution spécifique. La compétence pour réussir une carrière de développeur réside dans l’ adaptation et non dans la répétition.

Qui a dit qu'il n'y a pas de gens intelligents qui n'ont pas besoin d'étudier après le travail et qui peuvent apprendre tout le besoin de savoir et parfois plus en 8 heures de travail?


Et si ce que vous pratiquez est la refonte et l'amélioration de la conception - le processus de conception doit-il être répété, le terme ne pourrait-il pas s'appliquer? Pouvez-vous en trouver un meilleur?
Bill K

le terme de refonte et d'amélioration d'un système existant est le refactoring (le refactoring de code est une "technique disciplinée permettant de restructurer un corps de code existant, modifiant sa structure interne sans changer son comportement externe"). Ils ont choisi Kata parce que cela semble cool et mystique, sans comprendre la sémantique.

Le terme refactorisation est un terme très différent de celui de pratiquer pour être bon en refacotorisation. N'importe qui peut refactoriser le code, cela ne veut en aucun cas dire qu'il le fait bien ou qu'il est habitué à reconnaître les bonnes opportunités de refactoring. Bien que "pratiquer le refactoring" soit un terme de descendance, il ne traduit pas le dévouement de Kata, alors je pense que Kata pourrait être un choix légèrement meilleur, bien que je sois ouvert à la théorie selon laquelle il existe encore une meilleure phrase.
Bill K

1
En fait, Gold Platting fait référence à "... des fonctionnalités supplémentaires ou plus raffinées". Ce que vous décrivez semble plus proche de l' optimisation prématurée bien qu'après coup.
Joshua Drake

5

Je conviens que la métaphore "kata" n'est peut-être pas la meilleure. Un kata dans le karaté est exécuté dans le but de pratiquer un mouvement spécifique et discret jusqu'à ce qu'il puisse être exécuté de manière parfaite, nette et automatique. Cela ne se traduit pas bien dans une activité où la pensée critique et la créativité sont nécessaires. (Cela se traduirait mieux en tapant, par exemple).

Cela dit, la défaillance du nom n'est pas une défaillance de l'activité. Quel inconvénient possible pourrait-il y avoir à pratiquer quelque chose pour lequel quelqu'un veut aller mieux? Je suppose que l’on pourrait dire que le temps passé à le faire est un inconvénient, du point de vue des coûts d’opportunité, mais c’est vraiment un investissement. Ainsi, le temps passé à pratiquer le développement de logiciels est réservé aux développeurs de logiciels, car l'argent dépensé en actions ou en obligations est destiné à un épargnant / investisseur à long terme. Ce n'est pas un «inconvénient», c'est un enjeu de table.


3

Tu t'améliores en essayant des choses difficiles et hors de portée de tes capacités; vous mettre au défi. Faire le même "code kata" à plusieurs reprises, comme une forme d'arts martiaux, ne fait pas cela. Je pense que cela stagne vos capacités au lieu d'aider à faire progresser vos compétences.

Il est utilisé comme méthode de pratique la première fois, mais il est limité. Je dis aux gens d'utiliser le projet Euler à la place. Plus de problèmes et plus de défis.


Écrire plusieurs fois le même programme peut être utile et intéressant, par exemple si vous utilisez un algorithme différent et / ou une langue différente à chaque fois. Mais ce n'est probablement pas un kata.
9000

2
Lisez le lien fourni dans la question. L'idée n'est pas une répétition stupide comme vous semblez l'assumer du nom.
Mike Partridge

@ 9000 En fait, c'est exactement comme cela que je comprends les codes Katas. Souvent utilisé pour apprendre une nouvelle langue ou pour essayer une nouvelle approche d'un problème déjà résolu.
Joshua Drake

3

Pour moi, le principal inconvénient de la technique, à mon avis, est son utilisation sous-optimale de votre temps.

La valeur d'apprentissage de cet exercice est également discutable: lorsque vous faites quelque chose de plus pour vous améliorer, le retour d'expert est essentiel. Sans retour d'informations de haute qualité, vous apprendrez aussi quelque chose, mais il est possible que vous appreniez très mal une mauvaise chose.

Ne vous méprenez pas, la pratique reste le seul moyen de devenir bon en programmation et le kata est très certainement une forme de pratique. Mais il en va de même pour résoudre les problèmes de concurrence de codage, écrire vos propres "projets amusants", apprendre de nouveaux langages de programmation, etc. En fin de compte, vous devez choisir la technique avec laquelle vous êtes le plus à l'aise et vous assurer de disposer de conseils clairs tout au long du processus.


Comment avez-vous trouvé les conseils? Je me bats avec le même problème.
CodeYogi

1

Je crois que sans Kata, vous ne serez jamais un excellent codeur. Kata est pratique, c'est littéralement ce que cela signifie. Prenons ceci à titre d'exemple: un athlète dit: "Je vais simplement me présenter et courir le 100 mètres, entraînement de vis". Est-ce que cela ressemble à une stratégie gagnante? Est-ce que c'est déjà fait de cette façon?

Je suggère aux gens de lire " The Clean Coder " de Oncle Bob , il approfondit ce sujet (et d’autres) sur le professionnalisme dans le domaine de la programmation.

Oh, et les arguments avancés selon lesquels vous ne pouvez pas faire du Kata et élever une famille ne sont que des excuses. Parlant d'expérience: les enfants vont dormir à un moment donné ...


3
codage! = courir au 100 mètres, à moins que ce ne soit 100 mètres à travers un champ de mines très boisé un jour et un paddy rempli de mines terrestres le lendemain et un marais rempli de vipères toxiques le lendemain sous un tir de tireur isolé, voir le modèle ... Kata est le mauvais terme sémantiquement .

2
-1 La formation peut avoir lieu sur le tas, même à temps rémunéré (on ne sait pas pourquoi les gens semblent l'oublier). Tout n'est pas pur travail ou apprentissage pur.
joshin4colours

@JarrodRoberson Le scénario que vous venez de décrire est ce qu'un soldat fait quotidiennement. Donc, vous avez choisi une analogie plutôt mauvaise. Franchement, je devrais être heureux pour les personnes qui font leur travail de 9 à 5 ans puis rentre chez moi et arrête d’apprendre car cela me donne un avantage concurrentiel.
ThaDon

3
Une fois, Martin Fowler a été interrogé sur le fait de dépenser de l'argent pour former vos employés "N'as-tu pas peur de les former, ils vont arrêter?" , et sa réponse a été "Non, je crains que si je ne les entraine pas, ils vont rester!" . Tous les employeurs ne voient pas la formation comme une dépense, les bons y voient un investissement!

Résoudre différents problèmes difficiles avec peu de planification, d'expérience et de conseils est ce que la plupart des développeurs, en particulier les développeurs débutants, doivent faire tous les jours. Je pense que c'est une analogie assez précise. Seuls les universitaires ont la possibilité de faire le même exercice encore et encore juste pour affiner une solution spécifique. La compétence pour réussir une carrière de développeur réside dans l’ adaptation et non dans la répétition. Qui a dit qu'il n'y avait pas de gens plus intelligents qui n'avaient pas besoin d'étudier après le travail et qui pouvaient apprendre tout ce dont ils avaient besoin et plus encore en 8 heures?

1

Ne faire que des katas, dans un contexte d'arts martiaux, est inutile. Comme dit précédemment, les katas sont une chorégraphie de mouvements qui vous apprend la forme. Vous connaissez les mouvements mais vous ne savez pas comment les appliquer. Vous ne savez pas dans quelles situations ils sont utiles. Si vous voulez vraiment faire quelque chose d'utile avec eux, vous avez besoin de la ou des applications, qui sont le Bunkai .

Dans un contexte logiciel, le code kata serait l'algorithme, l'outil, le modèle de conception ou toute autre technologie. Savoir que c'est bon, mais vous devez l'appliquer pour le comprendre. Vous devez l'utiliser dans différents contextes pour vraiment le maîtriser. Le Bunkai serait une situation concrète où ce kata ou une partie de kata est utile.

Je ne vois rien de mal à cette méthodologie, voici comment maîtriser quelque chose: apprendre quelque chose, le pratiquer, ajouter un détail, pratiquer, ajouter un autre détail, pratiquer, etc.


-1

La programmation est un art - comme la peinture ou la musique. Quand on devient musicien ou artiste pour de l'argent, on peut le dire, il n'y a pas d'inspiration, la performance ne vaut pas vraiment votre temps. Si vous êtes amateur d'art, rien ne peut vous empêcher de le pratiquer et de le perfectionner constamment - chaque jour, perfectionnez une technique, en remarquant les nuances que la plupart des gens ne verront jamais.

Il y a toujours de la place pour des personnes heureuses d’être des musiciens de bar et des peintres en bâtiment, mais il s’agit d’une catégorie de talents complètement différente. Je suppose que la plupart des peintres en bâtiment riraient à l'idée de pratiquer, mais je parie qu'un peintre qui fait de la recherche et pratique des techniques - en reconnaissant que leur travail d'artiste ferait un travail remarquablement meilleur, même sur quelque chose d'aussi banal que de peindre votre maison .

Certaines personnes reconnaîtront la valeur de la pratique, d’autres. Cela seul devrait être utile si vous êtes en mesure d’évaluer et que vous recherchez des personnes capables de créer de l’art (code simplifié, simple et compréhensible) et pas seulement une solution.

ps. Je ne me considère pas comme un artiste artistique ou quoi que ce soit - je ne fais pas de kata sur des problèmes abstraits, mais je reconnais la valeur et j'essaie de refactoriser mon code de production un peu.


Les musiciens trop entraînés, en particulier, peuvent être négativement préoccupés par la perfection théorique, ce qui est extrêmement dangereux pour une carrière dans le développement de logiciels. La musique a un élément d' expression , les logiciels de programmation ne l'ont pas. On pourrait dire que les produits Apple ont cette expression, mais il s’agit d’une expression de conception , le code n’est jamais vu ou perçu directement. La musique et l'art sont de mauvaises analogies pour le développement de logiciels. Et vous montrez un préjugé marqué contre les cols bleus, en ce sens que vous présumez qu'ils ne tirent aucune fierté de leur travail ni ne voient de valeur pour la qualité.

Ne mélangez pas l'entraînement avec la pratique. Trop de formation est très différent de trop de pratique, et si vous ne pensez pas que le niveau d'expression de votre code se voit dans les délais de livraison et la stabilité du code, je ne sais pas vraiment si nous avons un fondement de discussion commun.
Bill K

Peu importe ce que je pense, je sais que la plupart des clients ne reconnaîtront ni ne s’intéresseront à un code soigneusement élaboré et à son élégance, du moment que l’application fonctionne la plupart du temps. De la même manière que la majorité de la population ne s'est jamais préoccupée de la qualité audio et vidéo de la VHS et des cassettes vidéo et cassettes Internet fortement compressées, et maintenant des MP3 fortement compressés qui suppriment toute cette nuance, sans se plaindre. Trop formé est pire que trop pratiqué, trop entraîné fait ignorer "assez bon" et malheureux dans l'industrie du logiciel.

La programmation est un métier et non un art. Il existe des niveaux d'artisanat et d'esthétique, mais l'art n'est pas une vocation professionnelle. Le développement de logiciels est une vocation. De plus en plus de gens gagnent plus d'argent avec les logiciels d'écriture que les artistes. Les logiciels ne sont pas subjectifs et n'existent pas uniquement pour leur propre existence, les peintures et la musique existent pour plaire au créateur plus souvent qu'autrement, comme le définit votre définition de l'abandon ci-dessus comme une différenciation. En tant que personne qui a fréquenté l’université d’art, je peux vous dire que la programmation est un métier professionnel et qu’elle n’a rien à voir avec la création d’une œuvre d’art.

Si vous ne pensez pas que les logiciels bien conçus sont livrés plus rapidement, moins cher et tout simplement mieux que les logiciels conçus par des artisans, vous ne l'avez pas vu bien faire. Pas très improbable, combien de personnes ont regardé un maître artiste, un musicien ou joué avec / contre un joueur de sport professionnel - elles ne sont tout simplement pas si communes, et dans notre secteur BEAUCOUP plus difficile à reconnaître, mais la différence de talent est la même. comme c'est les résultats. Un artiste peut surperformer 5 artisans en vitesse et en qualité, mais peu de gens ont la chance de le voir, ils ne croient donc pas que cela existe.
Bill K
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.