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

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

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

Мне кажется, я начал понимать, что ты имела в виду!

Время на прочтение7 мин
Количество просмотров33K
Опечататься дело нехитрое; опечататься в поисковом запросе так и вдвойне. Почитай все большие веб-поисковики сегодня умеют корректировать ошибки в ключевых словах во-1х и подсказывать запросы во-2х; вслед за ними того же хочется поискам поменьше. Обе штуки можно ловко реализовать при помощи открытого поисковика по кличке Sphinx; в этом посте расскажу, как конкретно.

Ну, за did you mean («что ты имела в виду») и прочий query completion («уж не Васю ли ты ищешь»).
Читать дальше →
Всего голосов 84: ↑75 и ↓9+66
Комментарии24

Большая подборка открытых API

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

Делимся ссылками на примеры API разных стилей, которое можно подёргать в режиме онлайн прямо на сайтах. Также к большинству ссылок есть документация.

Читать далее
Всего голосов 17: ↑13 и ↓4+10
Комментарии3

Фасетные фильтры: как готовить и с чем подавать

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

О чем речь 


Как сделать фасетный поиск в интернет-магазине? Как формируются значения в фильтрах фасетного поиска? Как выбор значения в фильтре влияет на значения в соседних фильтрах? В поиске ответов дошел до пятой страницы поисковой выдачи Google. Исчерпывающей информации не нашел, пришлось разобраться самому. Статья описывает:

  1. как реагирует UI, когда пользователь использует фильтры;
  2. алгоритм формирования значений фильтров; 
  3. шаблоны запросов и структуры индекса ElasticSearch с пояснениями.

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


Читать дальше →
Всего голосов 4: ↑3 и ↓1+5
Комментарии7

Что бывает, когда в настольный футбол играют разработчики: проапгрейдили не только игру, но и корпоративную культуру

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

Теперь голы считаются автоматически, соперника вызывают на бой через телеграм-бота, а система оповещает звуками «Мортал Комбат» Fight! Расскажу, как провели цифровую трансформацию настольного футбола.

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

История одного домашнего дата-центра

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

История о создании домашнего дата-центра от 0 серверов (только посадочная) до сотни (ещё нет) за 1.5 года. Через интернет в новостройке, перепрошивку UPS и собственные стойки для десктопного железа к балансу отказоустойчивости с ценой и планам на будущее.

Вся история
Всего голосов 91: ↑89 и ↓2+108
Комментарии59

Одна игра, один разработчик, шесть платформ

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

Недавно компания Valve объявила о том, что Counter-Strike 2 не будет поддерживать macOS. Я инди-разработчик, в одиночку выпустивший игру с поддержкой macOS, поэтому поначалу меня удивило это решение Valve. Но вспомнив о своём собственном опыте поддержки шести платформ, я начал понимать точку зрения компании.

Думаю, будет полезно написать пост с перечислением полученных мной уроков. Надеюсь, он поможет другим инди-разработчикам в выборе поддерживаемых платформ. Небольшое предисловие: моя собственная игра Industry Idle в основном основана на веб-технологиях (WebGL + TypeScript). Это означает, что поддержка разных платформ — относительно простая задача, мне не приходится иметь дело с платформенными графическими API (DirectX, OpenGL, Vulkan, Metal) и в основном игра существует в браузерной «песочнице». Это практически идеальная ситуация для кросс-платформенной поддержки. Тем не менее, меня постоянно удивляют и одолевают проблемы, связанные с отдельными платформами.

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

Детектор Судного дня или как я разработал датчик радиации для Home Assistant

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


С чего всё началось


В начале 2023 года, во многих СМИ появилась информация, что стрелки часов Судного дня перевели на десять секунд. Сейчас они замерли на отметке 90 секунд до полуночи, и теперь часы показывают самый высокий уровень риска ядерной катастрофы за всю историю проекта. Эта информация побудила меня создать устройство для мониторинга фоновой радиации — мог бы написать я, но на самом деле, всё началось гораздо раньше и об этом расскажу далее.
Читать дальше →
Всего голосов 34: ↑33 и ↓1+44
Комментарии31

Как мы себя обманываем, только бы продолжать пользоваться Golang

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

За два года с тех пор, как я опубликовал статью I want off Mr Golang's Wild Ride, она вновь и вновь всплывала на Reddit, Lobste.rs, на HackerNews и в других местах.

Всякий раз дискуссия выходит к одним и тем же ответам:

Go!
Всего голосов 124: ↑116 и ↓8+143
Комментарии369

Кейпад для управления умным домом — проект выходного дня

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

После апгрейда обычного дома до «полуумного» появилась очень простая, но неочевидная проблема в виде удобства управления домом. У тебя может быть самый крутой в мире дашборд с кучей кнопок, датчиков и остальных интересных элементов, но управлять всем этим с телефона банально неудобно, так как требует воспроизвести целый список действий (найти его, взять, разблокировать, открыть приложение дома и т. д.). Но недавно мне попался интересный проект настольного макрокейпада, который, как мне кажется, идеально подходит для быстрого управления некоторыми функциями дома.

О сборке и настройке макрокейпада можно почитать далее в статье.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+51
Комментарии59

Разговоры с кроватью, про Яндекс Алису и умный дом Home Assistant

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

В прошлой статье мы с вами добавляли голосовое управление кофеварке Jura. Но это была лишь тренировка в ожидании доставки по-настоящему космического устройства - умной кровати Ergomotion от Аскона.

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

Собственная копия YouTube

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


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

В итоге получается, что мы делаем нечто вроде маленькой копии YouTube, только на своём сервере. В определённом смысле это архивная копия на случай удаления видеоконтента из-за цензуры YouTube. Или на случай, если серверы YouTube станут недоступны с территории РФ из-за какого-то «технического сбоя».
Читать дальше →
Всего голосов 79: ↑78 и ↓1+102
Комментарии73

Ката программиста — путь к недостижимому идеалу. Или как я упал с велосипеда этим летом

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

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

Изнуряющие тренировки отнимают много времени и сил. Зато потом, когда понадобится применить своё искусство,  тело сделает всё само — «на автомате». А ценные ресурсы мозга будут освобождены для решения более важных задач — стратегического планирования, принятия ключевых решений, поиска новых возможностей. И, конечно, для творчества.

А что же программисты?...

Читать далее
Всего голосов 31: ↑29 и ↓2+35
Комментарии26

Альтер эго. Как создать виртуальную личность и распознать фейк

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


Я люблю общаться с ботами и владельцами фейковых аккаунтов в социальных сетях. В большинстве случаев они довольно милые и относительно безобидные. Порой даже интересно угадывать, что именно они попытаются впарить мне в очередной раз: тотализаторы, БАДы, лохотрон с криптой или недвижимость в Дубае? На днях я несколько часов обстоятельно общался с одной обаятельной девушкой, пока по ряду характерных признаков не убедился в том, что этот аккаунт — тоже фейковый. Признаюсь, раскусить подделку в этот раз было непросто: создатели липовых учёток научились придавать им определённую правдоподобность. Любопытства ради я захотел разузнать, как сейчас создаются виртуальные личности, какой софт и технологии для этого используются и существуют ли способы с ходу определить, что перед тобой не живой человек, а подделка?
Читать дальше →
Всего голосов 47: ↑45 и ↓2+63
Комментарии23

Как я сделал абсолютно бесшумный компьютер

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


Почти три десятилетия я пытаюсь делать мои компьютеры тише. Жидкостное охлаждение собственного изготовления, гидродинамические подшипники с магнитной стабилизацией, акустические демпферы, силиконовые амортизаторы – я использовал всё, что можно представить. И на прошлой неделе я, наконец, сумел построить совершенно бесшумный компьютер. Без лишних слов, знакомьтесь: Streacom DB4. Корпус размером 26 x 26 x 27 см без единого вентилятора. У него вообще нет никаких движущихся частей. Полная тишина, 0 дБ.

Если снять с него верхнюю и четыре боковых стенки (штампованный алюминий, толщина стенки 13 мм), вы увидите минимальную раму и центральную монтажную пластину для материнской платы формата mini-ITX (порты ввода/вывода смотрят вниз, сквозь дно корпуса).
Читать дальше →
Всего голосов 130: ↑119 и ↓11+108
Комментарии329

Бот-сказочник, или как генерировать истории с помощью ChatGPT и Telegram

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

Представьте, что вам нужно написать художественный роман. У вас есть ключевые идеи, продуманы основные повороты событий, но нет возможности объединить все в одну историю.

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

Такая же проблема может встретиться, например, если нужно написать пост или оформить описание рабочего проекта. Если вам это знакомо, то просто автоматизируйте процесс. Можно написать специального бота, который будет из тезисов генерировать цельную историю с помощью ChatGPT, а после — записывать в Notion. Реализовать такой проект и задеплоить его на сервер несложно — посмотрим, как это сделать.
Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии3

Как открыть портал наружу: самый полный гайд по VPN

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

Выбор, установка и настройка VPN. Какие VPN заблокированы на территории РФ. Рабочие VPN в России в 2023 году с оплатой криптой. Как ускорить VPN. Как узнать, работает ли шифрование трафика

Читать далее
Всего голосов 22: ↑16 и ↓6+13
Комментарии32

Готовим микрофронтенды на чистом JS без фреймворков

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

Привет, Хабр! Меня зовут Евгений Лабутин, я разработчик в МТС Digital. Сегодня я расскажу вам о своем рецепте приготовления микрофронтендов без использования каких либо фреймворков. Ведь такие фреймворки как Webpack Module Federation, Single-SPA, SystemJS и подобные вам просто не нужны для написания микрофронтендов, ровно так же как вам не нужен jQuery для написания современных фронтендов. Ведь все необходимое для разработки и работы Микрофронтендов уже встроено во все современные браузеры. Интересно? Добро пожаловать в статью.

Читать далее
Всего голосов 20: ↑14 и ↓6+12
Комментарии21

JavaScript повсюду или почему веб-технологии захватили мир

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

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

Пробежимся галопом по истории интернета, перемоем косточки фронтендерам и придем к неутешительному заключению. Буду ругать и хвалить, но выводы делать лишь вам. Хотя и не надеюсь кого-то в чем-то убедить. Добро пожаловать под кат!

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

Долгожданная новинка среди мини-ПК: обзор Beelink GTR7 с процессором Ryzen 7 7840HS

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

Многие ожидали новинок на процессорах Ryzen 7040 и я в том числе. Beelink GTR7 и GTR7 Pro — это первые ласточки компании с новыми процессорами. В их арсенале новые процессорные ядра и новая архитектура для встроенной графики. Многие уже представляют, что может новая встройка, т.к. были и утечки, и тесты разных устройств, которые дают представление об уровне производительности данных APU. Кроме новых процессоров, Beelink решили использовать испарительную камеру в качестве одного из элементов системы охлаждения.

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

Как мы учились обходить блокировки VPN в Китае, чтобы быть готовыми к РКН

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

В понедельник 7 августа пользователи VPN-сервисов из России заметили проблемы с подключением к серверам. По собранной в соцсетях и Телеграме информации, ограничения затронули наиболее распространенные VPN-протоколы OpenVPN,  L2TP, PPTP и WireGuard. На сбои в работе VPN-сервисов жаловались клиенты мобильных операторов — Мегафон, МТС, Билайн, Tele2, Yota, Тинькофф Мобайл. 

В этот же день на Xeovo обвалилось огромное количество тикетов, но к вечеру, когда инеформация о новой волне блокировок VPN ещё продолжала расходиться по рунету, и СМИ ещё собирали статистику, которую мы здесь приводим, мы уже закрыли большую часть из них и соединение наших клиентов было восстановлено. Как нам это удалось? Дело в том, что весь последний год мы посвятили борьбе с Великим Китайским файерволлом, а именно — с блокировками VPN в Китае.

Читать далее
Всего голосов 122: ↑119 и ↓3+153
Комментарии114

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность