Comment pomper votre carrière via GitHub

GitHub est la plus grande bibliothèque créée par des développeurs pour des développeurs. Le charme principal de l'hébergement réside dans son idéologie: donner est aussi simple que recevoir. Ici, vous pouvez trouver une variété de projets informatiques, à la fois juridiques et pas tout à fait. En utilisant l'ouverture, quelqu'un fouille la source à des fins égoïstes - puis utilise ses vulnérabilités pour un chantage banal, et quelqu'un avec l'aide de référentiels pompe ses compétences professionnelles. Voyons comment ne pas creuser dans des millions de sources et quels avantages vous pouvez obtenir.

Le fait que la connaissance n'appartient pas seulement à un cercle restreint d'élus est également reconnu par les sociétés transnationales. Sur la base d'un code source, plusieurs nouveaux émergent - c'est ainsi que les technologies se développent, que le monde entier commence finalement à utiliser. Des géants tels que Apple, Google, Facebook, Microsoft - ont publié et continuent de mettre à jour constamment leurs référentiels sur GitHub. Eh bien, même si le département américain de la Défense démarre un stockage sur l'hébergement https://github.com/Code-dot-mil/code.mil avec le slogan "Aidez-nous à devenir meilleurs". Et chaque nouvelle solution utile proposée est une autre leçon apprise dans la carrière d'un développeur.

Le format des projets open source est bon en ce qu'il permet aux participants de communiquer de la même manière que nous le faisons sur les réseaux sociaux. Rappelez-vous le principe de la compétition! Par exemple, quelqu'un publie une option pour implémenter une idée. D'autres participants, intéressés ou désireux de montrer des offres de piratage. En conséquence, la communauté offre aux auteurs les meilleures solutions.

Par conséquent, afin de pratiquer et de tester vos capacités, il vaut la peine de lancer périodiquement des requêtes de tirage - propositions de modifications de code - au développeur qui ouvre le référentiel que vous aimez. Le propriétaire peut à son tour rejeter ou accepter la demande. Ce sera une évaluation du travail effectué. De plus - de cette façon, il est possible de comprendre si le projet doit être amélioré.

En novembre 2018, GitHub a signalé que le nombre de référentiels créés sur l'hébergement dépassait les 100 millions . Afin de ne pas vous perdre dans cette variété et d'apprendre à trouver les informations nécessaires, tout d'abord, formulez précisément la requête dans la barre de recherche. Par exemple, si vous voulez savoir comment rendre le système plus indépendant dans le développement de solutions, écrivez simplement: «machine learning».

Creuser dans des référentiels en vaut vraiment la peine. Au moins afin de se tenir au courant des dernières tendances et comprendre pourquoi celles-ci ou d'autres bibliothèques ou approches deviennent populaires. Il est clair que chaque spécialisation est un klondike de connaissances distinct. Mais il y a des sections auxquelles chaque développeur doit prêter attention. Maintenant en haut se trouvent le JavaScript frontal et principal, la création de logiciels d'apprentissage automatique et d'applications mobiles. Parmi les meilleurs projets open source - ceux auxquels participent le plus grand nombre de développeurs -, ce qui facilite la vie du programmeur en éditant du code, l'automatisation, la conteneurisation ou la documentation. Parmi eux, Visual Studio Code (19 000 contributeurs), React Native (10 000) et TensorFlow (9,3 milliers).

Sur GitHub, vous pouvez trouver des implémentations intéressantes, ou plutôt - belles - de solutions cryptographiques. De plus, l'hébergement aide à comprendre comment travailler avec Solidity - des guides d'utilisation et une documentation détaillée de cette langue sont également disponibles en russe . De plus, il était utile de se familiariser avec des exemples de contrats intelligents pour comprendre à quoi cela ressemble dans la pratique. Après avoir «regardé» quelque chose chez vos collègues, et inspiré par plusieurs projets, votre cerveau pourra probablement donner naissance à sa propre idée originale.

Les professeurs des écoles HackerU ont sélectionné des codes sources, dont l'étude affectera positivement votre karma:
https://github.com/infoslack/awesome-web-hacking - Ce référentiel est destiné à ceux qui veulent comprendre la sécurité Web, mais ne savent pas par où commencer. Vous trouverez ici non seulement des liens vers de la documentation, des laboratoires et des livres sur le sujet, mais également un ensemble décent d'outils: méthodologie d'audit des applications, pentesters et scanners de vulnérabilité. Le matériel vous présentera les types courants d'attaques contre les systèmes Web, tels que XSS, injection SQL, usurpation DNS.

https://github.com/FabioBaroni/awesome-exploit-development/blob/master/README.md - Bibliothèque pour le développement d'exploits. Les ressources collectées contiennent une analyse des vulnérabilités binaires, ainsi que des conseils sur la façon de trouver les faiblesses des logiciels et de sécuriser le code. Par exemple, pour éviter un cauchemar pour chaque programmeur - débordement de tampon. Matériel indispensable pour les professionnels de la sécurité. En effet, afin de construire un mur imprenable, vous devez savoir quelles échappatoires les attaquants utilisaient auparavant.

https://github.com/nebgnahz/awesome-iot-hacks - En fait, il s'agit d'une collection de hacks sur tout ce qui relève de la définition d '«Internet des objets». Des histoires sur la facilité avec laquelle il est possible de casser presque tout dans le monde moderne: d'un bracelet et d'un haut-parleur portable à une voiture et une «maison intelligente». Vous trouverez ici des descriptions d'attaques Bluetooth qui se sont répandues en raison de la popularité croissante des appareils IoT portables. Soit dit en passant, pour les fans de ces gadgets, les pirates peuvent les utiliser pour collecter de bons dossiers sur les propriétaires. Les auteurs du référentiel espèrent qu'il servira pour le bien, et les fabricants d'équipements, s'étant familiarisés avec le matériel, commenceront à éliminer les vulnérabilités.

https://github.com/sobolevn/awesome-cryptography - Une sélection de ressources pour travailler avec la cryptographie et l'organisation des applications. Indispensable pour ceux qui travaillent constamment avec différents langages de programmation. Des blogs, des études, des guides et des instructions vous diront comment créer correctement l'accès à vos propres ressources et enseigner l'art d'écrire la logique de chiffrement originale dans les projets. Il sera utile de mettre en signet et de vous familiariser, même si ce n'est pas exactement votre spécialité. La connaissance des bases de la cryptographie ne sera superflue pour personne.

Soit dit en passant, parcourir les référentiels sur GitHub sera intéressant et passionnant non seulement pour les «fans» et les débutants. On sait que les enfants absorbent mieux les nouvelles informations de manière ludique. Je pense que les développeurs ne font pas exception. La preuve en est cette quête d'apprentissage de JavaScript - https://alexnisnevich.imtqy.com/untrusted/ - réalisée sous la forme d'un jeu vidéo.

Le profil et l'activité du développeur sur GitHub sont devenus aujourd'hui le résumé le plus visuel. Et dans 90% des cas, les employeurs potentiels regarderont vos étoiles et le nombre de followers sur l'hébergement. Il y a eu des cas où les programmeurs se sont vu refuser la participation au hackathon en raison d'une page vierge sur GitHub.

Mais ne considérez pas ce serveur comme une vache sacrée. Après que Microsoft a acheté le service en juillet, des dizaines de milliers de développeurs particulièrement superstitieux ont transféré des projets vers d'autres services d'hébergement: GitLab, BitBucket, SourceForge et autres.

Source: https://habr.com/ru/post/fr432180/


All Articles