Pull to refresh
1
0
Александр @Aknodx

User

Курс «PostgreSQL для начинающих»: #1 — Основы SQL

Level of difficulty Easy
Reading time 13 min
Views 34K

Этим постом я запускаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".

В программе: рассказ об основах SQL, возможностях простых и сложных SELECT, анализ производительности запросов, разбор [не]эффективного применения индексов и особенностей работы транзакций и блокировок в этой СУБД.

Курс не претендует на лавры "войти в айти", поэтому подразумевает наличие у слушателя опыта программирования или работы с другими СУБД, и, главное, желания самостоятельно изучать тему работы с PostgreSQL глубже.

Для тех, кому комфортнее смотреть и слушать, а не читать - доступна видеозапись.

Читать далее
Total votes 35: ↑34 and ↓1 +33
Comments 30

За кулисами публикации «24 часа невидимой эпидемии»

Level of difficulty Easy
Reading time 12 min
Views 2.1K

Сегодня я расскажу о том, как был подготовлен материал об одиночестве, «24 hours in an invisible epidemic», опубликованный на платформе Pudding.

Всё началось с моей одержимости материалами Американского обследования использования времени (American Time Use Survey, ATUS). Каждый год в ходе соответствующего мероприятия проводится опрос десятков тысяч американцев. Им предлагают проследить за одним днём своей жизни. Полученные данные позволяют получить некие общие показатели и, при желании, добраться до каждого респондента и узнать о том, чем занимался именно он.

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

Кто такие LLM-агенты и что они умеют?

Level of difficulty Medium
Reading time 24 min
Views 21K

В последнее время большие языковые модели (Large Language Models, LLM) стали невероятно популярными — кажется, их обсуждают везде, от школьных коридоров до Сената США. Сфера LLM растёт бурными темпами, привлекая внимание не только специалистов в области машинного обучения, но и обычных пользователей. Кто-то высказывает массу опасений насчет их дальнейшего развития, а кто-то и вовсе предлагает бомбить дата-центры — и даже в Белом Доме обсуждают будущее моделей. Но неужели текстом можно кому-то навредить? А что если такая модель приобрела бы агентность, смогла создать себе физическую оболочку и полностью ей управлять? Ну, это какая-то фантастика из (не)далёкого будущего, а про агентов нашего времени я расскажу в этой статье. И не переживайте — знание машинного обучения вам не понадобится!

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

Анализ текстовых данных с помощью NLTK и Python

Level of difficulty Easy
Reading time 9 min
Views 13K

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

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

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

NLTK — это свободно распространяемая библиотека Python, разработанная для работы с человеческим языком. Это комплексный набор инструментов, предназначенный для символьной и статистической обработки естественного языка. Она предоставляет легкий доступ к более чем 50 корпусам текстов и лексическим ресурсам, таким как WordNet, а также набор библиотек для классификации, токенизации, стемминга, метки частей речи, синтаксического анализа и семантического рассуждения.

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

@Scheduled + @Async (в Spring Boot)

Level of difficulty Easy
Reading time 4 min
Views 12K

Недавно отвечал на вопрос почему аннотации @Scheduled и @Async иногда используют вместе, данный вопрос попался человеку на собеседовании.

Многие начинающие разработчики на java не до конца понимают в каких потоках происходит выполнение программы в таком случае.

В данном материале постараюсь объяснить зачем аннотации @Scheduled и @Async ставят вместе, какая проблема при этом решается, в каких потоках происходит работа программы и как делать правильно.

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

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

Я бы не жил на побережье Черного моря Краснодарского края в этих местах…

Level of difficulty Easy
Reading time 5 min
Views 12K

Про городской округ Сочи я высказывал свое мнение в "Я бы не жил в Сочи в этих местах…"

В этой статье найду места на оставшейся части побережья Краснодарского края на основе данных OpenStreetMap где могут быть проблемы из-за близости к жилью не самых комфортных мест для уютной жизни на побережье Черного Моря. Показать результаты работы моей модели для Туапсе просили еще в комментариях к первой статье "Где бы вы точно не жили и не остановились даже на время, если бы знали и выбирали на основе фактов".

Читать далее
Total votes 7: ↑6 and ↓1 +5
Comments 27

Век эгоизма

Level of difficulty Easy
Reading time 1 min
Views 7.5K

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

Читать далее
Total votes 16: ↑12 and ↓4 +8
Comments 23

Аудит пользователей Spring Data JPA

Reading time 5 min
Views 4.8K

Задача: в БД необходимо фиксировать кто создал сущность, кто её обновил, и кто её удалил.

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

Мне хотелось полностью делегировать это приложению, но погуглив, я не нашёл какого‑то явного решения. Сейчас расскажу, как мне удалось это сделать:

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

Как мы разрабатывали приложение с сибирским характером для суровых дальнобойщиков (и победили Яндекс Карты)

Level of difficulty Easy
Reading time 7 min
Views 6.9K

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

Кстати, рекомендуем читать кейс под «Тихий огонёк моей души» :)

Читать далее
Total votes 22: ↑21 and ↓1 +20
Comments 16

UML: обзор основных типов диаграмм, диаграмма компонентов. Часть 2

Reading time 4 min
Views 14K

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

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

UML: обзор основных типов диаграмм, диаграмма Классов. Часть 1

Reading time 7 min
Views 23K

Хабр, привет! Меня зовут Витя, я работаю системным аналитиком, сегодня хочу рассказать про такой обязательный навык аналитиков, как проектирование процессов. Думаю, что каждый, кто будет работать на позиции системного/бизнес аналитика, рано или поздно столкнется с такой задачей.

Читать далее
Total votes 10: ↑9 and ↓1 +8
Comments 4

Простая нейронная сеть без библиотек и матриц. Обучение с учителем

Level of difficulty Easy
Reading time 9 min
Views 15K

Руководство? Гайд? В общем ремейк описания моего опыта создания простой, а главное понятной любому новичку нейросети :)

Дисклеймер: хочу сказать, что смысл этой статьи не в правильном способе создания нейросетей, таких статей сотни, а в способе понять, что такое нейросети и наконец перейти от теории к практике.

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

Широка, необъятна, интерактивна: оффлайн карта России с Plotly

Level of difficulty Medium
Reading time 14 min
Views 11K

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

На связи участник профессионального сообщества NTA Максим Алёшин.

Сегодня создание интерактивной карты на python не составляет большого труда: стоит подключить библиотеку (например, Folium или Bokeh), указать картографический сервер, и после выполнения нескольких «магических» строк кода ваши данные как на ладони!

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

Оффлайн карта России с Plotly
Total votes 24: ↑22 and ↓2 +20
Comments 8

Магия Spring Framework своими руками

Level of difficulty Medium
Reading time 17 min
Views 7.2K

Spring Framework позволяет сфокусироваться на бизнес-логике, а вся настройка инфраструктуры выполняется автоматически благодаря постобработке бинов. Зачастую для реализации дополнительной функциональности применяется Spring AOP - аспектно-ориентированное программирование.

Spring AOP бин, который накручивает дополнительную функциональность другим Spring бинам, помечается аннотацией @Aspect, но как потом этот бин используется для добавления дополнительной функциональности в поток исполнения?

В статье будет рассмотрен механизм проксирования объектов и его применение в Spring Framework.

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

Leaflet как оболочка для «Яндекс.Карт» — отображаем 100 тысяч маркеров на карте

Reading time 4 min
Views 41K
Я очень люблю Leaflet. С его помощью можно очень быстро строить свои интерактивные карты. Однако, практически все доступные поставщики тайлов (слоёв для карт) предоставляют свои услуги за весьма внушительные деньги. Существуют такие OpenSource-проекты, как OSM, но не всегда их тайлы удовлетворяют своим внешним видом.

Цель


Цель заключалась в том, чтобы слепить своего полностью бесплатного кентавра. Мне всегда нравились Yandex-карты, но не их API. Поэтому я заинтересовался вопросом внедрения Яндекс-карты, как слоя для Leaflet.
Читать дальше →
Total votes 19: ↑16 and ↓3 +13
Comments 32

Использование функций регулярных выражений в PostgreSQL / Greenplum

Level of difficulty Easy
Reading time 6 min
Views 9.2K

О том, как именно использовать регулярки, написано уже много статей и туториалов. Другой вопрос, что сами по себе регулярные выражения являются параметром, подающимся на вход какой-нибудь функции. Именно функция осуществляет поиск по указанному регулярному выражению. О функциях, использующих регулярки мы сегодня и поговорим. Возможно, и по самим регуляркам я бахну свой гайд, но, как было сказано в том самом фильме: «Обязательно бахнем и не раз, весь мир в труху! Но потом...»

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

JVM internals

Level of difficulty Medium
Reading time 20 min
Views 15K

Статья объясняет внутреннюю архитектуру виртуальной машины Java (JVM). Диаграмма отображает ключевые внутренние компоненты типичной JVM, которая соответствует спецификации The Java Virtual Machine Specification Java SE 7 Edition

Читать далее
Total votes 20: ↑16 and ↓4 +12
Comments 8

Зачем рассказывать про контейнеризацию в 2023 году

Level of difficulty Medium
Reading time 13 min
Views 21K
image
Техножрец DevOps бережно описывает документацию по проекту

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

Каждая новая технология поначалу держится на энтузиастах, которые её полностью понимают. Например, первые пользователи радио знали почти всё про радиосвязь, могли на коленке собрать детекторный приёмник и ловить радио «Маяк» на металлическую вешалку и моток проводов. Первые пользователи GNU/Linux знали всё про ядро и ключевые принципы работы. По крайней мере, вариант «поправил и скомпилировал драйвера для модема, чтобы настроить сеть» был не самым редким. Текущие пользователи обычно не сталкивались с основами, так как начали щупать технологию уже после снижения порога входа.

Те же процессы идут не только в среде потребителей технологий, но и среди инженеров. С одной стороны, узкая специализация совершенно нормальна, с другой — мы рискуем получить аналог культа Галактического Духа на Анакреоне из цикла романов «Основание» Азимова. Техножрецы выполняют сложные ритуалы, ядерные реакторы пайплайны работают. Ровно до тех пор, пока всё не сломается к чертям на низком уровне, а чинить будет некому.

Так происходит и с контейнеризацией. Я всё чаще встречаю на собеседованиях devops-инженеров, которые знают, как пользоваться Docker и Podman, пишут Dockerfile, но теряются, когда спрашиваешь про namespaces, и начинают плавать при вопросе: «А зачем, чем RPM хуже?» Все собирают контейнеры, и я собираю. Таков Путь. Не всегда, кстати, оптимальный.
Читать дальше →
Total votes 59: ↑59 and ↓0 +59
Comments 13

MacOS Monterey на Linux — быстро и просто?

Level of difficulty Easy
Reading time 3 min
Views 41K
Что делать, если у вас возникло желание или необходимость заняться разработкой под MacOS или iOS, но под рукой нет макбука, а покупать его только чтобы открыть Xcode кажется делом сомнительным? Недавно я столкнулся с такой проблемой в одном из своих пет-проектов и решил ее достаточно просто и быстро. После выполнения нескольких достаточно примитивных шагов, мне удалось запустить MacOS Monterey как на скриншоте ниже.

image

Никакого Virtualbox, никакого Virtual Machine Manager. Из требований — только 100 Гб свободного места на диске и хотя бы 16 Гб оперативной памяти. В рунете я встречал описание похожих путей установки, вроде Docker-OSX или Sosumi. Но я бы хотел поделиться способом, который позволяет использовать актуальную версию MacOS (Sosumi — сразу минус) и не потратить уйму свободного времени на возню с конфигами и терминалом. Поехали.
Читать дальше →
Total votes 83: ↑79 and ↓4 +75
Comments 67

Vaadin или как стать full-stack разработчиком

Level of difficulty Easy
Reading time 11 min
Views 6.9K

Привет, Хабр! В данной статье хотелось бы поделиться мнением о плюсах и минусах использования фреймворка Vaadin версии 14.

До знакомства с Vaadin фронт приходилось делать с помощью различных JS фреймворков или библиотек, в связки с html и css. Поэтому особо никогда не задумывался о том, что можно разрабатывать фронт на Java в то время, когда космическое пространство бороздят React, Angular, Vue и им подобные. Но мое мнение поменялось с приходом в новую команду где уже использовался во всю Vaadin и с которым я познакомился впервые.

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

Information

Rating
Does not participate
Registered
Activity