metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-12-16 03:42 pm

Кто-то тупой, или я или гвозди

Сижу изучаю различные варианты реализации middle-tier, который планируется использовать в будущем для нескольких проектов. Решил пересилить свой страх и взглянуть на J2EE. А надо сказать, что для неподготовленного ума ентерпрайз жаба выглядит совершенно ирреально бредовой: миллиарды фреймворков, утилит, серверов, сотни страниц документации, проекты на ней содержат over 9000 папок и мелких исходников и xml-конфигов и вообще я не уверен, что в здравом уме и имея некую начальную свободу выбора инструментов, с этим стоит вообще связываться.

Начал искать что-нибудь вроде "J2EE для начинающих с пошаговыми инструкциями". Нашел AppFuse. Вроде все описано понятно, есть QuickStart, написано откуда качать зависимости, итд, итп. Но таки вы будете смеятся - но я не могу найти, где качать исходники этого дела. Ссылки "Download" на сайте нету.

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

Вообще говоря, у меня уже есть почти полностью готовая основа для этого миддл-тиера, на которой я бы проект сделал очень быстро: Firebird+Delphi+ASP.NET RESTful веб-сервис. Но проблема в том, что это означает полную и окончательную привязку проектов к виндам, отказ от любых потенциальных работ с юниксами в будущем и сгнаивание мозга до состояния "сеньор-фокспро-девелопер в ВЦ НИИ Говна и Торфа, 50 лет, 30 лет опыта рисования формочек в дизайнере".

Кроме того, если дать объявление "требуется разработчик на дельфи" - приходят такие долбаные мышевозы с паттернами "magic button" что рыдать хочется, соответственно шансов на то, что хотя бы когда-нибудь я займусь только архитектурой и управлением проектами, вместо того, чтобы самостоятельно писать код, внедрять и обслуживать - не останется никаких.


PS: Есть кстати, еще одна, еще более неадекватная альтернатива: сойти с ума и ударится в нетривиальщину вроде ерланга и хаскеля, начать писать самодельный миддл-тиер на чистом С и изобретать прочие велосипеды. То, что это гарантированно будет легче для нервной системы, чем J2EE и ASP.NET, я уверен. Там комьюнити меньше и не будет такого, что половина интернетов забита разнообразными фреймворками, каждый из которых настолько наворочен, что позволяет не писать код, а всего лишь парой сотен xml-конфигов сделать любое приложение.
Я вспоминаю 90-е годы, когда никаких интернетов не было, проекты были более мелкие и выбора "на чем писать" особо не было, можно было велосипеды изобретать хоть годами.

В этом, кстати, и проблема с J2EE - я уверен, что 83% авторов готовых фреймворков думают совершенно не так как я, то бишь неправильно, хаскель не изучали, и вообще делали эти фреймворки по наитию левой задней пятки.

Вот, к примеру: я считаю, что любой, кто сталкивался с статической типизацией и выводом типов, резко перестанет делать проекты "мегапереконфигурируемыми" с помощью сотен xml-конфигов, т.к. это выносит проверку правильности с времени сборки на время деплоймента и запуска. Ошибся в xml-файле в одной букве и вешайся, читай 100-строчные стеки вызовов и это еще хорошо, если у тебя доступ к продакшен-серверу есть.

[identity profile] oldmann.livejournal.com 2009-12-16 04:27 pm (UTC)(link)
ребе, при всем кровавом кошмаре корпоративной жабы, у нее есть главное достоинство - она есть под все мыслимые и немыслимые платформы.

[identity profile] eleon.livejournal.com 2009-12-16 04:27 pm (UTC)(link)
Может проще найти человека, который будет способен сперва научиться у тебя писать нормальный код, а потом обучить этому других?

[identity profile] metaclass.livejournal.com 2009-12-16 04:32 pm (UTC)(link)
Запрещено руководством.
Чтобы мне обучить кого-то, мне нужно перестать заниматься текущими проектами на год. Там и предметная область и программирование, и системное администрирование и прочий ад.

[identity profile] metaclass.livejournal.com 2009-12-16 04:34 pm (UTC)(link)
Ну вот поэтому я никак от идеи ее использовать и не откажусь.

[identity profile] henu3detb.livejournal.com 2009-12-16 04:36 pm (UTC)(link)
А какого цвета станет лицо руководства, когда ребе метакласс сляжет на две недельки с аппендицитом (тьфу-тьфу-тьфу)? А когда просто работу сменит? Зеленого или фиолетовенького?

[identity profile] dmzlj.livejournal.com 2009-12-16 04:41 pm (UTC)(link)
Йа думаю, надо сначала написать язык, а потом на нем колбасить миддлтьиры. Безумие --- это так увлекательно.

[identity profile] henu3detb.livejournal.com 2009-12-16 04:41 pm (UTC)(link)
А вы не используйте 83% готовых фреймворков. Возьмите этот, а остальное при острой нудже. Для middle tier-а без наворотов возможно, его одного и хватит.

[identity profile] metaclass.livejournal.com 2009-12-16 04:41 pm (UTC)(link)
О подобных вещах запрещено даже думать, это считается мыслепреступлением.

[identity profile] metaclass.livejournal.com 2009-12-16 04:44 pm (UTC)(link)
Ну, написать версию хаскеля с распределенной виртуальной машиной и встроенной log-based DB, прикрутить к нему веб-сервис на чистом С и слечь в психушку.

[identity profile] metaclass.livejournal.com 2009-12-16 04:44 pm (UTC)(link)
Так к нему ж в любом случае понадобится всякий адъ, типа сервлет-контейнеров и прочего.

[identity profile] oldmann.livejournal.com 2009-12-16 04:49 pm (UTC)(link)
как показывает практика, ежели грамотно надрочиться на ей писать, да еще CVS какой-никакой иметь, можно забыть про местных червей с жабами, и на аутсорс фигачить себе.

(Anonymous) 2009-12-16 04:51 pm (UTC)(link)
> В этом, кстати, и проблема с J2EE - я уверен, что 83% авторов готовых фреймворков думают совершенно не так как я, то бишь неправильно, хаскель не изучали, и вообще делали эти фреймворки по наитию левой задней пятки.

все гораздо хуже - это могли писать студенты в виде лабы/курсового/диплома.

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

[identity profile] c-a-s-u-s.livejournal.com 2009-12-16 04:52 pm (UTC)(link)
я прям боюсь спросить, а сколько не было отпуска - ну чтоб недельки две о работе не вспоминать вообще?

[identity profile] henu3detb.livejournal.com 2009-12-16 04:54 pm (UTC)(link)
Вот ввел в гугле только что haskell declarative transactions и haskell distributed transactions. В общем если для вас это меньший ад чем настроить за 10 минут сервлет контейнер, то я аргументов больше не имею :)
(И это я еще в ремойтинг и секюриит не вникал:))

[identity profile] eleon.livejournal.com 2009-12-16 04:55 pm (UTC)(link)
Брать специалиста, как помощника, сроком на год? За год без отрыва от производства, решая мелкие задачи, но каждый раз разные - можно многому научиться, думаю.
Брать специалиста по администрированию, специалиста по прочему аду и джуниор делфи девелопера, которого обучать без отрыва от производства?
На самом деле один из моих давно предыдущих руководителей в один момент ОЧЕНЬ пожалел, что на меня были завязаны все техпроцессы и он давился жабой в ответ на предложение взять еще людей. А это какбэ просто типография, в которой все процессы в принципе описаны уже лет 30 как. В разработке ПО, уверен, все на несколько порядков критичнее.

[identity profile] metaclass.livejournal.com 2009-12-16 04:57 pm (UTC)(link)
Вот в этом и проблема, я пытаюсь это дело воспринимать как целостную систему, понимая, что я делаю. А это, похоже, не принято.

[identity profile] paranoekk.livejournal.com 2009-12-16 04:57 pm (UTC)(link)
Во время отпуска наверное комп мучает дома. Бесполезно :)

[identity profile] metaclass.livejournal.com 2009-12-16 04:58 pm (UTC)(link)
Ну, в этом году я в отпуске вроде был. Чтобы не вспоминать вообще - такого не было никогда.
Я, правда, очень часто на работе не появляюсь вообще, мне проще из дома работать. В этом году еще, кроме отпуска, месяц вообще просидел у родителей жены, оттуда работая.

[identity profile] metaclass.livejournal.com 2009-12-16 05:03 pm (UTC)(link)
Жабба запрещает брать людей, которых через неделю после взятия на работу нельзя послать "ставить софт у клиентов" и которые отвлекают ведущих разработчиков от непосредственного процесса ублажения клиентов методом целования их задниц посредством телефона.

[identity profile] vp.livejournal.com 2009-12-16 05:04 pm (UTC)(link)
Есть люди, у которых есть хромосома, которая позволяет это понимать, и наоборот. Нет хромосомы - нет понимания проблемы. Я так понимаю, что проблема именно на уровне генетики.
Потому что если человек помрет/сойдет с ума и при этом придется закрыть направление работы, и при этом спокойно жить - это апофеоз, слабо понимаемый. Но тем не менее имеющий место жить.
А обучать "без отрыва от производства" нереально. Это можно делать только в случае ОЧЕНЬ слабой загрузки, когда масса свободного времени. Когда рабочее время плотно занято работой, это невозможно.

[identity profile] enternet.livejournal.com 2009-12-16 05:51 pm (UTC)(link)
Когда несколько лет назад до меня дошло, что перспектива именно типа "сеньор-девелопер в ООО Говна и Торфа", я серьезно заявил руководству что не заинтересован в статус-кво и намерен свернуть у них карьеру. Надо заметить, что люди серьезно обеспокоились, махали кнутами и пряниками, с год пытались вручить других проектов или развести на доверие методом "завтра всё будет". С разной степенью успешности. Интересный опыт. Нужно будет как-нибудь обезличенно описать )

Сейчас встречаю иногда бывших коллег, основная тема - "ты вовремя скипнул", или "я и сам планирую". А про бывшее руководство такого рассказывают, что даже непонятно как они сами там сейчас живут )

А про ответственность перед фирмой ты забудь. Это фикция. Я тебе как менеджер говорю - учет рисков, это обязанность руководителя. Это проблемы руководства, не твои. Но меру знать нужно. Расставаться нужно клянясь в любви и улыбаясь. А то мир тесен.

Начать можно с оценки реальной доходности своих проектов (она не определяется количество труда). По итогам поймешь свою ценность для конторы.

[identity profile] aliaksei.livejournal.com 2009-12-16 06:03 pm (UTC)(link)
шансов на то, что хотя бы когда-нибудь я займусь только архитектурой и управлением проектами, вместо того, чтобы самостоятельно писать код, внедрять и обслуживать - не останется никаких
Почему же? Предлагаешь достойную оплата за сей труд, фильтруешь соискателей - и манагерствуй сколько душе угодно.

[identity profile] metaclass.livejournal.com 2009-12-16 06:06 pm (UTC)(link)
Ответственность перед фирмой давно никого не волнует - если руководство не чешется, что завтра все полетит в тартарары - значит, разработчикам, у которых нет ресурсов на это повлиять, тоже положено положить на все болт и выбирать для работы не то, что позволит "сделать и получить бабки побыстрее", а то, что им лично будет полезно в ближайшие десять лет.

[identity profile] metaclass.livejournal.com 2009-12-16 06:07 pm (UTC)(link)
Фильтровать соискателей надо на этапе используемых инструментов. Дельфи при всей его простоте и полезности и прочем - четкий критерий неадеквата среди разработчиков. А адекватные разработчики работу, имхо, не меняют.

[identity profile] metaclass.livejournal.com 2009-12-16 06:09 pm (UTC)(link)
Я не умею за 10 минут настроить сервлет контейнер :)
Мне ж нужно разобраться как его настраивать в произвольных позах, на придурочных серверах удареных на голову клиентов с минимальными усилиями.

Page 1 of 9