Что можно улучшить?
Anonymous Poll
35%
Добавить больше коммитов на ревью
49%
Проводить ревью одновременно для нескольких языков
32%
Проводить чаще ревью сессии
5%
Поменять время проведения код-ревью сессий
10%
Изменить продолжительность код-ревью сессий
18%
Добавить большие коммиты на ревью (500+ строчек)
27%
Все и так хорошо
Как часто стоит проводить код-ревью сессии?
Anonymous Poll
36%
Два раза в неделю
55%
Раз в неделю
7%
Два раза в месяц
3%
Раз в месяц
Крутые новости! 🔥
📊 Мы вводим свою рейтиноговую систему.
Ревьюеры теперь смогут видеть свой рейтинг и свое место в общем списке. В таблицу ревьюеры будут попадать автоматически после того, как оставят свой первый комментарий.
🧮 Как будет считаться рейтинг?
Рейтинг = кол-во сессий + кол-во коммитов + кол-во комментариев + кол-во лайков - кол-во дизлайков + (отмечен админов x 5).
Таким образом, если вы приняли участие в 2 сессиях, оставили ревью на 5 коммитов, написали 12 комментариев, получили 25 лайков и 3 дизлайка и были выделены 2 раза админом канала, то ваш рейтинг будет равен 51.
2 + 5 + 12 + 25 - 3 + (2 x 5) = 51
🏆 Что дает рейтинг?
Мы сделаем общий призовой фонд, в который я раз в месяц буду закидывать 25$, и каждый из вас сможет также пополнять этот фонд в течение месяца. В конце месяца ревьюер, занявший первое место в ежемесячном рейтинге, заберет призовой фонд.
Ежемесячный рейтинг будет обнуляться в начале каждого месяца.
Чем выше будет ежемесячный фонд, тем лучше будет качество ревью.
📊 Мы вводим свою рейтиноговую систему.
Ревьюеры теперь смогут видеть свой рейтинг и свое место в общем списке. В таблицу ревьюеры будут попадать автоматически после того, как оставят свой первый комментарий.
🧮 Как будет считаться рейтинг?
Рейтинг = кол-во сессий + кол-во коммитов + кол-во комментариев + кол-во лайков - кол-во дизлайков + (отмечен админов x 5).
Таким образом, если вы приняли участие в 2 сессиях, оставили ревью на 5 коммитов, написали 12 комментариев, получили 25 лайков и 3 дизлайка и были выделены 2 раза админом канала, то ваш рейтинг будет равен 51.
2 + 5 + 12 + 25 - 3 + (2 x 5) = 51
🏆 Что дает рейтинг?
Мы сделаем общий призовой фонд, в который я раз в месяц буду закидывать 25$, и каждый из вас сможет также пополнять этот фонд в течение месяца. В конце месяца ревьюер, занявший первое место в ежемесячном рейтинге, заберет призовой фонд.
Ежемесячный рейтинг будет обнуляться в начале каждого месяца.
Чем выше будет ежемесячный фонд, тем лучше будет качество ревью.
Каким лучше сделать ежемесячный приз?
Anonymous Poll
42%
Символический приз (сертификат/стикеры/медалька и тд.) 🎖
41%
Денежный приз (25$) 💰
17%
Отменить ежемесячный приз 🚫
Мы ищем код на ревью!💡
Друзья, теперь у вас появилась отличная возможность анонимно прислать свой код на ревью.
Мы добавили специальную форму, на которой вы можете оставлять свои заявки на ревью кода. В форме вы можете выбрать один из двух способов отправки репозитория на ревью:
1. Публично 🧑- мы выкладываем ссылку на коммит вашего репозитория на гитхабе. Все участники ревью сессии смогут видеть автора кода.
2. Анонимно 🦸♂️ - мы выкладываем ваш код с акканута CodeReview на гитхабе. Участники не смогут увидеть автора этого кода.
Для следующей код-ревью сессии мы выберем несколько языков, чтобы всем было интересно!
Присылайте все, что есть! 🕺
Друзья, теперь у вас появилась отличная возможность анонимно прислать свой код на ревью.
Мы добавили специальную форму, на которой вы можете оставлять свои заявки на ревью кода. В форме вы можете выбрать один из двух способов отправки репозитория на ревью:
1. Публично 🧑- мы выкладываем ссылку на коммит вашего репозитория на гитхабе. Все участники ревью сессии смогут видеть автора кода.
2. Анонимно 🦸♂️ - мы выкладываем ваш код с акканута CodeReview на гитхабе. Участники не смогут увидеть автора этого кода.
Для следующей код-ревью сессии мы выберем несколько языков, чтобы всем было интересно!
Присылайте все, что есть! 🕺
Плохие новости! 😔
❗️Около 500 человек уже увидело последний пост, через который каждый может оставить заявку на ревью кода. Проблема в том, что из этих 500 человек, свой код прислало лишь 2 разработчика. Это около 0.4% от всех, кто увидел этот пост. Это даже меньше, чем на первую ревью сессию, несмотря на то, что мы добавили возможность анонимно прислать свой код, а также увидели, что первая код-ревью сессия показала себя с хорошой стороны.
👉 Ситуация, мягко говоря, не радужная, и чтобы у нас была возможность как-то на это повлиять, нам нужно точно понять, почему люди не присылают свои коммиты.
⬇️ Внизу вы найдете опросник, который поможет нам понять точную картину, из-за чего у нас так мало коммитов. Если вы ревьюер, который хочет помогать другим, то выберете «Мне не нужен фидбэк, я хочу ревьюить.», а если же вы хотите получить фидбэк, но еще ничего не прислали, то укажите почему.
❗️Около 500 человек уже увидело последний пост, через который каждый может оставить заявку на ревью кода. Проблема в том, что из этих 500 человек, свой код прислало лишь 2 разработчика. Это около 0.4% от всех, кто увидел этот пост. Это даже меньше, чем на первую ревью сессию, несмотря на то, что мы добавили возможность анонимно прислать свой код, а также увидели, что первая код-ревью сессия показала себя с хорошой стороны.
👉 Ситуация, мягко говоря, не радужная, и чтобы у нас была возможность как-то на это повлиять, нам нужно точно понять, почему люди не присылают свои коммиты.
⬇️ Внизу вы найдете опросник, который поможет нам понять точную картину, из-за чего у нас так мало коммитов. Если вы ревьюер, который хочет помогать другим, то выберете «Мне не нужен фидбэк, я хочу ревьюить.», а если же вы хотите получить фидбэк, но еще ничего не прислали, то укажите почему.
Почему вы не оставляете заявку на ревью?
Anonymous Poll
8%
Я хочу получить фидбэк, но боюсь критики
16%
Я хочу получить фидбэк, но не могу ничего прислать из-за NDA
35%
Я хочу получить фидбэк, но мне нечего скинуть
15%
Мне не нужен фидбэк, я хочу ревьюить
4%
Я не хочу ни ревьюить, ни получать фидбэк
8%
Я хочу получить фидбэк, но еще не успел скинуть свой коммит
2%
Я уже оставил заявку на ревью
11%
Другое, напишу в комментариях
Код-ревью сессия #2🧑💻
А вот и вторая ревью сессия подлетела!
👉 Пулл-реквест #1
#python
Откроет нашу сессию пулл-реквест на Python от saintbyte. Простая тулза для сбора вакансий из RSS ленты хабр карьеры.
👉 Коммит #2
#typenoscript #angular
Коммит прислал нам mbogomazov. Он написал игру «крестики-нолики» на Angular.
👉 Пулл-реквест #3
#java
TimurBaldin прислал нам целый пулл-реквест на Java. Проект для генерации тестовых данных для ручного и автоматизированного тестирования.
👉 Коммит #4
#php
И последний небольшой коммит от andreaskosten на PHP. Класс DB реализует посредством гарантированно единственного экземпляра подключение к БД mysql через юзера с указанным набором привилегий.
❓Все вопросы по ходу сессии можете задавать в нашем чате.
⏳ У нас есть 72 часа, погнали!
#код_ревью_сессия
А вот и вторая ревью сессия подлетела!
👉 Пулл-реквест #1
#python
Откроет нашу сессию пулл-реквест на Python от saintbyte. Простая тулза для сбора вакансий из RSS ленты хабр карьеры.
👉 Коммит #2
#typenoscript #angular
Коммит прислал нам mbogomazov. Он написал игру «крестики-нолики» на Angular.
👉 Пулл-реквест #3
#java
TimurBaldin прислал нам целый пулл-реквест на Java. Проект для генерации тестовых данных для ручного и автоматизированного тестирования.
👉 Коммит #4
#php
И последний небольшой коммит от andreaskosten на PHP. Класс DB реализует посредством гарантированно единственного экземпляра подключение к БД mysql через юзера с указанным набором привилегий.
❓Все вопросы по ходу сессии можете задавать в нашем чате.
⏳ У нас есть 72 часа, погнали!
#код_ревью_сессия
❗️Напоминаю, что ревью сессия в самом разгаре.
👨💻В коммите на PHP вы уже вряд ли найдете местечко, но вот на других коммитах еще очень много пространства для творчества. Товарищи питонисты, джависты и фронтендеры, накидайте свой фидбэк на коммиты в предыдущем посте, а также не забудьте поставить 👍 под полезными комментариями.
📊 А в субботу вечером мы подведем результаты сессии, сделаем краткую выжимку, а также обновим нашу таблицу топ-ревьюеров.
#код_ревью_сессия
👨💻В коммите на PHP вы уже вряд ли найдете местечко, но вот на других коммитах еще очень много пространства для творчества. Товарищи питонисты, джависты и фронтендеры, накидайте свой фидбэк на коммиты в предыдущем посте, а также не забудьте поставить 👍 под полезными комментариями.
📊 А в субботу вечером мы подведем результаты сессии, сделаем краткую выжимку, а также обновим нашу таблицу топ-ревьюеров.
#код_ревью_сессия
Итоги сессии #2
Прошло 72 часа с начала второй код-ревью сессии, и можно подвести итоги.
👍 Я вижу, как пополняется наш состав ревьюеров - это не может не радовать! Но еще приятнее - видеть позитивные отзывы людей, которые присылают нам свои коммиты. Это значит, что фидбэк, который вы им даете, имеет для них большое значение!
🪚 Это только начало, и нам еще многое предстоит сделать.
Если говорить о недочетах, сейчас у нас образовалось большое PHP комьюнити, которому уже явно не хватает свободного места на одном коммите. Это значит, что на следующую ревью сессию мы возьмем как минимум два коммита на PHP.
Второй момент - соотношение PHP ревьюеров с ревьюерами на других языках. Нам явно стоит поработать над расширением Python, Java, и фронтенд комьюнити. Этим я и займусь на следующей неделе.
Таблица топ-ревьюеров уже обновлена, а завтра я выложу небольшую выжимку по коммитам.
💙 Надеюсь, что вторая сессия понравилась вам не меньше первой, и от себя хочу поблагодарить всех, кто принимает в этом участие!
Прошло 72 часа с начала второй код-ревью сессии, и можно подвести итоги.
👍 Я вижу, как пополняется наш состав ревьюеров - это не может не радовать! Но еще приятнее - видеть позитивные отзывы людей, которые присылают нам свои коммиты. Это значит, что фидбэк, который вы им даете, имеет для них большое значение!
🪚 Это только начало, и нам еще многое предстоит сделать.
Если говорить о недочетах, сейчас у нас образовалось большое PHP комьюнити, которому уже явно не хватает свободного места на одном коммите. Это значит, что на следующую ревью сессию мы возьмем как минимум два коммита на PHP.
Второй момент - соотношение PHP ревьюеров с ревьюерами на других языках. Нам явно стоит поработать над расширением Python, Java, и фронтенд комьюнити. Этим я и займусь на следующей неделе.
Таблица топ-ревьюеров уже обновлена, а завтра я выложу небольшую выжимку по коммитам.
💙 Надеюсь, что вторая сессия понравилась вам не меньше первой, и от себя хочу поблагодарить всех, кто принимает в этом участие!
💬 Основной посыл комментариев
👉 пулл-реквест #1
#python
1. Стукрута проекта
Лучше всего создать папку src, разбить логику по моделям, и сервисам и вынести все из корневой папки.
2. Доработать модели
Вынести BaseModel в отдельный файл. В Vacancy добавить employment type с EnumField.
3. Нейминг
Избавиться от Helpers, чтобы поднять читаемость кода.
👉 коммит #2
#typenoscript #angular
1. Задать точный тип возврата функции
Функция calculateWinner вернет X | O | null.
2. Избегать повторяемость кода
X и O используется в нескольких местах. Лучше вынести в качестве констант.
3. Неявное приведение объекта к boolean
Вместо проверки if(Winner) => isWinnerExists, и вместо this.squares[idx] => используй includes.
4. Избегать логических ошибок
makeMove будет вызывать calculateWinner, даже если ничего не изменилось.
🏆 Хотел бы выделить следующих ревьюеров
fallncrlss - за информативный и структурированный комментарий для python.
QoreCode - за большой объем полезных комментариев для TypeScript
👉 пулл-реквест #1
#python
1. Стукрута проекта
Лучше всего создать папку src, разбить логику по моделям, и сервисам и вынести все из корневой папки.
2. Доработать модели
Вынести BaseModel в отдельный файл. В Vacancy добавить employment type с EnumField.
3. Нейминг
Избавиться от Helpers, чтобы поднять читаемость кода.
👉 коммит #2
#typenoscript #angular
1. Задать точный тип возврата функции
Функция calculateWinner вернет X | O | null.
2. Избегать повторяемость кода
X и O используется в нескольких местах. Лучше вынести в качестве констант.
3. Неявное приведение объекта к boolean
Вместо проверки if(Winner) => isWinnerExists, и вместо this.squares[idx] => используй includes.
4. Избегать логических ошибок
makeMove будет вызывать calculateWinner, даже если ничего не изменилось.
🏆 Хотел бы выделить следующих ревьюеров
fallncrlss - за информативный и структурированный комментарий для python.
QoreCode - за большой объем полезных комментариев для TypeScript
💬 Основной посыл комментариев
👉 пулл-реквест #3
#java
1. Отдавать предпочтение примитивным типам данных
Если нам не требются свойства или методы таких класов как Boolean или, например, Integer, вместо них имеет смысл использовать примитивные типы данных boolean и int.
2. Использовать Lombok
Эта библиотека содержит много аннотаций, которые упростят написание конструкторов, геттеров, сеттеров (и не только их).
3. Не забывать о проверках на null
NullPointerException - распространенная ошибка. Следует написать проверки на получение данных из DB и проверять полученные значения на null.
4. Обращать внимание на нейминг
Такие названия классов как Start, AppException или BaseResponse не совсем раскрывают свою суть. Следует подумать над более удачными альтернативами.
🏆 Автор кода выделил следующих ревьюеров
1. driversti
2. lixach93
👉 пулл-реквест #3
#java
1. Отдавать предпочтение примитивным типам данных
Если нам не требются свойства или методы таких класов как Boolean или, например, Integer, вместо них имеет смысл использовать примитивные типы данных boolean и int.
2. Использовать Lombok
Эта библиотека содержит много аннотаций, которые упростят написание конструкторов, геттеров, сеттеров (и не только их).
3. Не забывать о проверках на null
NullPointerException - распространенная ошибка. Следует написать проверки на получение данных из DB и проверять полученные значения на null.
4. Обращать внимание на нейминг
Такие названия классов как Start, AppException или BaseResponse не совсем раскрывают свою суть. Следует подумать над более удачными альтернативами.
🏆 Автор кода выделил следующих ревьюеров
1. driversti
2. lixach93
💬 Основной посыл комментариев
👉 коммит #4
#php
1. Использование getter и setter
$pdo изменить с public на private или protected, и работать с ним в других классах только через getter и setter.
2. Типизация параметров
Использовать типизацию везде, где это возможно.
3. Строгое сравнение
Старайтесь придерживаться строго сравнения ===.
4. Использование встроенных функций
Например вместо !isset лучше использовать метод empty.
5. Использование отдельного файла для настроек
Не надо хардокдить настройки подключения к DB в функции. Лучше вынести все параметры в отдельный env файл.
6. Проверка уровня доступа
Вместо строк SIUD лучше использовать числовые значения. И вместо if используйте elseif или switch.
🏆 Автор кода выделил следующих ревьюеров
1. SnusnumrConceit
2. R1KO
3. lis-dev
👉 коммит #4
#php
1. Использование getter и setter
$pdo изменить с public на private или protected, и работать с ним в других классах только через getter и setter.
2. Типизация параметров
Использовать типизацию везде, где это возможно.
3. Строгое сравнение
Старайтесь придерживаться строго сравнения ===.
4. Использование встроенных функций
Например вместо !isset лучше использовать метод empty.
5. Использование отдельного файла для настроек
Не надо хардокдить настройки подключения к DB в функции. Лучше вынести все параметры в отдельный env файл.
6. Проверка уровня доступа
Вместо строк SIUD лучше использовать числовые значения. И вместо if используйте elseif или switch.
🏆 Автор кода выделил следующих ревьюеров
1. SnusnumrConceit
2. R1KO
3. lis-dev
Как бы вы оценили вторую ревью сессию?
Anonymous Poll
2%
Не очень 😕
14%
Нормально 😐
20%
Хорошо 😊
15%
Отлично! 😍
49%
Я не следил за сессией 🤷♂️
Задания - новая фитча! 🔥
❓Не так давно мы пытались выяснить, почему очень маленький процент людей присылает свой код на ревью. Большинство из вас ответило, что хочет получить фидбэк от другого разработчика, но прислать на ревью просто нечего.
💡Так вот, мы придумали решение этой проблемы и запускаем новую рубрику - задания.
Каждый понедельник на канале будет публиковаться одно небольшое задание, которое вы сможете самостоятельно выполнить на любом интересующем вас языке и прислать свой код на следующую ревью сессию.
Задания будут разного уровня сложности и будут полезны как новичкам, так и более опытным программистам.
📌 Первое задание - написать GitHub парсер, который бы считал комментарии, лайки и дизлайки для каждого коммита или пулл-реквеста.
⏳На задание будет отведено 48 часов, и затем каждый желающий сможет прислать его на ревью.
❓Не так давно мы пытались выяснить, почему очень маленький процент людей присылает свой код на ревью. Большинство из вас ответило, что хочет получить фидбэк от другого разработчика, но прислать на ревью просто нечего.
💡Так вот, мы придумали решение этой проблемы и запускаем новую рубрику - задания.
Каждый понедельник на канале будет публиковаться одно небольшое задание, которое вы сможете самостоятельно выполнить на любом интересующем вас языке и прислать свой код на следующую ревью сессию.
Задания будут разного уровня сложности и будут полезны как новичкам, так и более опытным программистам.
📌 Первое задание - написать GitHub парсер, который бы считал комментарии, лайки и дизлайки для каждого коммита или пулл-реквеста.
⏳На задание будет отведено 48 часов, и затем каждый желающий сможет прислать его на ревью.
📤 Заявки на код-ревью
Друзья, пока многие из вас еще делают первое задание из нашей новой рубрики, я напомню, что вы можете прислать свой код на ревью через нашу форму.
👉 Через неё вы можете отправить как сделанное задание, так и свой собственный проект на ревью.
🥷 Скинуть код на ревью можно как публично так и анонимно. Подробную информацию вы найдете тут.
⏳Заявки на следующую сессию собираем до вечера 29 сентября.
Друзья, пока многие из вас еще делают первое задание из нашей новой рубрики, я напомню, что вы можете прислать свой код на ревью через нашу форму.
👉 Через неё вы можете отправить как сделанное задание, так и свой собственный проект на ревью.
🥷 Скинуть код на ревью можно как публично так и анонимно. Подробную информацию вы найдете тут.
⏳Заявки на следующую сессию собираем до вечера 29 сентября.
Код-ревью сессия #3
Сегодня у нас аж 8 коммитов на разных языках. Ловите!
👉 Коммит #1
#C
Откроет нашу сессию анонимный коммит на С. Симулятор песка, воды и стен.
👉 ПР #2
#python
Коммит прислал нам uni-jacob. Бот, упрощающий рутину старост групп.
👉 Коммит #3
#JS
Dsgnfox прислал нам конструктор добавляющий загрузку и отправку файлов из формы.
👉 Коммит #4
#TS
Наш ревьюер QoreCode прислал свой коммит на ревью. Описание найдете в README.md
👉 ПР #5
#php #laravel
И еще один наш PHP ревьюер SnusnumrConceit прислал нам проект предназначенный для импорта Records в Excel-формате в таблицу.
👉 Коммит #6
#CSharp #задания
А вот и задания. Первым свое задание на ревью прислал нам CustomRider. Описание задания вы найдете здесь.
👉 ПР #7
#typenoscript #задания
Еще один наш ревьюер - Kp0c прислал задание на JS + Svelte. Пощупать его можно по этой ссылке.
👉 ПР #8
#Java #задания
Закроет нашу сессию ПР с заданием от ревьюера driversti.
❓Все вопросы по ходу сессии можете задавать в нашем чате.
⏳ 72 часа
Сегодня у нас аж 8 коммитов на разных языках. Ловите!
👉 Коммит #1
#C
Откроет нашу сессию анонимный коммит на С. Симулятор песка, воды и стен.
👉 ПР #2
#python
Коммит прислал нам uni-jacob. Бот, упрощающий рутину старост групп.
👉 Коммит #3
#JS
Dsgnfox прислал нам конструктор добавляющий загрузку и отправку файлов из формы.
👉 Коммит #4
#TS
Наш ревьюер QoreCode прислал свой коммит на ревью. Описание найдете в README.md
👉 ПР #5
#php #laravel
И еще один наш PHP ревьюер SnusnumrConceit прислал нам проект предназначенный для импорта Records в Excel-формате в таблицу.
👉 Коммит #6
#CSharp #задания
А вот и задания. Первым свое задание на ревью прислал нам CustomRider. Описание задания вы найдете здесь.
👉 ПР #7
#typenoscript #задания
Еще один наш ревьюер - Kp0c прислал задание на JS + Svelte. Пощупать его можно по этой ссылке.
👉 ПР #8
#Java #задания
Закроет нашу сессию ПР с заданием от ревьюера driversti.
❓Все вопросы по ходу сессии можете задавать в нашем чате.
⏳ 72 часа