Рубрики
Без рубрики

Поддержка команды для обмена знаниями в области программирования с Сенсеем

Мы можем кодировать наши знания в рецептах, но нам нужно делиться ими как команда, чтобы получить пользу. С тегами программирование, java, jetbrains, разработка.

TL DR; Когда один человек создает рецепт для улучшения качества своего кода или производительности, все члены команды могут извлечь выгоду из совместного использования кулинарных книг. Sensei поддерживает несколько механизмов обмена кулинарными книгами, например, общие папки, Github и загрузки по HTTP.

Плагин Secure Code Warrior Sensei позволяет любому создать рецепт, соответствующий шаблонам кодирования низкого качества, и исправить их, чтобы они были более качественными. Одна вещь, которую, как мы знали, нам нужно было решить, заключалась в том, как поделиться этими рецептами в команде, чтобы знания, закодированные в рецепте, были переданы.

Sensei предоставляет ряд механизмов для обмена кулинарными книгами:

  • Храните Кулинарные книги в проекте под контролем версий
  • Хранение кулинарных книг в общей папке
  • Храните кулинарные книги в Github
  • Архивированные файлы через HTTP(ы)

Делясь кулинарными книгами, Сенсей помогает командам сотрудничать в обмене знаниями. Сотрудничество помогает улучшить коммуникацию и внедрить согласованные подходы к качеству кода.

Например, совместное использование кулинарной книги позволяет:

  • члены команды могут делиться друг с другом полезными рецептами.
  • команда руководит кодификацией согласованных методов кодирования для младшего персонала.
    • Для выявления распространенных нарушений с быстрым исправлением согласованной версии.
  • усиление межкомандного сотрудничества.
    • Команда AppSec может создавать рецепты, чтобы выделить проблему в коде, а команда разработчиков может написать быстрое исправление.

В следующих нескольких разделах объясняется, как реализовать каждый из механизмов совместного использования.

Храните Кулинарные книги в проекте под контролем версий

Проект .сенсей папка – это параметр по умолчанию при создании файла кулинарной книги.

  • `проект://.sensei’

Все кулинарные книги и рецепты будут храниться в папке .sense i в вашем проекте.

Самый простой подход к совместному использованию – добавить проект .sensei папка для управления версиями.

Затем папкой .sensei можно управлять, как и любым другим артефактом общего кода, связанным с проектом. Кулинарные книги хранятся в виде конфигурации YAML, что позволяет легко объединять их во время любого процесса фиксации и проверки.

Это подход, принятый для публичного sensei-blog-examples проекта.

Это подход, принятый для публичного || sensei-blog-examples || проекта.

Папка .sensei содержит кулинарную книгу со всеми рецептами, и они доступны любому, кто клонирует репозиторий.

Храните Кулинарные книги в любой папке

Команды также могут использовать кулинарные книги, хранящиеся в центральных местах.

Сохранение кулинарной книги в любую папку с общими правами доступа на запись позволит всей команде обновлять рецепты и импортировать их в любой проект, над которым они работают.

Местоположение будет задано в соответствии с путем к каталогу.

Храните рецепты в Github

Сенсей также может получить доступ к рецептам, которые хранятся в репозитории Github. Поддерживаются как частные, так и общедоступные репозитории.

Github через SSH

Доступ к репозиторию SSH настраивается с использованием следующего синтаксиса для Location

git@github.com:SecureCodeWarrior/acookbook.git

Чтобы это сработало, репозиторий должен содержать содержимое папки cookbook.

например, наша Поваренная книга Basic Protection использует этот подход и может быть добавлена как “Локально настроенная поваренная книга” с использованием местоположения git@github.com:SecureCodeWarrior/cookbook-basic-protection- set.git

Также можно настроить ветку и подпапку для кулинарной книги, например, в master ветке в cookbook вложенная папка

напр.

  • git@github.com:SecureCodeWarrior/sensei-blog-examples.git/master/.sensei

Ключ SSH должен быть настроен для частных репозиториев.

И ключ не должен иметь кодовой фразы.

Github через HTTPS

Также возможен доступ к общедоступным репозиториям по протоколу HTTPS, и используется тот же синтаксис repo.git|branch|folder напр.

напр.

или для Поваренной книги по базовой защите

для Поваренной книги по базовой защите

Архивируется по протоколу HTTP(ов)

Сенсей также может получить доступ к кулинарным книгам, которые хранятся в архиве, через HTTP или HTTPS.

напр.

http://localhost:8000/rules.sensei.zip

Zip-файл кулинарной книги должен содержать содержимое папки кулинарной книги, например, файл rules.sensei .

Краткое изложение общего доступа

Sensei поддерживает использование нескольких кулинарных книг, чтобы отдельный программист мог иметь рецепты, которые поддерживают его собственное обучение и производительность.

Что еще более важно, мы знаем, что команды работают наиболее эффективно, когда делятся знаниями. Наличие общих репозиториев команды, например, для конкретного проекта, или конкретной библиотеки, или для общего набора шаблонов миграции, может помочь повысить производительность команды и систематизировать опыт команды.

При совместном использовании кулинарной книги несколько команд могут использовать одну и ту же кулинарную книгу, что также может улучшить сотрудничество между командами из разных дисциплин например, AppSec для разработки.

С четырьмя доступными основными механизмами обмена, Сенсей, надеюсь, имеет по крайней мере один подход, который вы можете использовать для расширения сотрудничества в области обмена знаниями.

Вы можете установить Sensei из IntelliJ, используя “Настройки \ Плагины” (Mac) или “Настройки \ Плагины” (Windows), затем просто найдите “безопасный код sensei” (или найдите его на Рынок JetBrains здесь )

Все сообщения в блоге Sensei, код и рецепты находятся на Github в:

Оригинал: “https://dev.to/securecodewarrior/team-support-for-sharing-programming-knowledge-with-sensei-nb7”