Позднее Ctrl + ↑

«Ардуино»

Добавление файлов в проект: просто в той же папке (важно, чтобы она называлась так же, как и основной файл) создаём файлы типа .ino. Это как бы .c, только никаких .h не надо, всё само подключится и будет видно глобально.

 Нет комментариев    126   2017  

Дорогой «Билайн»

Дорогой «Билайн»! К сожалению для наших отношений, слово ‘дорогой’ употреблено здесь в самом прямом смысле. Относительно недавно я выбрал тариф с 2 ГБ трафика по всей России и платил за это 150 ₽/месяц. Несколько дней назад ты незаконно поменял тариф: теперь я плачу 350 (ну, в первые 3 месяца ты дал мне персональную скидку, выходит 280. Но всё же значительно больше, чем 150, не правда ли?) и имею за это хоть и 6 ГБ трафика, но только дома. Меня это не устраивает и, ещё раз повторяю, ты сделал это незаконно. Спасибо, что подтолкнул меня выяснить, что можно получить 1,5 ГБ интернета по всей России всего за 130 ₽/месяц («Теле2», тариф «Классический», услуга «1,5 ГБ»). Прощай.

 Нет комментариев    115   2017  

Картонные коробки и куда они входят

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

Если не указано особо, информация (цены, наличие) актуальна 20.08.2017.

Полки «Горм» бывают 4 размеров: 50*31, 50*51, 77*31, 77*51 см. По вертикали минимальное расстояние между креплениями, согласно моим измерениям в 2015-м году, составляет 127,4 мм, будем называть это единицей высоты.

Сторона квадратного листа фанеры составляет 1525 мм, можно распилить на 4 квадрата по 760 мм (далее «четверть фанеры»). Я сделал стеллаж с полками ШГВ 780*780*450 мм.

Коробка «Паппис» («Pappis»). 35 ₽. ШГВ 34*25*26 см, объём 19 л, недавно было сообщение о выводе из ассортимента, но теперь как будто не было. Крышка одной стороной приделана к коробке. На полку 77*51 входят 4 штуки, но может потребоваться вытащить одну для доступа к соседней. 3 единицы высоты, остаётся более 11 см. На четверть фанеры входят 6 штук, занимая лишь 2/3 высоты. Вмещает в себя стопку А4, в том числе в мультифорах, но не в папках. Высота стопки до 250 мм, это более 2000 листов плотностью 80 г/м².

Коробка «Этэне» («Jättene»). 99,5 ₽, продаётся парами, на российском сайте уже отсутствует, хотя в магазине всё в порядке. ШГВ 56*33*41 см, выдерживает 30 кг. Крышку образуют 2 длинных клапана, из-за чего сверху коробка довольно дырявая, не защищает от пыли и дождя. Свободно по ширине входит на полку 77*31, 4 единицы высоты, остаётся 8 см. На четверть фанеры свободно входят 2 коробки.

Коробка «Пингла» («Pingla»). 99,5 ₽ для членов клуба; 24.09.2017 — 199,5 ₽; продаётся парами. ШГВ 57*37*36 см. Крышка является отдельной деталью. Свободно по ширине входит на полку 77*31, 3 единицы высоты с минимальным запасом. На полку 77*51 — 1 + 1 «Паппис» с большим запасом (обе поперёк). На четверть фанеры входят 2 штуки с большим запасом. Ранее не использовал. Похоже, такая же крепкая, как и «Этэне».

Коробки «Леруа Мерлена» отличаются тем, что требуют доработки клеем или скотчем. Выдерживают меньшую нагрузку, зато дешевле, внутренний объём более близок к габаритному, лучше защищают содержимое от пыли (крышку, как и дно, образуют длинные клапаны, сходящиеся встык; если заклеить стык скотчем, остаются только ручки, которые тоже можно заклеить). Много негативных отзывов, похоже, связано с тем, что люди не понимают, как правильно оскотчить эти коробки (или с тем, что мои старые 60*40*40 см из картона Т-24, а теперь Т-22). Я делаю так: 2 кольца скотча с большим нахлёстом в самом низу и самом верху коробки. 2-3 полосы поперёк длинных нижних клапанов с нахлёстом на нижнее кольцо. 1 полоса вдоль стыка этих же клапанов, опять же с нахлёстом. Для запаковки сверху достаточно только такой же полосы, без поперечных, но её можно сделать подлиннее, чтобы она зашла вовнутрь ручек. 20 кг? Ни единого разрыва!

60*40*40 см, картон Т-24. Давно уже не продаётся, а жаль: для не слишком тяжёлых вещей получалось намного экономнее остальных вариантов. На четверть фанеры входит 2 коробки.

56*32*40 см, Т-22. 52 ₽. Не пробовал. Как видно, размеры практически такие же, как у «Этэне», цена почти в 2 раза ниже.

40*30*20 см. 25 ₽. Штабелировать не более 4 шт, выдерживает более 7 кг (это писалось в 2014). Не замерял, сколько куда входит.

Ярлык с относительным путём в Windows 7

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

Для начала хотим создадать ярлык для запуска файла text.txt из текущей папки. Для отладки запускаем в ней командную строку.
cmd /c text.txt — то, что надо (/c — исполнить команду и выйти).
Создаём ярлык:
Target=%windir%\system32\cmd.exe /c text.txt
Start in=(пусто)

 Нет комментариев    380   2017  

Непредсказуемое поведение в многозадачных операционных системах

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

И вот даже в этой простейшей последовательности может произойти сбой, если операционная система что-то сделает между этими событиями.

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

Да что там телефоны! Пульт дистанционного управления центральным замком автомобиля — что может быть проще? Всего две кнопки: открыть и закрыть. Их можно нащупать пальцами в кармане. Связь односторонняя, ничто не может внезапно изменить состояние. Но даже тут возникает проблема: случайные нажатия. Я просто ношу ключ в кармане (разве не для этого он предназначен?). Я не нажимаю кнопки специально. Я ожидаю, что состояние замка машины будет неизменным. А он сам то открывается, то закрывается!

Но вернёмся к компьютерам. Интересно, что каждая отдельная программа непредсказуемым поведением, как правило, не страдает. Ну, разве что теперь при установке многих бесплатных программ нельзя просто несколько раз нажать «Далее», надо смотреть, чтобы не установился «Яндекс-браузер». Но это другая проблема, хотя и близкая.

А вот операционная система — казалось бы, программная основа, «скелет» компьютера; то, что должно быть образцом качества для других программ — вот именно это прежде всего и вносит непредсказуемость.

Типичная ситуация: я делаю что-то, и программа задумывается на некоторое время. Большее, чем я готов ждать. Это может быть загрузка «тяжёлой» веб-страницы; установка программы; открытие файла незапущенной «тяжёлой» программой («Офис», «Фотошоп», «Вижуал студия»); копирование — что угодно. Важно, что я не хочу ждать, и переключаюсь на другую программу. Делаю что-то в ней... А потом первая программа захватывает фокус! Да даже если я это вовремя заметил, то какое она имела право отвлекать меня? Ей что, мало мигания в панели задач? А если я не заметил вовремя, и, например, нажал «Enter», не успев прочитать, то я даже не знаю, к каким действиям это может привести. Хорошо, если просто закрытие сообщения об окончании установки. Или если можно нажать Ctrl+z. А если я согласился с перезагрузкой?

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

Но есть во всём этом хотя бы одна вещь, на которую я могу повлиять: не использовать многодокументные программы, которые закрываются с закрытием последнего документа. Например, веб-браузер «Гугл хром».

Дело вот в чём: открыто у меня куча документов. Они мне больше не нужны. Можно закрыть окно целиком. И в следующий раз они откроются снова (на самом деле нет: как раз «Хром» откроет пустую вкладку; но, если мне надо вернуться, достаточно нажать Ctrl+Shift+T). Чтобы такого не было, я закрываю документы по одному. Естественно, клавиатурой: мышка для ламеров. Естественно, не много раз нажимая Ctrl+W или Ctrl+F4, а зажав один раз, пока всё не закроется.

И тут 2 варианта: хорошие приложения закроют все вкладки, но не закроются сами. А плохие закроются. Фокус перейдёт на другую программу. И команды закрытия будут передаваться ей! Непредсказуемое поведение! В данном случае непредсказуемость состоит в том, что я не знаю, сколько именно времени надо первой программе, чтобы закрыться. Если бы знал, можно было бы именно в этот момент попытаться отпустить клавиатуру.

 Нет комментариев    180   2017  

Спам «Кукурузы»

Банковская карта «Кукуруза» постоянно шлёт спам. Ссылка «отписаться» не работает, жал уже раз 10. Папка «спам» в почте — не выход: не люблю, когда там есть непрочитанные сообщения.

В самом письме помимо «отписаться» предлагают написать в техподдержку. Жму ссылку и попадаю на сайт «Евросети»! Почему письмо «Кукурузы» приводит в «Евросеть»? Ну да, они родственники, но ведь у каждого свой сайт. И что, мне писать в техподдержку «Евросети», чтобы они отписали меня от спама «Кукурузы»? Написать всегда успею, а пока поразбираюсь ещё.

Какой у меня пароль от «Евросети»? Никакого, я там не зарегистрирован! «Восстановить пароль» по этой же причине не работает (и даже не сообщает, что я не зарегистрирован).

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

Сколько лет назад они переписали личный кабинет? Год? Два? Я уже забыл, что старый вообще существовал, а они до сих пор не доделали новый! Переходим.

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

Активировал. Снял. Если через месяц эта запись не будет обновлена, значит, я о ней забыл, потому что спам приходить перестал.

Обновление 07.07.2017: нет, не перестал. Зато предложили сменить пароль. Так что теперь я зарегистрирован в «Евросети» (при этом она знала полностью ФИО и номер карты, но не номер телефона и дату рождения, и эти данные я так и не ввёл). Так что ещё раз пробую отписаться.

Обновление 13.07.2017: и снова не перестал. А что, если сначала подписаться? И указать в личном кабинете телефон, а то он красным светится? А после этого отписаться?

Обновление 20.07.2017: и снова не перестал. Написал через форму обратной связи, ссылка на которую содержится в каждом письме (http://euroset.ru/novosibirsk/feedback/): «Прошу отписать меня от рассылки „Кукурузы“. Также сообщаю, что другие способы отписки опробованы мною многократно, и они не работают. Если интересно, подробности по ссылке http://www.caesarion.ru/blog/all/spam-kukuruzy/». Чтобы повысить вероятность успеха, заменил слова ‘требую’ и ‘спам’ на эвфемизмы-канцеляризмы ‘прошу’ и ‘рассылка’.

Обновление 20.08.2017: спама больше не было. Но и ответа тоже, а обещали в течение 24 часов.

 Нет комментариев    201   2017  

= и ==

В «Паскале» «=» — это сравнение, а присваивание — это «:=». «Паскаль» я изучал в школе и первом семестре университета. Во втором «Паскаль» сменился на «Си». В «Си» «=» — это присваивание, а сравнение — это «==».

Сначала я часто ошибался: писал if (a = 5) вместо if (a == 5).

Потом мне посоветовали, и я стал писать if (5 == a): если по ошибке поставить присваивание, получим ошибку времени компиляции.

Прошло десять лет. Я иногда программирую, но в целом не работаю программистом. Месяцами не смотрю на код ни на каком языке. И теперь конструкция if (5 == a) кажется мне безумно некрасивой; теперь я всегда пишу if (a == 5) и, что самое интересное, никогда не ошибаюсь.

А студентам теперь уже я советую if (5 == a).

Не помню, как я отношусь к «ПХП» с его «===» (сравнение с учётом типа). Давно не писал на нём.

 Нет комментариев    154   2017  

Русские не читают инструкций

Говорят, что русские читают инструкции не перед использованием, а после того, как сломали.

Всегда считал это глупостью (в лучшем случае — несмешной шуткой). И лишь сейчас, в 29 лет, я осознал рациональную сторону такого поведения.

Инструкция на водонагреватель «Polaris» «Aqua»: «просверлите отверстия под анкерные болты диаметром 12 мм и глубиной 80 мм ... При установке анкерных болтов должны быть задействованы все точки крепления, предусмотренные конструкцией водонагревателя. Не допускается подвеска прибора на два анкерных болта, если конструкцией предусмотрены четыре точки крепления». Конструкцией предусмотрены 4 точки крепления. В комплекте 2 анкера. Диаметром 16 мм.

«Введите сумму, кратную 500 рублям. Максимум 300 рублей за операцию». Ввожу 10 000. Получаю 10 тысячных банкнот.

 Нет комментариев    244   2017  

«Эгея»

Версия 3118

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

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

Если редактировать запись, а потом (до сохранения изменений на сервере) решить, что лучше оставить как было, то приходится заходить другим браузером и делать фиктивное обновление. Потому что теперь автосохранение.

Посмотрим, осталась ли проблема с РСС (многократный приход одного и того же).

Версия 2858

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

Есть сохранение по Ctrl+S, хорошо.

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

Идентефикатором для РСС является адрес заметки. Поэтому при изменении содержания или времени РСС не перезагрузит заметку. А при редактировании адреса продублирует и не поймёт, что она уже была. Все старые адреса движок запоминает, делает перенаправление на последний. При попытке использовать занятый адрес (в том числе при создании новой записи) сам редактирует. Неплохо.

Подключение мобильного кондиционера

Правило 1: если есть хоть малейшая возможность — откажитесь от мобильного кондиционера! Лучше всего система кондиционирования, объединённая с системой вентиляции; неплохой вариант — сплит-система (формально в Новосибирске нужно разрешение, чтобы повесить внешний блок на фасад; фактически по состоянию на 2017 год мне известны многократные случаи самовольной установки и неизвестно о последствиях). Мобильный кондиционер — это шумно, очень шумно по сравнению даже с сильным вентилятором. А мобильность вступает в противоречие с эффективностью: чтобы добиться паспортного охлаждения, придётся так хорошо уплотнить все места соединений и теплоизолировать трубу, что прибор станет стационарным. Конечно, на зиму можно всё разобрать. Но вот «включили в розетку, кинули трубу в форточку или щель балконной двери» — это неправда. Если охлаждать вообще и будет, то весьма неэффективно.

Итак, есть Electrolux EACM-15 CL/N3 Loft, диаметр воздуховода 125 мм. Есть подоконник. Есть отверстие в окне. Прошлым летом на этом же месте стоял другой мобильный кондиционер. Что может быть проще?

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

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

Заменил пластиковую трубу на гибкую алюминиевую, чтобы развязать кондиционер от окна. Обмотал скотчем с армирующей сеткой. Красота! Не дует, не дребезжит. Красота продолжалась менее суток. Температура воздуха — более 60 °Ц. Клей расплавился.

Дал скотчу второй шанс, только другому — алюминиевому. Он, вроде, как раз для герметизации вентиляции используется. Результат прежний.

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

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

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

 Нет комментариев    611   2017  
Ранее Ctrl + ↓