Продолжая тему composer-пакетов.
Есть такая штука — АТОЛ Онлайн. Через этот сервис владельцы интернет-магазинов фискализируют продажи по 54-ФЗ, а покупатели получают электронные чеки. На той стороне стоят настоящие фермы с железными ККТ, доступ к которым есть только через API.
Для этого сервиса я когда-то написал библиотеку, которая позволяет легко и законно интегрировать онлайн-фискализацию в проект.
Плюшечки:
* Мониторинг ККТ и ФН
* Фискализация документов на облачной ККТ
* Валидация данных до отправки документа на ККТ (насколько это возможно, согласно схеме)
* Расчёты денег в копейках
* PSR-4 автозагрузка, фактически полное покрытие настоящими тестами, fluent-setters, докблоки по коду и подробная документация
* Легко подключается и не требует отдельных конфигов
Ну, в целом, я там постарался, короче.
MIT.
https://packagist.org/packages/axenov/atol-online
#php #моё @axenov_dev
Есть такая штука — АТОЛ Онлайн. Через этот сервис владельцы интернет-магазинов фискализируют продажи по 54-ФЗ, а покупатели получают электронные чеки. На той стороне стоят настоящие фермы с железными ККТ, доступ к которым есть только через API.
Для этого сервиса я когда-то написал библиотеку, которая позволяет легко и законно интегрировать онлайн-фискализацию в проект.
Плюшечки:
* Мониторинг ККТ и ФН
* Фискализация документов на облачной ККТ
* Валидация данных до отправки документа на ККТ (насколько это возможно, согласно схеме)
* Расчёты денег в копейках
* PSR-4 автозагрузка, фактически полное покрытие настоящими тестами, fluent-setters, докблоки по коду и подробная документация
* Легко подключается и не требует отдельных конфигов
Ну, в целом, я там постарался, короче.
MIT.
https://packagist.org/packages/axenov/atol-online
#php #моё @axenov_dev
👍1
15 супер полезных примеров команды find в #Linux
https://habr.com/ru/company/first/blog/593669/
@axenov_dev
https://habr.com/ru/company/first/blog/593669/
@axenov_dev
Хабр
15 супер полезных примеров команды find в Linux
Практические примеры, которые приведены в этой статье, помогут вам освоить очень эффективную и крайне полезную команду find. Она используется для поиска файлов и папок через командную строку Linux....
👍1
axenov.dev
Качественный каталог паттернов проектирования с наглядными иллюстрированными примерами. https://refactoring.guru/ru/design-patterns/catalog #oop @axenov_dev
DesignPatternsPHP/DesignPatternsPHP
Коллекция примеров реализации каждого из паттернов проектирования #oop на #php. Сопровождается документацией, доступной в epub/pdf-форматах.
@axenov_dev
Коллекция примеров реализации каждого из паттернов проектирования #oop на #php. Сопровождается документацией, доступной в epub/pdf-форматах.
@axenov_dev
GitHub
GitHub - DesignPatternsPHP/DesignPatternsPHP: Sample code for several design patterns in PHP 8.x
Sample code for several design patterns in PHP 8.x - DesignPatternsPHP/DesignPatternsPHP
👍1
makesure — make с человеческим лицом
Интересная идея и реализация более продвинутого аналога #make.
#shell @axenov_dev
Интересная идея и реализация более продвинутого аналога #make.
#shell @axenov_dev
Forwarded from HABR FEED + OPENNET
Как отлаживать bash-script-ы по шагам или возможно, самая короткая статья о программировании/отладке на Хабре
https://habr.com/ru/post/666982/?utm_source=habrahabr&utm_medium=rss&utm_campaign=666982
Tags: *nix, bash, bash-скрипт, bash-программирование, debug, bash-scripting, one-liners, one-liner
Author tminnigaliev #habr
https://habr.com/ru/post/666982/?utm_source=habrahabr&utm_medium=rss&utm_campaign=666982
Tags: *nix, bash, bash-скрипт, bash-программирование, debug, bash-scripting, one-liners, one-liner
Author tminnigaliev #habr
Хабр
Как отлаживать bash-script-ы по шагам или, возможно, самая короткая статья о программировании/отладке на Хабре
Введение Мне всегда хотелось иметь возможность отлаживать bash-scripts так же, как и любой другой код, т.е. по шагам, и bash такую возможность предусмотрел, но о ней не все знают. Несмотря на довольно...
👍1
Overview of Modern Concurrency and Parallelism Concepts
Про отличия процессов, потоков, корутин, горутин, файберов, etc. Параллелизм и конкуренция.
@axenov_dev
Про отличия процессов, потоков, корутин, горутин, файберов, etc. Параллелизм и конкуренция.
@axenov_dev
Nikgrozev
Overview of Modern Concurrency and Parallelism Concepts
Most software engineers know about operating system (OS) level processes and threads. They are taught in all university OS courses. However, newer concepts p...
axenov.dev
Overview of Modern Concurrency and Parallelism Concepts Про отличия процессов, потоков, корутин, горутин, файберов, etc. Параллелизм и конкуренция. @axenov_dev
Fibers в #PHP 8.1
🌐 https://habr.com/ru/company/vk/blog/551240/
🌐 https://php.watch/versions/8.1/fibers
@axenov_dev
🌐 https://habr.com/ru/company/vk/blog/551240/
🌐 https://php.watch/versions/8.1/fibers
@axenov_dev
Хабр
Fiber’ы — новая фича в PHP 8.1
PHP пытается восполнить недостаток возможностей в своей кодовой базе, и Fiber ’ы — одно из значимых нововведений. Они появились в PHP 8.1 в конце 2020 и привнесли в язык своего рода асинхронное...
Асинхронность, конкурентность, параллельность, многопоточность — разбираемся «по понятиям» :)
https://habr.com/ru/post/667590/
#php @axenov_dev
https://habr.com/ru/post/667590/
#php @axenov_dev
Хабр
Асинхронность, конкурентность, параллельность, многопоточность — разбираемся «по понятиям» :)
Эта статья представляет собой краткий ( шутка! ) конспект одноименного (почти) вебинара, недавно проведенного автором. Цель и вебинара и статьи - дать начинающим представление о тех понятиях, которые...
👍1
Как прокачаться в PHP: 70 ресурсов из опроса русскоязычного сообщества
Список книг и ресурсов (в т.ч. в телеграме) для изучения языка. Подойдёт на любом уровне, от нулёвого новичка до сеньора.
#php @axenov_dev
Список книг и ресурсов (в т.ч. в телеграме) для изучения языка. Подойдёт на любом уровне, от нулёвого новичка до сеньора.
#php @axenov_dev
👍1
Forwarded from S0ER
В программировании есть вещи, которые не стареют. С ASCII графикой в комментариях к коду я познакомился году эдак в 1996, когда подписался в FIDO на NICE.SOURCES. Хорошо запомнил пример с кодом для декодирования JPG, который сопровождался ASCII.
Я заговорил об этом, потому что наткнулся вот на эту статью - https://blog.regehr.org/archives/1653 которая содержит кучу примеров с инфографикой из кода.
Я заговорил об этом, потому что наткнулся вот на эту статью - https://blog.regehr.org/archives/1653 которая содержит кучу примеров с инфографикой из кода.
👍1
endoflife.date
Open-source сервис, в котором собраны "даты жизни" разных версий ОС, ПО, фреймворков, языков и библиотек. Предоставляет простой бесплатный публичный API, с помощью коего можно легче отслеживать подходящий момент для обновления своих проектов, например, путём интеграции на уровень CI или какого-нибудь кастомного скрипта твоего пакетного менеджера.
#tools @axenov_dev
Open-source сервис, в котором собраны "даты жизни" разных версий ОС, ПО, фреймворков, языков и библиотек. Предоставляет простой бесплатный публичный API, с помощью коего можно легче отслеживать подходящий момент для обновления своих проектов, например, путём интеграции на уровень CI или какого-нибудь кастомного скрипта твоего пакетного менеджера.
#tools @axenov_dev
📝 Делаем бекап проекта простым путём
Сегодня 07.07.2022. Два дня назад я очень глупо и почти случайно потерял всё, что было на этом сервере. Бэкапы были только от мая — это лучше, чем ничего, однако регулярного резервирования не было. Тут либо жизнь меня ничему не учит, либо уже научила и я стал достаточно аккуратен, чтобы не ронять проды как слон в…
https://axenov.dev/?p=1234
#shell #mysql #блог #моё
👨💻 @axenov_dev 👍 @axenov_blog
Сегодня 07.07.2022. Два дня назад я очень глупо и почти случайно потерял всё, что было на этом сервере. Бэкапы были только от мая — это лучше, чем ничего, однако регулярного резервирования не было. Тут либо жизнь меня ничему не учит, либо уже научила и я стал достаточно аккуратен, чтобы не ронять проды как слон в…
https://axenov.dev/?p=1234
#shell #mysql #блог #моё
Please open Telegram to view this post
VIEW IN TELEGRAM
Блог Аксенова
Делаем бекап проекта простым путём
Photo by Markus Winkler on Unsplash Сегодня 07.07.2022. Два дня назад я очень глупо и почти случайно потерял всё, что было на этом сервере. Бэкапы были только от мая -- это лучше, чем ничего, однако регулярного резервирования не было. Тут либо жизнь меня…
Зачем нужен static при объявлении анонимных функций?
Обращаем внимание в #php на неочевидную разницу между (non)static-замыканиями. @axenov_dev
Обращаем внимание в #php на неочевидную разницу между (non)static-замыканиями. @axenov_dev
👍1
Attributes in PHP 8
Наиболее полный и понятный мануал по работе с атрибутами в #php. Можно использовать как справочник.
По опыту могу сказать, что атрибуты — суперский механизм (мета-)проргаммирования проекта на уровне рефлексий. Его определённо стоит попробовать.
@axenov_dev
Наиболее полный и понятный мануал по работе с атрибутами в #php. Можно использовать как справочник.
По опыту могу сказать, что атрибуты — суперский механизм (мета-)проргаммирования проекта на уровне рефлексий. Его определённо стоит попробовать.
@axenov_dev
🔥1
vitalets/github-trending-repos
Интересный реп. Подписываешься на ишью интересующего ЯП и получаешь на почту список ссылок на репы в ГХ, которым отсыпали звёзд за последние сутки или неделю.
Проскакивают интересные вещи. Можно использовать как источник репов, в которые можно поконтрибьютить.
#foss #github @axenov_dev
Интересный реп. Подписываешься на ишью интересующего ЯП и получаешь на почту список ссылок на репы в ГХ, которым отсыпали звёзд за последние сутки или неделю.
Проскакивают интересные вещи. Можно использовать как источник репов, в которые можно поконтрибьютить.
#foss #github @axenov_dev
GitHub
GitHub - vitalets/github-trending-repos: Track GitHub trending repositories in your favorite programming language by native GitHub…
Track GitHub trending repositories in your favorite programming language by native GitHub notifications! - vitalets/github-trending-repos
📝 Русификация iptvnator
К разработке этот пост относится весьма посредственно, но тем не менее. Я тут вспомнил, что ранее в этом блоге уже выкладывал русификации, которые делал сам. И ещё я тут вспомнил, что когда-то давно я сделал pull-request в проект iptvnator.
Это довольно простая софтинка для просмотра разных IPTV-плейлистов на своём компе или из браузера. Понятное дело,…
https://axenov.dev/?p=1353
#блог #моё
👨💻 @axenov_dev 👍 @axenov_blog
К разработке этот пост относится весьма посредственно, но тем не менее. Я тут вспомнил, что ранее в этом блоге уже выкладывал русификации, которые делал сам. И ещё я тут вспомнил, что когда-то давно я сделал pull-request в проект iptvnator.
Это довольно простая софтинка для просмотра разных IPTV-плейлистов на своём компе или из браузера. Понятное дело,…
https://axenov.dev/?p=1353
#блог #моё
Please open Telegram to view this post
VIEW IN TELEGRAM
Блог Аксенова
Русификация iptvnator
К разработке этот пост относится весьма посредственно, но тем не менее. Я тут вспомнил, что ранее в этом блоге уже выкладывал русификации, которые делал сам. И ещё я тут вспомнил, что когда-то давно я сделал pull-request в проект iptvnator. Это довольно простая…
How to Use Linux Signals in Bash Scripts
Годная информация о сигналах в Linux и о том, как их использовать в своих #shell-скриптах с помощью trap
@axenov_dev
Годная информация о сигналах в Linux и о том, как их использовать в своих #shell-скриптах с помощью trap
@axenov_dev
👍1
📝 KDE: ошибка «execvp: Ошибка формата выполняемого файла»
Ситуация
При запуске программы через меню приложений возникает эта ошибка, программа не запускается.
Я встречал это на Oracle SQLDeveloper любой версии 20+, который устанавливался из официального rpm в среде Ubuntu + KDE с помощью sudo alien -dic. Ошибки не было в MATE. Может не встречаться в GNOME. Встретил только в KDE.
Ошибки нет, если запустить…
https://axenov.dev/?p=1394
#блог #моё
👨💻 @axenov_dev 👍 @axenov_blog
Ситуация
При запуске программы через меню приложений возникает эта ошибка, программа не запускается.
Я встречал это на Oracle SQLDeveloper любой версии 20+, который устанавливался из официального rpm в среде Ubuntu + KDE с помощью sudo alien -dic. Ошибки не было в MATE. Может не встречаться в GNOME. Встретил только в KDE.
Ошибки нет, если запустить…
https://axenov.dev/?p=1394
#блог #моё
Please open Telegram to view this post
VIEW IN TELEGRAM
Блог Аксенова
Ошибка KDE: «execvp: Ошибка формата выполняемого файла»
Элементарное решение проблемы запуска приложений из меню KDE