Pull to refresh
225
12.2
Орлов Владимир Николаевич @saipr

Программист

Send message

Еще раз об SVG-виджетах в tcl/tk

Level of difficultyMedium
Reading time7 min
Views1.6K

После выхода первой статьи про svg-виджеты для tcl/tk прошло более года. За это время вышел не только tcl/tk версии 9.0, но и сам пэт-проект возмужал и продолжает взрослеть. Напомним, что проект svgwidgets, примеры и интерпретаторы tcl/tk с необходимыми пакетами для работы с svg-виджетами можно найти на github.
В проекте svgwidgets на github-е можно найти версию интерпретатора tclexecomp как для linux64 (папка tclexexcomp902), собранного из исходников tcl/tk-9.0.2, так и версию интерпретатора на базе tcl/tk-8.6 для платформ Linux64 и Win64 (папка tclexecomp200).
К ранее созданному на github-е подкаталогу examples/CryptoArmPKCS_Test, в котором выложен исходный код криптографической утилиты для работы с электронной подписью cryptoarmpkcs, который предназначен для запуска на платформе Linux64 в среде tcl/tk-9, добавлены аналогичные папки для запуска утилиты cryptoarmpkcs в среде tcl/tk-8.6 на платформах Linux64 (папка examples/CryptoArmPKCS_Test_Tk86) и Win64 (папка examples/CryptoArmPKCS_Test_Tk86_Win64). Для запуска этой утилиты ничего дополнительного устанавливать на свой компьютер не требуется. Достаточно выбрать соответствующий интерпретатор из папки tclexecomp200 или tclexexcomp902 и выполнить файл mainguipkcs_svg.tcl из соответствующей папки ~/examples/CryptoArmPKCS_Test, например:

C:>C:\Temp\tclexecomp64_v200_svg_Win64.exe c:\Temp\CryptoArmPKCS7_Test_Tk86_Win64\mainguipkcs_svg.tcl

Читать далее

Tcl/Tk. SVG-виджеты. Генератор градиентной заливки

Level of difficultyMedium
Reading time2 min
Views1.1K

После серии статей про svg-виджеты в tcl/tk, меня не оставляло чувство какой-то незавершенности. Всматриваясь в проект svgwidgets, стало понятно, что не хватает утилиты с удобным интерфейсом для генерации градиентной заливки.

Читать далее

SVG-виджеты и tcl/tk-9.0

Level of difficultyMedium
Reading time5 min
Views1.3K

Работая над проектом «SVG-виджеты для tckl/tk», я с нетерпением ждал выхода не только релиза Tcl/Tk-9.0, но и выхода интерпретатора tclexecomp с его поддержкой. Релиз Tcl/Tk-9.0 появился в сентябре 2024 года, когда работа над проектом приближалась к завершению. После выхода релиза Tcl/Tk-9.0.0, сразу же появилось желание протестировать свой проект с новым интерпретатором, но я решил дождаться появления и интерпретатора tclexecomp с поддержкой нового релиза Tcl/Tk.
Время шло, на Хабре была выложена финальная статья про svg-виджеты, а tclexecomp на базе Tcl/Tk-9.0 так и не появлялся. В настоящее время уже вышел второй релиз, а именно Tcl/Tk-9.0.1. И тогда было решено воспользоваться советом Ивана Владимировича Мичурина:

Читать далее

SVG-виджеты для tcl/tk. Финальный аккорд. Часть IV

Level of difficultyMedium
Reading time3 min
Views1.7K

Реализация проекта «SVG-виджеты для tckl/tk» позволяет устранить одну из главных претензий, предъявляемых к графическому интерфейсу приложений, разрабатываемых с использованием tk - устаревший дизайн виджетов. Переход от классических виджетов к svg-виджетам не требует больших усилий. В этом лично я убедился, переписав gui утилиты для работы с электронной подписью cryptoarmpkcs. Ее дистрибутивы под именем cryptoarmpkcs_svg для платформ Linux64 и Windows64 можно найти в проекте:

Читать далее

Спасибо Хабру или как создавалась новая экспозиция компьютеров в музее СССР

Level of difficultyEasy
Reading time10 min
Views5.6K

16сентября сего года я вернулся из турне по средней Волге. Первая часть турне включала поездку от Москвы до г. Чебоксары на поезде. Мне сразу повезло, на сортировочной станции Чебоксары-2 мне удалось сделать уникальный снимок:

Читать далее

Python. Tkinter. В ожидании релиза 3.13

Level of difficultyMedium
Reading time7 min
Views6.9K

Работая нал проектом svgwidgets я активно использовал функционал tk busy, который появился в релизе Tcl/Tk 8.6.0. Мне стало интересно, а поддерживается ли этот функционал в Python-е, а точнее в Tkinter-е. Каково же было мое удивление узнать, что именно сейчас в Tkinter, который входит в состав Python версии 3.13, добавляется функционал tk busy, который давно включен в tcl/tk. Релиз Python 3.13 ожидается в октябре этого года. Мне показалось, что будет полезно рассказать о функционале tk busy, а точнее о новых методов для виджетах в Tkinter. Вот эти методы - tk_busy_hold(), tk_busy_configure(), tk_busy_cget(), tk_busy_forget() и tk_busy_current().

Командаy tk busy предоставляет простой способ блокировки виджета от действий пользователя.

Как работает методы блокировки tk_busy в Tkinter рассмотрим на примере. При этом будем использовать классические виджеты.
Но для начала пришлось собрать из исходных кодов Python-3.13.0rc1.tgz дистрибутив Python-а. Все это было мною проделано в Linux на Mageia release 9.
Итак, создадим некий графический интерфейс, в котором будет главное окно (mwin) размером 10 сантиметров на 6 сантиметров с виджетом панели (frame1), в которой будут размещены поле ввода данных (ent1) и кнопка (but1):

bash-5.2$ /usr/local/bin64/python3.13 Python 3.13.0rc1 (main, Aug 21 2024, 15:48:04) [GCC 12.3.0] on linux Type "help", "copyright", "credits" or "license" for more information.

Читать далее

Развитие электроники по-китайски: уже 70% автономности в этой отрасли

Reading time5 min
Views10K

Источник.
По данным Semiconductor Industry Association (SIA), глобальный рынок полупроводников в 2023 году оценивался в $526,8 млрд. При этом ожидается, что рынок продолжит расти, и до 2030 года его объем может достигнуть $1 трлн из-за увеличения спроса на электронику и интернет вещей (IoT).

В этой отрасли Китай играет важную роль, стремится стать мировым лидером в производстве чипов​. С течением времени у КНР все больше компаний, которые производят уже не только чипы, но и литографы и другое оборудование. И да, по подсчетам экспертов Китай на 70% независим от западных технологий — и степень автономности лишь растет со временем.
Читать дальше →

SVG-виджеты для tcl/tk. Поддержка SVG-файлов. Часть III

Level of difficultyMedium
Reading time5 min
Views1.6K

Вот и наступил тот момент, когда стало возможным при разработке gui на tcl/tk простое использование в качестве иконок графических изображений, хранящихся в svg-файлах:

Читать далее

SVG-виджеты для tcl/tk. Градиентная заливка и прозрачность. Часть II

Level of difficultyMedium
Reading time5 min
Views1.4K

Продолжим знакомство с svg-виджетами для tcl/tk. Напомним, что рассматриваемые примеры, сам пакет svgwidgets и интерпретаторы tcl/tk с необходимыми пакетами можно найти на github-е. После выхода первой статьи все они претерпели изменения. Начнем мы статью с примера скрипт_button_PACK.tcl:

$/usr/local/bin64/tclexecomp140_svg_Linux64 скрипт_button_PACK.tcl

Читать далее

Дроиды и питоны: работаем с ADB на Python

Level of difficultyEasy
Reading time16 min
Views10K

Однажды, в одну из бессонных ночей, я думал, как можно автоматизировать рутинные действия на андроид-смартфоне. Ну вы же знаете программистов - их хлебом не корми, дай только что-то автоматизировать. Будь это просто создание каких-то отчетов или сортировка файлов.

И вот, тогда я узнал об одной прекрасной утилите - Android Debug Bridge, ADB. Прекрасный инструмент для работы с Android - подключил телефон, и занимайся чем хочешь. Но иногда так лень запоминать разные команды, вводить их каждый раз... Вот здесь на помощь приходит Python. Прекрасный язык с большими возможностями.

В этой статье я рассмотрю как работать с ADB через python.

Если вы - разработчик или тестировщик приложений для Android, просто обычный программист или юзер - то вы попали по адресу.

Читать далее

SVG-виджеты для tcl/tk. Часть I

Level of difficultyMedium
Reading time13 min
Views4K

Начать статью хочу с цитаты из слов Брайана Кернигана,которую мне посчастливилось найти:

Tcl/Tk придает работе магическую продуктивность, за несколько часов можно достигнуть тех же результатов, что за дни или недели при разработке на C или C++... Tk весьма эффективен для большинства приложений, многие элементы интерфейса (виджеты) реализованы настолько хорошо, что остается только удивляться, как подобная работа могла быть выполнена так качественно... Удачным кажется и то, что разделение задач между Тсl и С/С++ осуществляется достаточно легко, надо только знать, какой инструмент лучше справляется с задачей... Расширение системы дополнительным Tcl-кодом, загружаемым напрямую в Tcl-библиотеку приложения, в полном согласии с оригинальной идеей Остераута, повышает эффективность программы, в целом, упрощает ее структуру и улучшает мобильность... Я не уверен, что Тсl мог бы выжить как самостоятельный продукт - у него слишком много конкурентов. Но у сочетания Tcl/Tk в Unix-мире нет конкурентов... Система исключительно надежна, очень хорошо документирована... свободно доступна... безукоризненно высокого качества

Читать далее

«Сделано в СССР». Неожиданное продолжение

Level of difficultyEasy
Reading time4 min
Views15K

Именно так начиналась моя статья посвященная музею «Сделано в СССР», который я открыл для себя в городе Чебоксары. Надо сказать, что в советский период г. Чебоксары был одним из ведущих центров электротехнической промышленности, который берет своё начало в грозном 1941 году. Именно в 1941 году в город Чебоксары с началом Великой Отечественной войны были эвакуированы цеха Харьковского электромеханического завода (ХЭМЗ) и Ленинградского завода «Электрик», которые и стали основой Чебоксарского электроаппаратного завода (ЧЭАЗ). В период своего расцвета ЧЭАЗ имел две производственных площадки в городе, фактически два огромных завода. К сожалению, сегодня осталась только одна площадка, вторая. Первая площадка, с которой и начинался ЧЭАЗ, сегодня переоборудована в офисное здание. Позже появился Чебоксарский завод электроизмерительных механизмов (ЧЗЭИМ), Чебоксарский электромеханический завод, завод «Чувашкабель».

Читать далее

Концепция постpоения локальной вычислительной сети. Взгляд из «лихих» 90-х

Level of difficultyMedium
Reading time25 min
Views6.5K
В процессе подготовки заключительной части своего повествования «Пятьдесят лет на стезе программирования» мне в руки попал материал под названием «Концепция постpоения локальной вычислительной сети». Эта концепция была написана 30 лет назад в НИИ СВТ (г. Киров), когда мы планировали модернизацию вычислительной сети 4-го ЦНИИ МО, её перевода с протокола TokenRing на протокол EThernet. Эта концепция стала основой для ОКР «Интерсеть».
Я несколько раз её перечитывал и снова возвращался к ней. Мне кажется, что будет обидно, если этот материал просто канет в лету. Эта концепция отражает дух того времени, когда стали доступны все IT-технологии, когда в одночасье исчезла отечественная вычислительная техника в широком смысле этого слова. Эти плоды мы пожинаем сегодня, когда говорим об импортозамещение в IT-отрасли.
Сохранил этот труд для истории Акулёнок Михаил Тихофееевич, мой боевой заместитель по 4 ЦНИИ МО и верный товарищ (на фотографии справа):
Читать дальше →

Пятьдесят лет на стезе программирования. Часть V. Назад в СССР. 1988-1991 г.г

Reading time20 min
Views13K
imageПосле эйфории 1987 года, связанной с выходом Постановления ЦК КПСС и СМ СССР по Программе «Противодействие» (СП-2000), в котором мы смогли прописать не только работы, связанные с созданием стенда имитационного моделирования (СИМ), но и предусмотреть поставки средств вычислительной техники (СВТ), началась ежедневная работа по подготовке машинных залов для ЭВМ. Помимо персональных ЭВМ в комплект поставки входили и большие машины ЕС-1066 и ЕС-1007, которые должны были стать центральными звеньями локальных вычислительных сетей, создаваемых в каждом научном управлении института.
Если ЕС-1066 должны были размещаться в новом корпусе 47Б вычислительного центра (ВЦ) и за их ввод в эксплуатацию отвечало также ВЦ, то с ЕС-1007 всё было сложнее.
Для каждой ЕС-1007 необходимо было спроектировать и оборудовать машинный зал с гермозоной для лентопротяжных механизмов и накопителей на магнитных дисках. Машинный зал занимал площадь не менее 25 м2, а если ещё устанавливался, например, графопостроитель, то эта площадь существенно увеличивалась.
Читать дальше →

Масштабируемая векторная графика. Простой SVG-редактор. Памяти Матса Бенгтссона

Reading time9 min
Views7.8K
imageВсё началось, когда вышла очередная версии TkProE — интегрированной среды разработки программ на tcl/tk. Мне очень пришлось по нраву наличие в ней встроенного графического редактора. Но этот редактор не работает с векторной графикой и отсюда все его недостатки.

В процессе модернизации TkProE я познакомился с проектом tkpaint. Более того какие-то идеи я позаимствовал у него и добавил в графический редактор в TkProE.

Но tkpaint это тоже графический редактор растровой графики со всеми присущими ей недостатками, особенно при работе с изображениями (прозрачность, деформация, градиентная заливка).
Читать дальше →

О чём вы? Конечно, езжайте в Бакулевку

Reading time5 min
Views13K
imageРассказать свою историю меня подвигла статья, которую написал skaynet4788. Всё то, о чём пойдет речь ниже, случилось со мной 5 лет назад и началось всё 6 декабря 2016 года. В этот день я как обычно сидел в своём кабинете и программировал, а также периодически смотрел комментарии в статье «Сказание о Клеопатре и о российской криптографии», которую за несколько дней до этого я выложил на Хабр. Где-то в 16:30, я вдруг почувствовал какое-то сильное жжение в районе солнечного сплетения.

Кто-то может спросить: откуда такая точность. Всё очень просто — фактически это время моего последнего комментария на хабре к моей статье.

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

Пятьдесят лет на стезе программирования. Отступление. Расставание с прошлым

Reading time3 min
Views9.1K
imageРовно месяц была публикация «Пятьдесят лет на стезе программирования. Отступление. Встреча с прошлым», которая завершалась так таким постскриптумом:

Ссылаясь на ваш комментарий: «Говорят в ближайшие дни наши дома должны взорвать. Жалко.»
Читать дальше →

Пятьдесят лет на стезе программирования. Отступление. Встреча с прошлым

Reading time10 min
Views12K
imageЗаканчивая третью часть воспоминаний «Пятьдесят лет на стезе программирования», я и не предполагал, что снова буду рассказывать о военном городке под названием «Вентспилс-8», где я фактически и стал настоящим программистом.
Но человек предполагает, а Бог располагает.
Первый звонок прозвучал 31 октября 2021 года, сразу после опубликования на Хабре моей статьи «Пятьдесят лет на стезе программирования. Часть III. Становление. На страже космических рубежей и путь в большую науку»), неожиданно из Риги пришло послание:
Добрый день Владимир Николаевич!

Позвольте представиться, меня зовут Антон, работаю я в студии во многих ипостасиях (сценаристом, монтажером, и др.), в городе Рига.

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

Информации о Норке и Вентспилсе-8 очень мало, для получения информации мы записали обращение для группы (в VK), Ваш покорный слуга дебютировал как ведущий.
Могу ли я обращаться с вопросами?

P.S. вчера были на Норке и в Вентспилсе-8, городок представляет удручающее зрелище.
На плане №36, трансформаторная.

Буду ждать ответа, удачи!
Читать дальше →

Регулярные выражения Python для новичков: что это, зачем и для чего

Reading time9 min
Views53K
image

За последние несколько лет машинное обучение, data science и связанные с этими направлениями отрасли очень сильно шагнули вперед. Все больше компаний и просто разработчиков используют Python и JavaScript для работы с данными.

И вот здесь-то нам как раз и нужны регулярные выражения. Парсинг всего текста или его фрагментов с веб-страниц, анализ данных Twitter или подготовка данных для анализа текста — регулярные выражения приходят на помощь.

Кстати, свои советы по некоторым функциям добавил Алексей Некрасов — лидер направления Python в МТС, программный директор направления Python в Skillbox. Чтобы было понятно, где перевод, а где — комментарии, последние мы выделим цитатой.
Читать дальше →

Как Норвегия стала первой страной за пределами США, подключённой к сети

Reading time7 min
Views15K

Как было упомянуто в предыдущей статье , первая сеть ARPANet между четырьмя научными центрами США была сформирована в конце 1969 года. Спустя всего четыре года то, что позже превратится в Интернет, дотянулось через Атлантику до… Норвегии. Которая и стала первой страной за пределами США, получившей доступ в сеть. Не соседняя дружественная Канада, не Британия с её мощными научными центрами и собственной экспериментальной компьютерной сетью NPL, а далёкая северная страна. 
Читать дальше →

Information

Rating
982-nd
Location
Юбилейный (Московская обл.), Москва и Московская обл., Россия
Date of birth
Registered
Activity