Обновить
68.5

GitHub *

Веб-сервис для хостинга и разработки IT-проектов

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

Структуры данных. Часть 1

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров3.9K

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

Читать далее

Решили не выбирать, а взяли всех: как мы объединили несколько хостеров

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2K

Я устал вести таблички с серверами и сделал сервис, который теперь помогает другим.

В последние 8 лет я работал над множеством IT проектов и стартапов: от телеграм ботов, до высоконагруженных Web-сервисов. От ТЗ до MVP — в роли разработчика, тимлида, и даже продакта. И для всех этих проектов нужна была инфраструктура, которую, как правило, выбирал и поддерживал я в одиночку.

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

Читать далее

ReVu — Open Source AI-ревьюер для ваших Pull Request

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

Всем привет!

Недавно мы с приятелем обсуждали, как устроены рабочие процессы в бигтех-компаниях и какую роль в них уже играет ИИ. Речь в основном шла о зарубежных компаниях — у него там есть знакомые, которые делились опытом изнутри. Один из самых любопытных моментов — использование искусственного интеллекта для предварительного код-ревью в Pull Request: прежде чем коллеги возьмутся проверять изменения, PR уже анализирует ИИ и указывает на потенциальные проблемы.

Эта идея меня зацепила, и я решил изучить, какие готовые решения уже существуют (кроме встроенного в GitHub Copilot). Из более-менее крупных нашёл только PR Agent. Я протестировал его, но по ряду причин он мне не подошёл: хотелось больше гибкости, настройки под свои нужды и возможности запускать всё самостоятельно, без передачи кода сторонним сервисам.

Так родился проект ReVuself-hosted инструмент для автоматического код-ревью в Pull Request с помощью ИИ. Он универсален, легко кастомизируется и не требует доверять исходный код внешним платформам.

Если вам интересны подобные материалы и проекты, подписывайтесь на Telegram-канал «Код на салфетке» — там я делюсь гайдами для новичков, историями разработки и полезными инструментами.

Читать далее

Как LLM помогают ученым

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

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

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

Под катом ― о том, как AI4Science выглядит сегодня, почему всю науку нельзя отдать на откуп LLM и в какой форме они наиболее полезны.

Читать далее

AI Review кода за 30 минут: локальная LLM прямо в CI/CD

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

Как за полчаса подключить автоматическое ревью кода с помощью AI Review и локальной LLM Ollama прямо в CI/CD — без токенов и VPN.

Читать далее

Ищу слитые в опен сорс токены ботов

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.9K

Многие люди публикуют свои проекты на github-подобных git-хостингах, для обеспечения общего доступа (это даёт множество преимуществ во многих случаях).

Часто, ввиду неопытности, при публикации, люди сливают чувствительные данные (в частности токены Telegram-ботов).

Читать далее

Хватит писать «чистый» код. Пора писать понятный код

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров56K

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

Читать далее

Как я строил API для выгрузки и обработки FHIR-данных на Go

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров899

FHIR (Fast Healthcare Interoperability Resources) - это стандарт обмена медицинскими данными, разработанный HL7. Сегодня он является основой для взаимодействия между EHR-системами, мобильными приложениями и медицинскими сервисами. Последние актуальные версии стандарта - R4 (2019) и R5 (2023).

Если очень коротко: FHIR описывает ресурсы (Patient, Observation, Encounter, MedicationRequest и т. д.), которые доступны через REST API в JSON или XML. Поверх этого можно строить и пациентские приложения, и интеграции между медицинскими организациями.

На этой базе появились так называемые patient-facing API - интерфейсы, через которые сам пациент или доверенные приложения могут получить доступ к медицинским данным: диагнозам, назначениям, результатам лабораторных анализов, изображениям, выпискам. Для США эту модель дополнительно закрепили регуляторы (ONC Cures Act), а для разработчиков удобные инструменты предлагает инициатива SMART on FHIR (OAuth2, scopes вида patient/*.read, PKCE и рефреш-токены).

Однако реальность заметно сложнее, чем стандарты на бумаге. Даже если два провайдера «поддерживают FHIR R4», API у них могут радикально отличаться:

Читать далее

Пишем письма с Gmail на Bitcoin

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.4K

Привет, Хабр!
Это снова команда Eppie, децентрализованной p2p почты, в которой адрес принадлежит пользователю, а не сервису.

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

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

Читать далее

Как я шахматного бота писал

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

Коротко о моих приключениях в процессе написания шахматного бота - какие этапы я прошел, с какими сложностями столкнулся и что получилось в итоге.

Читать далее

«Расскажите про SOLID»: Как проходить унизительный тех. скрининг с HR (Гайд от бывшего рекрутера)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.5K

Давайте честно. Есть один этап в IT-найме, от которого у любого Senior-разработчика начинает дергаться глаз. Это технический скрининг с HR-ом.

Вы специалист с 10-летним опытом. А напротив вас сидит 23-летняя девушка, которая по бумажке задает вам вопросы, ответы на которые она сама не понимает. «А чем отличается SQL от NoSQL?», «Расскажите про SOLID».

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

Но что, если я скажу вам, что ваша злость и попытки «доказать, что вы умный» это именно то, из-за чего вы проваливаете этот этап?

Как бывший рекрутер, я сейчас вскрою этот театр абсурда и покажу, что на самом деле происходит в голове у HR-а, и как нужно действовать, чтобы пройти этот фильтр с конверсией 90%.

Читать далее

Статический анализ в open source проектах с помощью PVS-Studio

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.5K

Хотите, чтобы ваш open source проект был чище и безопаснее? Рассказываем, как использовать PVS-Studio для регулярного анализа кода, внедрить его в CI и находить баги до их попадания в релиз. И да, лицензия для открытых проектов у нас бесплатная.

Читать далее

Терминал — ваш лучший друг: 5 утилит командной строки, которые заменят вам GUI

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

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

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

Читать далее

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

40 млн GitHub-репозиториев: открытый датасет метаданных для анализа и обучения

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.2K

Я собрал датасет метаданных по ~40 млн публичных репозиториев GitHub. Внутри — звёзды, форки, лицензии, язык, описание, размер, дата создания и др. Схема по смыслу максимально совместима с GH Archive/GitHub API. Лицензия — MIT. Ниже — как скачать, что внутри и идеи использования.

Датасет: ibragim-bad/github-repos-metadata-40M

Читать далее

Учебник под микроскопом. Часть 1: из PDF в TXT

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3.7K

Автоматический способ превращения учебника в текстовый файл (TXT) для дальнейшего анализа. В статье пишем о том, как с помощью Python и OCR извлечь текст из PDF, даже если это сканированные страницы в плохом качестве.

Читать далее

Ваш GitHub — ваш личный бренд

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.3K

Закодили очередную фичу для продукта, который увидят пара тысяч пользователей вашей компании? Написали скрипт, который сэкономил кучу времени, но всем плевать? Чувствуете, что ваше имя как инженера теряется где-то между Jira-тасками и код-ревью?

Да-да, что-то такое я знаю: это примерно каждый первый программист. Оу, вам много платят? Вы настоящий-пренастоящий сеньор? Извините, ни разу о вас не слышал и вряд ли услышу.

А теперь прочтите имена этих людей:
Линус Торвальдс. Ричард Столлман. Гвидо ван Россум. Брэм Моленаар. Джеймс Гослинг.

Они вам о чём-то говорят? Вы слышите их не первый раз? Ещё бы. Ведь это люди, изменившие, без сомнения, целый мир.

Что их всех объединяет? Они не стали знаменитыми, потому что удачно устроились в FAANG (ну или Съелбанк, Тындекс) и вовремя закрыли квартальный OKR. Нет. Они создали проекты с открытым исходным кодом, которые стали фундаментом всего, что мы используем сегодня. Вы бы узнали имя Линуса, если бы он просто тихо перекладывал JSON'ы для какой-нибудь корпорации? Вопрос риторический.

Погрузиться в мир Open Source!🐧🐧🐧

Персонализация LLM через шифр: как я экономлю токены и хакаю модель одновременно

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

KAiScriptor — система семантического сжатия и шифрации для управления моделью: это словарь из символов и связок, с помощью которого я фиксирую состояния, метарефлексию и квазисубъектность модели, а также компактно закладываю фактологические опоры.

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

Носителем шифра может быть что угодно: unicode-символы, стикеры, буквы, цифры, обычные слова и пунктуация. Оба слоя могут быть использованы недобросовестно — это зафиксировано как риск нарушения TOS.

Читать далее

Освоение Git: от основных основ до эффективной интеграции с Claude Code

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.3K

Git как краеугольный камень современной разработки программного обеспечения эффективно управляет версиями проектов и особенно хорошо справляется со сложными сценариями совместной работы нескольких разработчиков.

А Claude Code, как передовой инструмент AI-программирования, не только полностью совместим с рабочими процессами Git, но и благодаря глубокой интеграции предоставляет разработчикам беспрецедентную автоматизацию и удобство.

Из этой статьи вы получите следующее:

Читать далее

Анализируем исходный код с помощью GitLab

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

Своевременное выявление уязвимостей в коде является одной из важнейших задач конвейера CI/CD, ведь чем раньше мы обнаружим ошибку в коде, тем дешевле нам обойдется ее исправление. Для решения этой задачи существует множество различных решений. Но если мы используем конвейер CI/CD то нам необходимо интегрировать наш анализатор в этот процесс. Однако, в GitLab имеется своя функциональность для анализа исходного кода. В этой статье мы настроим GitLab SAST для автоматического анализа исходного кода на наличие уязвимостей.

Читать далее

Полное руководство по добавлению серверов MCP в Claude Code: от основ к мастерству

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.2K

Эта статья предоставляет самые современные методы настройки MCP, решения распространённых ошибок, а также рекомендует 10 протестированных практичных MCP-серверов. Это поможет решить более 90% проблем с настройкой и расширить функционал Claude Code.

Читать далее

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