Pull to refresh
8
0

Человек

Send message

Гайд по Scratch для детей: как запустить игру на Android

Level of difficulty Easy
Reading time 7 min
Views 2.5K

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

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

Делаем плавную прокрутку для сторонней мыши в macOS

Level of difficulty Easy
Reading time 7 min
Views 8.7K

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

Читать далее
Total votes 32: ↑30 and ↓2 +28
Comments 13

Построение архитектур для обработки данных в режиме реального времени при помощи Apache Kafka, Flink и Druid

Level of difficulty Hard
Reading time 11 min
Views 7.8K
image

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

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

Но в опенсорсном пространстве есть решение, разработанное в опенсорсе. В сочетании друг с другом Apache Kafka, Flink и Druid, позволяют создать архитектуру для обработки данных, которая работает в режиме реального времени и позволяет исключить все эти этапы ожидания. В этом посте мы исследуем, как комбинация этих инструментов позволяет создавать широкий спектр приложений для обработки данных в режиме реального времени.
Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Comments 0

Продолжаем изучение арбитража криптовалют: прогноз срока жизни оффера

Level of difficulty Hard
Reading time 37 min
Views 2.9K

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

Читать дальше →
Total votes 22: ↑20 and ↓2 +18
Comments 7

Что такое арбитраж? Передовые технологии торговли на примере криптобиржи

Level of difficulty Hard
Reading time 32 min
Views 11K

Благодаря технологии блокчейн, криптовалютам, криптобиржам, приоритеты людей, компаний и даже стран меняются прямо на наших глазах. Один знакомый разработчик из этой сферы однажды сказал мне, что он не возлагает больших надежд на все это, несмотря на то что это перспективно и хорошо оплачивается. Однако присутствует некое чувство неуверенности. "Водопровод, - говорит он, - казалось бы, одна из самых простейших технологий, но как она изменила жизнь. Когда в конце 90-х в моей небольшой деревне в моем доме появилась вода, которую не нужно было добывать большим трудом, жизнь действительно стала на порядок лучше и приятнее." Блокчейн, по его словам, сейчас является чем-то вроде того же водопровода - он обязательно изменит жизнь к лучшему, но сколько труда и времени для этого понадобится?

Читать дальше →
Total votes 33: ↑26 and ↓7 +19
Comments 16

Как написать хороший генератор

Level of difficulty Easy
Reading time 6 min
Views 3.3K

В интернете невероятное количество статей о том "как написать свой генератор на С++20", но почти все они сводятся к новичковым хело вордам и почти ни одной статьи о том как написать хороший генератор. Что ж, это нужно исправлять!

next
Total votes 7: ↑6 and ↓1 +5
Comments 4

Как устроен DEX на OrderBook

Level of difficulty Medium
Reading time 15 min
Views 2.1K

Привет! На связи – Павел Найданов, блокчейн-разработчик в MetaLamp.В этом материале я расскажу o том, как типичный для сферы классических финансов инструмент OrderBook прижился в мире web3.

На протяжении нескольких лет я изучаю тонкости устройства web3 продуктов и собираю ценную информацию для себя и будущих коллег в формате мини-энциклопедии. Вместе с коллегами я готовлю wiki-статьи для нашей бесплатной карты развития по предметке web3. И часть материалов мы решили адаптировать, чтобы сделать мир крипты доступным для более широкого круга читателей. Это вторая статья из цикла, посвященного устройству децентрализованных обменников. В прошлом выпуске мы с коллегами – Алексеем Куценко и Романом Ярлыковым – разбирались в устройстве DEX на AMM с наглядными примерами и расчётами. В этой статье приглашаю рассмотреть альтернативу автоматических маркет-мейкеров – DEX на OrderBook. 

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

Как общаться с ChatGPT с помощью голосовых сообщений в Telegram

Level of difficulty Medium
Reading time 9 min
Views 21K

Пару недель назад я написал бота, который позволяет говорить с ChatGPT с помощью голосовых и текстовых сообщений. Это удобно, потому что не нужно использовать VPN для работы с OpenAI, а про клавиатуру можно забыть вовсе.

В этой статье делюсь пошаговой инструкцией, как реализовать ChatGPT Telegram-бота на NodeJS и задеплоить его на виртуальный сервер. Подробности под катом!
Читать дальше →
Total votes 48: ↑47 and ↓1 +46
Comments 10

Как рассказать о новом функционале и провести демо на английском языке

Level of difficulty Easy
Reading time 4 min
Views 2.9K

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

Предлагаю рассмотреть аутентичные материалы. Меня заинтересовало короткое видео с Томасом Эзаном, Андроид инженером-разработчиком в компании Гугл.  В недавней презентации каналу Android Developers он демонстрирует возможности нового программного пакета TensorFlow Lite и применение интерпретатора API в библиотеке машинного обучения. Разберем это видео с точки зрения структуры, грамматики и интересной лексики.

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

Как рисовать красивые соединения с помощью SVG

Level of difficulty Medium
Reading time 5 min
Views 12K

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

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

Делаем бесконечную рабочую область без Canvas

Level of difficulty Medium
Reading time 6 min
Views 6.3K

Рабочее пространство в нашем приложении представляет собой бесконечную доску, по которой могут перемещаться ноды. Необходимо реализовать масштабирование этого пространства и перемещение по нему. Все это мы делаем без использования Canvas, так как приложение построено на React, в дизайн-системе используется antd, а ноды могут быть огромными формами. Согласитесь, реализовывать такие интерфейсы было бы гораздо сложнее, не будь у нас доступа к нативным средствам HTML-5.

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

Переносим свою картину мира в чат-бота на базе GPT-3

Reading time 4 min
Views 45K

Думаю, все уже наслышаны о потрясающих возможностях ChatGPT и GPT-3, многие уже вдоволь наигрались с ними, а новые стартапы на их основе льются на нас каждый проливным дождём! Возможности ChatGPT в решении некоторых текстовых задач потрясают, порой кажется, что имеешь дело с настоящим разумом.

У меня возникла идея - что если попробовать доучить сеть так, чтобы она имитировала картину мира определенного человека? (Да, снова Черное Зеркало). Классический подход с pre-prompt для этого не подходит, так как хочется заложить в сеть побольше знаний (а также реально поменять веса связей), поэтому будем использовать fine-tune (дообучение на небольшом датасете и небольшом числе итераций). Такая опция доступна пользователям openAI за небольшую плату ($0.5-1 в моих примерах).

В этой статье я покажу как можно обучить GPT-3 (в версии davinchi-003) на своей картине мира и засунуть её внутрь телеграм-бота, потратив на всё всего несколько долларов.

Код бота доступен в репозитарии.

Читать далее
Total votes 43: ↑42 and ↓1 +41
Comments 31

Telegram WebApps. Как встроить веб-приложения в чат-бота?

Reading time 5 min
Views 75K

Относительно недавно команда Telegram выпустила обновление, с которым появилась возможность встраивать в мессенджер веб-приложения. Эта статья — обзор основных моментов внедрения веб-приложениий в телеграм-ботов.

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

Как перестать велосипедить или 4 self-hosted сервиса для начинающего СТО

Reading time 3 min
Views 15K

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

Слезть с велосипеда
Total votes 34: ↑33 and ↓1 +32
Comments 5

Внеочередной урок по Godot 4.0: пиксели и RPG (часть первая, в которой человечек научился ходить)

Reading time 10 min
Views 12K

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

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

Рисуем сову
Total votes 8: ↑8 and ↓0 +8
Comments 6

Создание инициализатора Flutter-проектов. Чисто и SOLIDно

Reading time 9 min
Views 4K

Pet-проект или самописный инструмент помогают решить проблемы, которые возникают в разработке. На примере инициализатора Flutter-проектов рассказываем, как следует подходить к разработке собственной «тулзы» правильно: с SOLID и чистой архитектурой.

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

Как настроить хранение логов кластера Kubernetes в бакете S3 и зачем это нужно

Reading time 13 min
Views 5.3K

Стандартный способ хранения логов Kubernetes на ноде неудобен: память ограничена, данные разбросаны, а многие аналитические инструменты просто не получится применять. Чтобы сделать хранение и работу с логами удобнее для разработки аналитических инструментов, логи можно перенести в бакет объектного хранилища S3.

Меня зовут Илья Нырков, я программист компании VK Cloud Solutions и разработчик облачных решений. На примере нашего облака я расскажу, почему вообще стоит обратить внимание на S3, как перенести и хранить логи кластера Kubernetes в бакет S3 и в чем преимущество этого решения.

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

DDD в Go: натягивание совы на глобус?

Reading time 8 min
Views 14K

Как-то раз я сидел в баре с давним приятелем, с которым раньше мне довелось поработать на поза-поза-позапрошлой работе. Он из сомневающихся по поводу перехода на Go, ярый приверженец своего нынешнего языка. Хочу сказать, что он делает действительно классные вещи, пишет безупречный код, у него есть, чему поучиться. Но к Go у него отношение не слишком позитивное. Как он сказал: “Go — это *****код (плохой код)”. И в качестве одного из аргументов привел то, насколько, по его мнению, криво в Go реализована обработка ошибок. В чем-то он прав — в моем текущем не самом большом проекте на Go конструкция “if err != nil” встречается 1132 раза.


Этот мой приятель, не побоюсь этого слова — адепт DDD (domain driven design). Все, что не относится к DDD, — это, по его мнению, антипаттерн, ад и хаос. Когда я ему рассказал, что у меня есть довольно успешный опыт проектирования по DDD в Go-проектах, он округлил глаза. Да, ответил я, с определенной серией оговорок и компромиссов это работает, и неплохо.


Читать дальше →
Total votes 16: ↑14 and ↓2 +12
Comments 42

Telegram Web Apps (Повторное открытие последней страницы)

Reading time 4 min
Views 12K

15 апреля команда телеграм предоставила нам возможность разрабатывать веб ботов.

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

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

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

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

Как создавать иконки сайтов в 2022 году — всё о favicon

Reading time 9 min
Views 32K

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

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

Статья целиком
Total votes 39: ↑39 and ↓0 +39
Comments 33

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity