Category: еда

Category was added automatically. Read all entries about "еда".

animated

Линзы, но не линзы

Такая идея:
- приложение берет свой state: { filter: { itemColor: 'red' }, sort: 'name' }
-- рисует FilterPanel, передавая внутрь state: { itemColor: 'red' }
--- FilterPanel рисует кнопку Clear Filter
--- юзер кликает по Clear Filter, в FilterPanel кидается событие { action: 'clear' }
-- FilterPanel кидает вниз событие { action: 'change_filter', value: {}, cause: { action: 'clear' } }
- приложение делает state = { filter: {}, sort: 'name'}

Потом нам захотелось стирать sort если жамкнули по "Clear Filter". Но не стирать, если все фильтры руками потёрли. Ну мы нагло лезем в cause, и делаем if (cause.action == 'clear') ...

Тут типа линз, но мы вместо того, чтобы ультимативно информацию выкидывать, мы ее аттачим. FilterPanel не должна давать гарантии, что она всегда будет именно такой "cause" кидать, т.е. при ее изменении хаки ниже поотлетают. Но это ок - на идеальный мир надо бесконечность времени, поэтому у нас он не идеальный.

Можно провести аналогию с ООП. Есть приватный метод, и хер ты чего сделаешь. Но если если его сделать protected - можно чуть что подлезть, и исправить. Ну и халявные плюшки, вроде того что можно каждое действие юзера логировать детально - для аналитики, чтобы баги воспроизводить, или пост-фактум какие-нибудь датафиксы делать.

Я ищу тут что-то, что позволит просто и быстро писать UI, пока у тебя все как всех, но чуть что - иметь возможность погнуть систему. Банальный ООП неплохо тут пашет - простое - просто, среднее - норм, сложное - ад пизды. Хочется вот попробовать последний пункт попробовать полечить как-то, сохранив первые два.

Может посоветуете чего?
animated

Сникерсы-хуикерсы

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

Давайте придумывать названия. Можно коллективно - засылайте в каменты, обсуждаем, потом все скопом засылаем, скажем, на хабр.
animated

Хуясе...

"Когда я ем - я как всегда"
(надпись в столовой для глухонемых)


У нас тут фичу делают - чтобы всякие там спец-опции для авиаперелетов заказывать. Типа жратву только кошерную чтобы подавали, или например "сидеть не хочу у окна патамучто могу обсаццо". Мест для курящих и меню "бухло и закусь" почему-то нету.
Один пункт меня убил. Называется "Deaf with hearing dog" - типа глухой со слышащей собакой. Заметьте - глухой со слышащей, а не слепой с видящей...
На сайте написано что она телефон может услышать и показать хозяину что он звонит. Зачем только - поиздеваться чтобы чтоли?
animated

Зогадка, что вчера разгадывали.

Решил я в общем вот это:
http://baburyc.narod.ru/zagadka.htm
Сцуки, переводить задачи не умеют. Если знать сразу что "слева" это непосредственно слева, а не через один или два или три, то решается эту хуйня с полпизды. Если нет - тоже решается, но медленнее и решений целых четыре штуки получается.

[UPD] Тут мне подсказывают - забыл написать что я самый умный, именно поэтому и решил.

Решить на компе наверное интереснее будет. Лезут варианты:
- конкретно для этой задачи зарулит тупой перебор
- для подобных - эвристический поиск на пространстве состояний. Где состояние - частично заполненое поле, переход - заполнение какой-либо клетки без нарушения условий.
Эвристика - изменение значения максимальной части условия. Поясню: например если "В зеленом доме пьют кофе" после перехода становится истинным - это очень хорошо. Но на крайняк поставить "зеленый дом" или "кофе" - тоже выгоднее чем просто поставить в слепую.
Ну и глубину тоже традиционно в эвристике юзаем - чем дальше влезли, тем оценка ниже.

[Есчо UPDate] На Wikipedia написано что в самой жосткой редакции задачу нужно решать в уме. Вот это жесть, это я бы не смог никогда.