SlideShare a Scribd company logo
Сбалансированное окружение для
вашей продуктивности
Алексей Зеленюк, Application Architect
eleks.com
Big blue heading
О чем доклад
● Почему в JS все так сложно?
● Как выглядит современное JS окружение
● Мой первый JS Энтерпрайз
● Все это правда надо?
● Мои менее продвинутые проекты
● Начинаем новый проект
● Что с этим делать?
● Что приводит к сложности?
● Бройлерплейты против велосипедов
● Рельсово-Сиэлайная магия
● Гибридный подход
● Lean Environment
● К чему нужно стремиться?
● С чего нужно начать?
● Что можно отложить?
● Чего бояться?
● Полезные мелочи
● О команде
Сбалансированное окружение
для вашей продуктивности,
Алексей Зеленюк
Современное JS
окружение
1. Package Management
2. Bundling
3. Transpiling
4. Minification
5. Sourcemaps
6. Mocked API
7. Dev Webserver
8. Component Libraries
9. Build automation
10.Production deploy
11.Code Style validation
12.Unit/E2E tests
В придачу
1. Continuous Integration
2. Build automation
3. Production deployment
4. Code-review инструменты и конвенции
5. Tests coverage
6. SDLC специфика, и прочий Agile
Мой первый JS
Энтерпрайз
Python (древней версии)
Ruby gems для компаса и
еще какой-то фигни
Bash скрипты (много)
Backbone забытой версии,
модифицированный
Юнит тесты
E2E тесты
Время сборки ~ 10 минут
Деплой – ~ 1 час
Как-то так…
Когда попадаешь в
менее продвинутый
проект
Когда начинаешь
проект с нуля
Что в итоге?
● Программа обросла библиотеками
● Билд обрастает скриптами
● Проект новыми требованиями
● И новыми костылями
● Много тяжелых тестов
● Сложность растет
● Рефакторить нет времени
● Лепим сверху, сзади и по бокам
● Производительность упала
● А давайте перепишем с нуля?
Начать с чистого листа нетрудно.
Трудно изменить почерк.
П. Коэльо
Избыточная сложность.
Что к ней приводит?
1. Лень/нет времени разбираться
2. Лень/нет времени следить за прогрессом
3. Хайп, погоня за новым
4. Новые требования не вкладываются в архитектуру
5. Неправильные решения и лишние абстракции
6. Пренебрегание рефакторингом
Бройлерплейты
• Экономит время (вначале)
• Фокусируемся на задаче
• Поддерживается
• Full-featured
• Стандартный стек
• Много лишнего
• Меньше понимания
• Трудно расширить
Велосипеды
• Выбираем только нужное
• Больше понимания
• Меньше лишней сложности
• Проще изменить
• Долгий старт
• Нужно поддерживать
• Свое не всегда лучшее
Теплый рельсовый CLI
• Стандартный подход
• Меньше рутины
• Ускоряет вход в проект
• Ускоряет разработку
• Само-документируемость
• Много лишнего кода
• Жесткие рамки
• Постоянная доработка
шаблонов
Гибридный подход
1. Изучить лучшие решения
2. Выбрать наиболее подходящее
3. Пересобрать с оглядкой на него, с нуля
4. Создать шаблоны для CLI
5. Мотивировать коллег (и себя) их использовать
Lean Environment
Less-is-Better
К чему нужно стремиться?
1. Быстрый фидбек
2. Авто-конвенции
3. Масштабируемость
4. [TO BE CONTINUED]
С чего начать?
1. Осмысление требований и 3-party интеграций
2. Понимание потоков данных и интерфейсов
3. Быстрый прототип на бойлерплейте и фидбек
4. EditorConfig и линтеры
5. Юнит-тесты
6. WIP Demo (localtunnel, Surge, etc)
7. Спецификация (Swagger, etc.)
8. Переосмысление и переписывание
Что можно отложить?
1. Твердый выбор фреймворка и утилит
2. Выбор и настройка БД
3. Глубокую декомпозицию
4. Внедрение абстракций
5. DRY принцип
6. Все что можно отложить
YAGNIYou Ain’t Gonna Need It!
Fake it until you make it!
1. [TO BE CONTINUED]
О Команде
1. [TO BE CONTINUED]
Ad

Recommended

PPTX
Как развивать библиотеку компонентов, не ломая ее / Артур Удалов (Mail.Ru Group)
Ontico
 
PDF
Александр Курдюков. Внедрение continuous delivery для гетерогенных поставок.
ScrumTrek
 
PDF
DevOps модное слово или следующая ступень эволюции
Andrey Rebrov
 
PDF
Мобильный веб: назад в будущее
Badoo Development
 
PDF
Роберт Харитонов — Отдел вёрстки с нуля
Yandex
 
PDF
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.
ScrumTrek
 
PDF
О фреймворках / Роман Ивлиев (Банки.ру)
Ontico
 
PPTX
Highload в ВУЗе: идеализм, расчетливый менеджмент или пустые надежды
Artyom Kalichkin
 
PPTX
А. Калугин. О параллельном тестировании нескольких проектов. SQADays'10
Alexander Kalouguine
 
PPT
Алексей Рыбак (Badoo)
Ontico
 
PPTX
Тестировщик в стартапе. Зачем и как
SQALab
 
PDF
Оценка проектов тестирования
Rina Uzhevko
 
PPTX
Гибкое тестирование
Rina Uzhevko
 
PPTX
бородин об эмпирической разработке
Magneta AI
 
PPTX
Всему своё время Highload Junior 2016
Roman Ivliev
 
PDF
7 Способы проведения ретроспектив для анализа и улучшения процесса
Magneta AI
 
PDF
Continuous integration для java script проектов
Andrey Kucherenko
 
PPTX
О фреймворках Backend conf 2016
Roman Ivliev
 
PDF
DevOps от и до - что, зачем и почему
Andrey Rebrov
 
PDF
Частые ошибки при разработке фронтенда | Odessa Frontend Meetup #17
OdessaFrontend
 
PDF
Алексей Лустин. Непрерывная проверка качества кода.
ScrumTrek
 
PPTX
Как проекты приходят к DevOps?
SQALab
 
PPTX
Visual Studio Team Services /TFS helps doing devops
Konstantin Neradovsky
 
PPTX
Тестирование в условиях Lean: как приручить MVP?
SQALab
 
PPTX
Agile мёртв (!|?) / Александр Сидоров (Яндекс)
Ontico
 
PPTX
Как мы делаем Banki.ru
Roman Ivliev
 
PPTX
Темная сторона метрик
Roman Ivliev
 
PPTX
JS Lab2017_Евгений Сафронов_Тестирование Javascript кода. Инструменты, практи...
GeeksLab Odessa
 
PDF
JS Lab2017_Lightning Talks_React Perfomance
GeeksLab Odessa
 
PPTX
JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js
GeeksLab Odessa
 

More Related Content

What's hot (19)

PPTX
А. Калугин. О параллельном тестировании нескольких проектов. SQADays'10
Alexander Kalouguine
 
PPT
Алексей Рыбак (Badoo)
Ontico
 
PPTX
Тестировщик в стартапе. Зачем и как
SQALab
 
PDF
Оценка проектов тестирования
Rina Uzhevko
 
PPTX
Гибкое тестирование
Rina Uzhevko
 
PPTX
бородин об эмпирической разработке
Magneta AI
 
PPTX
Всему своё время Highload Junior 2016
Roman Ivliev
 
PDF
7 Способы проведения ретроспектив для анализа и улучшения процесса
Magneta AI
 
PDF
Continuous integration для java script проектов
Andrey Kucherenko
 
PPTX
О фреймворках Backend conf 2016
Roman Ivliev
 
PDF
DevOps от и до - что, зачем и почему
Andrey Rebrov
 
PDF
Частые ошибки при разработке фронтенда | Odessa Frontend Meetup #17
OdessaFrontend
 
PDF
Алексей Лустин. Непрерывная проверка качества кода.
ScrumTrek
 
PPTX
Как проекты приходят к DevOps?
SQALab
 
PPTX
Visual Studio Team Services /TFS helps doing devops
Konstantin Neradovsky
 
PPTX
Тестирование в условиях Lean: как приручить MVP?
SQALab
 
PPTX
Agile мёртв (!|?) / Александр Сидоров (Яндекс)
Ontico
 
PPTX
Как мы делаем Banki.ru
Roman Ivliev
 
PPTX
Темная сторона метрик
Roman Ivliev
 
А. Калугин. О параллельном тестировании нескольких проектов. SQADays'10
Alexander Kalouguine
 
Алексей Рыбак (Badoo)
Ontico
 
Тестировщик в стартапе. Зачем и как
SQALab
 
Оценка проектов тестирования
Rina Uzhevko
 
Гибкое тестирование
Rina Uzhevko
 
бородин об эмпирической разработке
Magneta AI
 
Всему своё время Highload Junior 2016
Roman Ivliev
 
7 Способы проведения ретроспектив для анализа и улучшения процесса
Magneta AI
 
Continuous integration для java script проектов
Andrey Kucherenko
 
О фреймворках Backend conf 2016
Roman Ivliev
 
DevOps от и до - что, зачем и почему
Andrey Rebrov
 
Частые ошибки при разработке фронтенда | Odessa Frontend Meetup #17
OdessaFrontend
 
Алексей Лустин. Непрерывная проверка качества кода.
ScrumTrek
 
Как проекты приходят к DevOps?
SQALab
 
Visual Studio Team Services /TFS helps doing devops
Konstantin Neradovsky
 
Тестирование в условиях Lean: как приручить MVP?
SQALab
 
Agile мёртв (!|?) / Александр Сидоров (Яндекс)
Ontico
 
Как мы делаем Banki.ru
Roman Ivliev
 
Темная сторона метрик
Roman Ivliev
 

Viewers also liked (15)

PPTX
JS Lab2017_Евгений Сафронов_Тестирование Javascript кода. Инструменты, практи...
GeeksLab Odessa
 
PDF
JS Lab2017_Lightning Talks_React Perfomance
GeeksLab Odessa
 
PPTX
JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js
GeeksLab Odessa
 
PDF
JS Lab2017_Lightning Talks_Рекрутинг.js
GeeksLab Odessa
 
PDF
Frontendlab: Cравнить Несравнимое - Юлия Пучнина
GeeksLab Odessa
 
PDF
JS Lab2017_Lightning Talks_PostCSS - there is a plugin for that
GeeksLab Odessa
 
PDF
JS Lab2017_Андрей Кучеренко _Разработка мультипакетных приложения: причины, с...
GeeksLab Odessa
 
PDF
JS Lab2017_Виталий Лебедев_Практические сложности при разработке на node.js
GeeksLab Odessa
 
PDF
JS Lab2017_Юлия Пучнина_PhaserJS и что он умеет
GeeksLab Odessa
 
PPTX
JS Lab2017_Роман Якобчук_Почему так важно быть программистом в фронтенде
GeeksLab Odessa
 
PDF
JS Lab2017_Алексей Заславский_React Fiber
GeeksLab Odessa
 
PDF
JS Lab2017_Сергей Селецкий_System.js и jspm
GeeksLab Odessa
 
PDF
WebCamp 2016: Python.Максим Климишин.Типизированный Python
WebCamp
 
PDF
AI&BigData Lab 2016. Сергей Шельпук: Методология Data Science проектов
GeeksLab Odessa
 
PDF
JS Lab2017_Redux: время двигаться дальше?_Екатерина Лизогубова
GeeksLab Odessa
 
JS Lab2017_Евгений Сафронов_Тестирование Javascript кода. Инструменты, практи...
GeeksLab Odessa
 
JS Lab2017_Lightning Talks_React Perfomance
GeeksLab Odessa
 
JS Lab2017_Под микроскопом: блеск и нищета микросервисов на node.js
GeeksLab Odessa
 
JS Lab2017_Lightning Talks_Рекрутинг.js
GeeksLab Odessa
 
Frontendlab: Cравнить Несравнимое - Юлия Пучнина
GeeksLab Odessa
 
JS Lab2017_Lightning Talks_PostCSS - there is a plugin for that
GeeksLab Odessa
 
JS Lab2017_Андрей Кучеренко _Разработка мультипакетных приложения: причины, с...
GeeksLab Odessa
 
JS Lab2017_Виталий Лебедев_Практические сложности при разработке на node.js
GeeksLab Odessa
 
JS Lab2017_Юлия Пучнина_PhaserJS и что он умеет
GeeksLab Odessa
 
JS Lab2017_Роман Якобчук_Почему так важно быть программистом в фронтенде
GeeksLab Odessa
 
JS Lab2017_Алексей Заславский_React Fiber
GeeksLab Odessa
 
JS Lab2017_Сергей Селецкий_System.js и jspm
GeeksLab Odessa
 
WebCamp 2016: Python.Максим Климишин.Типизированный Python
WebCamp
 
AI&BigData Lab 2016. Сергей Шельпук: Методология Data Science проектов
GeeksLab Odessa
 
JS Lab2017_Redux: время двигаться дальше?_Екатерина Лизогубова
GeeksLab Odessa
 
Ad

Similar to JS Lab2017_Алексей Зеленюк_Сбалансированное окружение для вашей продуктивности (20)

PDF
Инструменты разные нужны, инструменты разные важны
Roman Dvornov
 
PDF
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
HappyDev
 
PPTX
Test Driven Development in .NET Applications
Anton Vidishchev
 
PPTX
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
ПрофсоUX
 
PDF
Agile Process Wizard или как собрать Agile методологию под конкретный проект
Return on Intelligence
 
PPTX
Раздвоение тестирующей личности или эффективная организация параллельного тес...
SQALab
 
PDF
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
404fest
 
PPTX
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
Yury Vetrov
 
PDF
UWDC'12, Александр Макаров, О командной разработке и фреймворках
Alexander Makarov
 
PDF
Как разраба
Alexander Makarov
 
PPT
Микросервисы: первая кровь
Максим Сячин
 
PPTX
Как перейти от проектного мышления к продуктовому. Опыт из заказной разработки
Alexander Byndyu
 
PPTX
Эффективные ретроспективы
Boris Volfson
 
PDF
CodeFest 2011. Макаров А. — Как разрабатывается Yii
CodeFest
 
PDF
Как работать с legacy проектом, которому больше10 лет? |Денис Воскобойник
Образовательные мероприятия "Netpeak Talks"
 
PPTX
Test driven development in net
Alex Tumanoff
 
PDF
7 retro
Nikita Filippov
 
PPTX
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
Yandex
 
PDF
Проходим тест Джоэла
0leGG
 
PDF
Devconf 2011 - PHP - Как разрабатывается фреймворк Yii
Alexander Makarov
 
Инструменты разные нужны, инструменты разные важны
Roman Dvornov
 
Виталий Шибаев - Креативный менеджмент глазами разработчика: как выжить в agi...
HappyDev
 
Test Driven Development in .NET Applications
Anton Vidishchev
 
Прикручивание колёс на ходу. Внедрение UX процессов в уже работающий продукт
ПрофсоUX
 
Agile Process Wizard или как собрать Agile методологию под конкретный проект
Return on Intelligence
 
Раздвоение тестирующей личности или эффективная организация параллельного тес...
SQALab
 
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
404fest
 
Форум Технологий Mail.Ru 2011: Юрий Ветров — Как создаются интерфейсы в Mail.Ru
Yury Vetrov
 
UWDC'12, Александр Макаров, О командной разработке и фреймворках
Alexander Makarov
 
Как разраба
Alexander Makarov
 
Микросервисы: первая кровь
Максим Сячин
 
Как перейти от проектного мышления к продуктовому. Опыт из заказной разработки
Alexander Byndyu
 
Эффективные ретроспективы
Boris Volfson
 
CodeFest 2011. Макаров А. — Как разрабатывается Yii
CodeFest
 
Как работать с legacy проектом, которому больше10 лет? |Денис Воскобойник
Образовательные мероприятия "Netpeak Talks"
 
Test driven development in net
Alex Tumanoff
 
Юрий Ветров "Как планируется работа команды проектирования и дизайна интерфей...
Yandex
 
Проходим тест Джоэла
0leGG
 
Devconf 2011 - PHP - Как разрабатывается фреймворк Yii
Alexander Makarov
 
Ad

More from GeeksLab Odessa (19)

PDF
DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
GeeksLab Odessa
 
PDF
DataScience Lab 2017_Kappa Architecture: How to implement a real-time streami...
GeeksLab Odessa
 
PDF
DataScience Lab 2017_Блиц-доклад_Турский Виктор
GeeksLab Odessa
 
PDF
DataScience Lab 2017_Обзор методов детекции лиц на изображение
GeeksLab Odessa
 
PDF
DataScienceLab2017_Сходство пациентов: вычистка дубликатов и предсказание про...
GeeksLab Odessa
 
PDF
DataScienceLab2017_Блиц-доклад
GeeksLab Odessa
 
PDF
DataScienceLab2017_Блиц-доклад
GeeksLab Odessa
 
PDF
DataScienceLab2017_Блиц-доклад
GeeksLab Odessa
 
PDF
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
GeeksLab Odessa
 
PDF
DataScienceLab2017_BioVec: Word2Vec в задачах анализа геномных данных и биоин...
GeeksLab Odessa
 
PDF
DataScienceLab2017_Data Sciences и Big Data в Телекоме_Александр Саенко
GeeksLab Odessa
 
PDF
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
GeeksLab Odessa
 
PDF
DataScience Lab 2017_Мониторинг модных трендов с помощью глубокого обучения и...
GeeksLab Odessa
 
PDF
DataScience Lab 2017_Кто здесь? Автоматическая разметка спикеров на телефонны...
GeeksLab Odessa
 
PDF
DataScience Lab 2017_From bag of texts to bag of clusters_Терпиль Евгений / П...
GeeksLab Odessa
 
PDF
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
GeeksLab Odessa
 
PDF
DataScienceLab2017_Оптимизация гиперпараметров машинного обучения при помощи ...
GeeksLab Odessa
 
PDF
DataScienceLab2017_Как знать всё о покупателях (или почти всё)?_Дарина Перемот
GeeksLab Odessa
 
PDF
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
GeeksLab Odessa
 
DataScience Lab2017_Коррекция геометрических искажений оптических спутниковых...
GeeksLab Odessa
 
DataScience Lab 2017_Kappa Architecture: How to implement a real-time streami...
GeeksLab Odessa
 
DataScience Lab 2017_Блиц-доклад_Турский Виктор
GeeksLab Odessa
 
DataScience Lab 2017_Обзор методов детекции лиц на изображение
GeeksLab Odessa
 
DataScienceLab2017_Сходство пациентов: вычистка дубликатов и предсказание про...
GeeksLab Odessa
 
DataScienceLab2017_Блиц-доклад
GeeksLab Odessa
 
DataScienceLab2017_Блиц-доклад
GeeksLab Odessa
 
DataScienceLab2017_Блиц-доклад
GeeksLab Odessa
 
DataScienceLab2017_Cервинг моделей, построенных на больших данных с помощью A...
GeeksLab Odessa
 
DataScienceLab2017_BioVec: Word2Vec в задачах анализа геномных данных и биоин...
GeeksLab Odessa
 
DataScienceLab2017_Data Sciences и Big Data в Телекоме_Александр Саенко
GeeksLab Odessa
 
DataScienceLab2017_Высокопроизводительные вычислительные возможности для сист...
GeeksLab Odessa
 
DataScience Lab 2017_Мониторинг модных трендов с помощью глубокого обучения и...
GeeksLab Odessa
 
DataScience Lab 2017_Кто здесь? Автоматическая разметка спикеров на телефонны...
GeeksLab Odessa
 
DataScience Lab 2017_From bag of texts to bag of clusters_Терпиль Евгений / П...
GeeksLab Odessa
 
DataScience Lab 2017_Графические вероятностные модели для принятия решений в ...
GeeksLab Odessa
 
DataScienceLab2017_Оптимизация гиперпараметров машинного обучения при помощи ...
GeeksLab Odessa
 
DataScienceLab2017_Как знать всё о покупателях (или почти всё)?_Дарина Перемот
GeeksLab Odessa
 
JS Lab 2017_Mapbox GL: как работают современные интерактивные карты_Владимир ...
GeeksLab Odessa
 

JS Lab2017_Алексей Зеленюк_Сбалансированное окружение для вашей продуктивности

  • 1. Сбалансированное окружение для вашей продуктивности Алексей Зеленюк, Application Architect eleks.com Big blue heading
  • 2. О чем доклад ● Почему в JS все так сложно? ● Как выглядит современное JS окружение ● Мой первый JS Энтерпрайз ● Все это правда надо? ● Мои менее продвинутые проекты ● Начинаем новый проект ● Что с этим делать? ● Что приводит к сложности? ● Бройлерплейты против велосипедов ● Рельсово-Сиэлайная магия ● Гибридный подход ● Lean Environment ● К чему нужно стремиться? ● С чего нужно начать? ● Что можно отложить? ● Чего бояться? ● Полезные мелочи ● О команде Сбалансированное окружение для вашей продуктивности, Алексей Зеленюк
  • 3. Современное JS окружение 1. Package Management 2. Bundling 3. Transpiling 4. Minification 5. Sourcemaps 6. Mocked API 7. Dev Webserver 8. Component Libraries 9. Build automation 10.Production deploy 11.Code Style validation 12.Unit/E2E tests
  • 4. В придачу 1. Continuous Integration 2. Build automation 3. Production deployment 4. Code-review инструменты и конвенции 5. Tests coverage 6. SDLC специфика, и прочий Agile
  • 5. Мой первый JS Энтерпрайз Python (древней версии) Ruby gems для компаса и еще какой-то фигни Bash скрипты (много) Backbone забытой версии, модифицированный Юнит тесты E2E тесты Время сборки ~ 10 минут Деплой – ~ 1 час
  • 7. Когда попадаешь в менее продвинутый проект
  • 9. Что в итоге? ● Программа обросла библиотеками ● Билд обрастает скриптами ● Проект новыми требованиями ● И новыми костылями ● Много тяжелых тестов ● Сложность растет ● Рефакторить нет времени ● Лепим сверху, сзади и по бокам ● Производительность упала ● А давайте перепишем с нуля?
  • 10. Начать с чистого листа нетрудно. Трудно изменить почерк. П. Коэльо
  • 11. Избыточная сложность. Что к ней приводит? 1. Лень/нет времени разбираться 2. Лень/нет времени следить за прогрессом 3. Хайп, погоня за новым 4. Новые требования не вкладываются в архитектуру 5. Неправильные решения и лишние абстракции 6. Пренебрегание рефакторингом
  • 12. Бройлерплейты • Экономит время (вначале) • Фокусируемся на задаче • Поддерживается • Full-featured • Стандартный стек • Много лишнего • Меньше понимания • Трудно расширить
  • 13. Велосипеды • Выбираем только нужное • Больше понимания • Меньше лишней сложности • Проще изменить • Долгий старт • Нужно поддерживать • Свое не всегда лучшее
  • 14. Теплый рельсовый CLI • Стандартный подход • Меньше рутины • Ускоряет вход в проект • Ускоряет разработку • Само-документируемость • Много лишнего кода • Жесткие рамки • Постоянная доработка шаблонов
  • 15. Гибридный подход 1. Изучить лучшие решения 2. Выбрать наиболее подходящее 3. Пересобрать с оглядкой на него, с нуля 4. Создать шаблоны для CLI 5. Мотивировать коллег (и себя) их использовать
  • 17. К чему нужно стремиться? 1. Быстрый фидбек 2. Авто-конвенции 3. Масштабируемость 4. [TO BE CONTINUED]
  • 18. С чего начать? 1. Осмысление требований и 3-party интеграций 2. Понимание потоков данных и интерфейсов 3. Быстрый прототип на бойлерплейте и фидбек 4. EditorConfig и линтеры 5. Юнит-тесты 6. WIP Demo (localtunnel, Surge, etc) 7. Спецификация (Swagger, etc.) 8. Переосмысление и переписывание
  • 19. Что можно отложить? 1. Твердый выбор фреймворка и утилит 2. Выбор и настройка БД 3. Глубокую декомпозицию 4. Внедрение абстракций 5. DRY принцип 6. Все что можно отложить YAGNIYou Ain’t Gonna Need It!
  • 20. Fake it until you make it! 1. [TO BE CONTINUED]
  • 21. О Команде 1. [TO BE CONTINUED]