Créateur de Stack Overflow: «Les développeurs sont ceux qui écrivent le script pour le futur»

image

Bienvenue à tous. Merci de m'avoir invité.

Derrière moi, vous voyez le cockpit du Douglas DC-3. Donc, cet avion a été construit en 1935; faites attention au fait que chaque indicateur, chaque panneau, chaque capteur et chaque interrupteur est en quelque sorte connecté à l'avion lui-même. Ainsi, si vous tirez sur la poignée de commande de ce navire, vous tirez en réalité tous les câbles et poussées connectés aux avions de commande de vol de l'avion, puis il se déplace à travers une forme de contrôle direct. C'est très différent d'un avion de ligne moderne.

image

Par exemple, sur l'Airbus A380, vous avez à votre disposition un tas d '«ipads» et d'écrans en verre, qui sont essentiellement des périphériques de sortie d'ordinateur, et un tas de boutons et d'interrupteurs sont des périphériques d'entrée pour l'ordinateur. Autrement dit, le navire lui-même est contrôlé par un logiciel, et le pilote est le lien. Au lieu d'un stick de contrôle, vous avez un clavier, ce qui est très pratique si pendant le vol vous décidez de mettre à jour votre flux sur Facebook.

Et c'est une métaphore de tout dans la vie moderne. Beaucoup de choses que nous faisions par interaction directe utilisent maintenant des logiciels dans leur travail. Nous ne définissons plus les alarmes manuellement - nous exécutons un programme qui nous réveillera. Au lieu de notes contenant des informations, nous envoyons des messages. Au lieu de rester dans la rue et de prendre un taxi, nous appellerons Uber ... peut-être qu'un jour nous pourrons le faire à Helsinki.

image

Réfléchissez maintenant à votre rôle de liaison dans les logiciels. Sur la diapositive, vous voyez l'entrepôt d'Amazon, qu'ils appellent le centre de cueillette, où les travailleurs marchent et remplissent des boîtes de choses.

image

En fait, ils n'ont aucune idée de ce qu'ils font exactement. Un bracelet est placé sur leur poignet, ce qui leur dit littéralement où aller et quoi prendre de quelle étagère. Ils n'ont même pas besoin de savoir exactement ce qu'ils prennent - ils scannent le code-barres et déposent l'article dans la boîte.

image

Ainsi, l'ensemble du processus se déroule via un logiciel informatique. Et si vous pensez à ces travailleurs de l'entrepôt Amazon, ils sont, en quelque sorte, le même périphérique de sortie pour un développeur de logiciels qui essaie d'écrire du code dans lequel la boîte sera emballée et envoyée. En fait, les développeurs de logiciels pouvaient rassembler tous les travailleurs sur la pelouse devant l'entrepôt, les construire en lettres géantes, écrivant ainsi leurs noms, et prendre une photo du drone. C'est ainsi que les programmeurs Amazon peuvent s'amuser. Et pour cela, ils peuvent tirer.

Ainsi, tous ces logiciels pour les entrepôts Amazon ont été créés par des développeurs qui ont un jour remarqué que les travailleurs bas ne pouvaient pas atteindre certaines étagères, ils ont donc dû arrêter de travailler, sortir les escaliers et monter sur l'étagère la plus haute, qui pourrait bien tomber. Par conséquent, les développeurs ont reçu une base de données du service du personnel sur la croissance de tous les collègues et ont changé leur code afin que seuls les travailleurs de haut niveau prennent les marchandises dans les étagères hautes. Et, si vous y réfléchissez, c'est vraiment cool de gérer tout le travail avec un logiciel et de ne pas laisser les gens interférer dans le processus. Après tout, le logiciel peut faire tant de choses par lui-même. Il peut avoir sa propre opinion, il peut aussi être un intermédiaire. Les gens le créent, et ma question est: qui sont-ils? Qui sont ces développeurs de logiciels qui façonnent notre avenir?

Permettez-moi de vous raconter une petite histoire hypothétique. Dites-moi si cela vous est arrivé ... Vous appelez votre meilleur ami et lui demandez s'il ira à la fête avec vous. Il trouve une excuse en disant qu'il est malade / occupé / fatigué / accablé de travail / même pas en ville. Eh bien, d'accord, quelques jours plus tard, vous allez sur Facebook et voyez qu'en fait, votre meilleur ami est allé à la fête, et même avec ... eh bien, je ne sais pas, votre ex-femme.

image


Eh bien, que s'est-il passé? Pour une raison quelconque, cela se produit de plus en plus sur ce réseau social. Au début, Facebook voulait juste vous montrer une sorte d'événement dans le monde, puis a décidé que ce serait plus intéressant, car votre ami et une autre personne de votre liste d'amis y participaient - il se trouve que c'est votre ex-femme. En tout cas, ce n'est pas l'événement le plus joyeux de la journée, et vous êtes triste encore six mois.

C'est le problème de la médiation. Contrairement à Amazon, Uber ou à votre logiciel d'alarme, Facebook n'est pas le lien entre vous et les objets du monde. Il agit comme un médiateur interne entre les gens, et c'est déjà important.

Un groupe de chercheurs universitaires a mené une étude auprès de personnes qui ont des pages Facebook. À mon avis, six cent quatre-vingt-neuf mille personnes ont participé à cette expérience.

image

Les chercheurs ont diffusé le fil d'actualité de ces personnes - certains n'ont reçu que de bonnes nouvelles, d'autres n'étaient que tristes et, à coup sûr, il y avait toujours un groupe témoin. La découverte était absolument incroyable. Ils ont constaté que le groupe, qui n'a reçu que de bonnes nouvelles, était heureux, ce qui ne peut pas être dit d'un groupe de personnes aux histoires tristes. Il serait difficile de penser que tout se terminerait comme ça, non? Ils l'ont appelé «infection comportementale» - un mot académique aussi arrogant. Cette recherche ne peut être qualifiée de approfondie, car ce sont précisément ces résultats qui étaient attendus.

image

Ce à quoi ils ne s'attendaient certainement pas, c'était le battage médiatique autour de l'histoire - beaucoup se plaignaient que l'étude était extrêmement contraire à l'éthique dans une tentative de manipuler les émotions des gens à leur insu. Il s'agit d'une violation des normes éthiques. Mais dites-moi, que fait Facebook? Que pensez-vous qu'ils ont fait toute la journée? Premièrement, ils ne vous montrent absolument pas tout ce qui arrive à vos amis. Il existe un algorithme écrit par des développeurs utilisant l'apprentissage automatique - c'est un ensemble de multiplication matricielle - qui essaie de vous montrer les nouvelles dans un ordre complètement aléatoire. Mais quel genre d'algorithme est-ce? Sur quoi est-il basé? À quelles fins Facebook essaie-t-il d'optimiser son travail? Que veulent-ils créer? Sur quoi sont-ils guidés lors du choix des actualités qui tombent dans votre flux?

Leur objectif n'est même pas d'aider la science et de détecter les infections comportementales, leur objectif est de vous faire continuer à utiliser Facebook. C’est pourquoi ils optimisent leur travail. Ils recherchent des choses qui vous inciteront à vous engager, et par «engagement», ils signifient un véritable intérêt, par exemple, lorsque vous envoyez des nouvelles à vos amis. C'est un signe de votre implication. Et maintenant, vous avez cet algorithme, dont le but est de prendre des décisions sur les nouvelles que le monde voit, sur quel type d'engagement, sur quoi les gens «cliqueront» et ce qui les intéressera.

Quand nous avons commencé à créer des réseaux sociaux ... je dis «nous», mais, bien sûr, ce n'était pas moi. Lorsque les industries de haute technologie ont commencé à créer Twitter et Facebook et autres, il y avait beaucoup de nouvelles sur la façon dont cela aiderait la démocratie, que les réseaux sociaux sont des outils de communication des révolutionnaires dans les États dictatoriaux du monde entier. Etc.

Tout cela était perçu comme très utopique, tout le monde pensait que Twitter et Facebook apporteraient de grands avantages au monde. Cela me rappelle comment, à une époque, la télévision était aussi une chose merveilleuse, comment les agriculteurs égyptiens la regardaient et apprenaient à cuire du pain, à ouvrir des boîtes de conserve et comment le monde entier allait devenir beaucoup mieux grâce aux capacités éducatives de la télévision. En fait, nous avons eu Lucille Ball, Louis Cay et d'autres bêtises.

Donc, je pense qu'environ la même chose s'est produite avec les réseaux sociaux: nous avons également commencé à espérer qu'ils amélioreraient notre communication de manière qualitative. En fait, nous avons des bulles. Bulles dans lesquelles les gens n'entendent qu'eux-mêmes et leur côté. Tout le monde en Amérique a été surpris des résultats de l'élection présidentielle. Et cela est arrivé à cause des algorithmes Twitter et Facebook, qui ont suscité des nouvelles avec une opinion similaire à vous. Le New York Times a en fait analysé cette situation pour la diffusion de fausses nouvelles, car en fait elle est importante.

image


Ce gars se promenait dans sa ville natale d'Austin quand il a vu un tas de bus. Il a également vu des manifestations ou entendu que des manifestations contre Donald Trump avaient lieu à Austin. Il y a donc eu un faux tweet selon lequel les manifestants anti-Trump ont été payés pour la manifestation, et tout cela à cause des bus sur lesquels ils sont arrivés. La photo du tweet était censée montrer les bus qui ont amené des manifestants du Mexique, par exemple. En fait, les bus étaient destinés à une conférence technologique, qui a toujours lieu à Austin. Mais l'histoire a commencé à vivre sa propre vie, car elle a excité certaines personnes. Ils parlaient de plus en plus d'elle, l'histoire atteignait le site Reddit, ou plutôt le subreddit sur Trump. Tout cela a fini par même le président élu des États-Unis raconter cette fausse histoire,qui n'avait aucune preuve. Et il n'a fallu qu'une seule personne avec un compte Twitter, qui a décidé que l'histoire pouvait être intéressante.

L'histoire ne s'est pas tellement répandue parce qu'elle était vraie ou importante. Cela est arrivé parce qu'elle a énervé les gens. Et la formule idéale pour partager des informations sur Twitter et Facebook est une combinaison de justice et de ressentiment chez les gens. Il y a une telle citation: "Un mensonge fera le tour de la moitié du monde pendant que la vérité enfile son pantalon", et, je pense, ce mensonge restera à jamais dans la mémoire des gens. Qu'il y avait vraiment des participants professionnels (travaillant de l'argent - environ traducteur) pour protester contre Trump. Même avant l'avènement des réseaux sociaux, lorsqu'un idiot avec un appareil photo pouvait diffuser de fausses nouvelles, il y avait une presse écrite. Beaucoup d'argent y était impliqué, ainsi qu'un sens des responsabilités envers le monde pour la publication des nouvelles. D'une certaine manière, cela peut être appelé l'éthique journalistique.

Je pense que maintenant beaucoup de gens travaillant dans les industries de haute technologie se demandent - peut-être que vous et moi avons accidentellement construit le ministère de la Vérité au lieu de créer un mécanisme utopique simplement parce que les réseaux sociaux fonctionnent comme ça? Tout ce dont je parle a été créé et activé grâce à la médiation du logiciel, car son travail principal est d'être un lien entre les gens. Qu'est-ce qu'un logiciel? Parlons-en un peu. Le logiciel est un tas de lignes de code. Qu'est-ce qu'une ligne de code? Une ligne de code est une encapsulation dont vous devez connaître deux choses.

Premièrement, cela fonctionnera à l'avenir, c'est réel. Et dans un sens, c'est l'avenir. C'est un tout petit peu de l'avenir, mais si vous mettez tout cela ensemble, l'avenir devient de plus en plus. Deuxièmement, une ligne de code représente de nombreuses décisions, tout un tas de décisions personnelles qu'un développeur de logiciels prend. Chaque mot, chaque ligne, chaque paramètre, chaque fonction, chaque appel de fonction, toutes ces décisions sont minuscules qu'un programmeur a prises et chaque décision qu'il a prise affectera l'avenir.

C'est pourquoi chez Stack Overflow, nous disons que les développeurs écrivent un script pour l'avenir. Vous vous asseyez et écrivez un script qui sera entièrement implémenté à l'avenir. Ce que vous devez aussi savoir sur le logiciel, c'est qu'il est devenu plus compliqué au cours des 30 dernières années. Quand j'ai commencé à programmer il y a 30 ans, tout était beaucoup plus simple. Il s'agit de VisiCalc, le logiciel le plus célèbre utilisé sur Apple II. La puce CPU Apple II, que je tiens maintenant dans ma main, semble beaucoup plus intelligente que l'ordinateur lui-même. Sur Apple II, vous pouvez ajouter, soustraire, éventuellement multiplier, mais partager quelque chose était une tâche impossible. Pour ce faire, il a fallu écrire une sorte de code utilisateur.

Quand j'ai commencé à comprendre Unix au collège en 1987, il suffisait de lire deux livres pas si épais - et vous saviez tout sur les logiciels. C'était très simple. Cela a changé que nous vivons maintenant dans un monde où nous sommes entourés d'Uber, Stripe, des systèmes de paiement, Google Maps et autres. Et maintenant, si vous créez un logiciel, vous pouvez très facilement profiter de ce qui existe déjà. Si vous souhaitez afficher une carte, vous pouvez recourir à l'aide de Google Maps, qui ouvrira la carte en un millionième de seconde. Si vous voulez appeler une voiture, eh bien, pas à Helsinki, bien sûr, vous pouvez utiliser Uber et leur interface - la voiture arrivera avec environ 1,5 ligne de code. Si vous souhaitez effectuer un paiement, vous utiliserez l'interface Stripe. Et aussi, si vous voulez combiner ces choses, vous pouvez créer du code très complexe. Le code,composé de dix lignes. Assez cool, hein?

Google Maps, ou plutôt des satellites dans l'espace, a pris une photo haute résolution de notre planète, et vous pouvez l'utiliser dans votre propre code avec une seule ligne. Vous pouvez appeler un véhicule avec une personne au volant, et je ne parlerai même pas du nombre de lignes de code dans la voiture. Un système de traitement des paiements qui couvre, je ne sais même pas, 200 pays et 9 millions (et c'est le nombre réel) de lignes de code qui fait partie du système mondial de traitement des paiements, vous pouvez également appeler quelques lignes de code. Environ le même montant est nécessaire pour terminer le processus de division sur l'Apple II. C'est ainsi que les choses se sont compliquées.

image

mais qu'est ce que ça veut dire? Et le fait que parfois quelque chose peut mal tourner et que le système devient difficile à déboguer. Supposons que dans votre application, vous ayez placé une carte Google et que vous n'ayez besoin que d'une seule ligne de code ... Je l'appellerais ainsi parce que je vois quelques points-virgules, ce sont deux lignes de code. Ainsi, vous mettez la carte dans votre code et constatez que lorsque l'utilisateur fait défiler la molette de la souris, la carte augmente et diminue. Vous ne voulez pas que cela se produise et essayez de désactiver la molette de défilement. Et vous n'y arrivez pas, car vous ne comprenez pas comment Google Maps fonctionne, car vous venez de copier une partie du code à partir d'Internet et de le coller dans votre code. De plus, vous ne rencontrez pas de correcteur d'échelle et vous pensez que si vous le désactivez, cela résoudra votre problème. Mais ça ne ressort plus.

image

Alors que faire? Vous ne comprenez pas non plus le fonctionnement de Google Maps. Vous pouvez suivre les instructions du livre - commandez-le sur Amazon, attendez la livraison, lisez les 465 pages.
Vous commencerez peut-être à comprendre la structure de la plateforme et à trouver la réponse à votre question. Et vous pouvez écrire dans le moteur de recherche «désactiver la molette de défilement sur Google maps».

image

Vous verrez peut-être que cette question vous a été posée. Sinon, vous pouvez le demander vous-même en ligne et obtenir une solution à votre problème.

image

Par exemple, sur Stack Overflow, c'est un site que Jeff Atwood et moi avons lancé en 2008.

Donc, quelques choses que vous devez savoir sur notre site. À l'heure actuelle, 13 millions de questions ont été posées sur Stack Overflow - et cela ne concerne que la programmation, et il y a 150 autres sites sur d'autres sujets. 20 millions de réponses ont été écrites par des programmeurs du monde entier. Nous avons 113 millions de pages vues uniques et environ 781 millions de pages vues mensuellement. Il s'agit d'un réseau absolument gigantesque.

Ce qui nous distingue un peu des autres sites, c'est le vote. Lorsque vous voyez une réponse, vous pouvez voter pour ou contre, selon qu'elle vous convient.

image

Et déjà cette fonctionnalité fait de Stack Overflow une ressource plus puissante pour les développeurs qui résolvent leurs problèmes. Le vote est directement lié à la réputation. Si votre réponse est promue, votre réputation augmente également, ce qui est affiché dans votre profil.

image

Nous suivons également le nombre de personnes que vous avez aidées.

Et cela nous amène à la question suivante qu'ils me posent toujours - comment faire des affaires et comment gagner de l'argent. Nous recherchons d'excellents programmeurs qui font un travail formidable sur le site et trouvent un excellent travail pour eux. Ainsi, votre profil Stack Overflow vous permet désormais non seulement d'afficher vos réalisations sur le site, mais également de créer votre propre histoire de développeur.

Il indique tout ce sur quoi vous travaillez, tout ce que vous savez et ne savez pas. Et, si vous modifiez les paramètres, vous pouvez l'ouvrir pour certains employeurs qui vous embaucheront via le talent Stack Overflow.

Permettez-moi donc de résumer. Cela peut sembler étrange, mais le monde est devenu tel que tout y est déterminé par un logiciel - même des choses aussi simples qu'un réveil ou un appel de taxi. Et il semble que ce ne soit pas du tout important. Mais cela devient important lorsque les élections présidentielles se produisent également à l'aide d'un logiciel. Toutes les décisions que les développeurs prennent sont incroyablement importantes. Et il est important pour nous de comprendre qui sont ces développeurs de logiciels. Nous devons les percevoir comme des philosophes-poètes de notre temps. Et c'est pourquoi nous sommes tellement obsédés par eux sur Stack Overflow, notre mission est donc de les aider à partager leurs connaissances et à améliorer leur niveau.

Merci beaucoup!




image
Apprenez en détail comment obtenir une profession recherchée à partir de zéro ou passer au niveau supérieur en compétences et en salaire en suivant les cours en ligne de SkillFactory:




All Articles