Code Monkey home page Code Monkey logo

hexlet-handbook's Introduction

Hexlet Handbook

Этот документ постоянно развивается и дополняется. Он отражает ценности и цели, с которыми мы согласны, поэтому обсуждения, предложения и изменения приветствуются.

Не стесняйтесь напоминать своим коллегам о содержании этого хендбука.

Внешний мир

Видение

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

Миссия

Мы считаем, что в обучении программированию слишком много подходов, материалов и людей, которые ухудшают индустрию, воспитывая поколения неправильных специалистов. Наша миссия — принести в ИТ-образовательную среду фундаментальные знания и навыки, абстрактное мышление и целостное понимание компьютерных систем с помощью новых, нетипичных подходов.

Бренд

  • Хе́кслет пишется с большой буквы. Склоняется (на Хе́кслете, в Хе́кслет, у Хе́кслета и т.д.), сохраняя ударение.
  • В русском тексте всегда Хекслет, в английском — Hexlet.
  • Логотип в векторном и PNG форматах лежит в этом репозитории.
  • Формальное название компании — Hexlet Ltd.
  • Адрес компании: Hexlet Ltd., Puolikkotie 8, 02230 Espoo, Finland

Поддержка

Большая часть наших пользователей — новички. Кроме нашей основной задачи "научить их" есть задача "не напугать" и оставить у себя после первых трудностей. Постарайтесь встать на место новичка и дать ему такой ответ, который родит эмоцию "как же круто, что я нашел Хекслет!". Для этого нужно общаться в большей степени как человек с человеком, и в меньшей — как сотрудник с клиентом. Булочник в булочной, а не клерк в банке. Эмпатия — основа хорошей поддержки.

  1. Всегда действуйте из допущения, что пользователь хочет как лучше. Даже когда он ругается, хамит или злится, помните: он реагирует на продукт, услугу и опыт, а не на вас лично. Он хочет получить что-то, но у него не получается, а канал связи с нами — зачастую единственный способ вылить все эти эмоции.
  2. Пользователи — такие же люди, иногда у них плохие дни, иногда их все бесит.
  3. Общайтесь с пользователями от своего лица, а не от лица абстрактной компании. Например, "спасибо, поправил упражнение" вместо "поправили".
  4. Обращайтесь к пользователю по имени, по возможности, но не увлекайтесь. Дейл Карнеги — лох, не нужно слушать его рекомендации и повторять имя человека каждый раз.
  5. Проявите заботу. Не обязательно делать это всегда, но если чувствуете боль — покажите, что вы её чувствуете.
  6. Клиент не всегда прав, но другие клиенты об этом должны догадываться косвенно. Когда клиент ведет себя плохо, оскорбляет людей и нарушает правила, другие пользователи должны видеть "вот мудак, а ребята молодцы, я бы не выдержал".
  7. Реагируйте на все аспекты вопроса или комментария пользователя. Не пропускайте вопросы или фразы, даже если они были сумбурно собраны в одно сообщение.
  8. Благодарите пользователя за фидбек, когда тот жалуется или наоборот хвалит.

Что почитать:

Социальные сети

  1. Не стесняйтесь обращаться в социальных сетях от лица члена команды Хекслета. Используйте правила из раздела "Поддержка".
  2. По возможности поддерживайте лайками и плюсами публикации аккаунтов Хекслета и аккаунтов других членов команды, когда они касаются Хекслета.

Внутренний мир

Работа и отдых

Принципы работы в нашей команде основаны на ROWE и Ресурсе. Главные принципы: результат вместо часов, свобода вместо расписания, уведомление вместо разрешения, ответственность вместо политики.

  1. Нет рабочих часов и расписания. За исключением случаев, когда какая-то совместная работа требует присутствия в реальном времени, типа созвонов или ведения проектов.
  2. Работайте сколько нужно, отдыхайте сколько нужно. Если чувствуете, что нужна подзарядка, то не нужно ждать какого-то магического отпуска или просить разрешения уйти в отгул. Просто предупреждайте и делайте то, что считаете нужным.
  3. Никакой вины и осуждения. Никому нет дела, кто сколько времени тратит и как планирует свой день.

Совместная работа

  1. Пишите друг другу такие сообщения (письма, комментарии, тикеты, и т.д.), которые хотели бы получать сами.
  2. Не стесняйтесь благодарить и извиняться.
  3. Пишите сообщения с контекстом, не заставляйте коллег расшифровывать и додумывать контекст.
  4. Смело просите помощи у коллег.
  5. Вы имеете право не соглашаться с мнением коллег. Не бойтесь высказывать свое мнение.
  6. Вы можете обратиться к CEO по любой проблеме в любое время, даже когда тот на отдыхе.

Daily meeting

Каждый (свой) рабочий день первым делом нужно написать в чат #daily сообщение с тремя пунктами:

1. Что ты выполнил в предыдущий рабочий день. Конкретные выполненные задачи в последний рабочий день или период. Можно упомянуть, что из запланированного не успел. Про выходные писать не нужно ("вчера отдыхал").

2. Что планируешь выполнить сегодня. Конкретные задачи с контектом, чтобы остальным было понятно.

Хорошие примеры:

  • доделываю первый проект по php
  • делаю месячный финансовый отчет и отправляю бухгалтеру
  • импорт курса "http" в репозиторий

Плохие примеры:

  • правлю баги
  • выполняю задачи
  • работаю работу
  • делаю текущие тикеты в трелло

3. Если есть — что может помешать или заблокировать выполнение, в том числе временно.

Примеры:

  • после обеда нужно уехать по делам, продолжу вечером
  • жду коммита от Иннокентия, не могу продолжить без него
  • нужна помощь, не могу разобраться с Х

Также сообщайте в #daily о своих планах на отдых, отъезд, оффлайн и т.п.

Безопасность

  1. Для всех сервисов и сайтов, использующихся для работы, необходимо использовать корпоративную почту.
  2. Для всех аккаунтов нужно обязательно включить двухфакторную авторизацию. Используйте authy, а не Google Auth, потому что Google Auth не синхронизирует аккаунты, и при потере девайса можно навсегда потерять доступы.

Чат

  1. Старайтесь не ломать еще не начатый тред. Если кто-то задал вопрос и ещё не получил отклика, то ваше новое сообщение в том же канале может просто закопать тот вопрос.
  2. Когда вставляете цитату из другого места (например, из другого чата или сообщества), явно укажите, где она заканчивается, а где начинается ваша собственная реплика.

Тикеты

  1. Создавайте тикеты такими, чтобы их можно было понять через несколько месяцев, потому что зачастую так и случается.
  2. Формат заголовка тикета: проект: задача [имя ответственного]. Например, hexlet: вывести статистику в футере [Кирилл]. Ответственный — это owner задачи. Все причастные к выполнению задачи отмечаются как member'ы.
  3. Не вставляйте в заголовки тикетов ссылки. Ссылки и подробные описания — в теле или комментариях.
  4. Используйте лейблы (теги).

Выполнение

  1. Перед тем, как начать работу над новым тикетом, проверьте актуальность (по необходимости — обсудите с коллегами). Часто бывает так, что тикет просто перестал иметь смысл или был реализован в рамках других изменений.
  2. При равном уровне приоритета задач первыми следует решать те из них, в которые вовлечены другие члены команды.
  3. Не забывайте о двуязычности. Любые визуальные изменения проверяйте в обоих языковых версиях и добавляйте переводы в обе версии. Не допускайте ошибок "translation missing".
  4. Помните про адаптивность интерфейсов. Проверьте свои изменения на разных ширинах экрана.
  5. Помните про SEO и SMM. Визуальные изменения на сайте должны соответствовать правилам разметки для поисковиков и OG-graph для социальных сетей.

Тикеты в Development

  1. Формат заголовка тикета: проект: задача [имя ответственного]. Например, hexlet: вывести статистику в футере [Кирилл]. Ответственный — это owner задачи. Все причастные к выполнению задачи отмечаются как member'ы.

Тикеты в Content

  1. Формат заголовка тикета: <сущность>: что сделать. Например, js-async/intro: добавил иллюстрацию в readme.

hexlet-handbook's People

Contributors

plugin73 avatar kelion avatar dstarcev avatar krigar1184 avatar

Watchers

James Cloos avatar Vadim A. Kazantsev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.