12972

Отставить олово

Я расскажу вам пару историй из прошлого компьютерной техники.

Первая — из совсем далёкого прошлого. Тогда слово «процессор» означало не микросхему размером в несколько сантиметров, а тысячи и десятки тысяч дискретных транзисторов, сотни тысяч других деталей. Тогда вдруг выяснилось: транзисторы, диоды, резисторы, конденсаторы, если они высочайшего качества и их не насилуют режимом работы, почти вечны, а самая ненадёжная «деталь» — обыкновенное паяное соединение. Хорошая, качественная и аккуратная пайка не имеет срока службы, но когда паек миллионы — пара сотен из них обязательно окажутся не очень хорошими.

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

История вторая уже из сравнительно недавнего времени, из мира жёстких дисков. Поначалу, пока частоты были небольшие, для соединения платы контроллера с гермоблоком использовались обыкновенные штыревые или ламельные разъёмы и шлейфы. Потом они перестали удовлетворять и по частотным свойствам, и по надёжности: в условиях вибрации контакт иногда пропадал. Да и нетехнологично: стыковка разъёма — это лишняя ручная операция при сборке. Вот тут и появилась та самая идея, что используется ныне практически во всех жёстких дисках — контактные площадки, в которые упираются игольчатые контакты гермоблока.

Первый блин оказался комом. Печально известные IBM DTLA мёрли, как мухи, из-за пропадания контакта в этом узле, которое приводило к быстрому разрушению логической структуры низкоуровневого формата поверхности. Причиной было то, что контакты были облужены мягким припоем на основе индия, в котором иглы оставляли вмятины. Эти вмятины постепенно расширялись, и со временем контакт становился ненадёжным. Решением был отказ от лужения вовсе. Контакт между умеренно мягкой посеребрённой медью и более твёрдой иглой с золотым напылением оказался подобен контакту в соединении накруткой. При условии полной неподвижности и неразбираемости узла на качество соединения перестали влиять и окисление, и вибрация.

Пожалуй, во все времена есть люди, считающие себя умнее конструкторов чего-либо. Во времена монтажа накруткой они видели «это убожество, которое даже пропаять не удосужились» и хватались за паяльник. Результат был обычно печален: ни о каком соблюдении технологии речи не шло, чтобы залудить уже подокисленную медь, могли воспользоваться и кислотой, и через некоторое время всё разваливалось.

А теперь эти горе-специалисты облуживают контактные площадки припоем ПОС-61, наивно полагая, что производитель этого не сделал из экономии и для того, чтобы чаще покупали, возвращая тем самым диск во времена IBM DTLA — с той только разницей, что, в отличие от индия, ПОС-61 начинает окисляться тут же.

12971

Кнопочки и лампочки через тайные буковки

Обнаглели разработчики браузеров, особенно мобильных! Сократили меню до предела! Только базовые функции оставили! Гику негде развернуться! Даже исходник страницы не посмотришь! Сами пусть пользуются такими браузерами!

Обнаглели? Убрали? Нет. Переместили туда, где им место — в текстовый интерфейс, предполагая, что тот, кому нужны продвинутые опции, и текстовым интерфейсом пользоваться умеет.

Исходник, говорите, страницы? Любой браузер на хромовском движке в руки, на любую страницу шагом марш — и перед http:// вписываем view-source:. Ой, фокус! Исходник страницы! А если маны до фильтра докурить, увидим, что опций, вписываемых в адресную строку — видимо-невидимо.

А то ведь набегут респектабельные и заорут: послушались хомячков, набили меню опциями, а нам подавай однофункциональную вещь с минимумом кнопочков и лампочков! А если продвинутые опции совсем исключить — с противоположной стороны гики набегут и заорут: послушались хомячков, упростили! Между двух огней, однако.

Вот и придумали, как и тем и другим угодить. Продвинутые опции оставили, но спрятали. Не под замок, а просто за дверь, сливающуюся с фоном. И расположение этой двери не скрывают — наоборот, трубят о нём.

А кому не надо — заткнут уши.

12970

Вася ждёт Петю, Петя ждёт дизайн

Прочитал экономические откровения противника копирайта, посмеялся, но решил не вмешиваться в великую борьбу Добра™® со Злом (скачать бесплатно без регистрации и СМС новый интернет ускорьте ваш компьютер), а вместо этого рассказать про менеджеров.

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

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

Проект будет в непонятном состоянии, хотя все будут считать, что «почти готово». Это «почти готово» тянется месяц за месяцем, порой превращаясь в годы. Когда же волевым решением проект выходит с обрезкой всяких недоделанных мелочей, он оказывается сырым, потому как собирали в спешке. Хуже того, он ещё и не соответствует ожиданиям целевой аудитории, для которой оказались важны те самые обрезанные мелочи (тут привет передают маркетологи, в задачу которых как раз входит выяснять, чего, как и когда хочет целевая аудитория и за какую цену).

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

Всё вышенаписанное умножается на десять, если речь идёт о крупной компании, где взаимодействие между отделами строго формализовано.

12969

По корпусу поскребла, по картриджу помела

Устанавливаю один из немногочисленных принтеров в нашей конторке в кабинете «деньгосчётов» на стол новопоступившей бухгалтерше немолодого возраста. Димон из нашего кабинета (он почти напротив) кричит:

— Слав, заодно расшарь его!

В следующее мгновение новенькая кидается на принтер, обхватывает его руками и вопит:

— Не надо в нём шариться, он и так еле дышит!

Кроме меня с Димкой, выпали и остальные бухгалтеры в кабинете.

12968

Навоза мне в инбокс!

Борьба с неблокировщиками, говорите?

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

«Учёба» молодняка начиналась ещё в головном офисе. Непристёгнутые компьютеры забирали админы-безопасники — это понятно. А к вопросу блокировки подошли с юмором.

Это была своеобразная игра: у каждого в почте лежало в черновиках несколько специальных писем. Если кто-то отлучался (даже на пять минут) и не блокировал компьютер, от него сразу высылалось письмо всем сотрудникам фирмы (ну, кроме руководства):

Привет, меня зовут Катя, я новый ассистент аудитора. Я сейчас на проекте в городе Малые Гроги, и мне местные ребята подарили на дискотеке подсолнух. В горшке. Семки выращивать. Я очень люблю семки, но цветочек чахнет. Пришлите мне, пожалуйста, каких-нибудь удобрений и десять литров воды почтой.

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

12967

Принять котом, решать потом

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

Итак, почему область ПО стала такой привлекательной, что сюда тоннами стекаются «эффективные менеджеры», а в принимаемых законах каждый раз ужесточается наказание за нарушение копирайта? Ответ простой: гибкость и минимальная дистанция от разработанного до готового к продаже продукта. От разработанного чайника до чайника, готового к продаже — путь через постройку фабрики и производственного процесса конкретно для этого чайника. От разработанной программы до программы, которую можно продавать — путь в использовании любого типового (то есть одинакового, массового, а значит, и дешёвого) способа распространения софта. От фабрики чайников до фабрики телевизоров — фактически новая фабрика телевизоров. От выпуска программы 1 до выпуска программы 2 — разные этикетки или странички на сайте. При том производитель ПО может ещё и быстро реагировать на запросы рынка, изменяя пропорции, в которых предоставляются программы 1 и 2, а вот с чайниками и телевизорами такое не пройдёт.

Почему ПО так легко скопировать, что приходится защищать копирайтом? Из-за гибкости и лёгкости пути к каждой следующей копии. Компьютеру, без которого о ПО вообще речи не идёт, всё равно, что копировать: ваши собственные файлы или любую из установленных программ. И любая копия может послужить источником практически неограниченного числа других копий.

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

В экономике принято разделять все товары на две группы: средства производства и предметы потребления. С помощью средств производства можно производить другие товары или услуги, с помощью предметов потребления — нет. Разделение нечёткое — тот же телевизор можно использовать, например, в качестве элемента видеосалона, — но помещение и другие факторы будут иметь в нём также очень значимую роль, кроме того, будут сложнее заменимы, поэтому телевизор всё же скорее предмет потребления.

Так вот, производители ПО используют предлагаемый ими софт именно в качестве средства производства. Они не пишут решение для каждого своего клиента, а копируют одно-единственное. Но к моменту перехода в руки клиента программа должна превратиться в предмет потребления — по крайней мере, перестать быть средством производства самой себя, иначе производитель сразу получает очень опасного конкурента.

Каким же образом это сделать? Обычные правила защиты собственности тут не работают (производитель написал программу и копирует, покупатель купил, то есть тоже получил в собственность, и копирует). Дополнительные договоры при продаже? Часто вы, покупая диск, слышали, чтобы продавец вам хотя бы вкратце перечислял ограничения по поводу его копирования и прочее копирайтовое? А если бы перечислял, какой шанс на то, что вы всё же купили бы диск? Лицензионное соглашение? Если брать то, которое «принимается при открытии коробки с диском», то считать его действительным сложно, а если то, которое уже давно стало элементом установки большинства программ — так его убрать не проблема (ну, или, как писали когда-то на Баше, «принять котом»).

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

После подобных действий копирайт легко распространяется по всему миру — где-то по той же схеме, где-то методом кнута (санкции) и пряника (ВТО). Параллельно его начинают пиарить, и среди всех призывов громче всех звучит такой: «Пожалейте автора! Украдёте (то есть скопируете) — он не напишет новых программ и вообще умрёт с голоду». Давайте рассмотрим его подробнее.

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

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

Если я хочу, чтобы новые версии программ выпускались как можно чаще, мне выгодно, чтобы автор программы получал хорошую оплату за свою работу — но только разово, чтобы у него был стимул писать ещё. Кстати, большинство программистов сейчас живут именно так: они получают зарплату за работу, наниматель получает права на результат. С точки зрения разработчиков при отмене копирайта меняется не так много, а вот стимул финансировать развитие отрасли (а не переписывание программы в тысячный раз, чтобы снова продать, не нарушив патент) у бизнесменов растёт (по крайней мере у тех, кто в бизнесе останется).

Конечно, права разработчика на программу, как и любого автора на результат его труда, надо защищать. Но не от покупателя, честно купившего продукт и теперь желающего воспользоваться последствиями покупки в полной мере, в том числе скопировав её, а от издателей и прочих бизнесменов, которым при отсутствии копирайта может показаться вполне привлекательной идея продавать результат работы, не платя автору ничего. В предлагаемой модели авторское имущественное право должно работать — но до момента публичной доступности (в том числе возможности свободно купить) результата работы, будь то программа, книга или фильм.

Вот и всё, что я хотел сказать по поводу сабжа. Конечно, некоторые вещи не затронуты, а некоторые изложены упрощённо — но это размышления для IT happens, а не научная статья. Dixi.

12966

Стыдно, когда баги видно

Эх… Несколько часов жизни потрачено на отладку куска кода. Несколько часов копипасты инициализаций вперёд-назад, прописывания дополнительных проверок, контрольных выводов, на скорую руку переписаны циклы. И ничего.

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

Ещё раз вздыхаешь и начинаешь делать красиво. Строчку за строчкой. Рефлекторно сохраняешь проект и запускаешь на исполнение. И эта поделка стартует и работает идеально.

Мягким кликом мыши закрываешь вкладку с форумом. Кофеин, никотин, философский взгляд. Воистину — красота спасёт мир.

12965

Кручусь как могу

В моём первом персональном компьютере был установлен жесткий диск Fujitsu на 1039 мегабайт. В 1996 году это было достаточно круто, и при покупке продавец мне сказал: «Я не знаю, чем его, такой большой, забить».

Увы, как раз годом ранее вышла Windows 95. Через три года места стало не хватать просто катастрофически, и пришлось покупать ещё один жёсткий диск, но это уже совсем другая история.

А нынешняя такова: вышеупомянутый жёсткий диск отпахал 80 тысяч часов, 50 тысяч циклов старт-стоп (по S.M.A.R.T.) без единого бэд-блока и с идеально ровным графиком чтения.

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

Во-вторых, гораздо более жёсткие требования к вибрации и температуре. Если старый жёсткий диск без проблем и сильных ошибок перекалибруется хоть от 0 до +40 градусов Цельсия (плавно, само собой), то современный посыплет пару бэдов как минимум (без особых, впрочем, проблем восстановив их из резервной области при помощи избыточного кодирования). Температурный режим современного жёсткого диска — +15…+35 °C. И то, +35 — это уже на грани фола. Выше +32 лучше не задирать, особенно под нагрузкой.

Жёсткий диск на ноутбуке — это или бедность, или анахронизм. Если вы ставите механический жёсткий диск в ноутбук — будьте готовы обращаться с ноутом крайне аккуратно, вплоть до нежных нажатий на клавиатуру и тачпад. Не хотите заморачиваться — ставьте SSD и не лохматьте бабушку. Заодно и скорость работы возрастёт.

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

Имею в эксплуатации около десятка жёстких дисков суммарно (мой собственный компьютер, машины родственников, внешние переносные, NAS). Ни единого бэда ни случившегося, ни pending по S.M.A.R.T.

На графики чтения любуйтесь сами. На стену их вешайте, что ли.

Бэкапы? Куда же без них. Делаю на всякий случай. А вдруг вирус, наводнение или пожар?

12964

EULA и варенье вприкуску

Попробовал в выходной день представить, как выглядела бы инструкция к электрическому чайнику в духе лицензионных соглашений на ПО. Решил сначала набросать тезисы по мотивам лицензионного соглашения очень популярного офисного пакета 2003 года выпуска.

…Вы соглашаетесь с тем, что никакие электрические чайники не свободны от конструкторских дефектов, и вам настоятельно рекомендуется надевать резиновые перчатки во избежание поражения электрическим током…

…В течение 90 дней с момента получения чека о покупке электрического чайника его функционирование будет в основном соответствовать внутренней конструкторской документации завода-изготовителя (на китайском языке, гриф «для служебного пользования»)…

…В максимальной степени, допускаемой применимым законодательством, завод-изготовитель отказывается от предоставления каких-либо гарантий в отношении чайника электрического, о пригодности его для конкретной цели пользователя…

…Производитель не несёт ответственности за какие-либо убытки и/или ущерб от электрического чайника (даже при его взрыве в руках пользователя; даже если пользователь уведомил производителя о заложенной производителем в электрическом чайнике взрывчатке)…

…В любом случае ответственность за электрический чайник ограничивается ценой чайника…

…Настоящее лицензионное соглашение регулируется законодательством штата Несуществующий Несуществующих Соединённых Штатов…

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

12962

Мощь винта уже не та

За последнюю неделю пришлось прогнать несколько жёстких дисков на бэд-блоки с помощью софтинки, которая заодно замеряет скорость чтения. Результаты меня изрядно озадачили…

Ноутбучный Seagate на 320 гигов. Три года работы в почти тепличных условиях. Десяток битых секторов, около тысячи предсмертных, график скорости считывания больше напоминает ИК-спектр (плато с резкими провалами). При попытке обращения к диску система с вероятностью 35% зависает намертво.

Ноутбучный Hitachi на 60 гигов 2003 года выпуска (ещё под IDE). Битых нет, десяток предсмертных, график — ломаная с чётко заметной осью.

WD на 1,5 терабайта — два с половиной года работы в стационарном ПК без особых нагрузок. Битых секторов нет, штук шестьсот предсмертных разной степени тяжести, график — кардиограмма аритмика.

80-гиговый IDE-шный Samsung, переживший с 2004-го два компьютера, а затем стоявший в составе сетевого хранилища. Один битый сектор, рядом с ним один предсмертный, график — идеальная прямая с одним провалом (как раз на месте битого сектора). Но при этом никто не жаловался…

Выводы сделайте сами. А я пойду чесать репу и настраивать бэкапы.