Pull to refresh
13
0.4
Максим @SabMakc

User

Send message

Postgres как поисковый движок

Reading time12 min
Views7.3K

Поиск — это сложно. Важная часть многих приложений, которую нелегко реализовать правильно. Особенно в случае с RAG-пайплайнами, где на качество поиска завязан весь процесс.

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

Эрик Закариассон, разработчик и автор блога Anyblockers, рассмотрел в своей статье, как использовать Postgres для создания надёжной поисковой системы. В рамках задачи автор объединил три техники:

1. Полнотекстовый поиск с tsvector

2. Семантический поиск с pgvector

3. Нечёткое сопоставление с pg_trgm

4. Бонус: BM25

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

Читать далее

Как запускать пет проекты, зарабатывать на них и отправлять на кладбище неуспешные

Level of difficultyEasy
Reading time12 min
Views16K

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

Я - Юра, разработчик и фаундер нескольких продуктов. В этой статье я расскажу о своем подходе к поиску идей, их реализации (без глубиных технических деталей), маркетинге, тайм менеджменте и в целом моментах, которые важны на мой взгляд. Будет мало теории и больше практики из моего опыта.

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

Читать далее

Не UML-диаграммы на PlantUML. Обзор с примерами

Level of difficultyEasy
Reading time4 min
Views5.6K

Привет Хабр! Меня зовут Татьяна Ошуркова, я разработчик и аналитик Назначением инструмента PlantUML принято считать построение UML-диаграмм. Но на самом у него намного больше возможностей и типов диаграмм, которые можно создать.

В этой статья я расскажу о нескольких диаграммах, которые не относятся к UML, но могут быть построены с помощью PlantUML.

Читать далее

Я провел 50+ интервью с малым бизнесом за год, и у меня есть выводы: исследование

Level of difficultyEasy
Reading time11 min
Views18K

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

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

Я объясню, как сделано это исследование: как собирались предприниматели, как я искал главную проблему в каждом из 50+ случаев, как систематизировал итоговую таблицу и где тут думал я, а где нейросеть.

Читать далее

Мои Red-Flags при устройстве в IT-компании: Как не стать гребцом. Часть 1

Level of difficultyEasy
Reading time5 min
Views71K

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

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

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

Читать далее

LaTeX для всех: от первых шагов до продвинутых трюков

Level of difficultyEasy
Reading time1 min
Views7.2K

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

Каждый, кто хоть раз сталкивался с оформлением документов или версткой научных работ, слышал про LaTeX. Это мощный инструмент, способный на многое, но с непривычки разобраться с его синтаксисом может быть, мягко говоря, сложно. Именно по этой причине я решил создать книгу LaTeX book by examples — для начинающих и продвинутых пользователей. В этой статье я коротко расскажу, что в ней особенного и почему вам стоит на неё взглянуть (и возможно даже поставить звёздочку на GitHub 😁).

Читать далее

Почтовый сервер с нуля. Часть третья

Level of difficultyHard
Reading time17 min
Views16K

В этой заключительной статье мы подробно рассмотрим процесс настройки почтового сервера с использованием Docker и Exim4, Dovecot, PostfixAdmin и RainLoop. Наша цель — создать полностью функциональный и масштабируемый почтовый сервер, который легко управляется благодаря контейнеризации.

Давайте настраивать

Экономика и Монетизация игр: Краткое руководство

Level of difficultyEasy
Reading time67 min
Views11K

Здравствуйте, дорогие читатели!

Меня зовут Алексей Карпенко. Проработав в разработке игр больше 5 лет, разрабатывая экономику и баланс для проектов, принесших более 150M$+ выручки, я решил подытожить все свои знания в экономике, балансировке и монетизации игр в одну работу, и поделиться с другими разработчиками.

Материалов в данной сфере совсем немного, на момент написания статьи осень 2024 года, всего +-20 научных статей и пару книг, одна из которых 800 страничный фолиант от Brenda Romero and Ian Schreiber. Я собрал всю эту информацию в одной статье, а также добавил свои знания и опыт, поэтому я считаю что мои знания будут полезны для вас.

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

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

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

Приятного чтения! 😊

Читать далее

Markdown Editor: WYSIWYG и markup-редактор на базе Gravity UI

Level of difficultyEasy
Reading time7 min
Views14K

Привет, Хабр! Меня зовут Сергей Махнаткин, я работаю разработчиком в отделе User Experience в Yandex Cloud. В прошлом году мы писали о нашей дизайн-системе и библиотеке компонентов Gravity UI. С тех пор система не раз обновлялась и обрастала новыми функциями, и сегодня я хочу рассказать о новом инструменте — Markdown Editor, который значительно упрощает процесс работы с документацией.

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

Читать далее

Системный аналитик. Краткий гайд по профессии. Часть 1. Основы взаимодействия систем

Level of difficultyEasy
Reading time14 min
Views52K

Системный аналитик. Краткий гайд по профессии. Часть 1.

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

Читать далее

Тестирование лучших self-hosted аналогов Notion

Level of difficultyEasy
Reading time6 min
Views28K

image


Хабр, в связи с уходом Notion выросла потребность в аналогичном решении, которое бы было сопоставимо удобной Wiki, Task Manager — платформе. 


Я испробовал десять self-hosted решений и нашел несколько почти идеальных! Вы можете развернуть их у себя на сервере, при работе над совместными проектами с командой или для ведения личных записей.

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

Обходим блокировку VPN

Level of difficultyMedium
Reading time2 min
Views73K

Мой провайдер помимо замедления (читай полная блокировка) YouTube так-же стали блокировать соединения с моими рабочими VPN. Работодатель не очень любит, когда на встречах на вопрос о прогрессе, я неделю отвечаю, что у меня не работает VPN! Своими действиями, мой провайдер сам меня подтолкнул к поиску обходных путей.

Сразу скажу, обходной путь придумал не сам, мне его подсказал автор проекта zapret, а точнее его комментарий, более того, я использую его проект, чтоб смотреть нормально YouTube. Спасибо огромное!

Добавлю, я использую nftables и nfqws, если этот вариант работает у меня — это не значит, что оно заработает и у вас! Возможно, вам придётся изменить некоторые параметры.

Читать далее

Бложим как фрики

Level of difficultyMedium
Reading time8 min
Views2.3K

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

Будет обмазан Markdown, Hugo, GitHub (в качестве CD и халявного хостинга) и Obsidian

Страдать далее

Ардуино и сыр. Есть ли связь?

Level of difficultyEasy
Reading time9 min
Views7.6K
Картинка Vecstock, Freepik

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

Matrix: децентрализованные открытые мессенджеры с E2E-шифрованием. Обзор возможностей и настройка своего сервера

Level of difficultyMedium
Reading time13 min
Views22K

В этой статье я расскажу о протоколе Matrix и мессенджерах, основанных на нем, а так же приведу инструкцию по настройке своего сервера и клиентов.

Matrix — открытый протокол мгновенного обмена сообщениями и файлами с поддержкой голосовой и видеосвязи. Почему стоит обратить на него внимание, если у нас уже есть WhatsApp и Telegram? Причин несколько.

Во-первых, в последние дни Роскомнадзор снова начал развлекаться блокировками WhatsApp и Telegram, и иногда у него это даже получается более-менее успешно. В таких условиях всегда неплохо иметь запасной вариант, и Matrix здесь очень хорошо подходит, потому что во-первых он позволяет создавать свои собственные сервера, а во-вторых его протокол со стороны выглядит как самый обычный HTTPS.

Во-вторых, все больше и больше людей не доверяют WhatsApp и Telegram. В случае с Matrix же можно поднять свой личный сервер, протокол Matrix - открытый, исходники клиентов - открыты, исходники серверов - тоже открыты, а в самом протоколе end-to-end шифрование включено для чатов по умолчанию из коробки (в отличие, например, от Telegram, где оно доступно только в "секретных чатах"). Ну и само собой, не требуется нигде вводить телефонный номер для регистрации.

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

Сервер Matrix может работать как изолированно ("только для своих"), так и в составе "федерации" - когда разные серверы общаются между собой, и пользователи, подключенные к разным серверам, могут общаться друг с другом. Есть здесь олды, которые помнят Jabber и IRC? Ну вот, здесь такой же принцип. Я бы даже сказал, что Matrix - это этакий хипстерский Jabber на стероидах.

Читать далее

Управление временем контейнера с помощью docker-compose и faketime

Level of difficultyMedium
Reading time5 min
Views4.6K

Периодически при тестировании микросервисов приходится сталкиваться с необходимостью изменения времени для проверки работы того или иного функционала. Это может быть функционал, который срабатывает по “тику” cron или применение системного времени как одного из условий обработки/хранения/передачи данных тестируемым микросервисом.  

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

Читать далее

Для найма достаточно двух собеседований

Reading time3 min
Views6.2K
Мое самое провокационное мнение о найме в IT звучит так: требуется только одно техническое собеседование и одно собеседование общего плана, причем длиться они должны не более часа каждое. Я считаю, что если процесс найма становится более затяжным, то это не только бесполезно, но и контрпродуктивно.

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

SOLID в Go и щепотка паттернов

Level of difficultyMedium
Reading time23 min
Views10K

SOLID-ная статья о принципах SOLID, которую вы можете предложить тем, кто хочет понять эти принципы в контексте языка Go. Или прочитать самостоятельно, если это интересно и вам.

И да, как сказал бы волк из небезызвестного мультика: «SOLID? Шо, опять?»

Читать далее

4 года холакратии — честный отзыв о работе без руководителей

Reading time10 min
Views30K

В этой статье я постарался честно и вдумчиво проанализировать опыт перехода из вертикальной структуры в горизонтальную. Как мы к этому пришли? Как проходил переход? Что с зарплатами? Куда делись руководители, которые вдруг стали не нужны? Если что-то упустил, спрашивайте в комментариях.

Читать далее

Опционы в стартапах: гайд для сотрудника

Level of difficultyEasy
Reading time18 min
Views5.6K

Представьте, что стартап ранней стадии предлагает вам 1,500 опционов. Сколько это в деньгах?

Как вообще работают опционы?

Я решил разобраться и поделиться с вами.

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

Читать далее
1
23 ...

Information

Rating
2,168-th
Location
Россия
Registered
Activity