Как да използваме значките на GitHub, за да спрем да се чувстваме като нуб

Impostor Syndrome е реален и засяга нови разработчици. Ние стигаме докрай чрез урок, bootcamp или дори степен, но все още се притесняваме да споделяме нашия код. Страхуваме се от отрицателна обратна връзка за качеството на нашия код. Никой не страда повече от това от самоуки разработчици. Тъй като нямаме никакъв „реален“ или „официален“ опит или обучение, ние считаме, че нашият код е по-нисък.

Бях там преди няколко месеца. Работих чрез тестовата разработка на Хари Пърсивал с Python . E акар че бях след заедно с правото на урока, аз бях стеснителен за споделянето на моя код. Въпреки че приложението ми работеше според очакванията, не исках да споделям напредъка си. Не исках някой да ме извика поради някаква очевидна грешка, за която не бях забравил. Исках други хора да се радват на продукта ми, но не исках да виждат колко съм беден на разработчик.

След като си взех почивка от собствения си проект, започнах да разглеждам някои други проекти в GitHub. Намерих няколко, които имаха малко изображение на техните страници README.

Сега, като нуб, какъвто бях, си помислих, че това е просто изображение, което Линус Торвалдс ви е предал на флаш устройство, когато сте завършили училище „Real Developer“. Нито веднъж не ми е хрумнало да щракна върху него. Мислех, че това е статично изображение, хоствано някъде в хранилището. По-късно попаднах на проект, който показваше, че компилацията се проваля.

Защо някой би отделил време да добави изображение, което казва, че компилацията му не преминава? Защо да полагаме усилия да свалим другото изображение, да поставим това? Изображение, в което се казва, че вашият проект е счупен и го показвате, за да го види светът? От чисто любопитство извадих суровия формат за README. Видях този код:

[![Build Status](//travis-ci.com/username/projectname.svg?branch=master)](//travis-ci.com/username/projectname)

Бях достатъчно разбиран с намаление, за да призная, че това е връзка, която може да се кликне. Затова щракнах бутона и ме отведе до Травис-КИ. Изведнъж ми се струваше логично. Този бутон не е актуализиран от разработчика на проекта, Travis-CI го актуализира. Това е динамичен бутон.

Първата ми значка

И така, след като разбрах за значката за изграждане от Travis-CI, трябваше да го взема за моя проект. В крайна сметка целият ми проект беше за писане и използване на тестове. Така че защо да не разполагате с нещо, което да ги стартира автоматично?

Затова настроих Travis-CI да изпълнява моите модулни тестове, когато натиснах промените в GitHub. Точно в горната част на страницата, където Травис-CI ги управлява, има значката. Щракнах го и получих намалението. Добавих го към моя README. Преминах към страницата на проекта в GitHub и VOILA! Имаше първата ми значка. Бях закачен!

Ловът

Радвах се, че значката беше ясен знак за текущото състояние на моя проект. Исках да науча повече, затова тръгнах на лов за други значки. Друга често срещана значка, която намерих, беше покритие на кода. Докладът за покритието може да бъде изпратен от Travis-CI до инструмент, наречен CodeCov. Можете да получите значка, показваща покритието на вашите тестове, което съответства на това колко добре е тествано приложението ви.

Намерих и значки за лиценз и имаше смисъл да имам значка за лиценз само ако имах лиценз. Затова избрах лиценз и го добавих към репото. Получаването на значката за това отне бързо Бързо търсене в Google и открих тази същност с всички често срещани значки за лиценз.

Изхождайки от фона на сигурността в армията, знам, че повечето уязвимости идват от остарял софтуер. Като нов разработчик знам, че това важи и за софтуера, от който зависи вашият софтуер. Чух за PyUp чрез подкаста Talk Python to Me на Майкъл Кенеди . Когато отидох до сайта, видях думите, които започнах да обичам да виждам, „Безплатно за отворен код“. На лов за нови значки имах късмет. Разбира се, те предоставят значка, така че, разбира се, я добавям към README.

Накрая открих, че може да имате значка за стил. Бях се бъркал с Блек и преди и намерих пример за значка за стил и знаех, че трябва да го имам. Заради собствената си почтеност исках да гарантирам, че кодът ми винаги отговаря на стила на Блек. Разбрах за предварително ангажиране, което бих могъл да използвам, за да форматирам кода си, дори преди да го ангажирам. След като се потопих в дупката за предварително ангажиране на заек (която също изпълнява кода ми срещу бандит за сигурност и сортира вноса и изискванията ми), почувствах увереност, добавяйки черната значка към README.

Крайният резултат

Първият резултат от ловните значки е, че имам по-качествен проект . Добавих лиценз към моя проект, осигурих зависимостите си да останат актуални и поддържах стила на моя проект в съответствие, защото исках значките.

По-забележително е, че съм по-уверен в моя проект. Мога да говоря за това, знаейки, че в него няма никакви зеещи дупки. Знам, че е много по-малко вероятно да получа обратна връзка относно моята безотговорност по отношение на сигурността или липсата на съответствие със стила.

Казано по-просто, аз се чувствам по-добре с моя код, защото имам тези значки на GitHub.