Ояебундестаг
Apr. 19th, 2013 09:56 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
http://juick.com/zamotivator/2317894
Забиватор мутит веб-приложение на Scala+Lift.
Я сдуру решил глянуть, чо там за проблемы. В целом, надо как-то прекращать практику заглядывания "ради интереса" в чужие проекты, ибо голова не казенная.
Во-первых, гит я знаю плохо и переключится на ремоте branch так и не смог. Ну, тут все очевидно - надо изучать и пользоваться, это мне просто лень. А так - скачал просто архив
Во-вторых, слава богу, что ждевелоп заставил забиватора использовать мавен - он хоть и безумный, но по крайней мере, нормально документирован и я его уже использовал.
В-третьих, эта хреновина на mvn jetty:run выкачала половину интернета, по-моему. Этот странный фетиш разработчиков на тему "повторного использования кода" им боком вылезет еще неоднократно - когда ради 1 функции тащится целый фреймворк, а он за собой еще 100500 зависимостей - шансы налететь на конфликты версий и прочее червие сильно возрастают. А мавен это делает очень легким, оказывая медвежью услугу. Ну, там хотя бы лишние зависимости исключить можно и то хлеб.
В-четвертых, оно ругается на то, что там используются две разных версии Scala-compiler. Т.е. см. выше - про версии, "с приездом вас".
В-пятых, оно собирается ровно один раз. Второй раз надо удалять target, иначе конфликты типов вида
https://gist.github.com/metametaclass/5422381
В-шестых, забиватор частично прав насчет Lift - там просто реальный майндфак и хипстерство, документация в гугло-группе и на SO, разобраться конкретно с его проблемой можно, но радости от этого не наблюдается никакой.
Причина, в целом, классическая - веб-фреймворки (в отличие от библиотек) - очень негуманная штука. Стоит выйти за рамки HelloWorld и монолитных приложений и оказывается, что любая задача выливается в копание по исходникам, SO, форумам и раскиданной по сотне мигрирующих туда-сюда сайтов.
ЗЫ: Забиваторъ утверждает (http://juick.com/2320702) что мавен выбрал самостоятельно.
Забиватор мутит веб-приложение на Scala+Lift.
Я сдуру решил глянуть, чо там за проблемы. В целом, надо как-то прекращать практику заглядывания "ради интереса" в чужие проекты, ибо голова не казенная.
Во-первых, гит я знаю плохо и переключится на ремоте branch так и не смог. Ну, тут все очевидно - надо изучать и пользоваться, это мне просто лень. А так - скачал просто архив
Во-вторых, слава богу, что ждевелоп заставил забиватора использовать мавен - он хоть и безумный, но по крайней мере, нормально документирован и я его уже использовал.
В-третьих, эта хреновина на mvn jetty:run выкачала половину интернета, по-моему. Этот странный фетиш разработчиков на тему "повторного использования кода" им боком вылезет еще неоднократно - когда ради 1 функции тащится целый фреймворк, а он за собой еще 100500 зависимостей - шансы налететь на конфликты версий и прочее червие сильно возрастают. А мавен это делает очень легким, оказывая медвежью услугу. Ну, там хотя бы лишние зависимости исключить можно и то хлеб.
В-четвертых, оно ругается на то, что там используются две разных версии Scala-compiler. Т.е. см. выше - про версии, "с приездом вас".
В-пятых, оно собирается ровно один раз. Второй раз надо удалять target, иначе конфликты типов вида
https://gist.github.com/metametaclass/5422381
В-шестых, забиватор частично прав насчет Lift - там просто реальный майндфак и хипстерство, документация в гугло-группе и на SO, разобраться конкретно с его проблемой можно, но радости от этого не наблюдается никакой.
Причина, в целом, классическая - веб-фреймворки (в отличие от библиотек) - очень негуманная штука. Стоит выйти за рамки HelloWorld и монолитных приложений и оказывается, что любая задача выливается в копание по исходникам, SO, форумам и раскиданной по сотне мигрирующих туда-сюда сайтов.
ЗЫ: Забиваторъ утверждает (http://juick.com/2320702) что мавен выбрал самостоятельно.
no subject
Date: 2013-04-19 07:28 pm (UTC)no subject
Date: 2013-04-19 07:35 pm (UTC)no subject
Date: 2013-04-19 07:38 pm (UTC)https://groups.google.com/forum/?fromgroups=#!topic/scala-internals/jm8Axpb2qlE
Хм, вроде должно было ворнинг выдавать на классы внутри package objects, но не выдает.
no subject
Date: 2013-04-19 08:12 pm (UTC)no subject
Date: 2013-04-20 06:53 am (UTC)Начинаю бояться этой тусовки.
Не ровен час, и меня что-нибудь заставят...
no subject
Date: 2013-04-20 07:22 am (UTC)no subject
Date: 2013-04-20 02:20 pm (UTC)Ну, чтобы тупо прикинуть - все ли в порядке с веб-фреймворками или нет.
no subject
Date: 2013-04-20 09:17 am (UTC)Короче веб-фреймворки не могут быть гуманными, нет. Там ад и содомия произрастают прямо начиная от самых основ.
no subject
Date: 2013-04-20 11:11 am (UTC)no subject
Date: 2013-04-20 02:18 pm (UTC)no subject
Date: 2013-04-22 06:31 am (UTC)no subject
Date: 2013-04-22 01:44 pm (UTC)"почему у меня $("#myInput").datepicker() не работает"
no subject
Date: 2013-04-20 10:01 am (UTC)Но когда начинается "а мы возьмем для проекта вот эти три фреймворка, да еще от каждого по несколько разных версий одновременно", то и привет.
При этом в реальности из каждого фреймворка используется полторы библиотеки.
В этом отношении подход ruby куда гуманней. Нужна функция, берешь gem и не тянешь весь фреймворк целиком. Там, конечно, тоже могут подтянуться зависимости, но обычно куда менее фатальные.
no subject
Date: 2013-04-20 10:07 am (UTC)no subject
Date: 2013-04-20 02:31 pm (UTC)no subject
Date: 2013-04-21 10:49 am (UTC)А с календариком причины могут быть совершеннно не мистичиеские:
1) несколько раз инициировали календарик и ожидаете не тех эффектов
2) сколнировали кусок с календариком через jQuery и пробуете его навесить заново
3) у контрола уже были классы, которые просигналили, что календарик уже навешен.
Такого рода баги отлаживаются, хотя они и неприятны и трудно находимы.
no subject
Date: 2013-04-21 10:50 am (UTC)no subject
Date: 2013-04-22 06:51 am (UTC)Если у вас сложный UI на формах, особенно в интранете, почему бы вам не попробовать ExtJS или kendooUi, например? Или более радикальные Cappuccino/sproutcore? Пробовали ли вы связки gwt+extjs, если вам так нужна концепция единого кода для клиента и сервера?
Я думаю, при желании можно найти десяток библиотек, на головую превосходящих убогий jqueryUI, и при этом попадающие в ваши критерии "контрола" или "компонента" (который плох своей деревянностью в настройках и монструозными размерами при слабой функциональности, что-то я не замечал там проблем с отрисовкой — может это ваша проблема с кодом?).
Судя по вашему комментарию, дальше jqUI вы не смотрели, но разве это проблема серверных фреймворков?
no subject
Date: 2013-04-22 07:36 pm (UTC)no subject
Date: 2013-04-23 10:42 am (UTC)no subject
Date: 2013-04-21 07:04 pm (UTC)no subject
Date: 2013-04-21 07:34 pm (UTC)no subject
Date: 2013-04-25 03:31 am (UTC)И да, я его ни к чему не принуждал, он сам ©
no subject
Date: 2013-04-25 03:36 am (UTC)А то всё же в рассылку валится.
Или хотя бы постскриптум писать, чтоб не перечитывать по сто раз.
no subject
Date: 2013-04-25 03:50 am (UTC)no subject
Date: 2013-04-25 04:02 am (UTC)no subject
Date: 2013-04-25 02:04 pm (UTC)