Как стать автором
Обновить
-2
1.1
Лекс Белй @Warrangie

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

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

Все, что нужно знать для разработки с использованием LLM

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

Цель данной статьи — простым языком объяснить ключевые технологии, необходимые для начала разработки приложений на основе LLM. Oна подойдёт как и разработчикам, так и специалистам по машинному обучению, у которых есть базовое понимание концепций и желание заглянуть поглубже. Также я прикрепил множество полезных ссылок для дальнейшего изучения. Давайте начинать!

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

Про FPV-квадрокоптеры. Введение

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

Не так давно случайно от человека, снимавшего на моих глазах видео с квадрокоптера DJI Mavic услышал про FPV, что он, мол, хочет такой себе квадрокоптер купить.

Почему, спрашиваю, у тебя же есть уже аппарат для съемки, чего не хватает? Что, там у FPV камера лучше?

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

Я и до этого заметил во время той видеосъемки, что управлять‑то DJI Mavic несложно. Но вот управлять тонко, точно вовсе не так уж и просто.

Слова того человека о точном маневрировании с квадрокоптером FPV мне понравились и я начать курить ту тему... Очнулся уже будучи владельцем нескольких квадрокоптеров FPV.

Поразило 2 аспекта: как это удивительно дешево (ну для опытного ИТ‑разработчика с соответствующей зарплатой) и как же трудно научиться им управлять (зато когда научишься, то ого‑го).

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

Как мы нарисовали на карте несколько тысяч интерактивных объектов без вреда для перформанса

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

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


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


Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии30

Как я использую AirDrop вместо Тиндера

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


В устройствах Apple есть прекрасная функция Airdrop — она сделана для пересылки данных между устройствами. При этом никакой настройки и предварительного сопряжения устройств не требуется, все работает из коробки в два клика. Для передачи данных используется надстройка над Wi-Fi, и поэтому данные передаются с огромными скоростями. При этом используя некоторые трюки, можно не просто пересылать файлы, но и узнать телефонный номер человека, находящегося с тобой в одном вагоне метро.

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

Под катом я расскажу за всю хурму.
Компания RUVDS.COM не несёт ответственности за повторение действий описанных в данном материале.
Читать дальше →
Всего голосов 308: ↑294 и ↓14+280
Комментарии174

Нескучный матчмейкинг без дисбаланса и очередей: практическое руководство

Время на прочтение7 мин
Количество просмотров11K
Матчмейкинг является главной составляющей большинства современных многопользовательских игр. Стоит разработчику несерьёзно к нему отнестись, как окажется, что новички регулярно сталкиваются в бою с профессионалами, а некоторым игрокам приходится ждать вечность только для того, чтобы попасть в матч. Кроме того, его сложно тестировать и анализировать перед запуском, ведь необходимо учесть множество факторов. Как игроки распределяются территориально? Как долго они готовы ждать своей очереди? Какой пинг оптимален для комфортной игры? Эти и другие факторы влияют на качество работы матчмейкинга.

image

Под катом мы сначала обсудим общую практику подбора битв в мультиплеерных играх, а затем поделимся собственным опытом организации матчмейкинга для War Robots.
Читать дальше →
Всего голосов 31: ↑26 и ↓5+21
Комментарии15

Основы DevOps. Вхождение в проект с нуля

Время на прочтение16 мин
Количество просмотров29K
В ноябре 2018 года в ЛитРес создали отдел информационного обеспечения и пригласили руководить Андрея Юмашева. Последний год отдел помогает компании работать и развиваться и держит под контролем всю инфраструктуру. Но так было не всегда. Перед тем, как наладить работу, Андрей столкнулся с руинами: полуживой Nagios, условно живой Cacti и коматозный Puppet, мертвая Вики на 120 страниц, несвязные таблицы с задачами и списком железа, устаревшая архитектура, 340 бездействующих ядер, 2 Тбайта оперативной памяти и 17 Тбайт дискового пространства, которые почему-то не были записаны в инвентарных таблицах. Планы, которые не работают, сроки, которые срываются, рабочее окружение и инструменты, которых нет — все это ждало Андрея в новом проекте.



На DevOpsConf 2019 Андрей выступил с докладом, в котором на живых примерах показал, что стоит, а что не стоит делать, когда входишь в проект, которого еще не видел или плохо знаешь. Под катом дополненная версия рассказа — как правильно анализировать спектр проблем и выстроить план деятельности, как правильно рассчитать KPI и когда следует вовремя остановиться.
Всего голосов 55: ↑47 и ↓8+39
Комментарии15

Небезопасные функции PHP

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

Холдинг Modesco — это более 300 инфосайтов и 5 крупных Интернет-сервисов. Проекты регулярно покупаются и продаются. Как вы понимаете, поддерживать качество кода на высоком уровне в данной ситуации физически невозможно. Да и основное внимание программистов, как правило, сосредоточено на самих сервисах. Взломы, shell, заражения сайтов прочими вредоносными штуками… Все это наносит ощутимый вред пользователям и компании. Чтобы избежать этого, частенько приходится искать довольно нестандартные способы для уменьшения рисков.


cat

Читать дальше →
Всего голосов 34: ↑24 и ↓10+14
Комментарии20

Пишем клон движка Doom: чтение информации карт

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

Введение


Цель этого проекта — создание клона движка DOOM, использующего ресурсы, выпущенные вместе с Ultimate DOOM (версия со Steam).

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

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

Вот список ресурсов и ссылок.

Книга Game Engine Black Book: DOOM Фабьена Санглара. Одна из лучших книг по внутреннему устройству DOOM.

Doom Wiki

Исходный код DOOM

Исходный код Chocolate Doom
Читать дальше →
Всего голосов 37: ↑37 и ↓0+37
Комментарии5

Время высокой точности: как работать с долями секунды в MySQL и PHP

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


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


В этой статье я расскажу про способы использования времени с дробными частями секунды в MySQL и PHP. Она задумывалась как туториал, поэтому материал рассчитан на широкий круг читателей и местами повторяет документацию. Основную ценность должно представлять то, что я собрал в одном тексте всё, что нужно знать для работы с таким временем в MySQL, PHP и фреймворке Yii, а также добавил описания неочевидных проблем, с которыми можно столкнуться.


Я буду использовать термин «время высокой точности». В документации MySQL вы увидите термин “fractional seconds”, но его дословный перевод звучит странно, а другого устоявшегося перевода я не нашёл.

Читать дальше →
Всего голосов 60: ↑59 и ↓1+58
Комментарии24

Создание простой кликер-игры с нуля

Время на прочтение4 мин
Количество просмотров71K
В последние несколько лет набирают большую популярность игры такого жанра, как «кликеры». Мне самому очень интересно играть в них, но не менее интересно создавать игру — кликер самому. Благодаря такому движку как Unity, создать свой шедевр не составит труда даже простому новичку. Давайте перейдем к делу.

Что нужно сделать?


  1. Подумать, почему и на что мы должны кликать?
  2. Что должно произойти, когда мы кликнем?
  3. Что должно произойти, если не кликнем?

Как ответил я на эти вопросы:

  1. Мы должны кликать в любое место на экране.
  2. При клике должен смениться объект.
  3. При игнорировании — проигрыш.

О чем будет игра?


Игроку нужно вовремя выбрать либо меч, либо щит, в зависимости от того, что будет падать сверху. То есть, падает меч — выбираем меч, падает щит — выбираем щит. При неправильном выборе игрок просто проиграет. На словах всё довольно просто, а в реализации еще проще.
Читать дальше →
Всего голосов 22: ↑16 и ↓6+10
Комментарии4

О сетевой модели в играх для начинающих

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

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

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

В целом существует два основных типа сетевых архитектур: peer-to-peer и клиент-серверная. В архитектуре peer-to-peer (p2p) данные передаются между любыми парами подключенных игроков, а в клиент-серверной архитектуре данные передаются только между игроками и сервером.

Хотя архитектура peer-to-peer по-прежнему используется в некоторых играх, стандартом является клиент-серверная: она проще в реализации, требует канал меньшей ширины и облегчает защиту от читерства. Поэтому в этом руководстве мы сосредоточимся на клиент-серверной архитектуре.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии6

Улучшаем профиль в LinkedIn перед поиском работы

Время на прочтение3 мин
Количество просмотров119K
На момент написания статьи, в социальной сети LinkedIn размещено порядка 30 миллионов вакансий от 20 миллионов компаний по всему миру. Не удивительно, что 90% рекрутеров используют LinkedIn как один из основных ресурсов поиска кандидатов.

Правильно оформленный LinkedIn профиль поможет привлечь внимание рекрутеров к вашей кандидатуре. Совместно с командой экспертов по поиску работы за рубежом Relocate.me, мы подготовили короткий гайд по оптимизации профиля LinkedIn перед поиском работы.


Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии31

Предварительная загрузка в PHP 7.4

Время на прочтение5 мин
Количество просмотров14K
Перевод данной статьи подготовлен специально для студентов курса «Backend разработчик на PHP».



В PHP 7.4 добавлена предварительная загрузка — возможность, которая позволяет значительно повысить производительность кода.

О предзагрузке в двух словах.

  • Для предварительной загрузки файлов вам потребуется написать отдельный PHP-скрипт.
  • Этот скрипт выполняется однократно при запуске сервера.
  • Все предварительно загруженные файлы доступны в памяти для всех запросов.
  • Изменения, внесенные в исходный файл, не подействуют, пока вы не перезапустите сервер.

Поговорим о новой возможности подробнее.

Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии15

Солнечная электростанция на дом 200 м2 своими руками

Время на прочтение15 мин
Количество просмотров165K
Частенько в сети проскакивают сообщения о борьбе за экологию, развитие альтернативных источников энергии. Иногда даже проводят репортажи о том, как в заброшенной деревне сделали солнечную электростанцию, чтобы местные жители могли пользоваться благами цивилизации не 2-3 часа в сутки, пока работает генератор, а постоянно. Но это всё как-то далеко от нашей жизни, поэтому я решил на своем примере показать и рассказать, как устроена и как работает солнечная электростанция для частного дома. Расскажу обо всех этапах: от идеи до включения всех приборов, а также поделюсь опытом эксплуатации. Статья получится немаленькая, поэтому кто не любит много букв могут посмотреть ролик. Там я постарался рассказать то же самое, но будет видно, как я все это сам собираю.


Всего голосов 90: ↑90 и ↓0+90
Комментарии525

Создаю глобальную базу знаний по элементам питания

Время на прочтение2 мин
Количество просмотров27K
Тестирую элементы питания на профессиональном оборудовании. Цель охватить большую часть рынка элементов питания Европы и России.

На данный момент протестированы более 230 аккумуляторов и батареек. Сделано более 1000 тестов. Израсходовано 4 ящика батареек и несколько месяцев жизни.

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


Читать дальше →
Всего голосов 139: ↑139 и ↓0+139
Комментарии81

Гигабитный линк на 3 километра на лазерных модемах

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


TL;DR В статье описывается наш опыт построения беспроводного соединения на расстоянии 3 километра с помощью лазерных модемов Lantastica TZR без использования радио. Вывод: это действительно работает, реальная ширина канала ~950Mbit/s в дуплексе при задержках <1мс.

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

Мы на практике пройдем все шаги по настройке лазерного линка: от монтажа оборудования на крыше до настройки и тестирования полосы пропускания и задержек.

Основные фичи лазерного модема:

  • Не использует радиочастоты — данные передаются с помощью лазерного луча в невидимом глазу диапазоне 780~850 нм. Не создает радиопомех, не требует разрешение на использование радиочастот
  • Низкие задержки — по сравнению с WiFi оборудованием лазерные модемы имеют задержки сравнимые с кабельным подключением.
  • Сложнее перехват данных — радиомосты легко прослушивать без нарушения сигнала. Перехватить трафик лазерного моста практически невозможно без нарушения соединения.
  • Скрытность — лазерный линк сложно обнаружить из-за узконаправленного луча. Радио линк легко обнаружить даже на значительном удалении от антенн.
Читать дальше →
Всего голосов 166: ↑166 и ↓0+166
Комментарии284

Тестирование LED-панелей 60x60

Время на прочтение3 мин
Количество просмотров39K
Я протестировал огромное количество светодиодных ламп, но светодиодное освещение это не только лампы. Светодиодные светильники для потолков Armstrong (квадраты 60x60 сантиметров) сейчас используются повсеместно и они, точно так же, как светодиодные лампы, бывают хорошими и не очень, а реальные их параметры не всегда соответствуют тому, что указано на упаковке.

Я провёл испытания шести таких светильников пяти производителей.

Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии86

Как прийти в небо и стать пилотом

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


Привет! Сегодня я расскажу о том, как можно прийти в небо, что нужно для этого сделать, сколько оно все стоит. Также поделюсь своим опытом обучения на частного пилота в Великобритании и развею некоторые мифы, связанные с авиацией. Под катом много текста и фоточек :)

Читать дальше →
Всего голосов 134: ↑127 и ↓7+120
Комментарии171

Асинхронное программирование (полный курс)

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

Методы асинхронного программирования


Асинхронное программирование за последнее время стало не менее развитым направлением, чем классическое параллельное программирование, а в мире JavaScript, как в браузерах, так и в Node.js, понимание его приемов заняло одно из центральных мест в формировании мировоззрения разработчиков. Предлагаю вашему вниманию целостный и наиболее полный курс с объяснением всех широко распространенных методов асинхронного программирования, адаптеров между ними и вспомогательных проемов. Сейчас он состоит из 23 лекций, 3 докладов и 28 репозиториев с множеством примеров кода на github. Всего около 17 часов видео: ссылка на плейлист.

Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии17

Знакомство с Python для камрадов, переросших «язык A vs. язык B» и другие предрассудки

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

Для всех хабравчан, у которых возникло ощущение дежавю: Написать этот пост меня побудили статья "Введение в Python" и комментарии к ней. К сожалению, качество этого "введения" кхм… не будем о грустном. Но ещё грустнее было наблюдать склоки в комментариях, из разряда "C++ быстрее Python", "Rust ещё быстрее C++", "Python не нужен" и т.д. Удивительно, что не вспомнили Ruby!


Как сказал Бьярн Страуструп,


«Есть всего два типа языков программирования: те, на которые люди всё время ругаются, и те, которые никто не использует».

Добро пожаловать под кат всем, кто хотел бы познакомиться с Python, не опускаясь при этом до грязных ругательств!

Читать дальше →
Всего голосов 88: ↑83 и ↓5+78
Комментарии146
1
23 ...

Информация

В рейтинге
1 257-й
Откуда
Минск, Минская обл., Беларусь
Зарегистрирован
Активность