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

GitHub *

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

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

Open-source инструменты для визуализации данных

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

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

Читать далее

Развертывание виртуальной машины Windows 10 на Ubuntu с доступом через noVNC

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

В данной статье описывается пошаговая методика развертывания виртуальной машины (ВМ) с установленной операционной системой Windows 10 на сервере с операционной системой Ubuntu. Решение предполагает установку всех необходимых компонентов, настройку виртуализации с помощью QEMU/KVM, а также организацию удалённого доступа к ВМ посредством noVNC.

Подробнее

Я мучился с Git, поэтому создал про него игру

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

Прошло два года...


… с тех пор, как я разработал и выпустил Git-Sim — бесплатный опенсорсный инструмент для визуализации команд Git непосредственно в репозиториях пользователя.

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

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

Методы классификации DGA инструментов

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

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

Читать далее

СКУД Унификация подключения датчиков

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

В статье предлагается возможность унификации схемы подключения всего спектра периферийных датчиков СКУД и создания простого информативного блока сопряжения, который можно собирать из стандартных модулей и настраивать под конкретную конфигурацию.

Читать далее

Популярные проекты GitHub в феврале 2025 года

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

Эти проекты охватывают работу с искусственным интеллектом, обработку данных, программирование и автоматизацию — области, которые сейчас задают тон в технологиях. Каждый из них приносит что-то своё: возможность работать на разных устройствах, быстро подключаться к вашим задачам или выдавать максимальную производительность без лишних усилий.

Читать далее

Борьба с HM70

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

Решение проблемы с младшими чипсетами HM70. Многие мастера уверены, чтобы поставить процессор core i линейки на слабые ноутбуки с hm70 необходимо менять чипсет на более старший, однако это не очень выгодное решение. В недавнем времени нашлось программное решение :-)

Читать далее

Методы распознавания матерных (и не только) языков

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

Всем привет! Меня зовут Миша, я работаю Backend-разработчиком в Doubletapp. В одном из проектов появилась фича по добавлению тегов по интересам. Любой пользователь может создать интерес, и он будет виден всем остальным. Неожиданно (!!!) появились интересы с не очень хорошими словами, которые обычно называют матерными. Встала задача по распознаванию языка с матерными словами, чтобы исключить возможность добавления гадости в наш огород!

Читать далее

Как конфигурировать Git

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

Какие настройки git config сейчас следует устанавливать по умолчанию? Ниже рассмотрены избранные настройки, менять которые не стесняются даже разработчики самого Git.

Несколько недель назад я написал о настройке Git help.autocorrect и поведал странную историю о том, как её значение стали задавать в децисекундах.  

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

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

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

Читать далее

Парсер JSON в 500 строках Rust

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

За время прошлого семестра в универе я прошёл курс «Инструменты и компиляторы на основе синтаксиса». В рамках курса мы создавали сканер, парсер, компилятор и прочие инструменты для языка Plo. Писали мы их на Python, но тогда меня серьёзно заинтересовал Rust.

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

Как исправлять ошибки в Git, не оставляя улик

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

Как же иногда хочется закинуть коммиты «Remove debug log», «fix» или «fix fix fix». Такие коммиты как грязные носки под кроватью: их не видно, пока не придёт ревьюер с пристальным взглядом или, что еще хуже, потенциальный работодатель, решивший посмотреть на ваш профиль github.

К счастью, Git предлагает два супер-инструмента для того, чтобы история коммитов выглядела так, будто ты всегда знаешь, что делаешь: git commit --fixup и git rebase --autosquash. И сегодня мы разберем на практике как это применять.

Читать далее

Автоматизация сборки и релиза Android-приложений через GitHub Actions

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

В продолжение моей статье про обновление Android-приложений через Github releases, я решил автоматизировать еще одну часть этого рутинного процесса, а именно, сборку и релиз. При написании статьи руководствовался этой статьей, но немного поменял подход, а именно: не включаю в данный процесс файлы проекта, потому что, я думаю, это является более гибким подходом, позволяющим переносить workflow между проектами без изменений файлов самого проекта.

Читать далее

Как запустить публичный сайт на телефоне или экономим на спичках

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

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

Читать далее

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

Вершим правосудие на GitHub, помечая мошенников с помощью граффити

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

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

К примеру, в графиках активности нескольких фишеров я оставил вот такую «черную метку»:


В статье расскажу, как отметить профиль недобросовестного юзера таким граффити, чтобы другие пользователи GitHub знали, с кем имеют дело.
Читать дальше →

Раздел OSINT (разведка): Что такое Github Dorking?

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

Здесь вы узнаете, как повысить свой уровень в OSINT, будут приведены примеры и готовые поисковые запросы.

(Вы можете дополнить меня, если я что-то забыл в комментариях).

Читать далее

Как вынести Go-модуль в open source с сохранением авторства

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

Так случается, что команда решает вынести часть проекта в open source и использовать ее как внешнюю зависимость. Как правило, это самостоятельный пакет или инструмент, лишенный какой-либо бизнес-специфики, способный принести пользу сообществу и получить дальнейшее развитие. Большинство коммерческих разработчиков имеет персональные профили на открытых платформах и поддерживает собственные портфолио, поэтому при переносе мы хотим сохранить авторство и историю коммитов. Основная сложность здесь в том, что необходимо полностью исключить всю внутреннюю корпоративную информацию: названия репозиториев и проектов, имена и имейлы сотрудников, внутренние идентификаторы тикетов и любые формулировки, отражающие задачи продукта. Важно, чтобы такая информация отсутствовала по всему дереву коммитов. Для этого мы будем пользоваться такими инструментами,

как git grep, git filter-branch и git rebase --interactive. В статье приводятся порядок шагов и общие рекомендации по оформлению открытого проекта.

Я Константин Соколов из бэкенд-разработки в Positive Technologies. Люблю программировать на Go.

Читать далее

Мастер-класс по точечному переносу изменений между ветками в git

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

Представьте ситуацию: вы нашли критический баг в проекте, исправили его в feature-ветке, но до полного слияния ещё далеко. Или вам срочно нужно перенести одно конкретное изменение из текущей ветки в другую. В таких случаях git cherry-pick становится вашим секретным оружием.

Читать далее

Топ популярных проектов на GitHub в январе 2025 года

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

Топ популярных проектов на GitHub за январь 2025 года. Эти проекты стали настоящими хитами среди разработчиков, аналитиков данных и всех, кто интересуется технологиями. Каждый из них показывает новые возможности и свежие идеи в разных сферах.

Читать далее

Подружить Great Expectations с Impala: решение для больших данных

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

Всем привет, меня зовут Ольга Вишницкая, работаю главным аналитиком данных в одном из департаментов Газпромбанка. Мы постоянно следим за развитием инструментов и технологий в области анализа данных, ищем и тестируем новые решения. И в какой-то момент один из наших стримов, который отвечает за качество данных, обратил внимание на Great Expectations (GX). Это отличная библиотека для анализа качества данных: от базовой валидации до сложного профилирования и автоматической генерации документации. 

Но при внедрении мы столкнулись с проблемой: GX официально не поддерживает Impala — наш основной SQL-движок для обработки данных в Hadoop. Сначала мы решили пойти обходным путем через pandas DataFrame, благо GX прекрасно с ним работает. На тестовых данных все выглядело многообещающе, однако DataFrame может обрабатывает только около 15 000 строк за раз. Данные нужно дробить на части и по результатам теста на действительно больших объемов, обработка растянулась больше чем на сутки, а часть возможностей библиотеки мы вообще потеряли.

Стало понятно — нужно возвращаться к идее использования Impala. Тем более что он обрабатывает те же объемы данных за считанные минуты. Оставалось только найти способ подружить его с GX. В документации GX ни слова о том, как запустить проверки через неподдерживаемый движок. Пришлось экспериментировать самим, и после серии проб и ошибок нашли решение. Решила им поделиться.

Читать далее

Что случилось с легковесными десктопными приложениями? История Electron

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

Electron — это один из самых известных инструментов современного разработчика. Если присмотреться, то это родственник React Native, манящий лозунгом «пиши один раз, запускай везде!», но с гораздо меньшими издержками по сборке и релизу, чем в случае мобильной разработки. Его уникальное преимущество заключается в комбинации Node.js и Chromium, создающей мощную десктопную среду для веб-технологий. Официальный блог Electron не так давно отметил своё десятилетие, что весьма удивляет с учётом того, насколько глубоко этот инструмент успел проникнуть в культуру разработки.
Читать дальше →