Pull to refresh
1
Serge @chigirinread⁠-⁠only

User

Send message

Добавляем платежную систему FreeKassa в проект на Go

Level of difficultyEasy
Reading time6 min
Views2.2K

Привет! Хочу поделиться гайдом по интеграции FreeKassa в проект на Golang.
В данной статье будут рассмотрены:
- Создание инвойса.
- Обработка оповещения об успешной оплате.

Читать далее

Как работает электронная почта. База

Level of difficultyEasy
Reading time3 min
Views3.4K

Исходим из того, что все умные, но многие не знают, как ходит почта и вопросы эти на 99% исходят из базы.

База:

Для работы почты почтовый сервер должен быть доступ из Internet

Почта приходит, потому что указаны MX-записи

Почта уходит, потому что настроена в соответствии с безопасностью SPF, DKIM, DMARC

Разберёмся по порядку, что должно быть настроено, чтобы работала почта.

Читать далее

Stripe: сервис вашей мечты для автоматизации денежных переводов

Reading time9 min
Views116K

Имевшие дело с сервисом электронных платежей Stripe знают, что он отлично заточен под разработчиков. Его документация написана людьми для людей; есть хороший тестовый режим — полная копия реального, и для перехода на live-режим нужно только заменить ключи, не трогая API и не получая никаких сюрпризов; админка тестового режима — тоже полная копия боевого. В общем, Stripe — это хорошо, и я хочу посвятить эту статью базовым вопросам интеграции сервиса в e-Commerce-проект, объяснив процессы на конкретных и абстрактных примерах. Надеюсь, что мой опыт поможет всем, кто хочет попробовать Stripe на своём проекте.

Читать дальше →

Быстрее света. Зачем компании скупают радиовышки на горе радиолюбителям?

Level of difficultyEasy
Reading time6 min
Views5.8K

Почему в 2025 году многие компании возвращаются к технологиям середины прошлого века, выкупая радиовышки по всему миру? И как связаны скорость света, радиоволны и миллиарды долларов в современных финансах?

Читать далее

Создание ноутбуков на JupyterLab: опыт продуктовой команды

Reading time9 min
Views1.5K

Привет, меня зовут Максим Гуляев, я продуктовый менеджер в команде ML Space Notebooks в Cloud.ru. Раньше я был техлидом этой команды, поэтому глубоко понимаю всю внутреннюю кухню.

В статье расскажу, какие ноутбуки мы используем, зачем они нужны и как сделать себе такие же. Упомяну, почему нам потребовалось вносить изменения в привычные ноутбуки на базе JupyterLab. Затем объясню, что нужно, чтобы прийти к крутым образам. И напоследок поделюсь нашей новой архитектурой и методом ее создания.

Читать дальше

Об одном красивом неизвестном решении одной известной задачи

Level of difficultyMedium
Reading time9 min
Views7.8K

«Каждый из нас лишь выиграет, создавая время от времени «игрушечные» программы с заданными искусственными ограничениями, заставляющими нас до предела напрягать свои способности. Искусство решения мини задач на пределе своих возможностей оттачивает наше умение для реальных задач»

Дональд Кнут (с)

Как известно, на машине Тьюринга (далее МТ) запрограммировать можно всё, что мы вообще считаем программируемым, но в реальности программы на МТ настолько громоздкие, что МТ редко используется даже в академических примерах. И тем не менее в некоторых отдельных случаях с помощью МТ получается написать небольшую программу, на КДПВ изображена программа из 5 состояний на алфавите из 3 символом. Если вы изучали программирование, то задачу, которую решает эта программа, вы скорее всего встречали. Если я сумел вас заинтересовать, то приглашаю в небольшое приключение по реверс инженирингу МТ.

Материал статьи предоставлен Владимиром Пинаевым

Читать далее

INTELLECT-2: Первая большая (32B) параметрическая модель с распределенным обучением

Level of difficultyEasy
Reading time5 min
Views3.8K

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

Встречайте INTELLECT-2 — первую параметрическую модель размером 32B, обученную с помощью асинхронного обучения с подкреплением (RL) на динамическом, однородном рое вычислительных узлов. Доступ к узлам изолирован и не требует дополнительных привилегий — теоретически, это могут быть какие-то компьютеры волонтёров в интернете.

Инфра под это, мягко говоря, нестандартная. Разработчикам пришлось написать несколько компонентов с нуля, и вот что у них получилось...

И что получилось?

Веб-разработка на ванильном HTML, CSS и JavaScript

Level of difficultyMedium
Reading time19 min
Views16K

В этой серии статей мы расскажем, как выполнять веб-разработку исключительно на ванильных технологиях. Ни инструментов, ни фреймворков, лишь HTML, CSS и JavaScript.

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

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

Add-on pack из 90-х: Microsoft 95 Plus! для Windows

Reading time6 min
Views5.8K

24 августа 1995 года вышла Windows 95 — операционная система, которая должна была стать одним из лидеров в домашнем и SOHO-сегменте. Она предлагала пользователям удобный графический интерфейс, поддержку многозадачности и функцию Plug&Play. Правда, работало это далеко не идеально: в народе технология получила ироничное прозвище Plug&Pray («подключи и молись»). Зато с архитектурной точки зрения это был серьезный шаг вперед — переход от 16-битных к 32-битным приложениям.

Как это часто бывает, к моменту релиза далеко не все запланированные функции были готовы. Разработчики стояли перед выбором: внедрить недоработанные фичи и рисковать стабильностью или отложить их на потом. В итоге дополнительные возможности решили выделить в отдельный коммерческий продукт. Так появилась первая версия Windows 95 Plus! — своеобразное дополнение к основной системе. О нем сегодня и расскажу.

Читать далее

Как быть 3D Артисту (Художнику) в 2020-х. Глава 2. Арт (II часть)

Level of difficultyMedium
Reading time17 min
Views1.5K

В первой части главы про Арт мы успели посмотреть базовый набор Арт навыков у художников. Коими господа и дамы 3д'шники и являются.

Сейчас же хочу поговорить одновременно: о более предметном и о более абстрактном.
Предлагаю Вашему вниманию темы на разбор:
- Арт скиллы в 3D.
- Эмоции.
- Знания. Вкус. Насмотренность.

В конце, как и обещался в первой части малый список полезных материалов для развития начинающих художников.

Стать ЕЩЕ круче!

PTTJS — формат текстового хранения комплексных таблиц

Level of difficultyMedium
Reading time5 min
Views2.6K

PTTJS - plain text table javascript, формат разработанный из личной необходимости и острой нужды.

Главная цель формата PTTJS - получить текстовый формат таблиц, который позволяет хранить более сложные таблицы, нежели существующие форматы, но при этом сохранять читаемость и текстовую основу.

Уже написаны JS библиотека с парсером и сериализатором, а также Obsidian плагин.

Читать далее

Конституция против цензуры: история одного иска в суд

Level of difficultyMedium
Reading time4 min
Views19K

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

Читать далее

Пишем один «exe», который работает на 3-х разных ОС без перекомпиляции

Level of difficultyMedium
Reading time17 min
Views19K

Нет, это не шутка и не кликбейт. Такое действительно возможно — правда через небольшой хак.

Недавно я задался вопросом: а возможно ли написать для ARM нативную программу, которая будет бесшовно работать сразу на 4-х операционных системах без необходимости перекомпиляции для разных платформ и ABI. Мне очень хотелось реализовать возможность писать кроссплатформенные эльфы для мобильных телефонов из нулевых и попытаться портировать на них эмуляторы ретро-консолей. Погрузившись в документацию на исполняемые форматы, я пришёл к выводу, что да — это возможно и смог реализовать такую программу на практике без читерства по типу VM! Всех гиков приглашаю под кат!

Читать далее

Зачем использовать OIDC с GitHub Actions?

Level of difficultyEasy
Reading time3 min
Views1.3K

OIDC GitHub Actions может запрашивать временные токены, действительные только на время выполнения workflow, что значительно повышает безопасность и упрощает управление доступом.

Читать далее

Для защиты своего сервера я использую zip-бомбы

Level of difficultyEasy
Reading time3 min
Views86K

Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM. Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.

Читать далее

Прячем, обфусцируем и криптуем клиентскую часть веб-приложений

Reading time14 min
Views117K
Обфускация — это приведение исходного текста программы к виду, сохраняющему ее функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию при декомпиляции. Применительно к JavaScript данная технология используется в таких видах теневого онлайн-бизнеса, как загрузки (iframe), спам и SEO. Наша задача на сегодня — изучить все методы скрытия JS-кода, которые, я надеюсь, ты будешь использовать только во благо.

Обфусцированный скрипт

Читать дальше →

Как разработчик систему продуктовой аналитики Posthog подключал

Level of difficultyMedium
Reading time7 min
Views1.8K

Когда наш продукт (протокол рекуррентных криптоплатежей на NodeJs, React) вырос, возникла необходимость подключить систему продуктовой аналитики, чтобы понимать, что и как делают наши пользователи. В статье хочу рассказать об опыте подключения и использования системы аналитики Posthog. Думаю, статья будет полезна разработчикам, впервые подключающим аналитику, техдиректорам и менеджерам для оценки потенциальных сроков и рисков.

Читать далее

CI/CD для чайников — разберитесь, и начните автоматизировать рутину в разработке. Часть 3. Его величество, деплой

Level of difficultyEasy
Reading time14 min
Views12K

Пишу про полезные материалы про IT, и собираю свой ламповый нетворкинг тут - https://t.me/+434aQiGpZtAyNTU6. Присоединяйтесь!

Оглавление.

Читать далее

CI/CD для чайников — разберитесь, и начните наконец-то автоматизировать рутину в разработке. Часть 2. Запускаем CI

Level of difficultyEasy
Reading time5 min
Views12K

Список необходимых инструментов.

В прошлый раз мы остановились на том, что получили в свое распоряжение сервер – операционную систему внутри контейнера, которая автоматически стартует, в ответ на указанные действия в репозитории. В нашем случае – пока что на событие пуш.

И на этом сервере, мы можем выполнять любой набор команд для автоматизации.🫡

Но самый важный момент на этом этапе – какие настройки должны быть на этом сервере? Какие программы, пакеты или библиотеки, должны быть установлены? В конце концов, какую операционную систему использовать? ⚠️

Мы уже определили набор команд, которые хотим запускать. Давайте разберемся, что нам нужно для их успешного выполнения? Это будет вторым важным и сложным на первых порах моментом, который следует разобрать.

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

eslint . –fix

npm run build

Если попробовать перечислить, то получится следующий список

Читать далее

Information

Rating
Does not participate
Location
Россия
Registered
Activity

Specialization

Web Developer
HTML
Web development
CSS
SCSS