Как на смену ручному производству пришло конвейерное, так на смену программисту-одиночке пришли команды. Современные программы создаются командами не одиночками. Как таковое понятие гения программиста одиночки изолированного от мира и разрабатывающего что-то у себя в компьютере сейчас устарело и вымерло. Создание конкурентоспособного ПО в современном мире возможно только командами. Человек может быть превосходным программистом знать множество парадигм, языков, паттернов и так далее, но ужасно работать в команде, постоянно спорить, быть трудным в общении, что в целом дает нам.
Пользователь
Масштабируем продакт-менеджмент, часть 2: продукт

В предыдущей статье были тезисно расписаны основные идеи правильного масштабирования продукт-менеджмента в компаниях энтерпрайз уровня. Настало время рассмотреть каждую из идей в отдельности. Сегодня мы поговорим про то, что является продуктом в сложном решении, состоящем из множества подсистем.
Для того, чтобы понять проблему определения продукта проще всего описать ее на примере. Ниже вы можете видеть набор систем, представляющий из себя некое решение по предоставлению абстрактной услуги.
Люди как новая нефть: ОАЭ готовы предоставить гражданство иностранцам

Разговор в автомобиле на трассе из Дубая в Шарджу 31 июля 2020 года:
- Город-стройка. Сколько всего возводят … Но для кого? Кто будет здесь жить? Тем более после такого кризиса. Дубай экспо переносят, резиденты покидают страну, многие потеряли работу или бизнес: даже авиакомпания Эмирейтс сократила тысячи сотрудников, в число которых попал мой друг пилот.
- Почему бы правительству не инициировать создание специальных условий для того, чтобы привлекать сюда самых умных и талантливых специалистов из разных стран мира?! Так и поднимут экономику, грамотно аккумулируя у себя лучшие умы и таланты. Для этого все есть, в том числе тысячи квадратных метров нового жилья. Вот такие люди здесь бы и жили, а виды строительных кранов выглядели бы повеселее на фоне пустыни.
Заголовок в новостях 31 января 2021 года, ровно спустя семь месяцев:
«ОАЭ впервые в истории предоставляет иностранцам право получить гражданство».
Масштабируем продакт-менеджмент: как управлять продуктом, который разрабатывают 50 команд
Меня зовут Максим, и последние восемь лет я работаю в крупных компаниях на позициях бизнес-аналитика и владельца продукта. Сегодня я хотел бы поделиться с вами своими мыслями по поводу продуктовой разработки, организованной с применением большого количества дев-команд.

Интересующимся и желающим пообщаться на эту тему — добро пожаловать под кат.
Отложенные задачи в рамках микро-сервисной архитектуры

Часто в проектах возникает необходимость выполнения отложенных задач, таких как отправка email, push и других специфических задач, свойственных доменной области вашего приложения. Сложности начинаются, когда обычного crontab уже не достаточно, когда пакетная обработка не подходит и когда у каждой единицы задачи свое время выполнения или оно назначается динамически.
Для решения такой задачи было создано очередное решение под названием Trigger Hook. Принципиальная схема работы показана на рисунке 1. На схеме показано, что происходит с заданиями в течения всего их жизненного цикла. Смена цвета означает смену статуса задачи.
Опасная уязвимость в популярной библиотеке Sequelize

Привет, Хабр! Данная статья будет интересна тем, кто уже использует библиотеку Sequelize или же только собирается с ней работать. Под катом мы расскажем, чем встроенный функционал operatorAliases может быть вреден и как избежать утечки из собственной базы данных.
Как быстро получить много данных от Битрикс24 через REST API

Нередко при работе с Bitrix24 REST API возникает необходимость быстро получить содержимое определенных полей всех элементов какого-то списка (например, лидов).
Традиционный способ для этого - обращение к серверу через метод *.list (например, crm.lead.list для лидов) с параметром select, перечисляющим список требуемых полей. При этом, чем больше полей вы запрашиваете, тем больше времени серверу требуется для формирования ответа. Плюс, в силу того, что информация сервером выдается постранично, получение всего списка через последовательные запросы всех страниц может занимать много времени.
Однако существует несколько стратегий для того, которые позволяют ускорить процесс на порядки.
Почему ПМ часто проигрывают аналитикам, а те в свою очередь часто пасуют перед тестерами?

Знакома ли вам такая картина описанная в названии статьи и задумывались ли вы над ответом на этот вопрос. Как ни странно один и тот же ответ может подходить для двух этих различных случаев. И там и там выигрывает тот кто правильно понимает и работает с требованиями. Но если копнуть глубже, то обнаруживается что смысл заложенный в ответ в обеих случаях очень сильно отличается.
Разбираем первый случай Для начала рассмотрим структуру требования, как такового. Ссылки что такое требование Если коротко, то у нас получается две составляющие требования. Часть которая относится к управлению. И часть которая описывает собственно содержание. Итого мы имеем управленческие атрибуты и описание сути. К управленческим атрибутам относится автор, критичность, сложность и стоимость реализации, сроки реализации и т. д..
Более 10 лет ставлю цели на год: рассказываю, как это делать эффективно
Меня зовут Павел Комаровский, и я алкоголик занимаюсь саморазвитием уже более 10 лет. Эта статья о том, какой подход к личному целеполаганию я выработал для себя в итоге – надеюсь, она поможет вам избежать ошибок, которых в своё время наделал я.
Я полностью прошёл все стадии грехопадения: в студенческие годы искал сакральные ответы в стопках self-help макулатуры; затем разочаровался и решил, что весь этот «успешный успех» – это разводилово для дурачков (до сих пор уверен, что Наполеон Хилл – шизофреник); позже переосмыслил всё ещё раз и пришёл к своему пониманию того, как может выглядеть саморазвитие с адекватным лицом.
vuex + typescript = vuexok. Велосипед, который поехал и обогнал всех
Как и многие разработчики, я в свободное от работы время пишу свой
Отрицание
Основные требования для стора:
- В модулях должны работать типы typescript
- Модули должно быть легко использовать в компонентах, должны работать типы для стейта, экшенов, мутаций и геттеров
- Не придумывать новое api для vuex, надо сделать так, чтобы как-то типы typescript заработали с модулями vuex, чтобы не приходилось разом переписывать всё приложение
- Вызов мутаций и экшенов должен быть максимально простым и понятным
- Пакет должен быть как можно меньше
- Не хочу хранить константы с именами мутаций и экшенов
- Оно должно работать (А как же без этого)
Не может быть что у такого уже зрелого проекта как vuex не было нормальной поддержки typescript. Ну-с, открываем
Книга «Я отлично вижу! Улучшаем зрение сами. Советы врача»

Светлана Троицкая в своей книге делится опытом и личными секретами поддержания здоровья глаз. Автор разрушает стереотипы о причинах возникновения тех или иных проблем с глазами и дает читателям не просто набор упражнений, а комплексную программу для восстановления зрения и здоровья. Естественное восстановление зрения — это совсем не набор банальных упражнений для глаз, известных всем рецептов и правил, а стройная, интересная и легкоприменимая система, которая прекрасно внедряется в жизнь любого, даже самого занятого человека. Благодаря ей множество людей не только избавились от очков и страшных диагнозов, избежали оперативного вмешательства, но и улучшили свое самочувствие в целом.
Как появилась на свет программа youtube-dl
Сборщики меди
В любой хорошей истории должен быть злодей, и в качестве такого персонажа я решил выбрать сборщиков меди — воришек, которые собирали цветные металлы в округе. Именно они подтолкнули к созданию youtube-dl. В далёком 2006 году мой посёлок находился в 5-10 километрах от небольшого города Авилес на севере Испании. Жители Авилеса наслаждались хорошей инфраструктурой и услугами, включая кабельное телевидение и ADSL-доступ в интернет. В моём районе ничего такого не было: слишком далеко от телефонной станции с ADSL, а сборщики меди годами воровали медные провода по пути к ней, время от времени вызывая перебои в телефонной связи и заставляя телефонную компанию заменять эти провода более слабыми и тонкими, потому что их тоже, скорее всего, украдут. Это продолжалось несколько лет.
Единственным вариантом выхода в интернет из дома был модем 56k V.90. На самом деле качество связи было настолько плохим, что приходилось для стабильности снижать скорость до 33,6 Кбит/с. Фактическая скорость загрузки редко превышала 4 КБ/с. В то же время в интернете появился интересный видеосервис YouTube, он быстро набирал популярность, а в конце того же года его купила компания Google.
Стоицизм в IT: почему древняя философия захватила Кремниевую долину?
Группа психологов и ученых Modern Stoicism организовывает обучающие семинары и ведут блог с 2012 года. Каждый год проводят конференции Stoicon в разных странах, а небольшие собрания Stoicon-X независимо проходят в разных городах, включая Торонто, Москву и Нью-Йорк.
Похоже, философия переживает современный Ренессанс среди технической элиты. Она заинтересовалась основополагающими принципами философии добродетельной жизни, принятия неизбежного и постоянного размышления о смерти. Должно быть очень весело!

20 небольших, но вдохновляющих вызовов веб-разработчику

Как сделать CI на Github для современного фронтенда

Совсем скоро, 6 и 18 ноября, у нас стартуют новые потоки курса по JavaScript и
курса «Профессия Веб-разработчик», специально к их старту делимся с вами полезным туториалом, как настроить Github Actions для реальных проектов в области фронтенда со множеством линтеров и тестированием UI, а также уведомлениями о рабочем процессе в Slack. Подробности и репозиторий под катом.
Веб-разработка с нуля: руководство для молодых команд по созданию инфраструктуры CI/CD и процесса разработки
Чуть больше года назад я столкнулся с тем, что на внутреннем проекте совсем не айтишной компании вырос целый отдел веб-разработки, которым мне и довелось руководить. Рабочий процесс вроде как устаканился и всех устраивал, но оставались проблемы:
- Проверка каждой ветки проходила локально. Приходилось откатывать базу от изменений с предыдущей проверки, билдить фронт. Когда несколько разработчиков вот-вот закончат работы и осталось проверить каждую по мелочи — это превращалось в ад;
- Различались окружения на проде и между разработчиками, что приводило к ошибкам: “у меня всё работает”.
Внутренний перфекционист жаждал организовать всё правильно. Делюсь результатами поисков ответа на вопрос: «а как, собственно, “правильно”»?
Мы добились
- Легкого и быстрого деплоя в production (ради эксперимента выводили каждый день две недели подряд);
- Гарантию защищённости от ошибок из-за различий в окружении приложения;
- Можем организовать эффективное взаимодействие с заказчиком:
- демонстрировать каждую feature-ветку;
- давать гостевой доступ для создания задач и наблюдения над ходом работ.
Данная статья будет полезна, если вы:
- начинающая IT-компания или в первый раз столкнулись с работой в команде над большим проектом;
- хотите обновить свой устаревший процесс разработки (workflow);
- ищете лучшие практики и хотите посмотреть, как у других;
- часто натыкаетесь на статьи про DevOps, CI/CD, облака и хотите, чтобы у вас одним нажатием кнопки создавались тестовые окружения, а очередное обновление прода не было рулеткой.
Под катом вы найдёте
- типовой рабочий процесс от постановки задач до релиза;
- инфраструктурное решение для построения любого современного процесса разработки с использованием минимального количества инструментов;
- пример для часто встречающегося кейса: разработка веб-приложения;
- видеозапись доклада, где вживую показывается результат.
Тысячи потраченных часов на компьютерные игры: стоило ли это того

Чекалка: ваш личный Hosttracker (и не только)
Чекалка - простой инструмент на Go, позволяющий без написания скриптов или привлечения внешних сервисов надежно организовать мониторинг здоровья IT подсистем и алертинг в мессенджеры.
Все что нужно - любой хостинг, или бесплатные тарифы Heroku/AWS и т.д.
Сбор статистики viber
Далее опишу инструкцию как я получал статистику для чата viber используя файл резервной копии.
Information
- Rating
- 10,339-th
- Location
- Красноярск, Красноярский край, Россия
- Date of birth
- Registered
- Activity