Часто при передаче продукта заказчику, в виде готовой программы или некоторого аппаратного продукта, необходимо также защитить интеллектуальную собственность в виде исходных текстов программ и скриптов.
Компилируемые языки хоть как-то защищаются, соответственно, с помощью компиляции, хотя и это не панацея. А вот что делать со скриптами, которые могут быть написаны на bash или pyton?
Как вариант решения такой проблемы, может быть, шифрование скриптов с аппаратной привязкой дешифратора к платформе, на которой этот скрипт исполняется. Звучит красиво, но надёжно ли? Насколько будет эффективен и взломостойкий этот метод?
У меня в одном проекте была проба пере такого решения. Заодно проверил, и вскрыл это шифрование.
Читать далееВсем привет! Я Кирилл Пономаренко, мне 23 года, сейчас я учусь на первом курсе магистратуры на инженерной специальности и уже около года работаю системным аналитиком в ПСБ, в команде внутренней веб-аналитики, где мы делаем импортозамещение Google Analytics. Это моя первая работа в ИТ, я искал себе место, когда вокруг уже говорили о том, что джуны теперь не нужны, и рынок переполнен начинающими. На самом деле, студентам технических вузов открывается больше дверей, чем может показаться. Пусть и совсем легко не бывает, ведь многим ребятам сейчас и правда трудно найти первую работу.
В этой статье я поделюсь своим опытом трудоустройства, надеюсь, он окажется полезен. Дам ссылки на учебные материалы, попробую подсказать лайфхаки и ситуации, c которыми можно столкнуться в поисках вакансий.
Начнём?Привет, Хабр!
Когда зоопарк из паролей, API-ключей и доступов к базам начинает жить своей жизнью в заметках и текстовиках, приходит время наводить порядок. Мысль о том, что вся эта цифровая сокровищница лежит на серверах очередной «бесплатной» корпорации, тоже не добавляет спокойствия.
Решение — полный контроль над своими данными. Я выбрал Vaultwarden: легковесный сервер Bitwarden на Rust, который работает в одном Docker-контейнере и бесплатно отдает фичи корпоративной версии.
Эта статья — выжимка моего опыта и готовый туториал. Поднимаем свою "крепость" для паролей на VPS с Docker и Nginx, правильно настраиваем HTTPS и обходим классические грабли, чтобы вы сделали все надежно с первого раза.
Читать далееВсеми ядерными, атомными и молекулярными явлениями в нашей Вселенной управляют квантовые переходы. В отличие от планет Солнечной системы, способных стабильно перемещаться по орбите вокруг Солнца на любом расстоянии при подходящей скорости, протоны, нейтроны и электроны, составляющие всю известную нам материю, могут объединяться друг с другом только в ограниченном множестве конфигураций. Эти комбинации хотя и многочисленны, но конечны в своём числе, потому что квантовые законы, управляющие электромагнетизмом и ядерными силами, ограничивают способы выстраивания структур атомных ядер и электронов.
Самый распространённый атом во всей Вселенной — это водород, состоящий всего из одного протона и одного электрона. В процессе формирования новых звёзд атомы водорода ионизируются и снова становятся нейтральными, если эти свободные электроны смогут вернуться к свободному протону. Хотя электроны обычно переходят между допустимыми энергетическими уровнями вплоть до невозбуждённого состояния, при этом генерируется только конкретное множество инфракрасного, видимого и ультрафиолетового излучения. Но важнее то, что в водороде происходит особый переход, излучающий свет с длиной волны примерно с вашу ладонь: 21 сантиметров. Физики имеют полное право называть это значение «магической длиной» нашей Вселенной; возможно это число когда-нибудь раскроет нам самые тёмные секреты, таящиеся в самых глубинах космоса, которые никогда не сможет покинуть звёздных свет.
Читать далееЕсли вы попробуете босиком пройтись по городу зимой, то близко познакомитесь с реагентами или гранитной крошкой. Собаки, если что, ходят босиком. Кожу подушечек у них разъедает, появляются микротрещины. Снег с крошкой льда налипает на шерсть между пальцами, а после таяния кожа пересыхает.
Эволюция пока не приспособила собак к городу полностью. Летом бывает горячий асфальт, песок и мелкие камни забиваются в складки, в результате — натирание лап и воспаление.
Со временем подушечки грубеют, но это не спасает — трещины становятся глубже, в них попадает грязь, это приводит к раздражению и долгому заживлению. Если после прогулки ваш пёс долго вылизывает лапы, пытаясь унять зуд и боль, — это уже середина развития проблемы.
Раньше эти проблемы никого особо не волновали (да и нежных пород было значительно меньше). А сейчас люди готовы покупать собакам одежду, лечебные корма, страховки. И заботиться о здоровье лап питомца.
Частично проблемы можно решить, например, собачьей обувью или с помощью эластичных бинтов. Но не все собаки это любят. Можно тщательнее заниматься гигиеной: выстригать шерсть между подушечками, подстригать когти и наносить заживляющие кремы.
Ну а мы долго общались с ветеринарами и решили сделать средство, которое помогло бы собакам спокойно гулять по городу.
Так родился бальзам в виде стика, который и защищает, и лечит, и который можно случайно съесть.
Читать далееСейчас я активно нанимаю ПМ-ов и на собеседования приходят совершенно разные кандидаты. Половина из них — зумеры. Если описать этот тип соискателя через призму характеров моих любимых персонажей, то это был бы Крош.
В статье поделюсь статистикой с сотни собеседований и расскажу, почему Ёжик никогда не уходит без оффера, в чём вы должны соответствовать Совунье, чтобы взять её на работу, и почему в моей команде нет Кар-Карыча. А Крош есть.
Читать далееВсем привет! Это Леша Жиряков. На прошлой неделе мы начали разбирать, почему Python стал настолько востребован для создания корпоративных программных решений. Сегодня продолжим тему — поговорим об управлении зависимостями, асинхронном программировании в корпоративной среде, тестировании, корпоративной безопасности и других ключевых моментах. Заодно обсудим перспективы Python в enterprise-разработке. Приступим!
Читать далееКогда бухгалтерия занимает пару часов в неделю, а в отчетах всё понятно, её можно вести самому. Но со временем растёт объём «бумажной» работы, появляются новые вопросы и задачи. Тогда внимание собственника уходит с продукта на налоги, сертификацию, аккредитацию, амортизацию и другие дела. Так было у Светозара Яхонтова, фаундера Arudit Security. В статье разбираемся, когда фаундеру пора выходить из этой рутины.
Читать далееПродолжаю рассказывать широкой аудитории о «гусарских забавах» компьютерной элиты — третий по счету Binary Golf Grand Prix.
Читать далееКак часто оценка по задаче совпадает с реальными трудозатратами?
Умение точно оценить объём работ спасает от переработок, напряжённой обстановки на проекте, поддерживает доверительные отношения в команде и показывает вас с хорошей стороны перед заказчиком.
Но интуитивные и ставшие традиционными способы оценки задач дают низкую точность. Пора взять на вооружение другой способ, дающий 90+% точность в оценке.
Читать далееПривет! Я Владислав Попов, автор курса «Go-разработчик с нуля» в Яндекс Практикуме. В серии статей я хочу помочь начинающим разработчикам упорядочить знания и написать приложение на Go с нуля: мы вместе пройдём каждый шаг и создадим API для получения информации о книгах и управления ими.
В прошлых частях мы создали сервер с тремя эндпоинтами, добавили базовую конфигурацию, логгер и обновили обработчики для возврата ответов в формате JSON. В этой статье будем продолжать развивать наш сервис и узнаем про более продвинутые способы работы с JSON.
Читать далееВ первой части гайда по тест-дизайну в блоге ЛАНИТ на Хабре мы уже рассмотрели основные техники тест-дизайна, связанные со сценариями и данными. Теперь давайте обсудим, как тестировать ролевую модель приложения.
Действия пользователей в системе и в рамках бизнес-процессов существенно влияют на эргономику, слаженность и безопасность. Работа с множеством ролей и процессов может быть сложной и требует внимания, но понимание этой механики необходимо.
Читать далееНа старте проекта обычно встает вопрос о выборе готовой ui-библиотеки для решения шаблонных задач, таких как создание форм, инпутов, кнопок и других компонентов. Количество готовых ui-библиотек для React так стремительно растет, что уже сложно остановить свой выбор на какой либо из них. Зато в таком разнообразии каждый может найти библиотеку, подходящую под его задачи. В этой статье хочется рассказать о фреймворке Steroids, который разработан и поддерживается в нашей компании.
Изначально мы не планировали создавать фреймворк, а просто собирали удачные решения рутинных задач. Получился набор полезных утилит и мини-библиотек, который позволял нам работать быстрее. Мы постепенно добавляли в него новые элементы, он рос и видоизменялся, и в итоге вырос в полноценный фреймворк Steroids.
Читать далееСегодня я бы хотел представить вам архитектурные принципы, которыми я руководствуюсь при создании приложений. Я считаю, что эти принципы применимы к подавляющему большинству приложений, за редкими исключениями. И даже несмотря на то, что каждый из них является фундаментальным, я в своей практике раз за разом замечаю, как люди напрочь про них забывают. И так как я не видел, чтобы они были где-либо представлены в едином коротком виде, я решил сделать это тут.
Итак, без долгих предисловий:
Читать далееЛюбой, кто хоть раз пытался спроектировать игру, знает про священную троицу вопросов: "Что?", "Как?" и "Зачем?". В теории всё просто: Сначала определяем цель (Зачем?), потом продумываем механики (Как?), а затем облекаем их в контент (Что?). Но это в идеальном мире. В реальности же, на поле боя, наш бедный вопрос "Зачем?" — это самый трусливый солдат. Он первый бежит с поля боя под натиском сирены по имени "крутая идея", под гипнозом конечной картинки в воображении команды, под давлением того самого внутреннего мечтателя, который заглушает голос разума. Добавьте сюда дедлайны, командную динамику или, наоборот, эхо-камеру одиночной разработки — и вот он, наш фундаментальный вопрос, уже пылится на самой дальней полке, рядом с первыми салфеточными-концептами.
Читать далееВсем привет, меня зовут Максим Иванов. В основном я пишу обзоры и русифицирую статьи для начинающих разработчиков. Я очень люблю Angular и иногда рассказывать что-то о нем. Если вы только начинаете свой путь в изучении этого фреймворка, надеюсь эта статья будет вам полезной. Cегодня мы с вами поговорим о том, что такое пайпы (pipes), как они устроены и что не так с одним из самых популярных и доступных из коробки пайпов, таких как async. Желаю приятного прочтения и хорошего настроения. Поехали!
Читать далееВы когда-нибудь задумывались, сколько тайн скрыто в миллиардах генетических последовательностей, данных о белках и эпигенетических механизмах? А теперь представьте, как алгоритмы преобразуют этот хаос в логичные и работающие модели.
Не так давно алгоритмы в биоинформатике собирались вручную. Сегодня, благодаря машинному обучению, они адаптируются, обучаясь на предоставленных данных, вычленяют низкоуровневые закономерности и формируют абстрактные представления.
Читать далееПоказано, как адвокат проводит правовую экспертизу документов на интеллектуальную собственность. Такая экспертиза вскрывает риски и предлагает улучшения документов.
Читать далееКогда речь заходит о производительности BPM-ldb;rf, главным показателем является пропускная способность заданий и таймеров. Проще говоря: чем больше заданий или таймеров выполняется за определённый промежуток времени, тем быстрее смогут продолжать выполнение процессы или кейсы, которые их используют.
Читать далееПривет, Хабр! Я Павел, SEO-шник с 7-летним стажем. Дедлайны душат, копирайтеры тянут деньги и срывают сроки, а бюджет тает на глазах? В 2025-м я нашёл способ ускорить тексты и сохранить кошелёк, но это не то, что вы думаете! Нервы целы, сайты в топе. Хотите узнать, как я выкрутился? Читайте мою первую статью и попробуйте сами!
Читать далее