мы продолбали третий майлстоун, но при этом выдержали четвертый. подоспели результаты стресс-тестов, время — условно ок, ЦПУ — жрём как не в себя. что ж, теперь у нас есть рабочая фича, удовлетворяющая требованиям бизнеса и долбаных 30 штук кейсов, которые она проходит.

скоро соберемся обсуждать, надо ли её переписать ещё раз так, чтобы она укладывалась в N мс и потребляла ЦПУ в меру.. команда резко демотивировалась, переписывать в третий раз фичу — больно. а коллеги из бывшей английской колонии нас побаиваются.

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

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

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

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

Caused by: net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Cannot modify readonly property: constructor.

нахожу сей алгоритм не тривиальным, поэтому пишу заметку на память. Чтобы удалить страницу в ворде, нужно:

1. врубить режим подсветки непечатных символов/параграфов: Cmd+8.
2. выделить параграф или linebreak страницы, которую надо удалить.
3. Собственно стереть выделенное.
4. Убедиться, что страница исчезла.
5. Выключить режим подсветки непечатных символов/параграфов: Cmd+8.

The latter group may be granted an extension of employment up to age 65 if it is in the interest of the Bank. At the International Monetary Fund, the mandatory age of separation is 65. However, the normal age of retirement, i.e., the age at which a retiree can receive a full retirement benefit, is 62.
12/12/2001

во сне я переместился в деревню, в дом, в котором я вырос, вместе с семьей. только мы там жили, а так же большая собака, 3 пушистых кота и 4 коровы, да. как-то я смотрю в окно и вижу, как корова пробила деревянный забор и вылезла на дорогу, а за ней и вторая.

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

и я словно стал наблюдателем за сериалом. Юэн Макгрегор обнаружил выходящего из подвала дома своего соседа, которого исполнял Дэвид Линч. он проник в подвал и нашел странные бумаги о заключении коммерческое предложение на поставку оборудования по производству воды из воды, большего объема из меньшего, там было слово красивое, но я забыл его как проснулся.

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

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

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

она начинает надоедать. наглость, бестактность, ... смотрю должность, junior. фигасе, джуны пошли борзые..

— так, давай сначала. идеей я не пользуюсь, тут стоит емакс, давай пошарю экран, что там было, sql, java, давай покажу? C-x h M-\
— что это за бред, в моей идее нет такого плагина, сочетание не работает, признавайся?

тут я не выдержал и прессанул её.

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

пылу дерзить у неё поубавилось.

— Сегодня мы продолбали аж целых 2 майлстоуна (из 4).
— И теперь мы заняли лавры первенства косячников года, оставив коллег из Индии далеко позади.

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

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

в общем, недолго думая, я принёс тем из вас, кто часто путешествует, тулу для упрощения подсчёта оставшихся или доступных в будущем дней по визе/нерезиденству/безвизу с ограничениями (X за Y).

an-pro.org

Самое простое.
— Шенгенская виза: 30 дней в течение 90.
— Эквадорский безвиз: 90 дней за 180.
— Нерезиденство: 183 за 365 дней.

Чистый клиент, родного общения с сервером лишён by design, из запросов во внешний мир — лишь аналитика от гугла. В первый раз долго грузицца, я знаю и работаю над тем, чтобы pulp browserify взлетел. Ну и плашки всякие, да, они тоже скоро появятся.

рубрика "сам себе юрист".
а добавление гуглоаналитики на веб-сайт — это нарушение GDPR или как? (если что: на сайте нет формы обратной связи нет, там вообще запросов с клиента на сервер нет и не планируется).

#2905635 тут хотелось очень странного + код писался бессонной ночью. в результате пришлось переписать его с третьей попытки с рекурсивным обсчётом, получилось o(n^2 — n + n), т.е. o(n^2). да и хрен с ним. оптимизировать лениво уже. на после релиза отложу. если тест выстрелит.

Плохо, когда правила 1hpd (hours per day) да даже 15 mpd (minutes per day) не работают. Всегда какая-нибудь хрень да выбьет из колеи. Ещё плохо, когда одновременно несколько проектов. Пропускная способность воспринимать информацию и производить value падает. И в какой-то момент хобби-проекту наступает двухнедельная дыра простоя. Восстановление потом — мама не горюй. Работает код — не трогай. Не работает — трассу подавай! Сижу уже пару часов и смотрю, почему алгоритм хождения по датам туда-сюда не работает.