Архив марта 2019

О, за саентологов принялись

http://ren.tv/novosti/2019-03-23/figurantami-dela-o-hishchenii-iz-gosoboronzakaza-okazalis-adepty-amerikanskoy

Хочу заметить, что в рамках импортозамещения саентология вполне себе заменяется сектой методологов имени Щедровицкого.

Что это было?

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

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

Интересно, почему питальник от монитора скопытился именно тогда, когда я убрал тот мешок подальше?

Чтобы не пропало

Вот я тут в комментах у [info]mbr в очередной раз обосрал школьную информатику – но чтобы не пропало, вынесу сюда списочек “что должен знать интересующийся предметом старшеклассник”.

За “обязательный минимум” можно принять, скажем, COS 109 – курс Брайана Кернигана по “компьютерной грамотности” для студентов “нетехнических” специальностей в университете Принстона. Специально даю ссылку не на книгу (Understanding the Digital World), а на страничку курса – там есть довольно полезные “лабораторные работы” и наборы задач. В эти “лабораторные работы” входит, скажем, простой HTML, рисование фотожаб, работа с электронными таблицами, представление о программировании.

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

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

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

- знакомство с двумя-тремя (а может, и побольше) достаточно разными языками программирования; к примеру, я в старших классах, помимо стандартного школьного Паскаля, “пощупал” пару вариантов QBasic, Visual Basic, Delphi, C (и даже написал пару-тройку сравнительно больших программ под Windows), PHP (по статьям в журнале Ксакеп), пару “игрушечных” языков (из этой книжки) (RL – диалект Лиспа и “игру в схемы” – своеобразный HDL);
- к предыдущему пункту – знакомство, пусть даже поверхностное, на уровне “а это тоже можно программировать”, с парой разных “платформ” – скажем, можно пощупать “десктопные” приложения, браузерный Javascript, CGI-приложения, приложения для мобильников, прошивки микроконтроллеров;
- представление о различных алгоритмах и структурах данных – то есть все эти стандартные “сортировки пузырьком”, “красно-белые деревья” и все такое (к этому же пункту отнесу и “теоретическую информатику”, но возможно – в сильно урезанном даже по сравнению со школьной программой виде);
- представление о том, что такое реляционные базы данных, ER-модель, умение написать простой SQL-запрос;
- понимать, как работает современный веб – где выполняется Javascript, что такое веб-сервер, как работают CGI-приложения, как это все связано вместе;
- к предыдущему пункту – какие-то основы сетей – знать, что такое TCP, IP и еще куча буковок, уметь настроить WiFi-роутер и с помощью Wireshark подрезать чужой пароль;
- элементарные навыки работы/администрирования Unix-образных систем (”переустановить винду” относим к компьютерной грамотности) – поставить две ОС на одну машину, знать основные команды в терминале, уметь настроить веб-сервер, поставить Wordpress, вот это вот все;
- “практика с железом” – раньше я написал бы сюда “умение сделать нуль-модемный кабель для игры в Doom”, сейчас даже не знаю, что можно считать аналогичным – но что-то все равно надо;
- “как это все сломать” – условно говоря, основы хакинга – от SQL injection и cross-site scripting до использования ошибок типа переполнения буфера;
- знать полное собрание сочинений Дани Шеповалова.

Вот как-то так :)

Чуваки, я охуел

Вот на хабре статейка, в которой чувак описывает найденную им “пасхалку” в Android и последующее заваленное собеседование в Google:

https://habr.com/ru/post/442872/

Если коротко: при регистрации учетной записи Google на телефоне с Android скачивается небольшой apk-файл, который затем выполняется на устройстве пользователя. При этом гуглу передается довольно много информации, позволяющей этого самого пользователя идентифицировать и (здесь включается профессиональная паранойя) подсунуть ему “особый” исполняемый файл. Можно поступить и хитрее – в этом apk содержится интерпретатор некоего байт-кода, который, опять же, может делать довольно многое.

И вы действительно считаете, что все это придумано исключительно для “борьбы с ботами”?

А вот посоветуйте книжек

Насоветовал тут в фейсбуке кучку книжек по программированию микроконтроллеров:

https://www.facebook.com/tikhonovruslan/posts/2193043937400492

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

  • Что такое микроконтроллер? (опционально – что такое ARM, Cortex, STM32 и так далее)
  • Устанавливаем среду разработки (без нее вот просто никуда, даже светодиодом не поморгать без Keil)
  • Пишем простейшую программу (тут половина читателей отваливается, потому что даже “простейшая” программа требует шаманства в виде настройки тактирования, и идет делать сайты на PHP)
  • Работаем с GPIO
  • Работаем с таймерами
  • Работаем со всякой остальной периферией
  • Тема для продвинутых – что такое DMA и как с ним жить
  • Тема для очень продвинутых – как в CubeMX накликать в проект FreeRTOS

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

В общем, что есть хорошего на эту тему “для продолжающих”, с описанием принятых “лучших практик”?

Чип-и-Дип обрадовал

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

Так вот, сегодня, спустя полтора года, приходит мне email – “по заказу такому-то есть товар по претензии, хотите забрать?” Вот не вспомнил бы уже, что там было – пришлось искать и смотреть, что же я такое тогда заказывал.

Про Boeing страшилки

Почитал тут фейсбучные обсуждения недавних катастроф Boeing 737 MAX (индонезийского и эфиопского). Ситуевина, pardon my french, совершенно охуительная: в далеком 1967 году фирма Boeing выпускает новую модель Boeing 737. На протяжении последующих 50 лет самолет несколько раз модернизируют, увеличивают “на манер армянского свадебного лимузина”, вкорячивают двигатели побольше, … – и так доходят до семейства Boeing 737 MAX. При этом аэродинамика ухудшается, появляется тенденция к сваливанию в некоторых режимах, и чтобы это как-то компенсировать (а точнее – чтобы не надо было переучивать пилотов со “старых” 737) – вкорячивают систему под названием MCAS – Maneuvering Characteristics Augmentation System.

Система эта контролирует угол атаки и в некоторых ситуациях изменяет угол установки стабилизатора. При этом на 737 всего два датчика угла атаки. Для полетов в “ручном” режиме, по понятиям далекого 1967 года, это нормально – левый датчик выводит показания командиру, правый – второму пилоту, если один из них начинает врать – то экипаж как-то разберется. С автоматикой же все обстоит хуже – причем судя по комментариям, MCAS вообще работает только от одного датчика, а при его неисправности – начинает творить всякую херню.

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

А я вот слегка охренел от того, как эта самая MCAS реализована – с одним только датчиком. Уже как-то особо не удивляет, скажем, глючная автоэлектроника – но сохранялось какое-то уважение к буковкам “Aerospace”. Увы, и тут теперь все плохо.

Экстремальная кулинария

Сегодня я узнал, как по-японски будет суп из семи залуп.

bukkake-udon

Отупляющие лучи с американских спутников

Посмотрел тут на несколько дискуссий с участием хаброюзера Jef239. Чувак работает в питерской фирме “Фарватер”, занимается там высокоточной навигацией с использованием ГНСС, а параллельно с работой – безвылазно сидит на хабре и строчит длиннющие простыни комментов, в которых либо делится своими взглядами на жизнь, воспитание детей и так далее, либо рассказывает, насколько сложна высокоточная навигация.

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

Про токсичность

Вот прочитал тут статейку, начинающуюся словами “если бы в IT выбирали слово года, термин «токсичность» запросто вошел бы в топ-3″ – а чуть дальше идет пример этой самой токсичности:

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

Не знаю, что тут такого ненормального, бывают форумы, где на хуй послать – как здрасьте сказать (буквально), и ничего, прекрасно люди живут; или вот взять какой-нибудь там ЖЖ начала или середины 2000-х – так его вообще надо с Бхопалом или сражением под Ипром сравнивать – но в целом я лишний раз убедился, что слово “токсичность” – это 100% маркер душных мудаков.

Как там ваш митинг за свободу интернета?

Скоро ли падет кровавый режим?

https://www.thesun.co.uk/tech/8565486/porn-uk-ban-unlock-card/

Ах да, это же в Великобритании придумали обязательную верификацию пользователей по паспортным данным. Им можно, это же Цивилизация.

Гримасы контекстной рекламы

Стал замечать, что контекстная реклама в контактике зачем-то предлагает мне протезы “Моторики“. Долго удивлялся, почему – вроде фразы типа “руки оторвать и в жопу засунуть” я в переписке особо не употребляю.

Но долгие наблюдения за тем, когда она появляется, выявили любопытную закономерность – как только я беседую с биологами по поводу нюансов формата файлов edf (стандартный формат файлов для записи всякой электрофизиологии, в том числе электромиограммы) – то мгновенно вижу в ленте “Моторику”. Интересно, это они программистов так ищут?

Робототехники вам в ленту

robot-sortir

Прямо вспоминается “Красная плесень”:

И зашел Ваня в странный сортир
Ни очков здесь тебе, не перил
Даже нету окна и зеркал
Лишь один здесь стоял писсуар
Но писсуар очень странный при этом
Ножки обуты в кроссовки с жилетом
Пальто одето на тот писсуар
Таких извращений Иван не видал!
Но видя, что некуда больше сливать
Стал лихо Иван в писсуар этот ссать
Вдруг затрясся писсуар
Загудел как самовар
И ногою вдруг как топнет
И ругаться громко стал:

Ты чего мне ссышь в дупло?
Ты, гавнистый западло?
Я великий умывальник!
Знаменитый Мойдодыр
Умывальников начальник
Да мочалок командир
Да мочалок командир
Да мочалок командир
Если топну я ногою
И достану свой обрез
Свой обрез
Свой обрез
Прибегут мои мочклки
Мои мочалки
Мои мочалки
И тебе тогда пиздец!!!
Пиздец
Пиздец
Пиздец
Пиздец

Бери нокию, не ошибешься

Введя при покупке в качестве промо-кода “8 марта” и оплатив картой на сайте, можно купить Nokia 3.1 plus за 4690 рублей:

https://mobileshop.nokia.ru/379167/nokia-3.1plus-indigo/

UPD Халява все, теперь все та же нокия стоит не 10, а все 13 тысяч, то есть около 8 с учетом скидки и в целом акция выглядит значительно менее интересно.

UPD2 В Нокии решили, что слишком сильно сбросили цену и начали отменять заказы. Попробуем, конечно, доказать им, что они неправы.

UPD3 Краткая инструкция по дальнейшему общению с ООО “Байон”: https://www.facebook.com/olartam/posts/2322586167791460

IT-держава, блядь

Запомните – первый шаг на пути к превращению в хохлостан – это употребление слов “IT-держава” с нескрываемой гордостью (когда гордиться больше как-то нечем):

https://ria.ru/20190217/1550981508.html

Но есть и здравомыслящие СМИ, понимающие место вклавиатурупальцемтыкальщиков в жизни и экономике:

http://ulgrad.ru/?p=177783

Дево-псам слова не давали

А дево-псам слова не давали. К ноге, сука. А еще тяфкнешь – забаню.

Здесь программисты общаются а не нетраханные кроссгендерные собаки.

Отсюда: https://vitus-wagner.dreamwidth.org/2061060.html?thread=51686148#cmt51686148

Проникся еще большим уважением к [info]vitus_wagner, большому мастеру слова.