Pull to refresh
1
0
Денис @Den_CH

Пользователь

Send message

Вопросы по SQL, которые часто задают на собеседовании. Часть 1

Reading time 14 min
Views 46K

SQL (Structured Query Language) – это язык программирования, используемый для управления реляционными базами данных. В этой статье я собрал вопросы по SQL, с которыми вы можете столкнуться на собеседовании. Их часто задают для проверки общих знаний и навыков.

Читать далее
Total votes 31: ↑26 and ↓5 +21
Comments 24

Размещение телеграмм бота (Aiogram3) на VPS/VDS

Level of difficulty Medium
Reading time 4 min
Views 5.5K

Расскажу как просто задеплоить телеграмм бота на Aiogram 3 с webhook на VPS/VDS. Посмотреть видео версию, которую я выложил, можно на YouTube

Также покажу установку двух типов сертификатов SSL: ...

C Nginx и без него ...

Читать далее
Total votes 9: ↑7 and ↓2 +5
Comments 9

ИИ вместо астролога или как я создавала астробота Катю

Level of difficulty Medium
Reading time 6 min
Views 3.5K

Обучение на курсах NLP от OTUS подходило к концу и нужно было определиться с темой выпускной работы. Я новичок в NLP, но очень хотелось присоединиться к всеобщему хайпу по поводу GPT и своими руками пощупать генеративные модели. Мне, как любителю гороскопов, показалась интересной идея обучить языковую модель писать ежедневные прогнозы по знаку Зодиака и обернуть ее чат-бот, который бы генерировал предсказание по запросу пользователя.

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

Читать далее
Total votes 34: ↑19 and ↓15 +4
Comments 15

Почему Россия (и многие страны СНГ) – место, где уровень владения английским повально низок?

Level of difficulty Easy
Reading time 5 min
Views 80K

Только 3.5% россиян знают английский. Пакистан 50%, Германия 56%, Египт 40% — почему? Генетика, лень, система образования, не с кем практиковать... Много причин и очень много вопросов к каждой. У меня есть собственная гипотеза, основанная на личном опыте.

Читать далее
Total votes 133: ↑65 and ↓68 -3
Comments 684

Построение пайплайна обработки данных в реальном времени с использованием Python

Level of difficulty Hard
Reading time 11 min
Views 7.1K

Привет, Хабр!

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

В этой статье мы рассмотрим как построить пайплайн обработки данных в реальном времени с использованием Python.

Читать далее
Total votes 18: ↑16 and ↓2 +14
Comments 0

9 архитектурных антипаттернов при разработке телеграм-ботов на Python

Level of difficulty Easy
Reading time 17 min
Views 15K

Привет, Хабр! Если вас заинтересовал заголовок этой статьи, значит, вас интересует созданием телеграм-ботов, и вы стремитесь к совершенству в этом. Разработка телеграм-ботов требует не только креативности, но и правильной архитектуры. В этой статье мы рассмотрим 9 архитектурных антипаттернов, которые могут стать серьезными преградами на вашем пути к созданию бота.

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

Читать далее...
Total votes 21: ↑14 and ↓7 +7
Comments 6

Event Loop в деталях

Level of difficulty Medium
Reading time 7 min
Views 43K

В данной статье поговорим о том, почему Event Loop вообще был создан, как с ним работать и почему про него спрашивают на собесах.

JS был спроектирован как однопоточный язык программирования. Это значит, что он может выполнять только одну операцию одновременно. Тем не менее у JavaScript есть такой механизм как Event Loop, который как раз и позволяет выполнять "асинхронные" операции. Почему "асинхронные" в кавычках? Да просто потому что JavaScript тоже выполняет их синхронно, асинхронности в самом JavaScript как таковой нет. Вперед под кат, будем разбираться)

Promise.then()
Total votes 25: ↑22 and ↓3 +19
Comments 13

Построение распределенной системы очередей сообщений с RabbitMQ и Python

Reading time 22 min
Views 12K

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

RabbitMQ — это мощный и гибкий брокер сообщений, который широко используется для создания распределенных систем, поддерживающих обмен данных между различными компонентами приложения. Он был разработан с учетом принципов протокола Advanced Message Queuing Protocol (AMQP), что делает его стандартом в индустрии для обработки сообщений.

Читать далее
Total votes 26: ↑20 and ↓6 +14
Comments 0

Расширенная настройка бэкэнд-проекта Python ( пример FastAPI )

Level of difficulty Medium
Reading time 12 min
Views 14K

👋 Привет! Возможно, вы что-то знаете о Python, если вы здесь. Особенно о веб-фреймворках Python. Например, есть одна вещь, которая меня очень раздражает при использовании Django: наложение слоя структуры проекта.

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

Но как только вы начнете писать «лучшие» приложения, вы освоите другие шаблоны проектирования мирового класса, такие как DDD и его многоуровневая архитектура, и через некоторое время вы еще больше усложните свою систему с помощью CQRS. Лично мне стало труднее поддерживать базу кода, следуя всем этим принципам, когда фреймворк является ЦЕНТРАЛЬНОЙ частью всего приложения. Из него даже выйти невозможно, если через какое-то время решишь сменить фреймворк…

✅В этой статье я постараюсь поднять вопрос, а затем решить его.

🤚 Отказ от ответственности: давайте ограничим проект серверного API интернет-рынком.

Читать далее
Total votes 11: ↑8 and ↓3 +5
Comments 6

15+ небанальных ресурсов для начинающего/продолжающего Python-разработчика

Level of difficulty Easy
Reading time 4 min
Views 51K

Привет Хабрчанам! Меня зовут Дима Туркин, я — код-ревьюер на курсе «Python-разработчик» Яндекс Практикума и Python-тимлид.

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

Читать далее
Total votes 14: ↑13 and ↓1 +12
Comments 11

Let me teach you the ancient method of Fu Thai! Гнев и ненависть брутфорсеров в 2023 году

Reading time 17 min
Views 14K

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

Задавшись этим вопросом, я решил повторить эксперимент, сделав из выделенного сервера «ловушку» для всяких плохих ребят. В статье рассказываю, какие интерфейсы привлекают взломщиков, можно ли спрятаться на нестандартном порту и что будет, если оставить пароль по умолчанию. Под кат стоит провалиться хотя бы ради собранной статистики.
Читать дальше →
Total votes 88: ↑88 and ↓0 +88
Comments 16

Создание библиотеки Python: полный гайд

Level of difficulty Medium
Reading time 7 min
Views 21K

Создайте свою библиотеку для Python и загрузите на PyPi, сейчас!

В этом туториале я максимально понятно и подробно расскажу о том, как создать свою библиотеку для Python и загрузить её на PyPi, для того, что бы её мог использовать любой!

Читать далее
Total votes 12: ↑10 and ↓2 +8
Comments 13

Про Linux на встроенной графике Intel

Level of difficulty Easy
Reading time 3 min
Views 14K

Я уже довольно долго собираю и настраиваю десктопы с Linux для дома и офиса, и последнее время не без удовольствия выбираю конфигурации со встроенной графикой Intel. Когда‑то я начинал с машинки, в которую поставил с Core i3–2105, (HD Graphics 3000), позднее — более новый Core i3–9000 (UHD Graphics 630), а совсем недавно мне очень недорого достался Intel NUC5PPYH, разумеется тоже с фирменным графическим контроллером Intel.

Сразу хочу сказать, что если вы не играете в коммерческие игры в Linux, то графические «встройки» Intel — это лучший выбор в плане стабильности и поддержки производителя. Видеодрайвер уже много лет есть в ядре, и он просто работает: с аппаратным ускорением из коробки, без тиринга, без дополнительных проприетарных блобов и прочей головной боли. Более того, таких драйверов минимум два: это традиционный 'intel' и более новый 'modesetting'. Графика Intel с самого начала лучше всего работала в Wayland, не будем забывать и об этом.

Поводом для этой заметки стало наблюдение: эффекты рабочего стола могут тормозить на старых «встройках» Intel при том, что в OpenGL‑приложениях может быть вполне высокий FPS и хорошая плавность. Я наблюдал разные признаки торможения в двух самых популярных рабочих окружениях (KDE Plasma 5 и Gnome 4) как в X11, так и в Wayland. Я хочу поделиться советом про то, как ситуацию можно исправить на примере дистрибутива Fedora $releasever (на момент описания это 37).

Итак, поехали!
Total votes 42: ↑39 and ↓3 +36
Comments 28

Как запускать RabbitMQ в Docker

Reading time 8 min
Views 65K

Алексей Барабанов, IT-директор «Хлебница» и спикер курса «RabbitMQ для админов и разработчиков», подготовил конспект, который поможет научиться запускать и настраивать RabbitMQ в Docker. Вы поймёте, как конфигурировать параметры запуска, а также узнаете о возможностях управления через веб-интерфейс.

Читать далее
Total votes 34: ↑32 and ↓2 +30
Comments 12

Импортозамещаем Evernote. Obsidian – менеджер заметок и лучший друг менеджеров

Reading time 11 min
Views 61K

Привет, Хабр! Меня зовут Николай Суворов. Я – профессиональный менеджер, руководитель направления Delivery Management в МТС Digital. Занимаюсь Enablement Platform – единой платформой для быстрого создания продуктов в экосистеме МТС. Сегодня я расскажу о своем pet-проекте и о том, как я заменил привычный, но такой недоступный Evernote прекрасным менеджером заметок Obsidian. Статья будет интересна прежде всего тем, кто хочет обладать «вторым мозгом» и ни о чем не забывать.

Читать далее
Total votes 53: ↑53 and ↓0 +53
Comments 97

Ternaus: Telegram Bot

Reading time 4 min
Views 6.3K

Короткая версия:

Сделал Telegram бота - https://t.me/ternausbot

Вводишь текст или загружаешь картинку - получаешь 10 похожих.

Картинки из базы данных с Ternaus.com - 8.5 миллионов картинок, сгенерированных Stable Diffusion.

Код бота на python под катом.

Читать далее
Total votes 14: ↑10 and ↓4 +6
Comments 24

Обзор топ-5 полезных утилит для Docker

Reading time 5 min
Views 29K

Проект Docker, запущенный в 2013 году, стал одним из самых популярных инструментов в области контейнеризации. Спустя почти 10 лет Docker активно развивается, однако, не только сама компания Docker Inc привносит улучшения в свой продукт – обычные пользователи тоже вносят свой вклад, создавая различные инструменты, которые совершенствуют взаимодействие с системой Docker.

В статье мы рассмотрим топ-5 полезных утилит, которые упростят работу с Docker.

Читать далее
Total votes 23: ↑20 and ↓3 +17
Comments 11

Связанность мировой экономики через абсолютные валютные курсы

Reading time 3 min
Views 2.1K

В курсе анализа данных есть методика исследования зависимостей между данными через корреляцию Пирсона. Корреляция тем выше чем ряды данных более связаны между собой. И наоборот. Не плохо было бы применить эту технику к валютам и посмотреть на взаимосвязи между ними. Но, если применять корреляцию к парным курсам, то получим оценку связей только между парными курсами. Зависимостей между отдельными валютами не получится.

Читать далее
Total votes 5: ↑1 and ↓4 -3
Comments 9

Руководство по обработке ошибок в Node.js

Reading time 15 min
Views 13K

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

Читать далее
Total votes 5: ↑3 and ↓2 +1
Comments 0

Собеседование по Javascript, мой опыт. Часть первая

Reading time 7 min
Views 28K

“Не люблю темные стекла, сквозь них темное небо.
Дайте мне войти, откройте двери.”

(Виктор Цой)

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

Читать далее
Total votes 3: ↑2 and ↓1 +1
Comments 21

Information

Rating
Does not participate
Registered
Activity