Тег ‘технологии высокаго пошибу’

Читаю вот новости

Пишут, что Госдума приняла закон, “разрешающий электронное голосование”:

https://tass.ru/politika/8463527

Комментарии – в том числе от технически вполне грамотных людей (ну или считающих себя таковыми) – разнообразием почему-то не отличаются, мол, знаем-знаем, главное – не как проголосуют, а как подсчитают, ну и в целом настрой довольно скептический. Отдельные “технически грамотные” товарищи (в кавычках, и это важно), видимо, представляя себе “как бы я делал электронную голосовалку для конкурса красоты в контакте” безапелляционно утверждают, что сделать систему электронного голосования, обеспечивающую те же гарантии, что и традиционное бумажное голосование, совершенно невозможно.

Так вот, спешу этих “технически грамотных” разочаровать – еще лет 15 назад, учась в старших классах, я читал книжку Брюса Шнайера “Прикладная криптография“, где в одной из глав описывались “эзотерические протоколы” – и среди всяких подбрасываний монеты по телефону, дистанционного покера и тому подобных забавных, но чисто теоретических построений были подробно разобраны требования к “электронным” выборам и реализации, удовлетворяющие всем или части этих требований. Задача построения системы электронного голосования, обеспечивающей одновременно и тайну голосования, и возможность проверки результатов (и еще несколько свойств бумажного голосования, о которых мы как-то забываем) – вполне себе решаемая, вопрос только в том, захотят ли ее решать разработчики очередной такой системы или нет. Впрочем, “захотят” рано или поздно в любом случае – так как неправильно построенные электронные голосовалки приводят только к очередным скандалам.

А краткое изложение основных тезисов из книжки Шнайера можно увидеть в этом ролике:

Еще раз про MATLAB

Сим постановляю:

  • Считать MATLAB Coder кривым куском говна;
  • Сайт techbriefs.com приравнять к рекламным листовкам, напечатанным на мягкой бумаге;
  • Его читателей считать говноедами.

А теперь подробнее – несложная функция в два десятка строк на MATLAB (содержащая в основном операции с матрицами – несколько вычислений нормы и умножений) с помощью этого прекрасного инструмента превращается в четыре (!) полуработающих функции на C, общей длиной – что-то около 3000 (!) строк кода. Ни одна из функций не работает полностью правильно, на всех возможных вариантах входных данных. Написанная вручную функция, делающая то же самое – всего 80 строк (в SLOC и того меньше, комментарии мне сейчас считать лень). Как это соотносится с декларируемыми в статейке “benefits”:

no need to schedule time for hand-coding GN&C algorithms (60,000+ SLOC were autocoded by the Critical Design Review), and a detailed requirements review was replaced by a review of MBD artifacts that had proven functionality

- понять не могу. Да, на секундочку – обнаружить косячное место удалось только после проверки буквально всех входных и выходных параметров в довольно сложной программе, это мало чем отличается от ручного тестирования кода, написанного по заранее разработанной спецификации (с той лишь разницей, что спецификации у нас тут нет).

Симулятор ковида, или зачем нам нужны программисты

Листал тут твиттер и наткнулся на твит @ID_AA_Carmack, где тот пишет о том, как помогал привести в божеский вид симулятор распространения вирусных заболеваний под авторством Имперского Колледжа Лондона. Симулятор можно найти на гитхабе:

https://github.com/mrc-ide/covid-sim

Есть пара мыслей о полезности программистов во время массовых эпидемий. Во-первых: симулятор написан на банальном и тупом Си. Никаких модных концепций вроде объектно-ориентированного или функционального программирования, никаких этих ваших хаскеллей с монадами и прочей такой хероты. Просто банальный “процедурный” код, местами – в стиле книжки Numerical Recipes или, прости господи, в неподражаемом духе “you can write Fortran in any language“. Тупо – но просто и понятно:

Before the GitHub team started working on the code it was a single 15k line C file that had been worked on for a decade, and some of the functions looked like they were machine translated from Fortran. There are some tropes about academic code that have grains of truth, but it turned out that it fared a lot better going through the gauntlet of code analysis tools I hit it with than a lot of more modern code. There is something to be said for straightforward C code. Bugs were found and fixed, but generally in paths that weren’t enabled or hit. Similarly, the performance scaling using OpenMP was already pretty good, and this was not the place for one of my dramatic system refactorings. Mostly, I was just a code janitor for a few weeks, but I was happy to be able to help a little.

https://mobile.twitter.com/ID_AA_Carmack/status/1254872369556074496

Во-вторых: как вы думаете, сколько ссылок на гитхаб-репозиторий с этой моделью нашлось на самом айтишном и професси-анальном ресурсе Рунета (нет, не на ebanoe.it)? На том, где уже который месяц темы про ковид не вылезают из самых обсуждаемых, и набирают многие сотни и даже тысячи комментариев?

Угадали? Правильно – ноль!

Как мне кажется, в скором времени надо будет отлавливать всяких там фронтендеров, бекендеров, сеньоров с трехлетним стажем, дата-саентистов и прочих специалистов по бигдате и строго спрашивать – “А что ты сделал для борьбы с ковидом?” За ответы вроде “высрал сто комментариев на хабре”, “напечатал на 3D-принтере клапан для ИВЛ” и тому подобные – выводить в чистое поле к стенке отправлять санитаром в чумной барак.

Нищебродский медиацентр

Дано: есть NAS, раздающий через DLNA и SMB кино и музыку. Есть телевизор Samsung, туповатый и безо всяких там интернетов. Хочется смотреть кино на телевизоре, не таская туда-сюда ноутбук.

Среди всякого барахла нашелся Raspberry Pi 3B+, который я подцепил к телевизору и немного поэкспериментировал. В общем:

- родной Raspbian как-то сразу не обрадовал;
- Ubuntu MATE напугала невменяемыми глюками VLC Player-а;
- LibreELEC вообще не заработал;
- остановился я в итоге на OSMC.

Что не запустившийся LibreELEC, что OSMC – это минималистичные дистрибутивы Linux, в которых в качестве единственной доступной “пользователю” программы прикручен медиаплеер Kodi. Первый у меня так и не запустился (что крайне странно, учитывая однотипность “железа” – уж в “моноклассе” Raspberry все должно работать более-менее одинаково), второй заработал сразу. Из танцев с бубном почему-то непременно требовалось вручную указать hdmi_mode в конфигурационном файле – впрочем, можно сделать это и из интерфейса Kodi, если знать табличку этих режимов наизусть (а это с Raspberry почему-то надо делать постоянно).

Что радует – Kodi работает со всеми видами файлохранилищ, достаточно “всеяден” в выборе форматов, очень гибко настраивается. Минусы – это опенсорс, это линукс со всем отсюда вытекающим – идеально “гладким” взаимодействие с этим плеером все равно не получается.

В общем, очередное “Linux почти готов для десктопа” – только вот это “почти” не меняется примерно с тех пор, как я посмотрел на первый Live CD из приложений к журналу “Ксакеп” :)

А расскажите мне про Mikrotik

Вводные:

  1. Вильянова читал.
  2. Нужен гигабитный роутер (не менее 6 портов Gigabit Ethernet), желательно – с SFP для оптики.
  3. Возможно, в качестве резервного канала доступа в интернет будет использоваться сотовый модем.
  4. Желательно “дальнобойный” WiFi (до двух-трех железобетонных стен, раскидывать кучку репитеров я не хочу).
  5. Настраивать это все есть кому.
  6. Трафик – в основном веб-серфинг “наружу”, иногда торренты, есть и внутри сети – смотреть фильмы с NAS и на тот же NAS бекапиться.

Стоит ли брать при таких вводных Cloud Switch CRS109? Или в софтовом режиме он маршрутизацию не потянет и лучше будет 2011UiAS-2HnD? Или ну нахер этот микротик?

Посмотрел “подмосковное” приложение от короновируса

Вопрос номер 0 – а чем нормально декомпилируется Kotlin (похоже, что приложение на нем)? Стандартные инструменты вроде dex2jar выдают что-то ужасное.

public static final class b<T, R> implements e<T, s<? extends R>> {
  public b(a param1a, String param1String1, String param1String2) {}

  public Object a(Object param1Object) {
    param1Object = param1Object;
    if (param1Object != null) {
      param1Object = r.a(new p.d[] {
            new p.d("scope", "http://esia.gosuslugi.ru/usr_inf?mode=w"),
            new p.d("client_id", "PGU"), new p.d("grant_type", "password"),
            new p.d("state", param1Object.getStateMarker()),
            new p.d("client_secret", param1Object.getSecret()),
            new p.d("timestamp", param1Object.getTime()),
            new p.d("token_type", "Bearer"),
            new p.d("instanceId", this.e.c.d()),
            new p.d("terminal_name", Build.MODEL),
            new p.d("terminal_type", "Android"),
            new p.d("username", this.f),
            new p.d("password", this.g) });
      return this.e.b.a((Map)param1Object);
    }
    i.a("it");
    throw null;
  }
}

Во-первых – приложение действительно требует ввода логина и пароля от “Госуслуг” и где-то там внутри себя логинится на “Госуслуги”. Учитывая, что оно тащит с собой кучку “мониторинговых” штук типа Crashlytics – есть вероятность, что логин и пароль для Госуслуг улетят куда-то в отчете об ошибках. Что мешало сделать нормальный OAuth2 – непонятно.

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

Основная функциональность приложения – вероятно, опросник “китайского образца”, у них было модно делать такие приложения системы “да-да-нет-да-сидите дома”. Пропуска прикрутили, видимо, в экстренном порядке. Собственно, пропуск генерируется по указанным данным, и представляет собой QR-код со ссылкой вида https://www.gosuslugi.ru/checksession/1?id=GUID. При переходе по ссылке показывается страничка, содержащая урезанные данные – мол, Петр Сидорович И. с паспортом номер 46** ******80 едет из точки А в точку Б. Видимо, проверка этих пропусков сотрудниками полиции будет состоят в переходе по ссылке и сличении этих данных с реальностью. Зачем здесь фотографии паспорта и все такое – непонятно. Особой валидации данных, похоже, нет – но еще раз повторю, при выдаче пропусков она и не нужна.

Что неприятно – все действия в приложении необходимо выполнять с включенным интернетом, выключив соединение, нельзя даже остановить таймер, измеряющий время с момента выхода из дома.

И вот еще один момент – похоже, что запустили веб-версию этого безобразия на “Госуслугах”:

https://www.gosuslugi.ru/395224/1

Сервис, разумеется, безбожно лежит, но ни фотографий паспорта, ничего сверх уже указанного на “Госуслугах” не требует.

UPD Получил через веб-версию разрешение “вынести мусор” – то же самое, QR-код со ссылкой. Главное достоинство по сравнению с мобильным приложением – информация о выданных пропусках сохраняется в личном кабинете Госуслуг, это может пригодиться при каких-либо разборках из-за неправильно выписанных штрафов.

“Мы запустили приложение”

Кстати, тут власти Москвы и Московской области пытаются в очередной раз ввести пропускной режим – первый раз не получилось из-за совершенно негодного приложения в Google Play, во второй раз, для надежности, решили всех окончательно запутать и анонсировали аж три способа получения вожделенного “буквенно-цифрового кода”:

  • для москвичей – на портале mos.ru;
  • для подмосквичей – на портале uslugi.mosreg.ru;
  • непонятно для кого – в приложении “Госуслуги СТОП Короновирус”.

По состоянию на 23:00 12 апреля mos.ru упал, на подмосковных госуслугах нет ничего, приложение, освященное видеороликом “от Воробьева” вызывает обоснованные опасения.

Но вот что мне особенно интересно – а зачем все эти свистопляски с сайтами, госуслугами, приложениями, когда аналогичный “пропускной режим” в той же Франции ввели буквально “за копейки”, разработав и опубликовав специальную форму для заполнения?

https://www.gouvernement.fr/sites/default/files/contenu/piece-jointe/2020/03/attestation-deplacement-fr-20200324.pdf

Бумажную форму нельзя заDDoSить, она не разряжает аккумулятор смартфона, не требует модификации сайтов “госуслуг”, в отличие от QR-кодов – она проверяется “на месте” любым сотрудником ППС, внесенный в нее адрес “Жопа, д. 1” не вызовет идиотских насмешек в интернете (а вот в оффлайне – вызовет вопросы у того же ППСника). Наконец, не затарившиеся туалетной бумагой самоизолированные граждане могут вытереть бумажкой жопу – одни сплошные плюсы!

PS Готов аргументированно обосновать, что адрес “Жопа, д. 1″ должен обязательно валидироваться в приложении, и претензии к этому – вообще не по делу.

Про ноутбуки

Посмотрел тут на один Thinkpad-срач и задумался – а понимает ли уважаемая срущаяся на русских форумах по поводу феноменальных характеристик б/у ноутбуков публика, что всякие фирменные фишки типа TrackPoint, ThinkLight, защелок для закрывания ноутбука, док-станций и так далее – это на самом деле просто готовые шаблоны для заполнения заявок на тендер? Типа “фирма купит 100500 ноутбуков, цвет любой, при условии, что этот цвет – черный, посреди клавиатуры должна быть пипка красного цвета, обязательны светодиодные индикаторы для всего на свете количеством не менее 5 штук”.

А вообще, конечно, умиляет уверенность посетителей русскоязычных форумов, что IBM и впоследствии Lenovo всерьез делает что-то для удовлетворения гиковски-ностальгических чувств потребителей (где под “потребителями” понимаются русскоязычные форумчане). Нет, ребята, вы просто подбираете крошки за настоящими потребителями ноутов бизнес-серий.

PS Это все не отменяет того, что лучше взять б/у Thinkpad/Dell/HP, чем некоторые новые ноутбуки прямо из магазина:

https://mindfactor.livejournal.com/247241.html?thread=3856329#t3856329

Клавиатурное

Очередные ненормальные люди сделали механическую клавиатуру по мотивам Thinkpad’овской:

shinobi-keyboard

Испытываю смешанные чувства – вроде игрушка прикольная, и внешний вид довольно ностальгический, но в качестве прообраза явно взята клавиатура, уже немного испорченная Lenovo (между моделями T400 и T410) – с бестолковым высоким Delete и спрятанным подальше Insert (впрочем, большой Escape мне нравится). На Thinkpad старых моделей расположение шести кнопок (Insert, Delete, Home, End, Page Up, Page Down) повторяло таковое у “стандартной” клавиатуры. Интересно, когда мода на кастомизацию клавиатур дойдет до того, что можно будет спокойно натыкать в конфигураторе именно то, что хочется, а не идти на множество компромиссов?

Боженька, жги, здесь уже ничего не исправить

Чуваки запускают маленькую и простую программу почти без всяких внешних зависимостей (OpenSSL разве что нужен) с помощью docker:

https://fossil-scm.org/forum/forumpost/5f106b752f

При этом (проверено) fossil работает на любой более-менее разумной платформе – от настольного Windows до shared-хостинга с Linux, легко собирается из исходников в практически любом unix-подобном окружении, и зачем при этом паковать его в docker – решительно непонятно.

Немножко про интернет-магазины

Вот посмотрел тут по случаю на немецкий магазин со всяким компьютерным барахлом – http://computeruniverse.net. И вот чего я в упор не понимаю – как это так получается, что компьютерные комплектующие, если брать их в Германии, да еще и с доставкой, получаются существенно дешевле, чем в российских магазинах? Вот для примера – возьмем какую-нибудь типовую конфигурацию и попробуем собрать ее из ассортимента “Никса” и Computer Universe. Чтобы далеко не ходить – просто возьмем в никсовском каталоге какой нибудь домашний ПК в сборе – да хоть вот такой:

https://www.nix.ru/autocatalog/nix_computers/X6100M-X629GLGi-Core-i5-9400F-16-Gb-120-Gb-SSD-plus-1-Tb-6-Gb-GeForce-RTX2060-DVDRW-Win10-Home_453939.html

(кое-что хотелось бы поменять, но уж ладно)

Цена в НИКСе Цена в CU Цена в CU без НДС
Процессор INTEL Core i5-9400F, OEM 14422 р. 155,68 € 130,82 €
ОЗУ 2 * Crucial DDR4 DIMM 8 Гб PC4-21300 2 * 3261 р. 2 * 32,99 € 2 * 27,72 €
Материнская плата GIGABYTE B365M DS3H 6584 р. 76,90 € 64,62 €
Видеокарта GIGABYTE GeForce® RTX 2060 6 Гб 32215 р. 353,70 € 295,45 €
SSD-накопитель Kingston A400 120 Гб 2697 р. 29,40 € 24,70 €
Жесткий диск Seagate Barracuda 1 Тб ST1000DM010 3590 р. 37,90 € 31,84 €
Привод CD/DVD LG GH24NSD5 1113 р. 15,90 € 13,36 €
Кулер Arctic Alpine 12 745 р. 7,90 € 6,63 €
Корпус Aerocool Corporate CS 100 2023 р. 24,02 € 20,18 €
Блок питания Aerocool VX PLUS 500 2454 р. 41,82 € (аналог) 35,14 €

Итого комплект деталей в НИКСе нам обойдется в 72365 рублей (кстати, можно определить и никсовскую наценку “за сборку” – 10% примерно), а немецкому бюргеру в Computer Universe – в 809,20 € (что по сегодняшнему курсу ЦБ РФ составляет 66864 рубля). Но давайте пойдем чуть дальше и попробуем заказать весь этот суповой набор в немецком магазине с доставкой в РФ – для чего в табличке предусмотрен столбец “без НДС” – при отправке за пределы ЕС Computer Universe автоматически вычитает европейский НДС, а это около 19% цены. Впрочем, к этому добавится еще и доставка (EMS или DHL – не так важно, все равно по РФ это везет Почта России) стоимостью 49,40 €, “премиум-упаковка” за 4,20 € и комиссия за оплату, составляющая 12,96 € – итого 744,81 €. Добавим сюда еще и пошлину – 15% с суммы, превышающей 200 €, и получим, что общая сумма заказа составит 826,53 €. Оплата – если делать ее прямо сейчас – будет происходить по довольно-таки грабительскому курсу отечественных банков, на данный момент это 85 рублей за евро – но даже так получится 70255 рублей, заметно дешевле НИКСа.

Заметьте – я не пытался экономить, подбирая более дешевые аналоги, не объединял детали в отдельные посылки, чтобы попасть в беспошлинные 200 €, и даже не смотрел, что получится дешевле – купить часть компонентов в России, а часть – в Германии (например, похоже, что корпус автоматически увеличивает стоимость доставки) – и все равно получилось дешевле московского магазина. А вот представьте себе, что до ближайшего Никса мне не 30 минут на метро (со свежеотрытой Некрасовской веткой стало очень удобно ездить до их точки выдачи на Автозаводской), а немного подальше, так, что мне приходится пользоваться услугами российских интернет-магазинов – и сразу же возникает вопрос – а если нет разницы, зачем платить больше? Даже со всем доставочно-таможенным геморроем получается, что заказать из иностранного магазина выгоднее, чем из российского.

Вот скажите – что немцы могут из того, что не могут наши интернет-магазины с компьютерными запчастями (включая “системообразующий” ДНС – цены на некоторые позиции там похлеще никсовских)?

Опенсорс здорового человека и опенсорс курильщика

Здоровый человек – когда к нему обращается Motorola с просьбой доделать SQlite до пригодного для применения в продакшене состояния, отвечает: “Да, конечно, деньги платить сюда“:

The first release of version 2.0 came out just a couple days after the 9/11 event… But that got to be really popular, and before long I started getting phone calls, and I got a phone call from Motorola. I don’t know if you remember, but back then Motorola was the world’s leading manufacturer of cell phones. And they said, “Hey, we wanna put SQLite on all our cell phones, but we need you to make some enhancements for us. Can we bring you on contract to make these enhancements and to support it?” I said, “Sure, of course.” I hung up the phone and felt “Wow! You mean you can make money off of open source software?” Who knew…?

Курильщик – когда к нему обращается крупный немецкий автопроизводитель с просьбой слегка допилить curl, начинает пороть чушь:

About this time last year a 48-year-old software developer in Sweden named Daniel Stenberg received a panicked call one evening from a large German automaker. The car company, which Stenberg declines to name, asked that he fly to Germany immediately because an application Stenberg had written was causing the entertainment system software in 7 million cars to crash. “I had to inform them that, you know, this is a spare-time project for me and that I have a full-time job and can’t just go to Germany for them,” Stenberg says. “They started out pretty demanding, but then switched when they realized the situation they were in.”

А вот еще про IT-”журналистику”

Вот обнаружил очередной беспроигрышный вариант, достаточный для того, чтобы называться “IT-журналистом” (то есть ходить по всяким презентациям, фкусна жрать и многа пить). Совершенно случайно наткнулся на один лажовый сайтик с “обзорами” всякого железа – а точнее, на вот это:

ds420j-transformer

Подпись к картинке гласит: “В NAS установлен контроллер Gigabit LAN от американской компании bothhandusa под названием 24HSS1041A-2″. На самом деле никакой это не “контроллер Gigabit LAN”, а банальный трансформатор – впрочем, от IT-”журналиста” уже давно не требуется даже приблизительно представлять, что это за деталька и зачем она нужна. В остальном же содержание стандартно – перепечатываем спецификации с официального сайта, немного разбавляя их своими мудрыми мыслями. Добавляется несколько стандартных фоток – и все, “обзор” готов (в принципе, почти тем же занимается девочка, наполняющая каталог системообразующего ДНС-а – только девочку никто не называет журналистом, обидно даже за нее).

Но нет, здесь пошли еще дальше – в самом деле, зачем держать штат дрочеров на железки? Видите в урле странички странные слова artikel и netzwerk? Оказывается, все без исключения материалы этого сайта – переводы с немецкого, а автор этой “статьи” – вовсе не Дмитрий Чеканов, а Kai Malura:

https://www.hardwareluxx.de/index.php/artikel/hardware/netzwerk/52133-synology-ds420j-im-test-kompaktes-einsteiger-nas-mit-bekannter-optik.html?start=2

(да, все та же лажа там на месте)

Особенно смешно, что там в разделе “О сайте” отметился все тот же Синяков, которому Xiaomi не наливало :) Да-да, теперь именно так выглядит “симбиоз германского качества и отечественного творчества” (то, что в проекте нет ни того, ни другого – никого не волнует).

Про бекапы

Чуваки, а расскажите, какие в природе есть “облачные” хранилки, куда можно недорого, но регулярно сливать бекапы (скажем, общим объемом до 2 Тб)? Dropbox с его 9,99$/месяц за 2 Тб норм?

UPD Яндекс.Диск не предлагать, он не позволяет загружать данные иначе, чем через свой собственный клиент (теоретически есть WebDAV, но с недавних пор они его специально поломали).

Ебучее красноглазие

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

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

И еще для праздничного настроения

Московские власти решили нас порадовать в ночь на первое апреля, выпустив в Google Play мобильное приложение для проверки, соблюдают ли граждане режим то ли “карантина”, то ли “добровольной самоизоляции”. Краткий конспект основных функций:

  • Приложение получает доступ ко всей информации на телефоне: GPS, камера, местоположение, возможность звонить, просмотр любых данных, доступ к любым настройкам.
  • Приложение передаёт собранную информацию на серверы мэрии в открытом виде без какого-либо шифрования. Это провал.
  • Для распознавания лиц, приложение использует эстонский сервис identix.one — то есть, передаёт фотографии в эстонскую юрисдикцию и на серверы, расположенные в Германии. Обе страны входят в НАТО.
  • Разработкой приложения занимается компания «Гаскар», подрядчик «Инфогорода».
  • В QR-кодах зашифрованы MAC и IMEI (индивидуальные идентификаторы) устройства.
  • На приложение было потрачено 180 млн рублей. Судя по его качеству, украдено было 99% бюджета.

Приложение настолько понравилось пользователям, наставившим единичек, что уже в 10:00 оно было выпилено из гуглплея.

А вообще я считаю, что контролем перемещений окарантиненных граждан должна заниматься Росавиация. У них есть большой опыт разрешения полетов в “уведомительном порядке” – вот пусть Вася, решивший посетить ближайшую “Пятерочку”, и уведомляет примерно по той же форме, что и “пользователь воздушного пространства категории G”. Разумеется, посещение пятерочки без получения соответствующей информации (о воздушной обстановке, аэронавигационной и метеорологической) от органа полетно-информационного обслуживания должно быть строжайше запрещено.

Кстати, я удивлен

Почему в дискуссии о компьютерной мебели никто не предложил использовать прекрасные 19-дюймовые серверные стойки из Икеи?

lakk-server

https://www.ikea.com/ru/ru/cat/lakk-seriya-09063/

Вот он, настоящий “компьютерный стол”.

Про системный блок

Вот некоторые товарищи начали рассказывать, что у “компьютерного” стола обязательно должно быть специальное отделение для системного блока. Спешу их расстроить – во-первых, последние несколько лет мой “системный блок” выглядит примерно так:

thinkpad-docked

Во-вторых, вот скажите честно – действительно ли вам нужен на рабочем месте громадный гроб, когда человечество уже в конце 80-х (на фото – джобсовский NeXTstation) пользовалось компьютерами в корпусах типа “pizza box”?

nextstation

Обычно тут начинают рассказывать про возможность расширения “стандартного” ПК, возможность поставить туда 100500 дисков и какие угодно карты расширения – но давайте честно, какие карты расширения вам приходится использовать в 2020 году, кроме видеоадаптеров? А сколько жестких дисков у вас стоит в системе? Или вы все же пользуетесь установленной на материнке SSD-шкой? А если вы все же не можете жить без того, чтобы не влезть внутрь системника – не проще ли в таком случае поставить его на столе или рядом с ним, а не в “специальное отделение”, откуда при каждом “апгрейде” его придется доставать?

Короче говоря, если вы не можете представить себе жизни без отдельно стоящего “системного блока” – то вы либо очень продвинутый пользователь так и не выросший из детского возраста читатель журнала “Ксакеп”, либо просидели последние 10-15 лет в подсобке ларька на Савеловском рынке.

PS Про “полочку для клавиатуры” и другие фантазии доморощенных эргономистов, думаю, рассказывать не надо?

Кулстори про оценку рисков

Рассказали тут байку про одну околоайтишную контору. В общем, началось все примерно пару недель назад, когда всякие там яндексы и касперские начали выпихивать народ из офисов на удаленку. Естественно, руководству конторы начали ездить по ушам – мол, а неплохо бы и нам удаленно поработать? Навальство особого энтузиазма не проявляло – даже несмотря на то, что по “Эху Москвы” соловьем заливались про 1600 короновирусных трупов – мол, все вы тут молодые, здоровые, нечего вам этого китайского вируса бояться, да и все равно все рано или поздно переболеем, не страшно. Угадайте, что произошло в конторе сегодня, после выступления Путина? Естественно, все внезапно забегали, как в жопу ужаленные.

При чем тут оценка рисков? Дело в том, что в “модели угроз”, существующей в голове руководителей, был пункт “все умрут от короновируса, вероятность 1e-100500″ – а пункта “родное государство что-нибудь* учудит, вероятность 146%” – не было. Ставьте первым пунктом в модели угроз всякую дичь со стороны госорганов – и будете готовы к любой херне.

PS “что-нибудь” со звездочкой предугадать несложно – берем лучшую (читай, самую суровую) мировую практику – в случае с короновирусной эпидемией это закрытие границ, комендантский час, дефицит туалетной бумаги; добавляем немного местной специфики и готовимся к расстрелам неудачно чихнувших и ссылке простуженных на Колыму.

Хоронили тещу, порвали два U+1FA97

А вы знаете, что в Unicode 13.0 добавили значок с баяном, по многочисленным просьбам комментаторов с anekdot.ru и других русскоязычных сайтов? Теперь знайте.

http://www.unicode.org/emoji/charts/emoji-released.html