metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-04-03 01:06 am

В Советской Белоруссии SQL разжигает айседа

http://theiced.livejournal.com/238346.html
Собственно, про кобол я не знаю, на дельфи пишу уже 15 лет и никак избавится от него не могу (слишком много легаси кода), а вот про SQL я с ним не согласен.
Сам по себе SQL очень хорошо подходит для генерации отчетов. Если отчет сводится к фильтрации-сортировке-группировке множеств - идеально. С рекурсивными CTE - еще и деревья можно обрабатывать, не особо включая мозг. Всунув поверх этого минимальных размеров постобработку на какой-нибудь функциональщине, можно сделать почти любой отчет, пришедший в голову свихнувшимся на Excel выпускникам нархоза, работающим в минстате, минфине и МНС.

Но когда доходит до процедурных расширений, API между СУБД и клиентскими приложениями или каких-нибудь вещей, которые забыли вовремя добавить в стандарт - начинается полная, немыслимая жопа.
Например, проклятая тема - генерация автоинкрементных ключей и возвращение значений автоматически заполненных полей. Кто во что горазд - identity, генераторы, sequence, функции (в каждой СУБД названные по разному), returning, заебы на тему "вызывать в той же транзакции и сессии" и прочая и прочая. Про вариации на тему "вернуть поле, которое заполняется автоматически, но не является ключом/identity" лучше даже не думать.
Неудивительно, что люди при первой же возможности сбегают в ORM (которые являются уже второй производной от всего этого маразма и несут на себе его неизгладимый след).

[identity profile] fraks-nsk.livejournal.com 2013-04-03 03:16 pm (UTC)(link)
На свете много чего есть. С какой стати я должен тратить свое время на освоение технологии которая может быть в чем-то удобнее, но требует кучу времени на изучение и переписывание. Вообще, желание "переписать все заново" нифига не конструктивно. Кроме того у меня проблемы с "быстрее/медленнее" нету. Она не в этом месте.

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

[identity profile] norguhtar.livejournal.com 2013-04-03 03:25 pm (UTC)(link)

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

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


Вообще, желание "переписать все заново" нифига не конструктивно. Кроме того у меня проблемы с "быстрее/медленнее" нету. Она не в этом месте.

А я где-то говорил про переписать заново? Просто если вы изучили одну технологию и успокоились, то вы можете оказаться в ситуации тех самых товарищей с Cobol.


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

Да не я не против. Чем больше таких людей как вы тем больше ценнее те кто знает более одной технологии и изучает новые.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 03:48 pm (UTC)(link)
У меня всего один большой проект который будет вечно ;)
Если вдруг он перестанет быть актуальным - у меня есть куча другой работы. Программизм - не единственное мое занятие.

Я в жизни изучил не одну технологию, многие из них уже устарели, например Clipper, FoxPro, Когда-то на фортране писАл, и макроассемблере. Просто сейчас мозг уже не позволяет просто так, из любопытства изучить какую-то новую технологию. Ресурсы ограничены и их становится все меньше.
FoxPro кстати был вполне неплохим инструментом для своего времени, позволял быстро решать задачи. ;) То что я на FoxPro делал за одну ночь между командировками, имея только одну бумажную книжку - справочник и никакого опыта, кроме фортрана и макро, потом на Delphi уже делалось за неделю.
Технологии становятся все сложнее и многочисленнее, каждая заявляется как революция и панацея, но немногие переживают более нескольких лет. Все узнать и изучить невозможно. Да уже тупо и неинтересно.

[identity profile] norguhtar.livejournal.com 2013-04-03 03:54 pm (UTC)(link)

У меня всего один большой проект который будет вечно ;)
Если вдруг он перестанет быть актуальным - у меня есть куча другой работы. Программизм - не единственное мое занятие.

Я сочувствую тем кому вы его пишете. Они никогда не узнают что бывает лучше.


Технологии становятся все сложнее и многочисленнее, каждая заявляется как революция и панацея, но немногие переживают более нескольких лет. Все узнать и изучить невозможно. Да уже тупо и неинтересно.

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


[identity profile] fraks-nsk.livejournal.com 2013-04-03 04:21 pm (UTC)(link)
Я пишу его себе. Являюсь совладельцем бизнеса которому для работы требуется этот софт. Лучше - бывает, но требует намного больше денег на разработку и на обслуживание. Лучшая программа и лучший бизнес - не одно и то же. Бессмысленно доводить до идеала заточку на плуге - на результате вспашки это не скажется а вот затрат добавит.

[identity profile] norguhtar.livejournal.com 2013-04-03 05:23 pm (UTC)(link)

Я пишу его себе.

В таком случае и разговаривать не о чем. Такие программы как правило не блещут красотой кода и красивой архитектурой.

[identity profile] fraks-nsk.livejournal.com 2013-04-03 05:49 pm (UTC)(link)
Задача программы - не блистать кодом и красотой архитектуры а выполнять поставленные задачи и быть достаточно понятной для поддержки и развития. Архитектура должна позволять вносить изменения не скатываясь при этом до набора костылей.

[identity profile] norguhtar.livejournal.com 2013-04-03 05:54 pm (UTC)(link)

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

Как раз чтобы она была понятной для поддержки развития у нее должна быть внятная архитектура и понятный код.


Архитектура должна позволять вносить изменения не скатываясь при этом до набора костылей.

Учитывая какой вы показывали код для формы у вас программ как раз набор костылей. Ну не пишут так уже давно. Это приводит к хреновой читаемости кода и размазыванию логики по всей программе ровным слоем.

[identity profile] anonim-legion.livejournal.com 2013-04-03 06:58 pm (UTC)(link)
А я сочувствую тем, кто покупает еду в российских магазинах, учатся в школах, ходят к местным врачам и ездят по дорогам.

Они никогда не узнают, что бывает лучше.

Но, ведь они - жители - сами все это производят и обслуживают. За деньги. Производят говно и потребляют его же. И система находится в относительном равновесии.

Возможно, кто-то первый должен начать делать не-говно не за очень большие деньги, а за свою обычную зарплату. Но, я не вижу причины, по которым первыми(читай - крайними) должны быть именно программисты.

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

>панацея революция бизнес-процессы буллшит-бинго

Знаете, у торгового дома проблемой является не софт, а поставщики, покупатели и логистика. Кобол здесь как был необходим и достаточен 30 лет назад, так и сейчас подходит.

[identity profile] theiced.livejournal.com 2013-04-03 07:10 pm (UTC)(link)
зачем сочувствовать рашкиноидам? мудакам мудачья жизнь.

[identity profile] anonim-legion.livejournal.com 2013-04-03 07:31 pm (UTC)(link)
Я как бы сам в РФ живу, поэтому меня все это касается напрямую.

Неужели я неправ?

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

[identity profile] theiced.livejournal.com 2013-04-03 07:34 pm (UTC)(link)
потому что ты живёшь в рашке. ни один нормальный человек не будет жить в рашке.

[identity profile] theiced.livejournal.com 2013-04-03 07:35 pm (UTC)(link)
btw - покупательная способность _моей_ зарплаты растёт с каждым годом.

[identity profile] anonim-legion.livejournal.com 2013-04-03 07:38 pm (UTC)(link)
Ты же понял о чем речь или притворяешься? Согласись, что 2000$ в 2004 году и сейчас - очень разные суммы.

(no subject)

[identity profile] theiced.livejournal.com - 2013-04-04 00:56 (UTC) - Expand

[identity profile] norguhtar.livejournal.com 2013-04-04 12:31 am (UTC)(link)

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

Вы в курсе что такое фактор автобуса? Вот тут он наблюдается в полный рост.


Знаете, у торгового дома проблемой является не софт, а поставщики, покупатели и логистика. Кобол здесь как был необходим и достаточен 30 лет назад, так и сейчас подходит.

Знаете обычно говорят, что про сантехников вспоминают когда начинает пахнуть, в IT ровно точно так же. Про него вспомнят когда сломается. И при использовании старых технологий можно получить адовые убытки. За счет того что придется очень долго искать спецов по технологии и они захотят много денег. Вы не читали вот этот прекрасный образчик http://hrazvedka.ru/guru/obratnyj-promyshlennyj-shpionazh-i-industrialnaya-arxeologiya.html
И это замечу вообще инженерия а не IT.

[identity profile] fraks-nsk.livejournal.com 2013-04-04 01:43 am (UTC)(link)
По ссылке хорошее описание. Там же сказано что мораль неизвестна, и это так и есть. Проектировщики завода и люди поддерживающие налаженный техпроцесс на заводе - это разные люди. В вашем представлении проектировщики должны вечно быть при этом заводе. Но в этом случае не факт что он будет коммерчески успешным.

Среди близкой мне книготорговли есть такой пример - была очень крупная книготорговая компания ТОП-Книга, крупнейшая в России. Выросла она в Новосибирске, первейшие наши конкуренты. Были. Ими был занят огромный кусок рынка, владелец - математик по образованию, бизнес строился по лучшим образцам зарубежных книготорговых организаций, куча розничных магазинов в куче городов, оптовая сеть, большой штат, куча программистов, а в академгородке есть из кого выбрать, внедрялись и разрабатывались крутые программные средства.

Грянул кризис - и ТОП сдулся, полностью. Нет больше такой фирмы. Красивые программы не помогли.

[identity profile] theiced.livejournal.com 2013-04-04 02:08 am (UTC)(link)
хоть на цитаты растаскивай же

[identity profile] norguhtar.livejournal.com 2013-04-04 02:24 am (UTC)(link)

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

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


Среди близкой мне книготорговли есть такой пример - была очень крупная книготорговая компания ТОП-Книга, крупнейшая в России. Выросла она в Новосибирске, первейшие наши конкуренты. Были. Ими был занят огромный кусок рынка, владелец - математик по образованию, бизнес строился по лучшим образцам зарубежных книготорговых организаций, куча розничных магазинов в куче городов, оптовая сеть, большой штат, куча программистов, а в академгородке есть из кого выбрать, внедрялись и разрабатывались крутые программные средства.

Программные средства это инструмент. Причем у многих компаний основной инструмент и сами по себе они не панацея. Но если они ломаются, то начинаются большие проблемы. Вплоть до потерь денежных средств.
Вот вам пример http://oldmann.livejournal.com/225657.html

Если вы все еще не поняли, давайте я вам задам пару вопросов по вашему ПО:

1. Используется ли у вас последняя версия Delphi?
2. Планируется ли переход на Lazarius?
3. Есть ли система контроля версии?
4. Есть ли хоть какая-то документация по тому как это работает.
5. Есть ли описание как поставить среду с нуля для сборки проекта.
6. Проверялась ли сборка проекта после установки среды с нуля.
7. Есть ли у вас установочный пакет
8. Возможна ли автоматизированная сборка?

[identity profile] fraks-nsk.livejournal.com 2013-04-04 02:43 am (UTC)(link)
>> Это у вас проектировщики вечно при заводе, а не у меня. Я вообще-то говорю, что фактора автобуса быть не должно.

Фактор автобуса существует всегда.
Чем проще инструмент - тем надежнее.
Вам почему-то кажется что есть один правильный метод написания а все остальные неправильные и ущербные.

>> Если вы все еще не поняли, давайте я вам задам пару вопросов по вашему ПО:

>> 1. Используется ли у вас последняя версия Delphi?

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

>> 2. Планируется ли переход на Lazarius?

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

>> 3. Есть ли система контроля версии?

Есть.

>> 4. Есть ли хоть какая-то документация по тому как это работает.

Хоть какая-то - есть, но документацией это назвать сложно.

>> 5. Есть ли описание как поставить среду с нуля для сборки проекта.

Есть. но писалась много лет назад, возможно сейчас по той последовательности не все пройдет гладко.

>> 6. Проверялась ли сборка проекта после установки среды с нуля.

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

>> 7. Есть ли у вас установочный пакет

Нет. Он не нужен. Программа являет собой один exe и один ini с параметрами коннекта. Бросаем в любое место и запускаем.
Для инсталляции клиенской части Firebird можно юзать инсталлятор от Firebird но я его тоже не юзаю, мне проще скопировать папку с сервером и запустить там батник из 5 строк который пропишет все куда надо, без лишних глупых вопросов.

>> 8. Возможна ли автоматизированная сборка?

Сделать можно, но не требуется.

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:07 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 03:17 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 03:29 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 04:08 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 04:34 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 04:55 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 05:47 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-04 05:59 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 06:01 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-04 06:46 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-04 07:27 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:34 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2013-04-04 08:35 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:42 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:42 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:47 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:56 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 09:03 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 09:18 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 05:05 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 05:18 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2013-04-04 05:52 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 05:54 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:08 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:22 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:23 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:36 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2013-04-04 08:37 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:40 (UTC) - Expand

[identity profile] anonim-legion.livejournal.com 2013-04-04 07:37 am (UTC)(link)
>Вот вам пример oldmann.livejournal.com/225657.html

В примере как раз на старую, очень старую, несокрушимую технологию поставили рулить хрен знает кого. Из экономии. Ну, если специально ломать - все сломается.

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:10 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:21 (UTC) - Expand

[identity profile] anonim-legion.livejournal.com 2013-04-04 07:41 am (UTC)(link)
> фактор автобуса

Для защиты от автобуса, надо собирать продукт из тех компонент, из которых все собирают. А внедрение новых бесплатных красноглазых технологий - тормозить.

"Не выеживайся, Микола, слушай свои Валенки"

[identity profile] norguhtar.livejournal.com 2013-04-04 08:00 am (UTC)(link)

Для защиты от автобуса, надо собирать продукт из тех компонент, из которых все собирают. А внедрение новых бесплатных красноглазых технологий - тормозить.

Это из каких же? Интересно даже стало.

[identity profile] fraks-nsk.livejournal.com 2013-04-04 08:38 am (UTC)(link)
Ну Delphi же! Он как раз применяется для внутрикорпоративных программ.

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:46 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 08:52 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:54 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 09:01 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 09:03 (UTC) - Expand

(no subject)

[identity profile] fraks-nsk.livejournal.com - 2013-04-04 09:04 (UTC) - Expand

[identity profile] anonim-legion.livejournal.com 2013-04-04 07:47 am (UTC)(link)
Дополняю.
Сходили бы вы вот сюда: r42oo5.blogspot.ru/2013/04/3.html и прокомментировали.

Избранное оттуда:

...Вместо пути "над нами нет манагеров и дэдлайнов, сделаем всё просто и понятно" система пошла по накатанному: сделаем как можно сложнее, чтобы потом продавать "жреческие услуги". Каждый (Li|U)n(u|i)x админ, как известно, немного шаман. Почему? Потому что "просто и понятно" не продаётся, хоть ты тресни.



...Благо сегодня, в эру многозадачных телефонов с графическим интерфейсом, уже и ежу ясно что написать ОТЛИЧНУЮ операционку можно было за несколько лет имея ресурсов раз в 10 меньше чем у Линукса таки было, забудем откуда. "Ни в коем случае! Не позволим!" браво заявили "Линукс и его команда" и сотворили бессмысленного монстра из пыли, грязи и мегатонн унаследованного Юникс-кода и протоколов. Альтернативные 10 проектов маленьких, честных, симпатичных и подающих надежды BeOS умерли не родившись. А зачем нам хорошая ОС? У нас есть нежно любимые 6 (7? 8? кто больше?!) интерпретаторов командной строки...


Это ж песня! У нас было 2 пакета травы, 75 таблеток мескалина, 5 упаковок кислоты, пол-солонки кокаина...

[identity profile] norguhtar.livejournal.com 2013-04-04 08:06 am (UTC)(link)
Товарищ речь идет не о давайте сложную технологию модную замутим, а чуваки у вас очень старый код. Если мы ничего делать не будем, мы не сможем это запустить через пару лет.

А про BeOS там отдельная песня и по сложности она сравнима с linux. Вон интузиасты Haiku пилят до сих пор до Beta не добрались.

Если вы таки думаете я такой весь из себя красноглазый с надо замутить новую технологию, то увы это не так. Я вполне себе традиционные инструменты в мире java пользую spring framework, jpa, maven и это как раз дает меньше кода и больше прозрачности. Особенно за счет использования декларативки.

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:19 (UTC) - Expand

(no subject)

[identity profile] norguhtar.livejournal.com - 2013-04-04 08:25 (UTC) - Expand