В Советской Белоруссии SQL разжигает айседа
http://theiced.livejournal.com/238346.html
Собственно, про кобол я не знаю, на дельфи пишу уже 15 лет и никак избавится от него не могу (слишком много легаси кода), а вот про SQL я с ним не согласен.
Сам по себе SQL очень хорошо подходит для генерации отчетов. Если отчет сводится к фильтрации-сортировке-группировке множеств - идеально. С рекурсивными CTE - еще и деревья можно обрабатывать, не особо включая мозг. Всунув поверх этого минимальных размеров постобработку на какой-нибудь функциональщине, можно сделать почти любой отчет, пришедший в голову свихнувшимся на Excel выпускникам нархоза, работающим в минстате, минфине и МНС.
Но когда доходит до процедурных расширений, API между СУБД и клиентскими приложениями или каких-нибудь вещей, которые забыли вовремя добавить в стандарт - начинается полная, немыслимая жопа.
Например, проклятая тема - генерация автоинкрементных ключей и возвращение значений автоматически заполненных полей. Кто во что горазд - identity, генераторы, sequence, функции (в каждой СУБД названные по разному), returning, заебы на тему "вызывать в той же транзакции и сессии" и прочая и прочая. Про вариации на тему "вернуть поле, которое заполняется автоматически, но не является ключом/identity" лучше даже не думать.
Неудивительно, что люди при первой же возможности сбегают в ORM (которые являются уже второй производной от всего этого маразма и несут на себе его неизгладимый след).
Собственно, про кобол я не знаю, на дельфи пишу уже 15 лет и никак избавится от него не могу (слишком много легаси кода), а вот про SQL я с ним не согласен.
Сам по себе SQL очень хорошо подходит для генерации отчетов. Если отчет сводится к фильтрации-сортировке-группировке множеств - идеально. С рекурсивными CTE - еще и деревья можно обрабатывать, не особо включая мозг. Всунув поверх этого минимальных размеров постобработку на какой-нибудь функциональщине, можно сделать почти любой отчет, пришедший в голову свихнувшимся на Excel выпускникам нархоза, работающим в минстате, минфине и МНС.
Но когда доходит до процедурных расширений, API между СУБД и клиентскими приложениями или каких-нибудь вещей, которые забыли вовремя добавить в стандарт - начинается полная, немыслимая жопа.
Например, проклятая тема - генерация автоинкрементных ключей и возвращение значений автоматически заполненных полей. Кто во что горазд - identity, генераторы, sequence, функции (в каждой СУБД названные по разному), returning, заебы на тему "вызывать в той же транзакции и сессии" и прочая и прочая. Про вариации на тему "вернуть поле, которое заполняется автоматически, но не является ключом/identity" лучше даже не думать.
Неудивительно, что люди при первой же возможности сбегают в ORM (которые являются уже второй производной от всего этого маразма и несут на себе его неизгладимый след).
no subject
Сходили бы вы вот сюда: r42oo5.blogspot.ru/2013/04/3.html и прокомментировали.
Избранное оттуда:
...Вместо пути "над нами нет манагеров и дэдлайнов, сделаем всё просто и понятно" система пошла по накатанному: сделаем как можно сложнее, чтобы потом продавать "жреческие услуги". Каждый (Li|U)n(u|i)x админ, как известно, немного шаман. Почему? Потому что "просто и понятно" не продаётся, хоть ты тресни.
...Благо сегодня, в эру многозадачных телефонов с графическим интерфейсом, уже и ежу ясно что написать ОТЛИЧНУЮ операционку можно было за несколько лет имея ресурсов раз в 10 меньше чем у Линукса таки было, забудем откуда. "Ни в коем случае! Не позволим!" браво заявили "Линукс и его команда" и сотворили бессмысленного монстра из пыли, грязи и мегатонн унаследованного Юникс-кода и протоколов. Альтернативные 10 проектов маленьких, честных, симпатичных и подающих надежды BeOS умерли не родившись. А зачем нам хорошая ОС? У нас есть нежно любимые 6 (7? 8? кто больше?!) интерпретаторов командной строки...
Это ж песня!
У нас было 2 пакета травы, 75 таблеток мескалина, 5 упаковок кислоты, пол-солонки кокаина...no subject
А про BeOS там отдельная песня и по сложности она сравнима с linux. Вон интузиасты Haiku пилят до сих пор до Beta не добрались.
Если вы таки думаете я такой весь из себя красноглазый с надо замутить новую технологию, то увы это не так. Я вполне себе традиционные инструменты в мире java пользую spring framework, jpa, maven и это как раз дает меньше кода и больше прозрачности. Особенно за счет использования декларативки.
no subject
Для решения таких вопросов белые люди используют виртуализацию еще с 80х годов, если не раньше. В дешевый писишный мейнстрим виртуализиция пришла совсем недавно. То есть возможность была, а использовать - как-то не использовали. Религия ли не позволяла, мода ли, или кривизна реализации - бог знает.
О технологиях, которые все используют.
Вы сами написали, что пишете на яве. Ну вот это оно и есть.
no subject
Для решения таких вопросов белые люди используют виртуализацию еще с 80х годов, если не раньше. В дешевый писишный мейнстрим виртуализиция пришла совсем недавно. То есть возможность была, а использовать - как-то не использовали. Религия ли не позволяла, мода ли, или кривизна реализации - бог знает.
Можно. Но существует проблема утери знаний. В результате починка чего либо или начинает напоминать археологию либо карго культ. Я тут приводил пример как люди занимались прикладной инженерной археологией.
Вы сами написали, что пишете на яве. Ну вот это оно и есть.
Что именно? красноглазые открытые технологии? Если да то на чем же пишут труъ посоны которые используют то же что остальные?
no subject
Нет, ява действительно мэйнстрим и проживет еще очень долго. А например GWT - это уже гхммм... ну не красноглазие, но что-то близкое.
no subject