to post messages and comments.

← Все записи с тегом погроммирование

@agr:

yet another haskell project goes live.

@agr:

Сайт — это жесть, релиз ещё на неделю может отложиться. Ещё 4 замечания зафиксировано по адаптивной верстке. Ещё +10 мелких поступило сегодня.
Ну хорошо, что эта мелочь тривиально решилась правками стилей.
Верстальщик сделал лого текстом вместо картинки. CSS magic.
Жду пятой итерации замечаний.

@agr:

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

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

@agr:

заюзал dehydrated и в три щелчка прикрутил https.
верстальщик верстает, дизайнер рисует картинки.
как эти ребята закончат — можно будет деплоиться.

@agr:

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

@agr:

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

@agr:

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

@agr:

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

@agr:

а это вообще нормально, что компиляция yesod формы для POST запроса из 12 полей вызывает OOM? такое поведение уходит, если дать виртуалке 6 гб. На 5.5 гб падает. при этом компиляция под нативную ось тянет и не жрет столько памяти..

@agr:

По сайту осталась 1 основная доработка, блокирующая релиз, и 3 минорные проблемы.

@agr:

Студентка решила повторяющуюся мегазадачу.
20 часов превратилось в 0.25 часа.

Другая тоже подтягивается: решила 3 типовые задачи.

Хорошо-то как. По сайту осталось 7 основных доработок, блокирующих релиз. и 3 минорных, которые надо бы тоже решить..

@agr:

дорос до докера. для того, чтобы получить  ~/.stack/programs/x86_64-linux на OSX, пришлось в stack.yaml добавить следующее:

system-ghc: false
docker:
image: fpco/stack-build:lts-8.0
enable: true
run-args:
— --ulimit=nofile=60000
set-user: true

GHC для сборки нужно порядка 30000 открытых файлов. системные значения — около 15 тысяч. Да, забыл сказать, что сначала надо было сделать upgrade проекта с 7.10.2 на 8.0.2. До этого в системе действовал какой-то другой лимит, уже успел забыть, мешавший компилятору делать своё дело. Потом с lts-3.22 уходить на lts-8.21. Теперь — делать небольшой downgrade до 8.0, т.к. для 8.21 не было образа, а делать образ спецом уж крайне лениво было. Теперь вот зоопарк конфигураций.

@agr:

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

Сайт:
— делегирование домена успешно осуществлено.
— осталось несколько тэгов из schema.org прикрутить.
— можно деплоить сайт после этого.

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

Новости фронтэнда.
— после устранения боли в стерилизации JSON и прикручивания CORS к серверу процесс качественно ускорился.
— не покидает меня мысль о том, что промежуточный State на клиенте не нужен. N2O.hs себя хорошо показывал, но еще очень сыроват в качестве веб-фреймворка. Думаю после деплоя сайта уделить ему качественно времени.

@agr:

Вроде всё есть, а сериализации-десериализации массивов/списков днём с огнём не сыщешь. Чуть дальше примитивных типов уйдёшь — Generic не шуршит. Nested types — тоже ни в какую. Пошёл в код посмотрел purescript-foreign. А там всё общение через FFI. Ну зашибись, приехали. Причем без посредника — никак. Напрямую — жесть.

instance Decode (Array MyAwesomeType) не указан, вывести не могу.
Заводишь инстанс на Array — сиротка, вай-вай-вай, пошёл вон.

Придётся юзать FFI: github.com

@agr:

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

page.onError = function(msg,trace){}

@agr:

На самом деле emacs

@agr:

а как вы решаете вопрос с удаленной работой? аренда офиса, отдельный кабинет в квартире/доме, сраные хипстерские местечки/кафешки? или вообще не заморачиваетесь?

@agr:

Почему, даже когда проектируешь виджет в UI, в конечном итоге вырисовывается event-based херня поверх структур-посредников?

@agr:

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

@agr:

Не, так, конечно, бывает. Вместе с компилятором рекомендуется ставить `pulp`, а-ля `ghcid`, только покруче.

Делаем 1.
pulp init # OK
pulp build

/usr/bin/env node not found.
ок, сделал симлинку, поехали.

Делаем 2.
pulp build

Error found: in module Control.Monad.Eff
bower_components/purescript-eff/src/Control/Monad/Eff.purs line 36, column 1 — line 36, column 52

reddit.com чувак говорит, ставьте новый purescript, там все починено!

Делаем 3
npm install -g [email protected]

Нода говорит, я старая, не панимат.
искаропки недостаточно хипсторская шла. скачали, перебили, да, симлинка не нужна, поехали.

Делаем 4.
pulp build

psc not found
В том же треде чувак пишет, я тут переименовал утилиту, psc там, и другие старые выкинул на мороз, юзайте пацаны новую, purs. пока чиню поломанное API с pulp, юзайте обертыши из директории scripts, все работает. Ок, пошёл, сделал симлинков, выдал доступ юзеру своему.

Делаем 5.
pulp build

Invalid option `--ffi'

В том же веткой ниже другой чувак говорит, всё тлен, пацаны, в гуглогруппе разрулили.
Ломать не строить. Откатывайтесь обратно на старый, пока, вот вам зависимости, вот вам счастье. Ок, поправил зависимости.

Делаем 6.
bower i
pulp build.

* Build successful