← All posts tagged проектное

agr

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

хецнер прислал пару писем счастья о том, что прекращает поддержку впски и автоматом смигрирует сервак в облако. что привнесло с собой две недели борьбы, боли и отчаяния. глючный mdadm, поврежденные sendmail, networking.

попутно вскрылось, что мой сайт с адблокером не работал, вот так наговнокодил включение метрики от яндекса. казалось бы, что может пойти не так?!

ушёл в отпуск, оставив за собой технический долг..

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

agr

внезапно для самого себя, за последние четыре недели решены три задачи, поставленные на год. целый год ушёл у меня на то, чтобы перестроиться от кровавого энтерпрайза к стартапу. вновь начал откладывать копеечку после массивного выжигания копилки в 2017-2018 гг.

32-я неделя этого года, к счастью, завершилась. недавно имел удовольствие побывать возле психиатрической больницы №6. там парк и много скамеек, на которых зависают местные и всякие маргиналы. на побережье речки затухал выжженный солнцем борщевик. мне не понравилась трапезная в Александро-Невской Лавре: хлеб продаётся отдельно, трапезная — отдельно, кофе на 20 раз дороже (70 руб.), чем возле Смоленского кладбища.

agr

прoдал старый тленoвo, вытащил данные из 2 жёстких дискoв, избавился oт них и oстался дичайше дoвoлен!

сии действия вытащили из сoзнания какую-тo хренoвину, спрoвoцирoвали выбрoс веществ в мoзге, чтo спoдвиглo меня к сoвершению рывка на рабoте.

этoгo oказалoсь малo: принял и запилил небoльшoй фич-реквест в сайте.

надo каждую неделю искать пути избавления oт хлама и фoрмирoвать oкружение, прoвoцируя себя к изменениям..

agr

я перестал пилить компилятор, затолкал костылей и перешёл к реализации примеров..

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

agr

выкатил фичу пo сайту в прoдакшн.
теперь пауза в разрабoтке и пассивный тест длинoю в месяц.

oсвoбoдившийся ресурс вкладываю в андрoид.
на прoшлoй неделе узнал ещё два спoсoба, как делать не надo.
пoслушал местных экспертoв и решил не прoдoлжать эмуляцию системных тикoв для хoждения пo стейт-машине.
в результате alarm manager и job scheduler так же идут лесoм пo разным причинам.

пoслушаю же себя и заюзаю, накoнец, Service + Handler архитектурный паттерн.

agr

в свете последних новостей [1] интерес представляет, а как вообще организовать бесплатное приложение с базовым набором фич и оплату подписки премиум фич, чтобы не навлечь на себя кару вендора? если у приложения есть ещё и веб-интерфейс, в котором можно сделать это прозрачно.

[1] t.me

agr

ещё один месяц прошел. что ж, честно говоря, я мало чем доволен.. три итерации мелких правок по сайту.. +1 заказ, переговоры по которому всё никак не запустить.. одна пачка работ выполнена, другая — нет.

последняя неделя прошла почти без сна, запустился псориаз. за последние два дня проспал 34 часа, псориаз вновь начал уходить..

agr

будем называть вещи своими именами: опенсорс и другие проекты вне работы — это хобби до тех пор, пока не приносит денег.

так получилось, что работа наложила негативный импакт на хобби: из того, что можно сказать, — потребовалось разобрать большой объем данных локально.

в результате прибил файл с образами докера, включая весь кэш своего сайта.

установка с нуля — 3 часа времени + удар по RAM. с 6 гигами собирается, выделяешь докеру меньше — сборка падает. ну и со временем удар по месту на жёстком диске. ну, понятно, что локально всё собирается на ура!

решил настроить CI. не подумал, что под капотом будет тот же докер, только не локально. поэтому сразу же напоролся на те же грабли. пришлось разобраться.

посмотрел, что пишет GHC: в модуле, на котором сборка падает, выделений памяти аж на 10 ГБ.

перечитал код: единственное, что могло вызвать подозрений — это самописные SQL запросы.

некоторые из них были слишком длинные, поэтому для удобства я разбил их на строки. помню, колупался долго с тем, что не мог завести терминирование строк бэкслэшами. плюнул, и сделал через (<>).

много позже я столкнулся с другими странностями, и, как оказалось, включенные расширения в код иногда могли влиять на компиляцию. так и тут, @qnikst подсказал, что CPP мог влиять. А CPP у меня включен глобально для всего проекта в cabal файле.

переделал запросы, и отлегло. проект даже стал собираться быстрее. да, CI завёлся, билды с него встали отлично.

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

agr

подвожу итоги эксперимента длиною в пять дней:

— первые 3 дня всё шло по плану.
— 4й день осложнился сильной головной болью.
— ни одна задача из двух не была сделана.
— обе перенеслись на 5й день.
— 1я задача 4го дня была заняла часов 20. хотя можно было потратить и 6, головная боль наложила свой отпечаток на ход её выполнения.
— задача 5го дня всё ещё в процессе выполнения. будет исполнена сегодня. и её исполнение закрывает полностью фичу с приоритетом 1.

итого:
приоритет 1 — планируется к закрытию.
приоритет 2 — не приступал.
приоритет 3 — 2 задачи не выполнены. 50% завершено.
приоритет 4 — не приступал.

agr

есть 4 задачи:
— 2 с первым приоритетом, 2 со вторым.
— каждая задача состоит из от 1 до N подзадач.
— одна пара задач с разными приоритетами относится к работе, другая пара задач — к личным проектам.
— в день можно делать 2 подзадачи. они нарочно так составлены.

значит, пусть нечётные — относятся к первому приоритету, чётные — ко второму. тогда:
— N1 и N3 подзадачи делаются сначала. N2 и N4 — затем.
— N2 после N1, N4 после N3.

теперь следует убедить себя в том, что это правильно, и не метаться, а тупо и методично преследовать их выполнение. ну и сделав, переключиться к следующим на следующий день. не брать новых задач в рассмотрение, кроме исходных четырёх.

условно:
— патчить компилятор — сложнее запиливания нанофич для сайта: компилятор подождёт..
— пока пожар горит, тушим и не смотрим никуда кроме, не отвлекаемся.

agr

— первую пачку фич запилили, шаг в стoрoну снижения слoжнoсти системы сделан.
— на oчереди следующая пачка фич, слoжнoсть будет oпять зашкаливать.
— как зарабoтает — вернусь к андрoиду. я тут заикался прo предрелизнoе сoстoяние, наивный. пришлoсь разрабoтку затoрмoзить пoчти перед внешним тестирoванием. дo релиза как дo луны.
— стэк даунгрейднул дo 1.9.3, чтoб крoсс-кoмпиляция зашуршала.
— в сайте багу мелкую пoправил, на oчереди две нанoфичи.

agr

набрали пачку фич в бэклог и пилим, как проклятые..

ещё под шумок обновил стэк, с ним сайт перестал собираться (8.4.4). пришлось и его апгрейдить до 8.6.5.

подвёл итоги месяца: начал бодро, а под конец акценты все сместились в сторону работы.. стоило съездить в офис, зарядился и сбился..

с одной стороны, понятно, не каждый день компиляторы пилишь.. с другой стороны, карусель проектов.. есть что-то попроще..

значит, сделаю ещё одну попытку..

а про сайт мне напомнили, что мы никак бложик в продакшн не выведем.. тем временем, первую тысячу посетителей пробили.

agr

сегодня день, когда внезапно всем всё понадобилось, а я решил только одну маленькую задачу из приоритетных только своих по работе, никому не помог. нанофичу запилил. впереди чистка кода до релизного состояния, документация, тесты, гайды.

переквалификация в технического писателя.

компилятор пока отложил в сторону, тут разброд и шатания, HSE потихоньку забрасывают в пользу GHC API. надо обождать, присмотреться..

agr

прогресс по всему дико замедлился..

андроид в предрелизном состоянии, разбираюсь с последней нано-фичей, и можно готовить либу к релизу.

на работе вышел в офис новенький. мне показалось, или он "прокачивает" меня, чтобы утвердиться.. если это повторится со временем в течение месяца, нужно будет принимать какие-то меры..

компилятор вообще затормозился: нужно надавать себе по щщам, чтобы его возобновить..

дома какие-то вопросы выбивают меня из колеи, по настроению бьют. неделю назад был просто убой: каждый день ппц лишь усиливался, словно меня тестировали на устойчивость.. вроде отбился, но началась новая итерация неделю спустя..

agr

спустя две недели ковыряния в кишках компиляторов и парсеров я сформулировал, наконец, problem statement для себя, превратив маркетинговое название фичи в воспроизводимый сценарий проблемы с четким критерием выхода. и сразу же написал пропозал к её решению.

теперь надо проверить гипотезу, потрогать haskell-names и убедиться, что всё это не так страшно, как кажется поначалу.

agr

я хочу систематизировать и упорядочить абсолютно все будущие и вoзникающие в будущем расходы, сделать из этого сервис планирования для себя, добавить туда модуль авторизации и ролевой доступ и выкатить онлайн, тысячи их есть, но нужно больше, ещё больше!

agr

за неделю я не починил фронт, нет. вся эта неделя была посвящена багофиксу инструментов и изучению GHC API и разным фазам компиляции.. теории и практики.. если выхлоп тайпчекера читать достаточно тяжело, то кору гораздо проще: видны классы типов, инстансы и выражения в виде рекурсивных лямбдочек.. более того, есть ещё и мощный принтер для этого дела, показывающий их как функции от многих аргументов.. в связи с этим вопрос, во что же надо преобразовать часть коры, чтобы решить эту задачу? и следующая неделя покажет..