bash.im ithappens.me zadolba.li
12542

Proof of shave

19 августа 2014, 07:00

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

Начинается всё со здравой мысли: а давайте сделаем новую бритву! ТЗ простое: удобная ручка, два лезвия с расстоянием между ними N миллиметров и относительным сдвигом K, срок жизни — пятьдесят тысяч срезанных волосков, прилагаемое усилие — до 100 ньютонов. Реализуемая функциональность: побрить.

И вот одинокий, но гордый инженер за пару дней создаёт proof of concept. Бритва выходит неказистая, ей ещё можно порезаться, она плохо бреет дряблые щёки, но ей уже вполне реально побриться.

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

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

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

К этому моменту сама способность побрить уже в глубоком загоне. Инженер, проектировавший бритву, на 80% занят в другом проекте, и про этот вспоминает, как про страшный сон. К бритве прикручивается лазерный сканер поверхности и система предупреждения о недопустимых углах наклона. Заказчик в целом одобряет, но вносит предложение, раз уж в бритве есть лазер, добавить возможность использовать его как лазерную указку при проведении презентаций.

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

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

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

А в это время уже в другой конторе одинокий, но гордый инженер за пару дней создаёт proof of concept простого, дешёвого устройства, которым можно бриться. Пожелаем ему удачи.

12541

Бардачок в голове

18 августа 2014, 21:36

Работаю в такси. Помимо прочего, у нас в машинах есть вайфай-роутеры, к которым, находясь в машине, можно подключиться без пароля. Недавно получил новую машину, поставили новый роутер от краснояйцевого оператора. Лезу с телефона — сеть называется стандартный именем (не нашим корпоративным) и просит пароль. Думаю, ладно, айтишники не успели настроить. В вкладке «Инфо» нашёл пароль, подцепился, залез на IP — просит логин и пароль. Стандартный не подходят. Звоню нашим айтишникам, всё это описываю, прошу дать логин и пароль для настроек. Первый вопрос айтишника:

— Вайфай? Это такая чёрная коробочка в бардачке?

12540

Безбород 3.7.1

18 августа 2014, 09:48

Сегодня утром в процессе бритья морды лица внезапно поймал себя на размышлениях о бритве.

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

Свою основную функцию бритва выполняет прекрасно.

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

Иными словами, кто-то успешно решил сразу несколько задач:

  • достижение необходимой функциональности;

  • приемлемое качество вещи;

  • экономия материала, снижение затрат;

  • технологичность, экономия времени и усилий при производстве;

  • эстетичность: вещь приятно взять в руки.

И это — в одноразовом станке, которому цена копейка, который будет выброшен через неделю.

Вот это делали Инженеры — вот так, с большой буквы. Попробуйте-ка совместить все эти требования, создать модель, рассчитать необходимые конструктивные элементы, не сделать лишнего и не упустить нужное, чтобы получилось практично и удобно, а не тяп-ляп!

А теперь смотрим на творчество программистов, на созданные ими программы и сайты. Если бы бритву делали они:

  • она была бы с телевизором и лазерной указкой;

  • изготовлена из плохо подогнанных друг к другу деталей из дерева, бетона и жвачки, склеенных суперклеем и обмотанных синей изолентой;

  • на её изготовление пришлось бы потратить минимум полгода и пару килограммов материалов, из которых 90% ушло бы в виде мусора и обрезков;

  • она бы норовила расползтись в руках, если не ткнуть в определенной последовательности на кнопки встроенного телевизора и не нарисовать лучом указки слово «УХ» на стене.

Вот почему так?

12539

Мур-мур-мур, прости за тапки

18 августа 2014, 09:36

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

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

И увидеть kernel panic.

12538

Здесь будет автострада

17 августа 2014, 12:36

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

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

Второй выполняет свои функции относительно пристойно, пристойно настраивается. Есть куда расти. Но производитель выбрал философию: для каждой новой версии прошивки выпускается новая ревизия роутера, со старой несовместимая аппаратно. Хотите ту же модель с исправленными ошибками и новыми фичами — покупайте новую ревизию.

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

Для VPN-сервера — отдельные требования.

Согласно идеологии противников сборки суперкаров, брать надо кошку enterprise-уровня или Juniper. Или городить сервер с серверной Windows, которая будет работать круглосуточно. И брать к ним отдельного спеца-сетевика.

Я не настолько богат, чтобы покупать такие ненадёжные решения.

Взялся изучать бесплатные варианты. Это либо Linux, либо FreeBSD, либо дистрибутивы «router on PC». Последнее зацепило. Впечатлил Endian, но он стал коммерческим, хотя несколько лет назад был условно бесплатным. Из троицы FreeSCO, m0n0wall, pfSense остановился на последней, так как первые два давно уже не развиваются.

И всё взлетело. Более того, не пришлось разделять на два устройства. А работает всё, стыдно сказать, на железе, которое теперь списывается, ибо на нём уже невозможно работать. У меня на старых Pentium 4 c 2 ГБ памяти запас по мощности таков, что можно через них поток под 500 мегабит пропускать, только тогда захлёбываться начнут, а по памяти — я потолка вообще не скоро достигну.

Бонусом оказалась возможность поднятия на них же OpenVPN-серверов с шифрованием и связи по нему двух точек. Плюс подъём PPTP-сервера для подключения удалённых клиентов…

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

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

12537

Отмазка формата A1

Была раньше у школьников «профессия» такая — плакатчик. Эту тему уже затрагивали в истории о девочке, зазывавшей плакатами коллег по учёбе на соревнования по тетрису. Да и одна фраза «Давайте делать плакаты» из фильма «Республика ШКИД» чего стоит. Но пользовались услугами плакатчиков и те самые «халдеи».

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

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

Что убило эту «профессию»? Не принтер. Он способен только на А4, максимум — А3. Не склеивать же из нескольких листов — некрасиво будет.

И не широкоформатный принтер — их в школах почти нет.

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

Хорошо, я закончил школу гораздо раньше этой проекторной мини-революции. А то бы взвыл от «домашек».

12536

Попап, расхлоп и вспышка слева

17 августа 2014, 11:48

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

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

Написал «ласковый» комментарий, в том числе по поводу рекламы. «Комментарий ожидает модерации». Видимо, не дождётся никогда. Включаю AdBlock, закрываю вкладку с сайтом и зарекаюсь больше не вестись на подобные просьбы.

12535

Жёлтая плохая: я её не знаю

16 августа 2014, 07:24

Сменилось руководство, притащило своих программистов кодить 1С. Не знаю, кто они, но точно не программисты жёлтой. И начали они кодить…

«Что такое ссылка? Я не понимаю!» — восклицал их начальник. Он же в запросе ставил условие ЭтоГруппа = 2. В этот момент мне вспомнился фрагмент из «Футурамы», когда Бендеру снится кошмар, где всплывают единицы и нули, и он просыпается с криком: «Кажется, я видел двойку!» При моей поправке, что нужно поставить 0 или 1, мне ответили тоном мудреца: «Не надо! У нас тут своё». Естественно, ничего не выполнялось и указывало ошибку на это условие. И все эти эксперименты — на рабочей базе.

Дальше — больше. Был показан крутой отчёт, над которым ребята трудились месяц. Параметров нет, отборов нет, группировок нет, поля поменять местами или убрать нельзя: всё жёстко забито в коде и выполняется только при открытии. Чтобы посмотреть данные, нужно переоткрыть отчёт. Функциональность на высоте: запросы написаны на T-SQL и к базе обращаются через ADO в обход RLS и всего остального «ненужного». Пофиг, что теперь все смогут увидеть информацию, которую не положено; пофиг на то, что мы полгода потратили на разборку, что и кому показывать…

Появляется второй отчёт. Нет, теперь 1С не нужна. Они из Экселя макросом дёргают инфу из базы. Ага, с полными правами и открытым паролем, вписанным в код (безопасники рукоплещут). 1С же «тупит», так быстрее. А ещё информацию можно менять напрямую.

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

12534

Овцы, козы, гигабит

16 августа 2014, 07:12

Как говорится, провайдеры делятся на два типа:

  1. Хреновые.

  2. Услугами которых вы ещё не пользовались.

Но вот незадача: в маленьком городе присутствует только один самый большой провайдер на букву «Р». Так вот, пришла в город оптика до здания и тарифы на 20, 50 и 100 Мбит/с, но покрыть весь город оборудования не хватило, и осталось в каждом микрорайоне по несколько домов без оптики, хотя всё вроде подготовлено: оптика заведена в здание, повешены антивандальные шкафы, только вот они пустые. В провайдере говорят, что на город выдали фиксированное количество оборудования. Ну что за бред?

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

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

В итоге там, где надо и будут клиенты, у нас нет оборудования, а там, где не надо — нате, пожалуйста!