Вот самое главное, чему программистов может научить эта история:
Многие временно уволенные эксперты в технологиях, например, программисты, столкнулись с пресыщенным рынком труда. В США международный аутсорсинг и увеличенное накануне количество квалифицированных иностранных рабочих (участвующих в визовой программе США H-1B) усугубило ситуацию. Университетские программы по подготовке специалистов в компьютерной сфере столкнулись с уменьшением количества новых студентов. Были популярны анекдоты о программистах, возвращающихся к учёбе на бухгалтера или адвоката.
Очередная проплаченная статья. На старых кнопочных телефонах нет такой проблемы.
Как пользовался Sony Ericsson Elm, так и дальше буду.
А пальцами в экран пусть тыкают обезьяны.
Одна из причин — сложная история Советского Союза и вычислительной техники — он был изолирован от остального мира, и все организации, производящие компьютерное оборудование и программное обеспечение, принадлежали государству, поэтому оно могло навязать им стандарты.
Вот не надо. Советское государство как раз и создало стандарт «Основная кодировка», он же международной ISO 8859-5. И вторую, альтернативную кодировку — ту самую CP-866 в DOS, адаптированную для использования символов псевдографики.
Проблема как раз в том, что разработчики НЕ следовали стандартам. Вот как принималось решение о введении кодировки для Windows в Microsoft:
─ SU.LAN (2:478/3.11) ───────────────────────────────────────────────── SU.LAN
From: Igor V. Semenyuk 2:50/128 13 Jan 96 00:53:00
To: All 14 Jan 96 15:23:54
Subj: Re: www.ru/crazyweb
───────────────────────────────────────────────────────────────────────────────
From: i...@sovam.com (Igor V. Semenyuk)
Reply-To: i...@sovam.com
X-RealName: Igor V. Semenyuk
Я тут написал сгоряча:
>… может все это происки дяди Билла…
А потом вспомнил одну историю и с ужасом подумал, может зря я
вместе с другими дядю Билла обижаю, может и не виноват он…
может кого поближе найти можно… может меня самого…
История такая. Сразу предупреждаю, что большинство деталей у
меня из головы выветрилось, за их точность я не ручаюсь, но основная
канва верная, и, думаю, непосредственные участники смогут подтвердить,
если пожелают.
Году так в 1991 (или это было в 1990?) Микрософт, серьезно озаботился
локализацией своих продуктов для советского рынка. Очевидно, встал вопрос
о кодировке. И вроде бы Микрософт запросил мнение российских
программистов о кодовой таблице. И вот, в один прекрасный день человек
15-20 собралось в старом здании Параграфа на Петровском бульваре,
чтобы выработать согласованное предложение для Микрософта. Hе могу
назвать всех участников, большинство я тогда не знал, вот те, которые
помню: Антон Чижов из Параграфа (он председательствовал), Петя Квитек
из Диалога (кстати, г-н Саух, Вы тогда работали в Диалоге, вполне
могли бы поучаствовать… но страшно далеки Вы были от Windows :-),
Женя Hестеренко (он, собственно, и притащил меня на эту встречу),
по-моему, был еще Игорь Баздырев (автор Паравина).
Консенсус был достигнут довольно быстро (по-моему, вся встреча длилась
часа 2). Я смутно припоминая, что доводы были примерно такие (только
не надо открывать дискуссию, это уже история, и тут ничего не изменишь):
— алфавит должен быть упорядочен (кроме буквы e:)
— сначала uppercase, потом lowercase
— колонки 80 и 90 — табу
— колонка A0 отпала из-за того, что A0 — non-breakable space — использовался во всех word processors
— не помню почему, но буква «A» должна была быть в строке 0
— тоже не помню, но разрывов не должно было быть
В результате, осталось всего 2 варианта — четыре колонки B0-EF
(кстати, ISO8859-5) и C0-FF.
По-моему, решающим доводом в пользу второго варианта было то, что
в Latin-1 (ISO8859-1) буквы с умлаутами были расположены в этих колонках.
Потом располагали e:E:, украинские и др. символы.
Потом, кажется, Hестеренко с Баздыревым поехали делать красивую
распечатку драфта.
Вот такая вот история. Конечно, вполне возможно, что выработанные
рекомендации до Микрософта не дошли, или были им проигнорированы.
Hо факт — русские буквы в cp1251 расположены именно так.
Может быть, дядю Билла стоит винить в том, что он пошел на
поводу у несознательных русских, которые сами не знали, что творят? :-)
Честно скажу, я тогда про ISO8859-5 не знал напрочь. Знал бы,
никогда бы за cp1261 выступать не стал бы. Hу, а у koi8 шансов
никаких не было, к сожалению, изначально.
То есть вместо того, чтобы взять советский ГОСТ, он же международный (ISO 8859-5) малограмотные кодеры посчитали себя самыми умными и решили выпендриться, придумав собственную быдлокодировку на коленке. Просто слов нет, одни маты только напрашиваются.
Похожим образом решили выпендриться UNIX'оиды в 90-х и начале нулевых, опять же вместо утвержденного стандарта взяв заведомо устаревшую КОИ, которую нет никакого смысла использовать даже на EGA мониторах (с перепрограммируемым знакогенератором) и тем более в графических режимах SVGA. Ну там хотя бы есть оправдание, что она удобна в нерусифицированном софте.
У нас могли бы быть 2 стандартные кодировки, вместо этого, блин, развели целый зоопарк.
На Java есть Zookeeper, Kafka, Hadoop, Elastic Search. Ни одного аналога на .NET не существует. Правда в том, что рынок энтерпрайза .NET проиграл. И все остальные направления тоже сдуваются — на desktop правит бал Qt, для микросервисов есть Go, для простых сайтов — PHP. Единственное, что ее живо — игрушки на Unity.
почему мой репетитор кошмарил меня по всяким моментам, связанным с оптимальным решением задачи, и перед тем, как допустить меня хоть к какому-то написанию кода даже не в IDE, а в терминале, сначала вышколил меня по всяким системам счисления, разрядности системы и прочим базовым информатическим вещам
Лол, в современной школе на уроках информатики это не проходят?
В советское время системы счисления изучались обычно на первом же уроке, а в старших классах ученики уже писали код на Бейсике.
Или данные занятия были, скажем так, для отстающих?
Существование жизни за пределами Земли — это чайник Рассела. Нет никаких фактов, доказывающих, что инопланетяне существуют. Потому любые рассуждения о них к науке имеют не большее отношение, чем рассуждения средневековых теологов о том, сколько ангелов поместится на кончике иглы.
Не понял пункт про содержание офиса. Это где такие мифические фирмы, покупающие компьютеры сотрудникам домой? А если новый работник, получив макбук, бесследно пропадет на второй же день?
Как пользовался Sony Ericsson Elm, так и дальше буду.
А пальцами в экран пусть тыкают обезьяны.
Вот не надо. Советское государство как раз и создало стандарт «Основная кодировка», он же международной ISO 8859-5. И вторую, альтернативную кодировку — ту самую CP-866 в DOS, адаптированную для использования символов псевдографики.
Проблема как раз в том, что разработчики НЕ следовали стандартам. Вот как принималось решение о введении кодировки для Windows в Microsoft:
То есть вместо того, чтобы взять советский ГОСТ, он же международный (ISO 8859-5) малограмотные кодеры посчитали себя самыми умными и решили выпендриться, придумав собственную быдлокодировку на коленке. Просто слов нет, одни маты только напрашиваются.
Похожим образом решили выпендриться UNIX'оиды в 90-х и начале нулевых, опять же вместо утвержденного стандарта взяв заведомо устаревшую КОИ, которую нет никакого смысла использовать даже на EGA мониторах (с перепрограммируемым знакогенератором) и тем более в графических режимах SVGA. Ну там хотя бы есть оправдание, что она удобна в нерусифицированном софте.
У нас могли бы быть 2 стандартные кодировки, вместо этого, блин, развели целый зоопарк.
Лол, в современной школе на уроках информатики это не проходят?
В советское время системы счисления изучались обычно на первом же уроке, а в старших классах ученики уже писали код на Бейсике.
Или данные занятия были, скажем так, для отстающих?
Компания называется не Xored случаем?