12
votes

Qu'est-ce qu'un hack?

J'utilise le terme tout le temps ... mais j'étais juste en quelque sorte pensant que je ne vraiment a un sens solide dénotation de la durée (ou du moins le terme dans le sens Je veux discuter ici). Je suis intéressé par le sens du mot lié ​​au code , pas l'idée anthropomorphique. Je ne suis pas non plus intéressé ici dans le sens de la Parole liée à l'informatique malveillante intentionnelle (c'est-à-dire un hack pour débloquer des pouvoirs secrets dans une partie). Ce que je veux explorer est ce que cela signifie de "hack" en termes de logiciel d'écriture pour résoudre un problème

Wikipedia's def de 'Hack' à moi est un peu vague, mais un point de départ décent. Il considère un hack

  • peut se référer à une solution ou à une méthode qui fonctionne correctement mais qui est "laide" dans sa conception
  • Travaille en dehors des structures et des normes acceptées de l'environnement
  • n'est pas facilement extensible ou maintenu
  • peut être un argot pour "copie", "imitation" ou "déchirure".

    Ces traits d'un piratage sont conformes à mon utilisation du mot - lorsqu'il est appliqué au code, il est toujours un terme de dérision . À mon esprit, un hack

    • Est susceptible d'être difficile à maintenir et à comprendre dans le contexte du reste du code.
    • Est susceptible de provoquer une défaillance de l'application.
    • a tendance à indiquer une mauvaise compréhension par le codeur de l'espace problématique, de l'utilisation de la langue ou des deux
    • a tendance à être le sous-produit des horaires agressifs
    • Suggère des variations potentielles des exigences qui n'ont pas été complètement intégrées à l'architecture de la solution (nécessitant une solution de contournement «inorganique»).
    • odeur

      Tout mauvais, mauvais, mauvais . Pour moi, un piratage dans ce sens est toujours négatif , indiquant l'un des défenseurs de temps, d'incompétence ou de paresse de la part du développeur, bien qu'un pourcentage décent des hacks soient rédigés pour compenser les maladies concevoir des conceptions ou des systèmes qui ont gagné des exigences que leur design original ne peut pas gérer de manière biologique.

      Je ne pense pas que j'ai vraiment capturé ça totalement si - C'est comme la pornographie un peu: je ne peux pas vraiment le définir, mais je le sais quand je le vois . Donc, je vous demande: qu'est-ce que cela signifie "hack" lorsque vous essayez de résoudre un problème dans des logiciels?


6 commentaires

Vous ne pouvez pas définir la pornographie?


Si cela implique des gerbilles, des talons hauts et une grande quantité de fraises BlancMange, c'est probablement la pornographie!


Voir ici et ici et Ici .


homme. 13 mots de l'ensemble de l'article que vous fixez ;-)


Quelle est la pornographie et de l'art?


Wiki communautaire? (Alternativement, quelqu'un peut suggérer une opinion i peut demander de gagner rapidement une tonne de réputation?)


8 Réponses :


3
votes

Quand je pense à "Hack", j'y pense comme étant une solution de contournement non attendue pour résoudre un problème, pas nécessairement une mauvaise chose. Créatif, novateur et bien placé. "Hack" peut s'appliquer à plus que des ordinateurs, bien que je l'entendrai rarement.


1 commentaires

pensé à la façon dont Spolsky décrit le "programmateur de la bande de conduits" ( Joelonsoftware.com/items/ 2009/09 / 23.html ) que je pense est le point que vous faites. Pour moi, il y a une différence entre les deux. L'une est expédiente et claire (bande de conduits), l'autre est mal conçue et peu claire.



17
votes

J'ai toujours préféré Définition de Paul Graham :

Pour ajouter à la confusion, le nom "hack" a également deux sens. Cela peut être un compliment ou une insulte. Cela s'appelle un piratage lorsque vous faites quelque chose d'une manière laid. Mais lorsque vous faites quelque chose de si intelligent que vous battez en quelque sorte le système, c'est aussi appelé un hack. Le mot est utilisé plus souvent dans le premier sens que ce dernier, probablement parce que les solutions laides sont plus communes que brillantes.


4 commentaires

Mauvais signifie bon. Ce sont les années 80 à nouveau.


Les hacks les plus intelligents sont également laids, simplement parce que l'intelligence fonctionne si souvent contre la compréhaïvabilité.


@Kevin a gagné, cliquez sur le lien de ma réponse pour la source.


Un piratage laids (qui fonctionne) mis en œuvre quelques jours avant que la date limite ne me soit toujours belle.



1
votes

Ce sujet se transformera en quelque chose comme une question sur l'amour. Tout le monde va avoir sa propre définition. La meilleure façon de connaître la définition appropriée (par défaut) est dans le dictionnaire


0 commentaires

1
votes

C'est lorsque vous êtes sorti des méthodes idiomatiques, naturelles, sensibles et (parfois) soutenues de faire quelque chose dans une langue / un cadre donné / etc.

Parfois, c'est un coup de génie, il s'agit généralement d'un acte d'idiocy, de temps en temps, il est un déguisé comme l'autre et à des occasions rares, c'est à la fois.

(Incidemment, le juge qui a inventé cette déclaration sur la pornographie que vous citez ensuite a rétracté une autre décision).


0 commentaires

6
votes

du fichier jargon , glossaire de Hacker Slang:

Le sens de "hack"

"Le mot hack n'a pas vraiment 69 significations différentes", selon MIT Hacker Phil Ag d'accord. «En fait, le hack n'a qu'un sens, extrêmement subtil et profond qui défie l'articulation. Quelle connotation est implicite par une utilisation donnée du mot dépend de différentes manières sur le contexte. Des remarques similaires s'appliquent à un couple d'autres mots hachers, notamment aléatoires. "

Le piratage peut être caractérisé comme «une application appropriée de l'ingéniosité». Si le résultat est un travail de patchwork rapide et sale ou une œuvre d'art soigneusement fabriquée, vous devez admirer l'intelligence qui y est allée.

Une signification secondaire importante du hack est une blague pratique créative. Ce type de piratage est plus facile à expliquer aux non-pirates que le type de programmation.


3 commentaires

Je pense que vous parlez d'une autre signification du terme - c'est-à-dire. pirater une partie pour vous donner plus d'or. J'ai honte de certains de mes hacks qui sont exactement le contraire de «une application appropriée de l'ingéniosité» - je l'ai fait juste pour avoir


@Kevin: Je cite une source officielle que possible. Si ce n'est pas ce que vous voulez entendre, c'est parce que la question est subjective / argumentative.


Je suggère que cela s'applique à l'autre sens du mot - et non que c'est inexact.



1
votes

Lorsque j'utilise le terme «hack», il fait généralement référence à une solution à un problème qui a été fait habituellement en réponse à une question urgente, et pas à peu près beaucoup de réflexion en ce qui concerne la conception générale de l'application. . Parfois, cela fonctionne, parfois pas tellement, et parfois, il s'avère être une œuvre de génie. Mais principalement, c'est une solution temporaire admise qui (espérons-le) est refactable et raffinée lorsque cela est possible.


0 commentaires

1
votes

trop souvent "hack" signifie simplement: "Pas la façon dont i le ferait."


0 commentaires

0
votes

Voici une bonne phrase que j'ai vue sur la différence entre piratage et arnaque et il est dit: «Les attaques de piratage réussissent lorsque le criminel sait comment fonctionne un système informatique particulier. Les escroqueries ont une réussite lorsque l'auteur sait comment le cerveau humain fonctionne. dans quelque chose, vous devez avoir une compréhension profonde de la façon dont cela fonctionne.


0 commentaires