Как стать автором
Обновить
292.28

Open source *

Открытое программное обеспечение

Сначала показывать
Порог рейтинга
Уровень сложности

Автоматизация в путевых листах через гугл таблицы и скрипты в 2023 году

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров6.5K

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

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

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

При этом заполнение происходит рандомно сгенерированными данными на основании всего нескольких достоверных начальных параметров: начального и конечного показания одометра автомобиля и задания точного района, где эксплуатируется этот автомобиль. 

Автоматический путевой лист
Всего голосов 5: ↑5 и ↓0+5
Комментарии13

XMLDSig: php + openssl

Время на прочтение9 мин
Количество просмотров2.5K

Продолжение поста про интеграцию с ГИС ЖКХ - https://habr.com/en/post/710462/

В этой части разберём как правильно подписать xml-запрос в php при помощи openssl

В этой статье я не разбираю почему xmldsig формируется именно так - я привожу пример реализации. Поэтому я ожидаю, что вы уже знакомы с основными понятиями и алгоритмом подписания по xmldsig.

Будем использовать модифицированную версию openssl из первого поста, поэтому он обязателен к прочтению

В основе всего лежит базовый класс Xml, наследуемый от DOMDocument:

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии6

OpenSSL + ГИС ЖКХ

Время на прочтение5 мин
Количество просмотров5K

Это ода данному посту и его законное продолжение.

Реализация описана для PHP, но подходит для всех.

Конфиги

Начнём с контейнера, из которого будем общаться с ГИС ЖКХ. Тут приведён конфиг контейнера с продакшена, поэтому есть лишние (для вас) пакеты.

Пока просто посмотрим, пояснения будут после кода.

Читать далее
Всего голосов 10: ↑9 и ↓1+11
Комментарии13

Как стать участником Open Source и зачем

Время на прочтение10 мин
Количество просмотров12K

Если ты хоть раз задавал себе этот вопрос, то ты на верном пути.

Многие приложения, которыми вы пользуетесь сегодня, содержат значительное количество программного обеспечения с открытым исходным кодом (OSS - Open Source Software), и число компаний, использующих открытый исходный код, постоянно растет. Несмотря на это, лишь ограниченное число людей вносят свой вклад в это и поддерживают его.

За открытым исходным кодом стоит большая работа, и нам могла бы пригодиться ваша помощь! Продолжайте читать, чтобы узнать о том, как вы можете внести свой вклад и с чего начать.

Читать далее
Всего голосов 9: ↑7 и ↓2+11
Комментарии7

Истории

Жарим TOAST в PostgreSQL

Время на прочтение12 мин
Количество просмотров25K

У нас не подгорит!

Как PostgreSQL хранит большие значения столбцов? Какие явные и неявные ограничения есть у существующего механизма хранения? Что за проблемы вызваны этими ограничениями? И как можно решить эти проблемы, и расширить возможности PostgreSQL? Об этом, и чуть больше - данная статья.

Читать далее
Всего голосов 58: ↑58 и ↓0+58
Комментарии15

Как новичку разработать опенсорс-библиотеку: опыт фронтенд-разработчика

Время на прочтение9 мин
Количество просмотров6.9K

При разработке собственной опенсорс-библиотеки у многих возникает огромное количество вопросов. Для меня этот опыт также был в новинку — чтобы выпустить свою небольшую библиотеку, я перерыл половину GitHub в поиске наглядного гайда по подготовке репозитория. Поэтому хочу поделиться с вами своим опытом, а также узнать и что-то новое от вас. 

Меня зовут Женя, я все еще фронтенд-разработчик в команде Quick Experiments inDrive. В этой статье буду делиться своим выводами, а также прикладывать дополнительные ссылки, чтобы познакомить вас с материалом более подробно.

Узнать главное о создании библиотеки
Всего голосов 24: ↑24 и ↓0+24
Комментарии7

Обзор OWASP ZAP. Сканер для поиска уязвимостей в веб-приложениях

Время на прочтение9 мин
Количество просмотров30K

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

OWASP ZAP — сканер веб-приложений, основанный на методике DAST (Dynamic Application Security Testing). В русском варианте этот метод принято называть методом тестирования «черного ящика». Методика позволяет обнаруживать проблемы безопасности в работающем приложении или веб-сайте при помощи их сканирования на известные уязвимости.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии2

NoNa: Алгоритм заполнения отсутствующих данных

Время на прочтение5 мин
Количество просмотров11K
Читать далее
Всего голосов 15: ↑14 и ↓1+20
Комментарии15

Как работает аппаратный ключ безопасности — и почему не сделать программируемый ключ с улучшенной защитой?

Время на прочтение4 мин
Количество просмотров18K


Как известно, пароль — только первый этап аутентификации, причём наименее надёжный. Пароль можно перехватить во время ввода (с клавиатуры или экрана), в процессе передачи на сервер, подобрать брутфорсом, скопировать из места хранения (в том числе с сервера компании, безопасность которого нам не подконтрольна) или узнать у человека. Даже наличие парольного менеджера не слишком улучшает ситуацию.

Двухфакторная аутентификация (2FA) сегодня обязательна, потому что второй фактор и на порядок увеличивает усилия для взлома. Стандартный второй фактор — это телефон, куда приходит дополнительный код. Ещё один дополнительный фактор — аппаратный ключ безопасности, который невозможно скопировать. Такой ключ может защищать доступ к вашему парольному менеджеру.

Давайте посмотрим, как сделаны такие ключи, кто их выпускает. И самое главное — как их сделать ещё лучше.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии20

Консоль SSH на WebAssembly внутри браузера: как это сделано

Время на прочтение5 мин
Количество просмотров14K
Веб-консоль SSH запускается по нажатию кнопки на сайте

Почти у каждого VPS- и облачного провайдера есть веб-клиент SSH, который запускается через браузер. Такое приложение помогает вам подключиться по SSH к своим виртуальным машинкам на удалённом сервере, не выходя из браузера.

В наше трудное время безопасность не бывает лишней, а область использования SSH и RDP сильно расширяется. Есть смысл шифровать каналы связи при подключении к любым устройствам, в том числе в своей домашней сети. Например, из любой точки мира вы можете подключиться к домашнему компьютеру в РФ и работать внутри страны — заходить на местные сайты типа госуслуг, сбера, оплачивать пошлины, оформлять документы и т. д.

К счастью, существуют удобные инструменты для выполнения всех этих задач.
Читать дальше →
Всего голосов 31: ↑30 и ↓1+42
Комментарии11

11 MacOS приложений для продуктивной работы с трекпадом

Время на прочтение3 мин
Количество просмотров12K

MacOS имеет большой набор возможностей по управлению с помощью трекпада, но следующие 11 приложений сделают вашу работу с ним ещё продуктивнее.

Читать далее
Рейтинг0
Комментарии10

PostgreSQL под капотом. Часть 2. Подготовка бэкэнда

Время на прочтение16 мин
Количество просмотров4.4K

В предыдущем посте мы остановились на моменте форка процесса для бэкэнда.

Сегодня рассмотрим как происходит инициализация дочерних процессов после форка от Postmaster, некоторые системные вызовы Linux, goto, парсинг стартап пакета и многие хаки.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Обзор Harbor. Реестр Docker образов с организацией прав доступа и сканированием образов на наличие угроз

Время на прочтение6 мин
Количество просмотров20K

В основе концепции Docker лежит такое понятие как образ. В терминологии Docker образ — это исполняемый файл (шаблон), в котором содержится исходный код приложения, его библиотеки и все самое необходимое для запуска контейнера. Готовые образы хранятся в реестрах. Один из самых известных и в тоже время общедоступных реестров это Docker Hub — официальный реестр от разработчиков Docker. Однако существуют сторонние продукты, которые значительно расширяют функционал реестров, например, путем использования прав доступа и сканирования образов на наличие уязвимостей. Одним их таких продуктов является Harbor.

Harbor — это бесплатный реестр для хранения Docker образов c открытым исходным кодом, который предоставляет доступ к образам с помощью политик, а также умеет сканировать образы на наличие уязвимостей. Проект был запущен в 2016 году силами командой инженеров из компании VMware. В 2018 году Harbor перешел под контроль организации CNCF и с тех пор активно развивается — новые версии стабильно выходят несколько раз в месяц.

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии7

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн

Busrpc — фреймворк для разработки микросервисов

Время на прочтение23 мин
Количество просмотров12K

В этой статье я расскажу о собственном проекте ориентированном на микросервисную архитектуру. Этот проект вырос из идей и подходов, которые я применял на протяжении нескольких лет работы связанных с переводом крупного монолитного проекта на микросервисную архитектуру. Я не буду заострять внимание на паттерны, концепции и базовые принципы МСА, поскольку информации подобного рода достаточно в сети. Моя цель - предоставить читателю конкретный вариант реализации микросервисного бэкенда на основе фреймворка busrpc.

Читать далее
Всего голосов 12: ↑11 и ↓1+12
Комментарии38

С 31-го февраля в России полностью запретят VPN

Время на прочтение11 мин
Количество просмотров151K

Как вам заголовок, а? Как вам такой подарочек на Рождество? 

Нет, это неправда, это шутка такая.

Не с 7-го января запретят. С другого числа запретят.

Добро пожаловать под кат, будем вместе учиться обходить блокировки VPN у наших коллег из дружественных стран - Китая, Ирана, Туркменистана и конечно же Северной Кореи.

AmneziaVPN снова на связи!

Читать далее
Всего голосов 468: ↑126 и ↓342-193
Комментарии200

Обратный websocket/http туннель данных на .NET + SignalR

Время на прочтение3 мин
Количество просмотров4.8K

 

Возникла необходимость организовать трафик к внешнему сервису из сегмента с ограничением на исходящие соединения. Этот внешний сервис использовал одновременно множество tcp/udp сокетов. При беглом обзоре существующих утилит не обнаружил готовое решение инкапсуляции множества сокетов с поддержкой «обратного» соединения.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии6

Лучшие open-source инструменты для Python проектов

Время на прочтение12 мин
Количество просмотров34K

Open-source проекты, сторонние инструменты и библиотеки - это то, за что мы действительно любим Python. В этой статье я собрал самые полезные, валидированные сообществом и проверенные временем инструменты, конфигурации которых можно встретить в популярных проектах с открытым исходным кодом.

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

Читать далее
Всего голосов 33: ↑30 и ↓3+35
Комментарии9

«И швец и жнец» или обзор полезных расширений для XWiki

Время на прочтение4 мин
Количество просмотров5.9K

 

Вот уже второй год, как мы используем XWiki, вместо Confluence. 

За это время я к ней привык и даже в некотором роде полюбил. Поэтому не могу пройти мимо такого важного события как выход новой LTS версии 4.10.X.

Если вы не знакомы с релизным циклом XWiki, то вас может удивить, что LTS версия выходит в конце года и в течение всего следующего года получает обновления. Иногда бывает так, что обновления версии XWiki, что-то правит и одновременно что-то ломает, но в целом как обновление того стоит. Например, в 14 версии неплохо улучшили работу с вложениями, экспортом PDF и диалогом вставки изображений в редакторе.

Сегодня я не буду вдаваться в технические подробности, а просто сделаю беглый обзор функционала, рассчитанный в первую очередь на людей только что узнавших об XWiki. Обозревать мы будем самую последнюю на текущий момент версию 14.10.2 со Standard Flavor, установленную через Docker образ.

Читать далее
Всего голосов 6: ↑5 и ↓1+5
Комментарии3

Когда хочется больше: пишем кубовый оператор

Время на прочтение15 мин
Количество просмотров7.8K

Итак, некоторое время назад я писал статью о том, как мы переехали на werf со скрипта. По большому счёту, это продолжение той истории. Задача встала такая: нужно максимально автоматизировано разворачивать свежее приложение на нескольких кластерах kubernetes, которое уже имеет обвязку для деплоя в виде werf. После некоторых изысканий, попыток использовать "коробочные" решения самой верфи и куба, я понял, что придётся написать собственный оператор, чтобы получить прям 100% покрытия всех "хотелок".

Чтобы у "гошников" прям конкретно подгорело, для этих целей я выбрал свой любимый Python и kopf.

Поджечь стул
Всего голосов 14: ↑13 и ↓1+16
Комментарии5

(Пере)запускаем отделение Creative Commons в России! Участвуйте и помогайте

Время на прочтение37 мин
Количество просмотров4.2K

Привет, Хабр! Привет всем сторонникам open source, лицензий Creative Commons и прочих альтернативных подходов к авторскому праву! Год назад организация Creative Commons отметила 20 лет с момента основания. А 16 декабря этого года исполнилось 20 лет с момента выпуска её первых лицензий. И в этом юбилейном году я продолжал готовить подарок себе и сообществу.)) Настало время перейти в публичную стадию и озвучить планы на 2023 год.

В 2018 году произошла большая реформа - трансформация в глобальное движение и настоящее сообщество. Теперь это движение Creative Commons, состоящее из тех, кто работал над лицензиями, помогал их популяризации и внедрению, работал в проектах, использующих эти лицензии, кто поддерживает идеи организации и глобальную реформу авторских прав. Наиболее активная часть движения - это Creative Commons Global Network - сообщество опытных физлиц и юрлиц, которые предоставили информацию о своих заслугах перед движением - от активизма в реформе авторских прав и юридической работы до работы в области открытых данных, открытой науки и открытых образовательных ресурсов.

Когда новые правила вступили в силу, все старые договоры с партнёрскими организациями утратили силу. Раньше это были, по сути, команды юристов и тех, кто им помогает. Отделение (chapter) в каждой стране теперь создаётся заново на основе CCGN. Это меритократичный, но в то же время открытый и более простой процесс объединения в сообщество, который может проходить полностью онлайн.

Из всех постсоветских стран члены CCGN есть только от Украины, России и Казахстана. Создать отделение можно только если от страны вступил хотя бы один член. Другие страны - от Эстонии до Таджикистана - пока не имеют ни одного члена CCGN. Этот пост - часть необходимого по правилам широкого информирования перед созданием отделения и будет полезен для всех желающих участвовать в постсоветских странах. Я расскажу не только о правилах и процессе создания отделения, но и выскажу свои предложения, комментарии, мнение и позицию.

Создаём chapter буквально на ваших глазах!
Всего голосов 36: ↑29 и ↓7+36
Комментарии32

Вклад авторов