Инвестиции

Пару недель назад встречался с человеком — основателем конторы AnimalID [https://animal-id.net/]. Они делают чипы для чипирования животных и держат соответствующую базу данных, работают в США и Украине. Во Львове они порешали проблемы с бездомными животными на корню, а в Киеве не порешают (потому что тут бюджеты на это огого какие пилятся, хватит стрерилизовать всех собак в Украине, не то что в Шевченковском районе). Но это...

Скорость

Скорость сборки, как и интерактивность — еще одна, к моему прискорбию, недооцененная характеристика платформ, сред, языков. Мозги так устроены, что дай им малейший шанс отлынивать от работы — моментально этим воспользуются. Все знают анекдот про "у меня код компилируется"? Вот то-то же. Сборка, компиляция, редеплой, называйте как хотите — всё это убивает эффективность разработчика, снижает каденс (загуглите что это такое), притупляет мысль. На простейшие вещи уходит куча...

Дебаг: інтерактивність

Часто можна почути думку що дебаг—шкідлива практика, яка відівчає програміста думати. Таке я чув від свого боса на першій роботі, таке можна прочитати в інтернетах, багато хто так каже. Замість дебагу пропонують більше занурюватися у код, робити юніт-тести на свої шматочки функціональності, активно використовувати логування. Дійсно, я неодноразово спостерігав за своїми джунами, що порожнім поглядом дивилися в екран, та механічно натискали F8. Але для мене...

Дебаг

10 років тому я працював у парі разом із своїм тімлідом над розробкою кешу для БД. Продукт, що ми робили, було неможливо запускати локально. Процес виглядав наступним чином: робиш зміни, збираєш JAR, заливаєш його по FTP на application server, рестартуєш сервер через веб-консоль WebLogic, чекаєш 5 хв, перевіряєш як працює. Незручно та дуже довго, цикл зворотнього зв'язку надзвичайно повільний, робота нефективна. Все ускладнювалося ще...

О конференциях 4. Качество

Предыдущие части: раз [https://www.rozhkov.me/post/conferences-1], два [https://www.rozhkov.me/post/conferences-2], три [https://www.rozhkov.me/post/conferences-3]. В этом году я посетил больше событий, чем за всю свою предыдущую жизнь. Одна из главных вещей, которую я вынес из всего этого—это то, что качество докладов и умения докладчиков, даже на серьезных, дорогих конференциях, в подавляющем большинстве случаев очень низкие. Не...

О превосходстве одних технологий над другими

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

Сперва добейся / Болтать — не мешки ворочать

Всем известен аргумент в спорах "сперва добейся". Звучит это так "вот ты сперва (сделай что-нибудь) ... а потом критикуй". В контр-аргументы чаще всего приводят сравнение о том что необязательно быть профессионалом чтобы оценить конкретный продукт. Например, не нужно быть шеф-поваром, чтобы оценить вкус блюда. Или, не нужно быть гонщиком, чтобы оценить комфортность автомобиля. Не нужно быть музыкантом, чтобы оценить музыку. И так далее,...

Работа, которая мне не нравится 1/∞

В продолжение темы об интересной и неинтересной работе. Я люблю выдавать результат. Длинные задачи, бесконечные проекты и доработки меня напрягают. Мне нравится сделать что-то, довести его до минимально рабочего состояния, запустить и пойти дальше. Если быстро не получается выдать что-то или выполнить минимальные требования к качеству, то интерес к задаче быстро пропадает и заниматься ею нет никакого желания. Что это могут быть за задачи такие нехорошие?...

Вендор-лок наоборот

Для тех, кто не знает, "вендор-лок" — это такая тема, когда вы подвязываетесь (в чем угодно) закрытую технологию какого-нибудь производителя, делаете на его платформе какое-то решение, а дальше не можете с него слезть. Самый распространённый пример — использование, например, базы данных Oracle или облака AWS. Вначале может быть все хорошо и радужно, но чем дальше в лес тем толще партизаны, и вот уже весь ваш бизнес...

Рассказать я и сам могу, а вот сделать как?

На всех проектах, в которых я участвую, или которые я делаю сам, я всегда вижу кучу проблем. Более того, я даже знаю как их все можно исправить! Вот один пример: Один из проектов, который живет в активном продакшене уже более двух лет, в основе своей имеет некое API, которое принимает на вход данные от партнёров. Дальше мы эти данные вращаем и асинхронно отдаем результат. И вот,...

Фулл-стек системы управления проектами

Любимая тема при старте проекта — "какой системой будем пользоваться для управления?". Кажется что вот сейчас выберем правильную и хорошую систему и проект сделается сам по себе. На моей первой работе (в 2007) была самописная штука сделанная на базе платформы, которую компания и разрабатывала/продавала (сама платформа — это ERP конструктор для телекомов, тоже очень навороченная). Для заказчиков продавались модуля для работы с сетями, инвентарём и...

Работа, которая мне нравится

В любой работе есть 20% интересной и сложной части и 80% рутины и полировки. Вначале ты довольно долго подступаешься к задаче, превозмогаешь, а дальше раз—основная проблема решается и остается только "задеплоить код". Вторая фаза естественно будет занимать гораздо больше времени нежели первая. Basecamp визуализируют это в виде так называемых Hill Charts [https://basecamp.com/features/hill-charts]. Вначале ты долго ползешь на гору, не...

Рецензия на книгу Егора Бугаенко "Code Ahead"

Я очень давно хотел закупиться у Егора всеми его книгами, но как-то так получалось, что все митапы и конференции с его участием я пропускал (из рук автора купить книги можно со скидосом в 50%). Но вот, месяц назад Егор анонсировал что он будет в Киеве на конфе QA-чего-то там и потом будет делать митап. Я незамедлительно написал что хочу купить все [https://www.yegor256.com/books]...

Обсуждение багов в синхронных чатах

Вчера со мной произошла забавная ситуация. На одном из проектов меня попросили добавить REST API метод. Ничтоже сумнящеся я нафигачил его, отдал фронтенд разработчикам сигнатуру и пошел заниматься своими делами. Через некоторое время мне пишет в личку разработчик, который пилит свою функциональность на базе моего API, говорит "не работает" и прикладывает скриншот из постмана где написано 404. Я быстро смотрю и вижу что там...

Продажа жопочасов

Большинство из нас продает жопочасы. Работа ли это в найме фулл-тайм или парт-тайм активности — практически всегда вопрос денег сводится к месячной (или годовой) ставке или часовому рейту. Все так делают, потому что это удобно. Оценивать работу разработчика и проекты сложно, поэтому никто не хочет задаваться этим вопросом. Легко оценить простую повторяющуюся работу, например укладку плитки. Плиточник берет фиксированную сумму за квадратный метр уложенной плитки с поправочными...

Resume Driven Development

Один из частых вопросов у любого инженера (и не только) — как и когда учить новое? Технологии (по крайней мере внешне) обновляются довольно быстро, количество инструментов, которыми необходимо владеть для ежедневной работы растёт и нужно все это как-то изучать и применять. Для решения этой проблемы и была придумана методология RDD она же Resume Driven Development. Для начала ответим на вопрос "как?", он же "форма...