Контринтуитивная терминология/Прикладные науки

Материал из Posmotrelisu
< Контринтуитивная терминология
Версия от 10:38, 27 февраля 2025; Hyyudu (обсуждение | вклад) (→‎Информатика)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

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

Примеры[править]

  • Ремонтопригодность — это действительно сложность ремонта, но не советским паяльником в руках пьяного дяди Пети, а квалифицированным пряморуким мастером в условиях мастерской с кучей оборудования.
  • Полная гибель авто при ДТП (тотал) — не обязательно тогда, когда от машины остается искореженная груда металлолома, которую не починить, даже если захотеть. Ее констатируют тогда, когда восстановление авто экономически нецелесообразно (стоимость ремонта + остаточная стоимость металлолома и запчастей выше рыночной стоимости авто до ДТП), а возможность восстановления играет вторичную роль. Тотал могут констатировать и когда для восстановления нужно заменить абсолютно все, и когда поврежден только бампер и двигатель, но их замена слишком дорогая и не оправдана экономически, и когда повреждена одна маленькая, но тем не менее критичная деталь, которые уже лет 10 не найти в продаже.
  • Указатель поворота, он же поворотник. Его нужно включать не при повороте, а при маневре, ибо не каждый поворот маневр (если полоса дороги поворачивает в сторону, руль повернуть надо, но это не маневрирование) и не каждый маневр поворот.
  • В старой железнодорожной терминологии скорый поезд — это самый медленный из пассажирских (скорый он относительно товарных или поездов с теплушками). А те, что побыстрее, назывались экспрессом и курьерским.
    • В советские времена общедоступные поезда длились на скорые, скоростные и пассажирские. Пассажирские были существенно медленнее скорых (для неопытных и малолетних пользователей железной дороге: он медленнее не потому, что тепловоз дохлый, а потому что останавливается на всех станциях, полустанках и чуть ли не у каждого столба). Где же правда?
      • Почтово-пассажирские забыли. Вот это действительно было медленно — настолько, что их в 70-е годы хитрые граждане иногда использовали как передвижной пансионат, из которого при случае можно выбраться пособирать грибы или искупаться в море (в зависимости от маршрута).
  • Прикольный флот и отстойный флот — и то и то суда выведенные из эксплуатации, но в разной степени. Прикольный (стоящий на приколе) — выведен из эксплуатации надолго, а может и навсегда по причине нерентабельности, и если не станет вновь рентабельным поплывет разве что до пункта приема металлолома. Отстойный (в отстойнике) — временно выведен из эксплуатации, но его следующее плавание не будет последним. А не то что бы первые вызывают веселье, а вторые низкокачественные.
  • В авиации термин «стеклянная кабина» не означает большого количества и/или размера окон — так называется кабина самолёта с многофункциональными дисплеями и электронной системой управления.
  • «Чёрный ящик» (бортовой самописец) на самом деле оранжевый и округлый. Почему он так называется? То ли оттого, что первые самописцы были чёрными или обгорали при пожаре, то ли от научного термина, обозначающего объект, внутренняя структура которого не подлежит изучению в рамках данной задачи, а важны лишь входные и выходные данные (что, опять же, категорически не так — вскрытие ЗБН являет собой целую науку), то ли от таинственности их содержимого.
  • Фонарь в авиации — это не осветительный прибор, а остекление кабины.
    • Справедливости ради в авиацию это название пришло из архитектуры, где схожих с остеклением кабин ранних самолётов (тех, у которых закрытая кабина вообще была и выступала куполом над фюзеляжем) очертаний конструкции фонарями как раз и именуются и используются собственно для того, чтобы через крышу в помещение мог проникать свет. Когда-то это были просто надстройки с обычными вертикальными окнами и совершенно непрозрачной крышей, через которые свет хорошо проходил, когда солнце низко, и плохо проходил, когда солнце близко к зениту (и так делать в принципе логично). Позже с развитием прогресса появились вариации в виде полностью остеклённых куполов, которые в умееньшенном варианте и перекочевали в авиацию, сохранив название, но несколько сменив при этом назначение.
  • Напильники, по мере уменьшения частоты насечки: брусовки, драчёвые, личны́е, бархатные.
    • А что здесь неинтуитивного-то? Разве что личны́е могут вызвать сомнение, если на помощь не придёт термин из древнерусской живописи «лично́е письмо».
  • В мехобработке зенкование и зенкерование — совершенно разные процессы, как по инструменту, так и по результату.
    • Если зенкерование и зенкование имеют хоть какие-то общие черты (резание, вращательное движение, подача инструмента и т. д.) то баба и бабка не имеют ничего общего вообще.
    • Токарные резцы подразделяются на левые и правые. Вот только у правых резцов режущая кромка повёрнута влево и режут они справа налево, у левых, соответственно, наоборот.
  • Высокотехнологичный — не производимое по высоким технологиям, являющимся сложными, а напротив максимально упрощённое для массовости производства, то есть по смыслу это «легкотехнологичный».
    • Если точнее, то «обладающий высокой технологичностью». И «технологичность» — это не упрощение изделия, а мера количества необходимых для его изготовления операций и времени их выполнения (чем легче и быстрее изготавливается деталь, тем выше технологичность). Простая деталь, изготавливаемая вручную или на станке, управляемом оператором — низкая технологичность, сложная деталь, которую изготавливает автоматический станок — высокая технологичность.
  • Быстрорежущая сталь — это не та, ножом из которой можно за одно движение развалить свиную тушу вдоль позвоночника, а просто-напросто легированная сталь повышенной твердости и красностойкости, предназначенная для изготовления инструментов, рассчитанных на резание при высоких скоростях.
  • Устройство, предназначенное для подкачки воды в паровой котёл, скажем, паровоза, называется не насосом или помпой, а инжектором. Это достаточно логично, но устройство, предназначенное для пополнения запасов воды уже в тендере из ближайшего водоёма, носит название эжектора, хотя и тот, и тот предназначен для засасывания воды и придания ей дополнительной энергии. Разгадка такова: инжектор работает за счёт возврата пара обратно в котёл (по сути, получается пароводяная смесь, энергия которой выше, чем у исходной паровой струи, поэтому воду и можно ввести — inject в находящийся под давлением котёл). А эжектор — это по сути, большой пульверизатор, работающий от струи сжатого пара. На том конце, откуда в итоге льётся вода, внешнее давление атмосферное, поэтому пар выбрасывается наружу (eject) и теряется.
    • Можно сказать и проще: первый подсасывает питательную смесь на впуске (inject) рабочего тела, а второй - на выпуске/выбросе (eject). Помимо насосов, эжекторы применяют в системах вентиляции и охлаждения - выброс отработанных газов через конус эжектора подсасывает свежий холодный воздух с противоположного конца системы.
  • Электропневматический клапан — может быть как устройством, в котором от поршня пневматического цилиндра замыкается через привод группа электрических контактов, так и запирающим воздушную магистраль вентилем, который открывают при помощи электромагнитной катушки или сервомотора. А еще бывают клапаны, в которых электрический ток низкого напряжения через упомянутую катушку открывает клапан на воздушной магистрали, а пневматический цилиндр замыкает пару контактов силовой цепи напряжением в несколько киловольт.
  • Маршрутные такси по ПДД не относятся к маршрутным транспортным средствам.
    • Уточняйте, по чьим именно. По белорусским - относятся, со всеми вытекающими ограничениями и привилегиями. А вот велосипед не относится к механическим транспортным средствам. Не иначе, как движется по закону подлости, а не ньютоновской механики. В новой редакции дело движется к отдельному классу "средств персональной мобильности".

Информатика[править]

  • Командный интерфейс на русском языке в начале 1990-х своей контринтуитивностью запутывал хуже английского. Например, в «СТ ПОФ»[1] (стартовать программу обработки файлов) упомянутый «ПОФ» (программа обработки файлов) на самом деле означает «программа редактирования файлов». В случае команд на английском можно хоть в карманный словарик заглянуть и понять, о чём речь.
    • КД ПЗУ же! Постоянное запоминающее устройство на компактном диске, то есть — CD ROM!
    • Кстати, об «АР2»: клавиша Esc изначально использовалась для переключения режима отображения символов. На некоторых терминалах 70-х она обозначалась как… Alt! Однако те режимы, ради которых она создавалась к концу 70-х перестали использоваться, а ставшую ненужной кнопку приспособили, чтобы выходить (буквально «эвакуироваться») из менюшек и название перестало быть контринтуитивным. По крайней мере на английском.
    • Да и с английским не всё так просто. «Юникс никогда не будет дружелюбным к пользователю, пока в нём команды „человек“, „гора“, „гудрон“, „кошка“ и „рысь“ не делают ничего относящегося к человеку, горе, гудрону, кошке и рыси» (Баш).
      • Впрочем, последнее немного притянуто за уши. Разные цвета, малые панды, театральные спектакли с пением, исследователи, острия и т. п. также не имеют ничего общего с посещением интернет-сайтов, однако же это никого не волнует не только в UNIX.
  • Но после кнопки «Пуск», нажать на которую необходимо для завершения работы, все это уже мелкие придирки.
  • В языке программирования Python неизменяемые типы переменных — это те, значения которых проще всего менять, а изменяемые — те, при попытке изменения которых возникают проблемы из-за весьма неочевидных связей с другими объектами. Потому что под изменяемостью/неизменяемостью подразумеваются не «потребительские» свойства переменных, а адреса их хранения в памяти.
    • С неизменяемыми данными работать проще благодаря такому свойству как ссылочная прозрачность (результат обращения не зависит от времени обращения), но они действительно неизменяемые — при «обновлении» создаются новые значения. Кстати, называть переменными неизменяемые величины уместно только в математике (и в функциональном программировании), где нет изменяемого состояния — в императивном программировании подобием неизменяемости обладают только константы. К типам слово «неизменяемый» тоже не очень-то подходит, поскольку тип — это абстракция, правильнее говорить о неизменяемости значений типа. Да и само слово «неизменяемость» следует использовать с осторожностью, поскольку большинство «неизменяемых» данных в действительности являются константными (более слабое свойство — необходимое, но не достаточное). Например, в упомянутом кортеже могут содержаться не числа, а (ссылки на) переменные, содержащие числа, тогда при изменении переменной изменится и содержимое кортежа (хотя сам он от этого никак не поменяется).
      • Есть мнение, что с точностью до наоборот: изменяемые объекты (например, списки) хранятся в памяти в одном и том же месте, что ты с этими объектами ни делай. А если мы создали, например, неизменяемый кортеж (1,2,3), то мы не можем просто взять и дописать ему в конец 4 — надо создать новый неизменяемый кортеж (1,2,3,4) в другой области памяти. На самом деле изменяемость данных давно никак не связана с их расположением в памяти: во всех языках, где работа с памятью автоматизирована (то есть почти всё, что создано не раньше 90-х, плюс LISP- и ML-подобные), используемые куски памяти могут переноситься с места на место сборщиком мусора (garbage collector, GC). И вообще, чтобы что-то дописать, надо для начала выделить под это «что-то» память, как что все динамические структуры меняют свой размер и положение при любых операциях сложнее чтения/записи (то есть все, кроме переменных стандартных типов и массивов фиксированной длины, которые используются чуть более, чем нигде).
  • Венгерская нотация была разработана не в Венгрии. Её предложил иммигрант из Венгрии Чарльз Симони (Карой Шимони), который к тому времени уже 14 лет жил в США. Школота (начиная с миллениалов) язвит, что нотация называется венгерской, потому что программный код, написанный в соответствии с ней, приближается по трудночитаемости к венгерскому языку, а информация, которую она даёт, абсолютно точна, но абсолютно бесполезна на практике: тип можно и так узнать и по подсказкам IDE, тогда как лишние буковки в начале переменных и объектов им мешают и сильно бесят. Проблема в том, что во время изобретения венгерской нотации не было ни подсказок IDE, ни самих IDE. И как пишет Джоэль Спольски, ею просто неправильно пользовались, из-за чего полезный инструмент, предупреждавший о попытках складывать лампочки с апельсинами, превратился в математика из анекдота про воздушный шар.
  • Тупой терминал (Dumb terminal) — не так уж и туп! Версии VT52 и VT100 от компании DEC позволяли даже редактировать файлы, не особенно загружая работой собственно большой компьютер. Из машинки ZX-Spectrum и подобных умельцы тоже мастерили вполне умные «тупые терминалы». Не совсем верное название перекочевало с телетайпов 1960-х. Вот они-то были действительно тупые.
  • Языки низкого и высокого уровня. Может показаться, что первые для нубов, а вторые для настоящих мастеров. В реальности они разные лишь по уровню взаимодействия с техникой и чем этот уровень ниже, тем проще восприятие машиной и, соответственно, сложнее программисту.
    • Низкоуровневые языки — ассемблеры и байткоды, исполняемые аппаратно и программно соответственно — предназначены для низкоуровневых работ (драйвера, компоненты операционной системы) и ускорения некоторых операций (иногда добавить ассемблерную вставку или вручную написать кусочек псевдо-низкоуровневого кода на ассемблероподобном подмножестве языка бывает полезно). Среднеуровневые языки — метакатегория, к которой относят обычно только Си, поскольку он занимает промежуточное положение и де-факто почти везде вытеснил настоящие ассемблеры. Называть Си среднеуровневым языком имеет смысл только в контексте системного программирования или в околотеоретическом обсуждении, в остальных случаях подчёркивать его особое положение не нужно. Высокоуровневые языки — всё, что сложнее Си. Сверхвысокоуровневые — языки, выделяющиеся даже среди высокоуровневых. Есть ещё DSL — предметно-ориентированные языки, которые не программируют, а описывают предметную область, и именно к ним относятся языки запросов (SQL, XPath), языки шаблонов, языки размётки (HTML, TeX, Wikitext, markdown), языки представления данных (XML, JSON, YAML) и всевозможные скрипты.
    • Среднеуровневым кроме С называют ещё и Forth, потому что никто не может побить компактность форт-системы, когда памяти не просто мало, а ОЧЕНЬ мало (диалекты Форта пилились даже для микроконтроллеров со 128 байтами ОЗУ), но категорически не хочется писать на ассемблере или в кодах.
  • Языки Java и JavaScript немного похожи по синтаксису, но в целом никак не связаны между собой (не сильнее, чем любые два языка c С-подобным синтаксисом, во всяком случае): название JavaScript — просто коммерческий ход, так как язык Java на момент его создания уже был популярен. По другой версии, язык JavaScript — плод внебрачной связи языка Scheme (диалекта Лиспа) с синтаксисом Java, название должно было показать Java-программистам, что новый язык изучить им будет несложно. Что не мешает многим полагать, что это одно и то же, и JavaScript — просто полное название языка, а Java — сокращённое.
    • А ещё был JScript, адовое поделие от Microsoft, и его чудовищный брат VBScript. Предполагалось, что на них будут писать новомодные скрипты для Windows вместо дряхлых файлов BAT прямиком из MS DOS. Админы, однако, предпочитали Perl, а простые пользователи просто не нашли. Из-за раздолбайства проектировщиков MS Outlook, если пользователь открывал письмо со вложенным JScript или VBScript, скрипт сразу запускался на выполнение, к немалой радости хакеров. Как итог, Интернет долго лихорадило вирусом на VBScript I love you, который влетел человечеству в $10 млрд и даже попал в Книгу Рекордов Гиннесса. Рекордсмены-филиппинцы Реонел Рамонез и Онел де Гузман, которые, судя по всему, и переделали вирус из чужого эксплоита, были задержаны, но отделались лёгким испугом: в филиппинском УК просто не нашлось статьи за компьютерные преступления.
  • С++ и C# — тоже два разных языка, у которых довольно мало общего. Нет, C#, конечно, похож на C++ (главным образом синтаксисом), но больше всего он похож как раз на Java (особенно в поздних версиях благодаря перекрёстному опылению языков, ворущих друг у друга удачные и не очень фичи.
    • Основная разница — в подходе к библиотекам: C# больше ориентирована на Open Source, Java — на библиотеки от единого производителя. Но из-за возраста, Java работает везде, от кофеварки с ssh до серверов и (в отличие от С#) имеет худшую переносимость, а C# — язык цельный и при всём своём потенциале даже за пределами виндовой экосистемы он пользуется популярностью по практическим (продуманность, наличие серьёзных преимуществ) и юридическим причинам (открытый исходный код фреймворка под лицензией MIT, стандарт ECMA).
  • Иногда бывает так, что «новая версия» какого-нибудь языка или фреймворка отличается от старой настолько, что многие продолжают использовать старую и даже выпускать для неё новые подверсии, и новая и старая версии начинают существовать параллельно как 2 фактически разные технологии. Так было с языками Perl (в итоге новая версия всё же была признана отдельным языком и получила название Raku), Python (со времнем старая версия перестала развиваться, но до сих пор иногда используется) и фреймворком AngularJS («первая версия» которого уже несколько лет продолжает развиваться параллельно с более поздними, известными как просто Angular).
    • Далеко не все языки, библиотеки и фреймворки получаются удачными с первого, второго и даже пятого раза: постоянно меняются системные требования, подходы к программированию, выделяются «хорошие» и «плохие» практики, проводится работа над ошибками. Иногда для дальнейшего развития приходится ломать обратную совместимость, переписывать с нуля огромные подсистемы, менять архитектуру и делать другие сложные, но необходимые вещи. Программисты без труда различают ломающие и безопасные релизы, для этого есть README, change.log (в разных написаниях) и элементарные соглашения о версионировании (мажорные и минорные релизы, патчи, семантические теги).
  • В килобайте не 1000 байт, как можно подумать, а 1024 (а в мегабайте — соответственно, 1024 килобайт или 1 048 576 байт; связано это как раз с тем, что именно такие числа для двоичного компьютера являются «круглыми» — 210), что породило анекдот «обычный пользователь думает, что в килобайте 1000 байт, а программист — что в километре 1024 метра». Попытка исправить ситуацию и внедрить правильную с точки зрения метрической системы терминологию (1 мегабайт = 1000 килобайт = 1 000 000 байт) привела к тому, что сегодня параллельно используются обе системы, так что путаницы стало ещё больше.
    • В результате этой путаницы в нынешних терабайтных винчестерах, содержащих, внезапно, 1012 байт, оказывается 0,91*240 байт, то есть чуть больше 900 гибибайт. Кое-кто даже думает, что это заговор эффективных менеджеров. Ну а программисты-системщики вообще не думают, а просто ругаются, когда в очередной раз вспоминают, что не любой сорокабитный адрес является валидным для терабайтного винта, хотя исходя из названия, казалось бы…
  • Генетическое программирование — это автоматическое создание и оптимизация программ посредством алгоритма, аналогичного эволюционным процессам. Грубо говоря, программа пишется не программистом, а выращивается в автоматическом режиме посредством комбинирования и изменения отдельных частей кода и отбраковкой неудовлетворительных результатов. Наилучшим для генетического программирования оказался язык программирования Brainfuck, и некий не слишком эрудированный индивид, узнав об этом, воспринял термин откровенно превратно, решив, что язык используется биологами для моделирования ДНК и прочей псевдо-научной по***ни. Стыдоба!
    • В принципе, эксперименты с хранением данных в молекуле ДНК тоже есть (серийных образцов на данный момент не разработано, но технология выглядит довольно перспективной). Но связь между этими разработками и генетическими алгоритмами весьма отдаленная.
  • Есть ещё «линейное программирование», которое собственно к программам ЭВМ имеет опосредованное отношение. А также «выпуклое», «целочисленное», «дробно-линейное» и ещё много разновидностей. Это всего лишь методы решения экстремальных задач. Экстремальные — не в смысле особо сложные, а всего лишь на поиск экстремума.
  • Emacs появился в те лохматые годы, когда про GUI слышали три с половиной анонимуса программиста из Xerox PARC, так что его терминология вполне может огорошить человека, к ней не подготовленного. Как пример: емаксовское «окно» современные англоязычные[2] называют «pane», а собственно «окно» с запущенной программой в Emacs называется «фреймом».

Примечания[править]

  1. Ходила шутка, что надписи на клавишах отечественных электронных устройств, наподобие «ПРФ», «СТРН» и «АР2», предназначались для того, чтобы сбить с толку вероятного противника.
  2. Отдельный русский термин автору правки не попадался.