Мысли


Всем привет! Давно я ничего не писал. У меня были небольшие изменения: я сменил работу. Прошлая работа была замечательная, но уж очень нервная, а это сказывается на здоровье. Но я люблю путешествовать, и мне очень не хотелось сидеть дома. Выход нашёлся - я подался в водители. Стал одним из тех, кто возит товары туда-сюда. Правда, я не захотел управлять многотонной фурой, а выбрал небольшой грузовичок. Мой знакомый нашёл мне хорошую фирму. Сделал все документы, и вот сейчас я выехал в рейс.
Мне обещали, что будет возможность гулять по городам, как и прежде. Но пока погода подводит, а сегодня в Дании я встал на парковку, из которой никуда не выйти. Кстати, удивительно чистая парковка. Ниже выложу несколько фото.
Моё путешествие продлится 4 недели. Пока неплохо. В дороге я с пятницы и немного втягиваюсь. Работа очень спокойная и лёгкая. Удивительно, насколько сейчас просто стало работать водителем.. В принципе, тот же офис: тебе дают задание — приехать на нужную фирму, там тебе загрузят груз, и отвезти на другую фирму. Вот прямо сейчас я везу гидроцилиндр из Бельгии в Данию, в порт. Завтра я его затаможу и отвезу в порт на самом севере Дании, а уже в четверг я загружаюсь там же и еду в Рим.
Я вот не знаю: рассказывать ли мне о своей работе или, как и прежде, только показывать различные места?
Всем пока!



Самые ранние сведения о скульптурах в Летнем саду относятся к 1710–1711 году. Очевидец видел там «несколько статуй и бюстов из белого мрамора, среди которых выделялись польский король Ян Собеский и его супруга». Планомерная закупка скульптур именно для Летнего сада производилась в 1716–1723 годах. За это время сад был насыщен изображениями мифологических богов и богинь, аллегориями добродетелей и прочими важными для просвещения дворянства символами.
Закупки производились в Венеции Саввой Рагузинским и в Риме Юрием Кологривовым. Основное ядро коллекции Петра I сохранилось до нашего времени и составляет 92 скульптуры.
Одним из авторов получившим большое количество заказов из России быль Пьетро Баррата, который уже будучи известным скульптором, исполнившим заказы для собора в Удине и двора курфюрста Саксонии, с 1716 начал выполнять заказы и для России.
Например аллегория богини Юстиции, она же Фемида, она же Правосудие.
Правда в понимании «правосудие», с его атрибутами — мечом и весами, — частый символ в изображениях XVIII века. Правосудие в Летнем саду держит в руке меч — знак карающего правосудия.

Карающему мечу обязательно должна быть антитеза, и это Милосердие.

Хотя надо отметить, что Фемида первоначально изображалась, как богиня с весами и рогом изобилия

Это уже в Риме, когда культ Фемиды слился с местной богиней Юстицией, ей поменяли рог изобилия на меч (ох уж эти суровые ребята)

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



Вспомнилась мне сегодня история, как у моей двоюродной сестры чуть было свадьба не сорвалась. И всё из-за жениха.
В день бракосочетания жених проснулся с головной болью и высокой температурой. А когда подошёл к зеркалу, увидел сыпь на лице в виде красных пятен, которые местами стали превращаться в пузыри. Такая же сыпь появилась и на других участках тела. Вместе с сыпью появился и зуд. Показался своей маме, с которой на тот момент жил вместе. Мама сказала, что это ветрянка и надо смазать зелёнкой. От зелёнки жених отказался. Выпил парацетамол с супрастином и пошёл наряжаться на свадьбу. Свадьбу нельзя было перенести на другое время, думаю вы понимаете почему. И зелёным на фотографии не хотелось быть. Про людей, которых он мог бы заразить, никто не подумал.
От "выкупа невесты" пришлось отказаться. С большим трудом жених дождался конца регистрации. Ему было очень плохо. В ресторан он уже не поехал. Вместе с молодой женой отправился домой. В ресторане родственники и друзья без молодых гуляли. Ветрянка - уважительная причина для того, чтобы на своей свадьбе не гулять.
А вы гуляли когда-нибудь на свадьбе, на которой не было жениха с невестой? Расскажите

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

Она тогда только начинала писать и прислала мне этот стих, чтобы я сказала, стоит ли продолжать. У меня тогда тоже была не простая зима, и иногда мне кажется, что кусочек про "Kaj ne plu memoros vintrajn kantojn" ("И не вспомнит больше зимних песен") спас если не мою жизнь, то уж точно веру в добро. Вот картинка из той зимы, про тех же мишек, но еще и про меня, и про разное другое.

Я не умею нормально переводить стихи, поэтому из всей книжечки перевела (с эсперанто) только этот.
О чем медведи видят сны зимою?
О звездах - тех, что падают на землю,
Снежинки ведь на самом деле звезды,
Замерзшие, от звезд других отбившись.
О замерших от ужаса березках,
Укрытых инея смертельной шалью.
О бесконечной и пустой дороге
Через затихшие безжизненные дали.
Спасет от этого бочок пушистый
Вблизи спокойно спящего соседа,
И песни - длинные задумчивые песни -
О в путь уже отправившемся солнце,
О беленькой подснежника головке,
Которую земля с надеждой прячет.
О том что птичьи стаи улетая
Кричали не «Прощай», а «До-свиданья».
И эти песни мишку успокоят.
Он будет спать, посапывая сладко,
Покуда песня прогоняет страхи,
Покуда шум весенний не разбудит.
И он не вспомнит больше зимних песен.
Ведь мишка очень голоден, проснувшись.
А мишка, если голоден спросонья,
Не очень склонен к сложным размышленьям.
Для песенок других смеется лето
О приключеньях, о ручьях журчащих,
О травах, светлячках, о вкусном мёде.
Для песенок коротких и веселых,
Для песенок чтоб прыгать и купаться.
Но и для долгих дум вернется время
Для новых песен и для новых мишек
Что свет увидят новою зимою.
(Татьяна Терехова, пер. (кривой) мой)
P.S. До сих пор плачу, когда перечитываю :)


Сегодня понедельник - день любования Сэром Максом. Посмотрите, какой красавец мой кот! А какие у него пальчики на лапках! 🥰🥰🥰 Розовые!

А теперь покажите, какие пальчики у ваших любимцев.
Сегодня я решил поделиться хорошей новостью - у меня успешно (без ошибок) отработал очередной пример написанный на моем языке J8B (близкий к синтаксису Java).
Я чуть более года создаю тулкит, который обойдет по многим важным аспектам существующие современные решения используемые для разработки программ (прошивок) на 8-битные микроконтроллеры (для начала). Ссылки на open source проект смотрите в конце поста.
Сейчас я акцентирую внимание на функционале и чаще всего для тестирования использую ATmega328p (он же используется в Arduino UNO), однако этот тулкит имеет все архитектурные возможности для мультиплатформенного кодинга (в том числе, в будущем, и для 32 битных микроконтроллеров)
Итак, я хочу рассказать о конкретном примере - опросе многим известного датчика температуры и влажности DHT11.

И здесь нет никаких сложностей. В интернете есть множество примеров и скетчей для Arduino с использованием этого датчика. И поэтому его опрос легко реализовать на Си и даже на Ассемблере.
Но что если я хочу писать не на Си и Ассемблере, а на высокоуровневом ООП языке схожим синтаксисом с Java? Что если я не хочу знать как работает серийный порт, что такое прерывания и как переносить мою программу с одного чипа на другой? А еще больше я не хочу погружаться в тяжелый синтаксис Си и тем более ассемблера.
Я хочу использовать язык похожий на Java, чтобы он был максимально безопасен: чтобы моя программа не падала из-за выхода за границы массивов, чтобы я мог отслеживать переполнения примитивов, чтобы у меня была нормальная работа с исключениями. И я не хочу постоянно заботиться о выделении и освобождении памяти - из-за этого постоянно куча трудно диагностируемых ошибок, особенно если добавить еще работу с указателями. А еще я хочу композицию, потому что полноценное наследование неоправданно дорого, особенно для 8-битных микроконтроллеров. Т.е. я хочу работать с объектами, хочу передавать их в методы не заботясь кто именно их реализует.
В J8B нет наследования классов - оно сильно усложнило бы кодогенерацию, раздуло код и съело бы такты на анализ. Вместо этого я оставил наследование только для интерфейсов. А вся объектная модель строится через композицию. Это даёт предсказуемые расходы памяти и времени - вы платите ровно за то, что реально используете.
И поэтому мой пример выглядит вот так:

Для сравнения приведу пример подобного опроса на Arduino (язык Си):

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



Как видите, этот код уже поддерживает мультиплатформенность, многопоточность, композицию, исключения, работу с безопасными массивами, легковесный примитив дробного типа fixed (Q7.8) и полностью отвязан от аппаратных особенностей МК.
И конечно обязательно нужно сказать о цене. Какова цена этим высокоуровневым фичам?
Килобайты ОЗУ, флеша? Компиляция в 5 минут? Сложные настройки компиляции и оптимизации?
Давайте посмотрим.

Размер занятого FLASH - 2947 байта (9.3%) - это не просто опрос датчика - здесь также множество универсальных библиотек RTOS которые будут использованы повторно в больших проектах. Можно снизить размер прошивки где-то еще на 100 байт указав опцию -Dj8b.bldrApiReuse=true для использования функций бутлоадера убрав их из основной прошивки.
Также мы видим весь процесс настройки проекта и его команды сборки: mvn j8b:run -Parduino-uno
Конечно настройки есть, и их много - их можно прописать в pom файле maven'а или использовать отдельные утилиты сборки, ассемблирования и прошивки. Но для обычной прошивки достаточно только одной команды Мейвена с параметром платформы (необходим установленный vm5277 бутлоадер - что делается тоже легко).
Чуть подробный вывод сборки, по которому можно судить о скорости сборки и прошивки проекта:

Здесь мы видим, что компиляция прошла за 0.254 секунды, а ассемблирование за 0.202 секунды.

А здесь процесс прошивки, который длился 0.267 секунд.
В итоге, с учетом запуска Maven - сборка выполняется где-то за секунду. Этот процесс можно сильно сократить пользуясь утилитами напрямую (особенно если их собрать в нативный код с помощью GraalVM)
И последнее - расход памяти:

Здесь добавлен вывод System.showDRAMMap(); - показывает занятые биты карты динамической памяти: 011100... т.е. занято 3 блока по 8 байт каждый - 24 байта. Они ушли на заголовок и кучу экземпляра класса DHT11.

В данной конфигурации динамическая память занимает 1755 байт, общий стек - 192 байта, бит карта - 27 байт. Остальное (74 байта) ушло на служебные нужды RTOS.
Хочу также обратить внимание - сейчас у меня в приоритете функционал. Процесс оптимизации - это задача на будущее. Т.е. я планирую в будущем добиться еще лучше показателей.
Еще я хотел бы обратить ваше внимание на производительность. Понятно, что реализация высокоуровневого языка, и тем более ООП языка, требует дополнительных расходов - например процессорного времени.
Однако это не стоит дорого, потому что с таким архитектурным подходом можно смело разделить бизнес логику (которая не требует производительности железа) и низкоуровневую логику - которая создается прямо на ассемблере в RTOS.
Например - зачем писать подсчет CRC8 на уровне бизнес логики, когда ее можно оптимально и красиво написать на ассемблере и предоставить прикладнику в виде нативного метода. При этом никто не мешает, при необходимости, написать аналогичный код на j8b.


Таким образом - там где нужна бизнес логика - прикладник получает высокоуровневый, легко читаемый и надежный язык (защищающий от многих низкоуровневых ошибок), а продвинутый гуру - возможность дополнять низкий(нативный) уровень высокоэффективным ассемблерным кодом.
Я могу очень долго рассказывать о своем проекте. И уверен, что многие мои рассказы будут по началу вызывать скепсис. Но чем глубже Вы проникнитесь в мое решение тем интересней оно будет.
Но стоит сказать - это альфа версия. В ней много ошибок, много недоработок, плохая оптимизация и пока поддерживается только AVR. Однако, эта альфа уже доказывает корректно продуманную архитектуру и способность генерировать конечный рабочий результат.
И напоследок я хочу показать несколько скриншотов основного инструмента разработки на моем J8B языке и ассемблере:






И да, это IntelliJ IDEA 2025.2.6.2 (Community Edition) с моим плагином (пока не поддерживает семантику языка). Также есть плагин для NetBeans - но похоже я не будут его поддерживать дальше, по крайней мере в ближайшее время. Разработка плагина для IDEA гораздо менее трудозатратна.
В общем я просто хотел поделиться своим достижением, я очень рад что уровень проработки всех мои компонентов позволил мне собрать этот код в рабочую прошивку.
Важно! Я несколько месяцев не обновлял проект на GitHub'е.
То, что вы там найдете - не будет соответствовать этому посту.
Прошу подождать, я планирую в течении недели выложить все свои доработки.
Ссылки:
Сайт-визитка: https://vm5277.ru
GitHub: https://github.com/w5277c/vm5277
P.S. Ждите обновления проекта.
Что там в Бельгии?
Ребята, кого я увидела на днях!!! Раньше их встречала только на картинке, а тут шла и разглядывала ручей на предмет утят - всё ещё можно встретить, а тут она - утка мандаринка!!! Точнее он - это самец, самочки не такие яркие. Зумом приблизила, чтобы наверняка - и правда утка мандаринка! Радости полные штаны, вот делюсь с вами:

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

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






И бонусом фан факт. В 1923 году к фонтану добавили ещё две скульптуры, пана (бога лесов) и сиринкс (нимфы), но их потырили в 70-х дважды, и 2000- годах, так что это 4 вариант украшений.


Всем здравствовать!
Ну что? Продолжим насиловать логику? Предлагаю повысить ставки, и выходить на новые уровни сложности. Как вам такой вариант?
В начале будут простые загадки, но к концу они усложнятся, предупреждаю сразу. Делитесь, пожалуйста, своими впечатлениями. Кому что понравилось, а что вызвало ступор? И кто сколько отгадал?
1. Представьте, Вы заперты в комнате из которой есть три выхода.
А) За этой дверью бушует пожар.
Б) За этой дверью львы, которые не ели три месяца.
В) За этой дверью водоём кишащий крокодилами.
Какую дверь выберете?
2. Корова - 2, собака - 3, рыба - 0, чему равен петух?
3. Ёмкость наполняется водой. Каждый день её объём увеличивается вдвое. Через 37 дней ёмкость наполнится полностью. Сколько дней потребуется чтобы заполнить ёмкость на половину?
4. МамЛада решила угостить друзей своим фирменным салатом. Она взяла три перца, столько же помидоров. Огурцов она взяла больше чем редиса, но меньше чем томатов. Сколько всего овощей использовала МамЛада для своего салата?
5. На улице стоят три дома — красный, синий и зелёный. В каждом живёт один человек разной национальности: британец, немец и норвежец. Британец живёт в красном доме. Норвежец не живёт в синем доме. Кто живёт в зелёном доме?
6. Вы, с вокзала, едете на электричке. Каждые пять минут вам попадаются встречные электрички. Сколько электричек прибывает на вокзал каждый час при условии, что скорости всех электричек одинаковы?
7. Каспер, Стефан и Януш предложили подвезти вас до дома. Двое из них хотят вас убить. Один — нет. Кроме того, вам известно, что как минимум один из этой троицы всегда врет (и это никак не связано с тем, хочет ли этот человек вас убить). Вам нужно выбрать, с кем поехать, чтобы добраться домой живым. Каспер говорит, что Стефан и Януш говорят правду. Стефан заявляет: «Если хочешь жить, выбери Каспера или Януша». Януш советует не выбирать Стефана, если вам хочется жить. Кого из троих нужно выбрать?
8. Колю, Сашу и Юру допрашивали в связи с угоном велосипеда. Коля сказал, что велосипед украл Саша. Саша заявил, что он невиновен. Юра сказал, что и он не вор. Известно, что только один из ребят сказал правду. Кто угнал велосипед?
9. Прошлым вечером Андрей отправился на концерт, Борис провел всё время с Ольгой, Сергей так и не увиделся с Ритой, которая посмотрела спектакль в театре, а Полина сходила в кино. Кроме тех, кого мы уже назвали, постоянными членами компании были Дима и Света. Вместе с каждым из юношей на том же виде культурных развлечений побывала одна девушка. Какая-то пара посетила художественную выставку. Где были Борис и Ольга?
10. На дружеские посиделки собрались четыре супружеские пары. За вечер Диана съела три конфеты, Элизабет — две, Николь — четыре, а Мод — одну. Симон съел столько, сколько и его жена, Пьер — вдвое больше своей жены, Луи — в три раза больше своей жены, Кристиан — в четыре раза больше своей жены. Если все присутствующие съели вместе 32 конфеты, то не могли бы вы сказать, как зовут жену Луи?
Надеюсь понравилось?
P.S. Вот что нашёл на просторах интернета. полезные советы по решению задач на логику:
Умение решать задачи — это навык, а не врождённый талант. Его можно развить, придерживаясь нескольких принципов.
1. Читайте условие дважды. Большинство ошибок происходит из-за невнимательного чтения. Перечитайте медленно и выпишите все ограничения.
2. Составляйте таблицу или схему. Для дедуктивных задач нарисуйте сетку и заполняйте её методом исключения. Визуализация помогает не запутаться.
3. Ищите противоречия. Если ваше предположение ведёт к противоречию — оно неверное. Это «метод от противного» — один из ключевых инструментов логики.
4. Начинайте с самого жёсткого ограничения. Выберите условие, которое оставляет меньше всего вариантов, и идите от него.
5. Не доверяйте интуиции. Многие задачи специально сформулированы так, чтобы очевидный ответ был неверным. Всегда проверяйте ответ подстановкой обратно в условие.
6. Решайте регулярно. Даже 10–15 минут логических задач в день ощутимо улучшают навык за несколько недель.
Честно говоря я думал, что сейчас молодые люди, только вышедшие из школы, учатся в колледже и т.п. (я не про высшее образование) владеют компом на уровне "пошёл ты". По крайней мере моя дочка купив первый ноут (а это был единственный комп в семье, т.к. меня ещё там не было - я просто воспользовался случаем для знакомства - её мама попросила настроить USB-3G свисток на компе и поставить необходимый софт) ещё в 9м классе тарабанила по клавиатуре практически не глядя, да и мышой пользовалась быстро...
Тут мне на ПВЗ пришёл картридер для компа, пошёл забирать. Так как приложухи от озонов и вайлдберрисов на телефон я принципиально не хочу ставить, всё делаю через веб-версии этих маркетплейсов на компе. Получаю по цифровому коду - тупо сфоткав экран компа.
И вот молодой человек, явно уже закончивший школу не может в ПВЗ ввести этот цифровой код. Ноут у него, между прочим с блоком цифровой клавы (эдакий калькулятор с правой стороны). Тыкает цифирьки на линейке блока символов, т.е. на основной клаве, а не "калькуляторе". Звёздочку не может ввести (то аль, то контрол зажимает). Говорит код не найден. Ладно, живу рядом, сходил, пепероверил, обновил страницу, посмотрел код не на основной странице, а на странице самого товара - всё совпадает.
Прихожу снова - не подходит код, да как так то, говорю давай сам введу - ты только тыкни мышкой куда вводить - дальше сам всё делать будешь. Он тыкнул, я за 5 секунд набил код, спрашиваю куда дальше тукать - он уже сам нажа пимпачку "Найти" - на тебе, всё нашлось, товар выдан, все счастливы...
Вот как так-то? Не в деревне же живём, дети уже давно смартфонами и компами владеют чуть ли не с пятого класса получше нас стариков, а тут...

Сцена из фильма «Семеро маленьких Фоев» 1955 г.
Можно похвастаться, да? И заодно попросить пожелать удачи.
Внезапно прошла в лекторий Ставкона с лекцией "Славянская культура в видеоиграх". Это конвент со всякими интересными штуками, проходящий в Ставрополе.
Пока готовилась, нарыла достаточно большой список игр, которые можно притянуть за уши к славянщине, так что вот вам тоже кусочек списка игр, про которые я говорить на лекции _не_ буду:
Marko: beyond brave - прям пятой точкой чую, что авторы как-то пытались сослаться на королевича Марко, но в игре он выглядит как Марио в костюме сербского крестьянина.
Русы против Ящеров - 1, 2, 3... 10. А ещё там же есть Русы не против Ящерок. Тут, в принципе, понятно, что это стёбная игра, к традиционной славянской культуре не имеющая отношения. По поводу термина "русы" и сопутствующих очень рекомендую лекции Данилевского.
Дилогия Thea - вообще не смотрела, но вроде там какие-то кабинетные славянские боги фигурируют или что-то вроде того. Но вроде именно как игру её хвалят.
Вий - ну вы и без меня знаете, что Вий с таким именем и с таким описанием является фантазией Гоголя на тему; в реальном фольклоре такого персонажа нет, хотя Гоголь надолго занял фольклористов.
Bosorka - милота, в которой ведьма спасает мир от жестоких демонов. Другое дело, что в реальном фольклоре босорки не очень-то и добрые.
Vranygrai - я бы и хотела поговорить об этой игре чешского разраба, потому что чую потенциально крутое отображение славянской культуры, но игра ещё в разработке :)
Так как вход на Ставкон в этом году за небольшую плату (300 р, по-моему, если заранее покупать билет), обязательно приходить никого из могущих не агитирую, но сообщать - сообщаю :) Ставрополь, 21 июня. Южане или те, кто вдруг в отпуск приехал, там должно быть прикольно.
В конкурс косплея не подавалась, но всё равно планирую ехать в Затанне. Ну не в обычной же моей металловой одежде ползти, чую, она бы на каждом металлоискателе меня задерживала.
Надеюсь, не налажаю на лекции, в отличие от конкурса косплея, хоть в этом-то немного опыта есть :)
А то на своём первом выступлении именно как косплеера прям облажалась, ахаха.




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