bash.im ithappens.me zadolba.li

Мысли о вечном

13415

Приблизительно равно

Буква «Ё»? Далась.

Расскажите про «никакой разницы» тому самому Семёну Ёлкину, если его имя или фамилию один из таких вот «специалистов» внёс в документ без точек над буквой «Ё». Проблемы с этим документом будут исключительно во всех государственных и коммерческих учреждениях.

Код буквы «Ё» в русской кодировке был уже доступен с появлением кодировки CP866, которая уже в середине 90-х годов массово и повсеместно шагала по стране. За 20 лет, прошедшие с тех пор, можно было уже или переписать старые программы или написать новые, для нормальной обработки слов и имён собственных русского языка с буквой «Ё».

Чтобы было понятней, какая это «мелочь», расскажу небольшую историю про своё обучение программированию. Классе эдак в 10-м я осваивал Паскаль в популярной тогда среде Turbo Pascal 7. И была у меня привычка давать индексным переменным имена i, j, k… и далее по алфавиту. Однажды мне пришлось часа эдак полтора отлаживать программу на несчастные 70 строк из-за того, что я перепутал местами i и j. Это для меня буквы похожи и «мелочь же, ничего страшного». А у компьютера это разные буквы, и его не колышут проблемы школьника, не сразу заметившего графическую разницу похожих символов.

В общем и целом, пожелаю всем тем «программистам», которые считают, что буква «Ё» не нужна, и вполне заменяется буквой «Е», чтобы однажды во всех вхождениях их имён и фамилий в базах данных официальных учреждений возникла неопределимая по контрольной сумме ошибка. Например, при простом XOR-сложении и хранении в однобайтовой кодировке, простая фамилия Сидоров с точки зрения контрольной суммы будет вполне эквивалентна чему-то странному Тздоров.

Ну, а что? Для компьютера это же «мелочь» — главное, что суммы совпали.

13411

Пережитки уходящей эпохи

Производители телефонов с каждым годом считают пользователей всё более тупыми? Как бы не так.

Типичный «кнопкофон» с Java, каких ещё недавно было много. В прошивке есть калькулятор. За редкими исключениями, простейший. Да, инженерный можно скачать и поставить. Но сам факт: производитель держал пользователя, независимо от возраста, пола и сословия, за гламурное кисо, которому тригонометрия никогда не понадобится, а что такое экспоненциальное представление числа, он и вовсе забыл сразу после выпускного.

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

Наши дни. Хорошо видно, что производители от пережитка избавились. Инженерные калькуляторы стали доступны из коробки в смартфонах на всех трёх основных платформах. Да, они неидеальны, и надо качать более функциональные, удобные, но сам факт: разработчики признали, что пользователь — не гламурное кисо!

Ещё пережиток. В одном ЖЖ недавно был поднят вопрос, как бороться с 3G-свистками, приносимыми сотрудниками на работу. Сотрудники, наверное, не читали историю «Карманная душегрейка». А откуда вообще эта привычка — пытаться устроить в рабочем компьютере всё по-своему, чтобы и свисток торчал, и ПО было таким, которое предпочитает сотрудник, а приятнее всего и ОС поменять? Опять пережиток. Тех времён, когда смартфонов не было. Хочешь на работе найти документацию, которая сугубо по работе требуется — пользуйся рабочим компом. Хочешь выполнить задачу (не обязательно в личных целях, по работе тоже), для выполнения которой на рабочем компе нет программы — опять же, ставь программу на рабочий комп.

Сейчас этого более не требуется. Сам смартфон ты выбираешь себе такой, чтобы в нём ОС тебе нравилась. На работе нужен даташит на компонент — качаешь на смартфон, на нём же читаешь. И читалка не занимает места на экране рабочего компа и не загораживает IDE, в котором ты выполняешь основную рабочую задачу. Вопрос задать в форум, если что-то не получается? Смартфон. Мелкий расчёт номинала компонента? ElectroDroid и опять смартфон. Сложный расчёт? Mathmatiz и снова смартфон. Обеденный перерыв и соцсеть, мы же люди, а не лошади? Ну, вы поняли. А на рабочем компе ни вирусов тебе, ни просто излишнего засорения. Комфорт, да и только!

Но почему так поступают не все? Пережитки!

13407

На вкус и цвет все операционки разные

Читая IT happens, порой набираешься опыта, додумываешься до самых невероятных вещей, но история «Танцы с драйверами» заставила задуматься о философии.

Автор несколько неправ в том, что ubuntu, к примеру, лучше продукции мелкомягких. Они просто разные. Вспомним, как ещё лет десять назад пользователи судорожно искали драйвера на Linux, пока добрый дядя Линус (и неисчислимое количество последователей) не включил большинство из них в своё ядро. Та же ситуация, даже ещё хуже, происходит в Mac OS X. Вы попробуйте завести всё оборудование на хакинтоше, используя для его установки среднестатистический компьютер.

У каждой операционной системы своя политика работы с драйверами. К сожалению, Microsoft ушла от политики сервиспаков времён ХР, в которых содержались революционные нововведения по поддержке новейшего оборудования из коробки, поэтому эта система продержалась так долго, да и остается одной из фаворитов.

Автор прав в одном — Linux и другие свободные системы активно дышат в затылок коммерческому ПО. А конкуренция по всем законам экономики приводит либо к улучшению продукта, либо к его удешевлению, что не может не радовать.

13404

Популярность не порок

Давным-давно, в далёкой галактике не утихали споры о том, что более дыряво: опенсорс, который пишут студенты на коленке в свободное время, или проприетарные мегапрограммы, которые создают огромные коллективы высококвалифицированных программистов на зарплате.

Людям рассказывали и показывали: вот открытый код, он живёт несколько лет, его смотрят 100500 любопытных, чтобы найти в нем дырку — поэтому в опенсорсе дырки закрываются почти сразу, как их находят.

А вот «чёрный ящик», что внутри — никто точно не знает, но если ударить вот сюда и сюда — он ломается. Все знают, что ломается, но никто не может починить, только налепить сверху на эту дырку заплатку. Но если стукнуть чуть рядом…

И казалось бы, практика подтверждает: сейчас уже телевизоры с Линуксом внутри, но от вирусов страдают не они, а всё та же «всем известная ОС», как и в прошлом веке.

И вроде бы никакой мистики: дело не в том, что опенсорсность магическим образом делает программу неуязвимой, а просто в открытом коде проще найти ошибку и исправить её, если она мешает.

Но нет: вот кто-то снова поднимает тему «Причины уязвимости — в популярности». Слышали, знаем.

Про популярность «всем известной» в курсе: практически все ставят антивирусы и тем не менее ловят всякую дрянь постоянно. Допустим, это не потому, что с системой что-то не так, а потому, что она популярна.

Хорошо, Андроид достаточно популярен? Он сделан на базе опенсорсного Линукса. По предложенной логике включенный телефон с Андроидом должен немедленно превратиться в рассадник вирусов. И где же вирусные эпидемии для мегапопулярного Андроида?

Ага, вы уже полезли в Гугл составлять список — не торопитесь!

Вычёркиваем из списка вредоносное ПО, которое пользователь сам добровольно устанавливает в системе, раздавая ему права. Это не уязвимость софта, это уязвимость пользователя. Сюда же — программы со скрытыми шпионскими функциями и фишинг, подделки под банк-клиенты, например.

Вычёркиваем из списка баги в программах. Программ новых много, написать кривую несложно, а если она проприетарная, типа фирменных от производителя телефона — то кто будет её исправлять, кроме него самого?

Остаётся… А что остаётся-то? Наверное, если хорошо поискать на тематических ресурсах, то что-то накопать можно: работающее на конкретном аппарате, с конкретной версией ОС, в тёплую погоду, на вершине горы Фудзияма в месяц цветения сакуры.

А как же популярность?

13403

Танцы с драйверами

Вот что меня всегда бесило в «самой распространенной ОС» — это они, великие и ужасные Драйвера!

Устанавливаешь ОС? Готовь диски с драйверами. Добавил новое устройство? Готовь диск с драйверами. Обновление-апгрейд-замена — готовь диски с драйверами.

И ещё не факт, что подойдут! Тогда начинается шаманство с бубнами, поиск «по партнамберу», по аналогии, хоть какого-нибудь хоть откуда-нибудь, хоть «купи премиум-аккаунт скачать быстро», поиск по форумам тем в стиле «помогите-подскажите».

Причём ладно бы на какую-нибудь экзотику типа 10-кнопочной мыши с автоподогревом и лазерной указкой — нет, даже на вполне обычную сетевую карту или сотовый модем изволь найти и установить драйвера. Да ещё не просто файлик скачать — а стянуть пару сотен мегабайтов чего-то, что запишется куда-то в недра системы. Зачем? Почему?

Когда-то очень давно это ещё было хоть как-то оправдано: например, приводы CD-ROM от разных производителей различались даже на уровне разъёмов, не говоря уже о протоколах обмена данными — но сейчас-то зачем, когда однотипные устройства все собираются на одной и той же элементной базе по однотипным спецификациям?

Апофеозом маразма для меня лично стала история, когда к нам на работу притащили новый на тот момент ноутбук с просьбой «переустановить ОС, а то не работает».

Коллега, заядлый спец по всему мелкософтовскому, целый день занимался поиском и подбором этих самых драйверов: были проблемы и с видео, и с Wi-Fi, и тачпад то работал, то нет. Он перелопатил пол-интернета, записывая на бумажке различные ID, выдаваемые в разных окошках системы, запустил почти всё, кроме Wi-Fi, и уже решил, что проблема аппаратная — но вечером ему пришла в голову идея загрузиться с убунтовской флешки.

Заработало всё и сразу, определилось и нашлось.

Спрашивается — и зачем тогда все эти танцы с драйверами, если стандартные, не заточенные ни на какого конкретного производителя, прекрасно работают?

Чуть позже Wi-Fi он всё-таки запустил, подсунув системе что-то совсем уж постороннее, ведь теперь было известно, что с оборудованием всё в порядке.

Но зачем всё это?

13402

Чёртов прогресс!

Возьмём какой-нибудь современный смартфон. Естественно, сенсорный. Неважно даже, от какого производителя и под какой осью. Разрешение дисплея выше, чем у меня на ноутбуке, внутри гигабайты и гигагерцы, тонкие — аж в руку взять страшно. Срок наработки на отказ — меньше года, падение на паркет — верный путь к механическому повреждению. Тормозить же эти поделки начинают спустя неделю криворукого использования или полгода аккуратного.

Ладно, отложим трупик умершего в младенчестве телефона и возьмём кнопочный смартфон на старике Симбиане. Возраст школьный, вид неприглядный, процессор чуть-чуть за сотню мегагерц… И до сих пор работает! Причём чётко и шустро.

А потом явился Ржевский и всё опошлил. Точнее, маркетологи, провозгласившие: «Не бывать хорошей начинке в кнопочных аппаратах! Только сенсор, только хардкор!» И понеслось всё чертям под хвост. Я, может, хочу иметь компактный и многофункциональный аппарат — а выбрать-то не из чего. Только бабушкофоны да лопаты. Ну или барахолки — искать б/у ежевичку или Симбу.

Собственно, с чего это я? Притащили мне на посмотреть изрядно потрёпанную Nokia E50 — стёртые до пластика кнопки, помятый металлический корпус. «Не включается!» Выковырял тонну грязи из гнезда зарядки — заработала как миленькая. А ваша лопата так сможет?

13401

Непростой механизм

Сливной бачок унитаза, говорите?

А какой именно?

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

Есть конструкции, основанные на использовании сифона: в них рычаг опускает трубку сифона в воду до перелива, после чего вода сливается через него до опустошения бачка.

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

Также может быть использован вариант типа «опрокидывающееся ведёрко» — со своими нюансами и особенностями работы.

И это не говоря о разнообразии конструкций поплавкового механизма и впускного клапана.

В общем, не такое это простое дело — унитазный бачок. Доказательство этому — обилие сломанных, протекающих, не набирающихся бачков, которые никто не может починить.

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

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

13399

Новое платье короля

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

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

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

Я очень-очень редко видел сайты и программы, где всё нарисовано тонким шрифтом и парой линий, практически вот тем самым «сереньким по белому», но как! Всё понятно, чётко, классно, оргазмично! Сразу ясно, что работал настоящий мастер своего дела, очень хочется у такого поучиться. Но ведь… это капля в море, всё заполонили тупые подражатели, которые не понимают, что самое сложное — это красивый и функциональный минимализм. Вот у таких и пропадают красные кнопочки и превращаются в бесполезные кружочки.

И поймите меня правильно, я не против новых горизонтов, я против «коекакерства». Да, я тот самый человек, который не желает селфи, а желает на Марс, и не в один конец, а на каникулы. И не нужно тыкать меня носом в разработку контроллера и программ для этого коптера, лично я это могу. И сконструировать коптер, и рассчитать детали на нагрузку, построить электронику, запрограммировать и самому изготовить. И ещё очень много чего умею. А вы? Что умеете вы? Вот когда каждый сможет сделать это на досуге, будет иметь знания, хотя бы сравнимые с моими, вот тогда и поговорим о Марсе.

Ну вот обидно до детских слёз, от новой винды я ожидал трёхмерного рабочего стола, а получил а-ля 3.11… Честно говоря, так и хочется под всем этим подписать «а король-то голый!»

Ну неужели опять всё самому? Ну не хватает на всё человеческой жизни. Мне бы бессмертие и маятник Гермионы.

13393

Сам ам, а другим не дам

«Масонско-опенсорсную мини-ложу», как ни странно, можно понять.

Тактику Неуловимого Джо ещё никто не отменял. Внимание злоумышленников к тому или иному программному продукту определяется не платностью-бесплатностью, не открытостью-закрытостью и даже не дырявостью-защищённостью. Важна не результативность усилий по взлому, а именно внимание. Только одним оно определяется — распространённостью.

Не верите? Прикиньте, где больше дыр — в Android или в Haiku? Кончено, в Haiku, в его-то альфа-стадии. Но этот продукт злоумышленникам абсолютно не интересен, и не будет, если его не популяризировать. И естественно, некоторые любители подобной экзотики действуют (точнее, бездействуют) таким образом, чтобы предмет их интереса не стал распространённым никогда. Так рождается security by unpopularity — младший брат security by obscurity.

И, может быть, в этом что-то есть.