Многоликое АСУТП

http://real-ja.livejournal.com/112549.html

так случилось, что я работаю автоматчиком. В смысле АСУТПшником, а не стрелковой единицей.
я занимаюсь тем, чтобы на заводах и фабриках работали автоматические системы, а людей за ненадобностью выгоняли на улицу, сокращали, обрекали на впроголодь и пресмыкание.
так вот, в числе прочих удивительных систем, особняком стоит самая, на мой взгляд, примечательная асутэпэ, которую довелось нам строить.
Лирическое отступление. Все когда-либо ели курицу, ну или на крайний случай видели её в магазине. Конец лирического отступления.
А задумывался кто-нибудь, как из живых, кудахчущих несушек получаются те неподвижные, замотанные в целлофан. Ну то есть как их убивают. Понятно ведь, что куриц много и заниматься каждой в отдельности на предмет умерщвления как-то неэффективно. Должен быть конвейер. должна быть система. Ну то есть задача для АСУТП.
На определенной высоте над полом подвешен металлический трос с закрепленными на нем прищепками. трос двигается по кругу, как типа подъемник на горнолыжке. К тросу подведен "нулевой" провод. Невдалеке под тросом стоит ванна с солевым раствором, на которую подведена фаза 220 VAC.
Сидит на тубаретке тётенька. к ней по наклонному желобу сказываются курочки. Испуганные, жмутся друг к другу. Тётенька хватает куриц за лапы и пристегивает к прищепкам. Одну за одной. Трос движется по направлению к ванне. Курицы висят. Подъезжают к ванне. касаются башкой солевого раствора. Пиздык её!! Током!!. и все, дальше едет уже практически ощипанный продукт питания.
Звук в помещении примерно такой: "ко-ко-ко-пиздык-ко-ко-ко-пиздык-ко-ко-ко-пиздык!!".
АСУТП "Chicken massacre".
Когда мы её строили, я название придумал. Я тогда еще блэк-метал слушал.

Проклятие AJAX-у

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

Раньше было всё понятно и удобно: выполнил действие - ввел данные, нажал кнопку или ссылку - получил результат в виде новой страницы. А теперь приходится гадать - когда же этот AJAX перестанет шарить по серверу и выдаст результат. Это уже окончательный результат или ещё что-то изменится, и нужно ждать? Особенно "чудесно" это выглядит на медленном интернете, и совсем круто, когда какое-то скрытое соединение рвётся и AJAX подвисает.

Новый беларусский ГОСТ - требования для государственных сайтов

http://bynet.inter.by/news/4295/1946/17885

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

UPD: обновлённая редакция, СТБ 2105-2012
http://www.tnpa.by/ViewFileText.php?UrlRid=199405&UrlOnd=%D1%D2%C1%202105-2012

Oracle предъявила свои права на язык Java

Корпорация Oracle подала в суд на Google, обвинив его в нелицензионном использовании технологий, права на которые принадлежат истцу. Если конкретнее, то Oracle считает, что в мобильной операционной системе Android незаконно используются технологии Java, патенты на которую Oracle получил в результате приобретения корпорации Sun Microsystems. Поглощение Sun обошлось Oracle в 5,6 миллиардов долларов, при этом антимонопольные органы Европы ещё и не сразу одобрили эту сделку. Платформу Java в Oracle считают самым ценным своим приобретением - об этом говорил исполнительный директор Oracle Ларри Эллисон, то же самое утверждается в иске.
Платформа Java - проприетарная разработка Sun Microsystems 1990-х годов. В 2006-2007 годах многие её компоненты (если не большая часть) были выпущены в открытый доступ под лицензией GNU. В 2007 году Google объявил о начале разработки открытой платформы Android, причём анонс этот разработчикам Sun не понравился: реализация Java по версии Google сильно отличалась от рекомендованной Java Standards Group (в частности, Google использует виртуальную машину Java собственной разработки). Теперь Oracle в своём иске требует возмещения ущерба (без указания суммы), и чтобы весь софт, нарушающий патенты, принадлежащие Oracle, был полностью уничтожен.


Вот и славно. Надеюсь, Oracle окончательно загнобит эту джаву. И язык отвратителен и уродлив, и вообще всё это объектно-ориентированное безумие мне никогда не нравилось.


Почему Си - хорошо, а Си++ - плохо

Язык программирования Си создавался с конкретной целью: это язык для написания портируемых программ, при этом максимально эффективный в плане быстродействия, сопоставимый с ассемблером (который на всех аппаратных платформах разный). Удобство программирования в Си - это вещь третьестепенная, он действительно не очень удобен. Выполняются только те действия, которые ты прописал явно - именно поэтому строки и массивы реализованы так дубово и неказисто.
Если поставить перед собой такую задачу и писать в соответствии со стандартом ANSI C, то на Си можно написать портируемую программу или библиотеку функций. Эту программу возможно откомпилировать практически на любом типе процессора - компилятор Си есть везде. И она будет работать. Примеров неисчислимое количество (zlib, libpng и так далее).
Итак, Си - это язык низкоуровневого программирования, предназначенный для создания портируемых программ и библиотек функций. Его создание было настоящей революцией, потому что он позволил отвязать программы от конкретной процессорной архитектуры, практически ничего не потеряв в производительности и быстродействии, в сравнении с ассемблером.
Эту нишу он занял навсегда и пребудет в ней навсегда. Нет смысла придумывать что-то ещё.

Изначально создатели языка Си и системы Unix предполагали, что возникнут другие языки, более удобные для программистов (каждый язык со своей специализацией). Для каждого такого языка, на Си будет написан транслятор (не компилятор), который транслирует исходник с этого языка опять же на Си, а не в исполняемый код. И уже этот промежуточный Си-текст транслируется Си-компилятором в бинарный исполняемый файл. Такова была изначальная философия системы Unix: все программы портируемы и все языки надстраиваются над базовым языком Си.

Улучшайзер Бьёрн Страуструп и его Си++

И вот, пользуясь тем, что язык Си многие знают, некто Бьёрн Страуструп решил его "проапгрейдить": он прилепил дополнительные фичи (большей частью совершенно идиотские - вроде перегрузки стандартных операторов) и добавил "объектно-ориентированность". Ну, про "объектно-ориентированность" я напишу как-нибудь потом, это отдельный разговор, а в целом получили следующее: в язык введены неявные скрытые механизмы, которые не работают одинаково на разных платформах, портируемые программы писать невозможно, и в то же время язык неудобен для высокоуровневого программирования, как и Си. Компиляторы Си++ намного сложнее, чем компилятор Си, и есть не везде. В основном Си++ используют, потому что под него написаны библиотеки классов (как правило привязанные к определённой платформе и операционной системе).
Теряюсь в догадках, кому понадобилось раскручивать такое безобразие. Деньги в это вбуханы чудовищные - помню по той рекламной кампании, которая сопровождала продвижение Си++.

Тем не менее, Си++ используют и пишут на нём программы. Ну просто человек ко всему привыкает.