Как стать автором
Обновить
-3
0.2

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

Отправить сообщение

Вы «продоете теплых кросовок»: ищем идеальную пару обуви с помощью Elasticsearch

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

Привет, эту статью мы пишем вместе — Дмитрий Генинг, руководитель направления разработки R&D, и Александр Желубенков, руководитель направления ранжирования и навигации в компании Lamoda. 

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

В этой статье мы расскажем:

• что находится «под капотом» поиска в Lamoda;

• как мы понимаем пользователей и разбираем поисковые запросы;

• как обогащаются атрибуты товаров и по какой логике формируется запрос к Elasticsearch;

• над чем работаем сейчас и какие есть планы на будущее.

Читать далее
Всего голосов 19: ↑18 и ↓1+20
Комментарии5

Пошаговая инструкция как создать NFT коллекцию на Golang + Ethereum (часть 1)

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

Привет Хабр.

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

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

Читать далее
Всего голосов 11: ↑6 и ↓5+1
Комментарии6

Артем, 34 года: Уволился с зарплаты $250k в год и уехал на пенсию в Португалию

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

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

Читать далее
Всего голосов 141: ↑94 и ↓47+74
Комментарии475

Пока, Хабр

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

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

Читать далее
Всего голосов 455: ↑344 и ↓111+284
Комментарии1265

Африка почти не пострадала от COVID. Ученые не могут понять, почему

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


Смертность от пандемии в странах Африки к югу от Сахары (т.н. «Черная Африка») — остается заметно ниже по сравнению с Америками, Европой и Азией.


Взять Зимбабве. Страну с населением 16 млн человек. За счет благотворительных организаций она сделала не так уж и мало тестов: 1,6 млн. При этом по количеству смертей от ковида на 1 млн человек — они на 128 месте в мире. То есть, ситуация хуже, чем в Японии или Сингапуре, но намного лучше, чем в Канаде, Турции, Армении или Монако. И почти в 20 раз лучше, чем у стран-рекордсменов по смертям (Перу, Болгария).


Самые «ковидные» страны континента — это более развитые ЮАР (со своим южноафриканским штаммом), Марокко, Египет, Ливия и Тунис. На них приходится 18% населения (217 млн из 1,2 млрд), но почти треть случаев заражений, и большинство смертей. Почему так? Ученые до сих пор бьются над этим вопросом, но несколько последних исследований позволяют прийти к довольно странному выводу…

Читать дальше →
Всего голосов 68: ↑61 и ↓7+75
Комментарии204

Как не стать жертвой IT корпораций?

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

Практически каждый день на просторах Интернета появляется очередной привлекательные сервис, призванный сделать жизнь комфортнее или привнести в нее новый пользовательский опыт: вроде сервисов доставки еды в автомобиль, VR-чатов и метавселенной Facebook.

Данные пользователей — самое ценное для корпораций, поскольку привязывают к сервису, дают возможность делать новые маркетинговые предложения и даже передавать данные сторонним лицам с целью личной выгоды.

В статье рассказываю, в чем потенциальная опасность некоторых ресурсов и на основе своего опыта рекомендую замену. В качестве альтернативы предлагаю преимущественно open source решения с прозрачными сценариями и использованием разных данных пользователя.

Например: NewPipe и FreeTube вместо YouTube, Matrix вместо WhatsApp и Telegram, DuckDuckGo вместо Google.

Читать далее
Всего голосов 36: ↑32 и ↓4+32
Комментарии64

Сколько soft skills освоить для успешной карьеры

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

Впервые я задумался об этаком “soft skills starter pack” около года назад. Гугление дало списки из 10-15-20 навыков без пояснений, как их внедрять, и почему список именно такой. Апофеозом для меня стала книга “12 soft skills для 21 века”, которая является кратким изложением 12 других книг. 

С трудом верится, что все эти навыки нужны разом. Если на собеседовании я буду проверять кандидата на 15 навыков, я вообще кого-то найму? За сколько лет я разовью их сам? Эмоциональный интеллект – пару лет? Системное мышление – еще пару лет? Окей, хотя бы со скольки навыков я могу считать себя пригодным к работе в команде? А к роли лидера? В общем, "программу-минимум" я тогда не нашел.

Но как тимлид я слышу множество карьерных историй: на собеседованиях, на 1-to-1 с коллегами, просто консультируя пришедшего с вопросом – везде я узнаю истории успехов и ошибок. А в обмен я стараюсь дать структурированную и понятную обратную связь. Постепенно из этих историй и обратных связей сложился набор минимально необходимых soft skills. Они будут полезны хоть инженеру, хоть лидеру. Вообще говоря, они будут полезны не только IT-специалисту и не только в карьере.

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

Давайте разбираться
Всего голосов 19: ↑16 и ↓3+14
Комментарии11

Как у нас в Slack проектируются API

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

Более пяти лет назад мы запустили платформу Slack, предоставив разработчикам легкий способ создавать приложения в Slack и публиковать их в нашей App Directory. Сегодня миллионы пользователей переносят свою работу в Slack, и их приложения, создаваемые более чем 885 000 активными разработчиками, действующими на этой платформе – залог дальнейшего улучшения совместной работы в Slack. 

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

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

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

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии4

Коаны Гита

Время на прочтение3 мин
Количество просмотров38K
По мотивам «Коанов Вима».

Тишина
Что-то одно, но хорошо
Только богам
Хобгоблин
Длинное и короткое

Тишина


Python-программистка передала свой файл ~/.gitconfig мастеру Гиту. Среди строчек кода было следующее:

[alias]
; Явное лучше подразумеваемового. Если мы хотим выполнить слияние,
; нам следует сделать это самим.
pull = pull --ff-only

Мастер Гит кивнул. «git pull origin master», — сказала программистка.
Читать дальше →
Всего голосов 153: ↑130 и ↓23+107
Комментарии52

Ontol: 58 бесплатных онлайн-курсов по кибербезопасности, криптографии и blockchain от лучших университетов мира

Время на прочтение4 мин
Количество просмотров25K
image

Реклама платных курсов лезет из всех щелей, но мало кто знает, что есть тонны бесплатных онлайн-курсов и, порой, более качественных, чем платные.

Предлагаю вашему вниманию 58 бесплатных онлайн-курсов от ведущих университетов мира. (Если есть чем дополнить — пишите в личку или комментарии)
Читать дальше →
Всего голосов 31: ↑27 и ↓4+26
Комментарии0

Песочница для Nginx

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

Как-то я болтала с приятелем о том, как было бы здорово, если бы был такой сайт-песочница, где бы можно было просто скопировать-вставить конфиг Nginx-а и протестировать его. И я поняла, что это не так уж сложно сделать, поэтому погрузилась в тему и сделала: nginx-playground.wizardzines.com.


screenshot

Читать дальше →
Всего голосов 12: ↑10 и ↓2+12
Комментарии21

Ультимативный гайд по созданию CI/CD в GitLab с автодеплоем в Kubernetes на голом железе всего за 514$ в год ( ͡° ͜ʖ ͡°)

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

Шел 2021 год, русские хакеры продолжают переигрывать и уничтожать загнивающий Запад, вмешиваясь в выборы, ломая фейсбуки и пентагоны. Тем временем на Хабре выходят статьи о создании неубиваемых Kubernetes-кластеров, которые, по видимому, всех нас переживут. А кто-нибудь подумал о простых пацанах (пацанессах)??? Как быть обычному программисту, который хочет свой небольшой кластер и ламповый CI/CD с автодеплоем приложения, чтобы кенты с района не засмеяли?

Всем привет, меня зовут Алексей и я алкоголик разработчик на Python/Go в Домклик. Сегодня мы будем понижать порог входа в self-hosted Kubernetes и GitLab AutoDevops.

Читать далее
Всего голосов 40: ↑39 и ↓1+40
Комментарии32

Микросервисы глазами аналитика

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

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

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

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии25

Почему принцип программирования на уровне интерфейсов в большинстве случаев ошибочен и приводит к плохой архитектуре

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

(Disclaimer!) Данная точка зрения не претендует на роль абсолютной истины и является лишь результатом моего опыта, чтения, наблюдений и размышлений.

Думаю многие знают или слышали о принципах и советах в стиле "Программируйте на уровне интерфейсов, а не реализаций". Хотя в теории, данный принцип кажется полезным и его аргументация звучит логично, но при более глубоком анализе оказывается, что предпосылки лежащие в его основе не реалистичны. 

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

Читать далее
Всего голосов 117: ↑92 и ↓25+87
Комментарии123

Запросы в PostgreSQL: 7. Сортировка и слияние

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

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

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

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии6

Как посчитать всё на свете одним SQL-запросом. Оконные функции PostgreSQL

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

Я с удивлением обнаружил, что многие разработчики, даже давно использующие postgresql, не понимают оконные функции, считая их какой-то особой магией для избранных. Ну или в лучшем случае «копипастят» со StackOverflow выражения типа «row_number() OVER ()», не вдаваясь в детали. А ведь оконные функции — полезнейший функционал PostgreSQL.
Попробую по-простому объяснить, как можно их использовать.


Читать дальше →
Всего голосов 75: ↑73 и ↓2+71
Комментарии54

Никита Колмогоров, создатель бота Shieldy: «Главный совет: не пилить продукт годами»

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

«Я наполовину разработчик, наполовину предприниматель. Если я могу построить что-то быстрое и эффективное, я делаю это сам», — презентует себя на своем сайте Никита Колмогоров. Летом 2021 года он продал бота-антиспамера за 329 000 $. Покупателем стал криптопроект 1inch.io. На момент сделки у бота было 20 703 474 пользователя в 190 621 чатах. Вместе с тем Колмогоров — автор почти трех десятков других проектов. По просьбе Мегаплана он рассказал об особенностях создания продуктов для Telegram и дал несколько советов начинающим предпринимателям.

Читать далее
Всего голосов 42: ↑20 и ↓22+4
Комментарии24

1982: The Hobbit

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

Вы находитесь в благоустроенном коридоре, похожем на тоннель.

На востоке расположена круглая зелёная дверь.

Вы видите:

    Деревянный сундук.

    Гэндальфа. У Гэндальфа странная карта.

    Торина.

Гэндальф отдаёт вам странную карту.

Торин ждёт.

Читать далее
Всего голосов 50: ↑49 и ↓1+67
Комментарии20

Кент Бек: отец экстремального программирования, паттернов проектирования, JUnit и TDD

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

Кент Бек сделал для IT столько, что его имя упоминается на Хабре в сотнях разных постов. Но при этом до сих пор не было хабрапоста о нём самом. Исправим это упущение.

Во вторник Кент выступит на нашей онлайн-конференции по тестированию Heisenbug. Там этот человек, когда-то популяризовавший подход TDD, поговорит о куда более новой концепции TCR («Test && Commit || Revert»). То есть даже к 60 годам он не стал жить былыми заслугами, а продолжает предлагать новое.

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

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии8

Микросервисы. Не всё то золото, что хайп

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

Привет, меня зовут Владимир Кустиков, я — архитектор решений в e-Legion. И сегодня я хотел бы рассказать вам про микросервисы.

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

Читать далее
Всего голосов 66: ↑61 и ↓5+68
Комментарии109

Информация

В рейтинге
2 426-й
Зарегистрирован
Активность