Pull to refresh
Козлов Василий Иосифович@saintbyteread⁠-⁠only

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

Send message

Пишем приложение на Mi Band 7 с сервисной частью

Level of difficultyMedium
Reading time6 min
Reach and readers44K

Недавно я купил себе Mi band 7, по началу хотел купить 6-ую версию, пока не узнал, что на 7-ой обновилась операционная система и теперь она поддерживает установку приложений. Да, официально они об этом не заявили, но умельцы уже сделали множество приложений. Они ставят их как циферблаты, и это вполне обычные приложения. Но все эти приложения работают только локально на самом MiBand 7, не имея возможности взаимодействовать ни с телефоном, ни с интернетом. Я углубился в байткод приложения и документации по ZeppOS чтобы найти способ создавать приложения, взаимодействующие с интернетом, в этой статье я опишу свой путь. В итоге у меня получилось сделать запрос в интернет с часов и даже запустить мост для отладки приложений. 

Читать далее

Рассуждение на тему, какую базу данных выбирать

Reading time9 min
Reach and readers148K

Эта статья для вас, если вы:


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

Моя статья не для вас, если вы:


  • хорошо умеете готовить свою любимую БД, оптимизировать индексы, настраивать и всякое такое;
  • имеете в штате хорошего специалист, который сможет аргументировано выбрать нужный вашему проекту вариант. специалист должен быть действительно хорошим, а не «экспертом на диване»;
  • обслуживаете проект с так называемым «big data», то есть у вас огромные базы, десятки или сотни серверов в кластере и всякое такое — ну у вас как бы должен быть в штате один или несколько специалистов.

О чем пойдет речь в статье?


Я разберу в своей статьи некоторые типичные и не очень варианты выбора баз данных, а если быть более точным — подходы к выбору. Когда следует остановится на том, что используют большинство, а когда можно и задуматься над новым и неизведанным. Я опишу СУБД MySQL, PostgreSQL, MongoDB, Redis, CouchDB/PouchDB и упомяну о Aerospike с Tarantool, парочку других — но в некоторых моментах конкретный выбор не настолько принципиален. Надо понимать, что лучше изначально правильно спроектировать структуру данных, чем выбрать СУБД, а потом уже пытаться придумывать, что в ней собственно хранить.
Итак, начнем.
Читать дальше →

Как получить радиолюбительский позывной в 2024 году

Level of difficultyEasy
Reading time7 min
Reach and readers38K

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

Читать далее

От резюме до оффера. Инструкция по процессу поиска работы

Level of difficultyEasy
Reading time6 min
Reach and readers9.2K

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

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

Читать далее

Как обойти фильтры на hh.ru и сделать ваше резюме магнитом для рекрутеров

Level of difficultyEasy
Reading time5 min
Reach and readers32K

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

Читать далее

pico-xt — старая добрая PC/XT на Мурмуляторе

Level of difficultyEasy
Reading time2 min
Reach and readers3.1K

Эмуляторов IBM PC/XT в сети навалом, но для Мурмулятора (https://murmulator.ru) пока есть только один: https://github.com/xrip/pico-xt.

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

Читать далее

NFC-видеотека для моих детей

Level of difficultyMedium
Reading time9 min
Reach and readers4.7K

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

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

Это заставило меня задуматься: почему бы не объединить новое и старое? Я хотел, чтобы у сына была более активная роль в выборе того, что он хочет посмотреть, несмотря на цифровой формат.

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

Еще один способ передачи данных по радиоканалу

Level of difficultyMedium
Reading time12 min
Reach and readers15K

Эта статья написана по мотивам вот этой. Чтобы повторить успех к имеющейся Baofeng uv-5r была приобретена Quansheng uv-k5, а потом и ещё одна uv-k5, потому что uv-5r очень долго активировал функцию VOX. Кейс очень интересный, но практически использовать его тяжеловато из-за низкой скорости передачи. Ниже описана попытка избавиться от этого недостатка.

Читать далее

Эмпатия — самый простой способ договориться с кем угодно, о чем угодно

Reading time6 min
Reach and readers6.3K

• Что считать эмпатией, а что нет?
• Как на физиологическом уровне работает эмпатия?
• Как тренировать эмпатию и использовать в общении?

Читать далее

Исследование влияния сопроводительного письма на приглашение к собеседованию. Или как я сделал 1000 откликов на вакансии

Level of difficultyEasy
Reading time5 min
Reach and readers34K

Однажды понадобилось мне заняться поиском работы и, вдруг, вспомнил, что думал проверить одно утверждение от HR в разных статьях: "Пишите сопроводительные письма". Нужно их писать или нет, я решил проверить, совместив сразу полезное с полезным. В этой статье покажу вам аналитику, которую получилось собрать и результаты моего исследования, и так же расскажу несколько личных интересных рассказов о своём опыте собеседований.

Читать далее

Скачать (,) нельзя платить или как я делал бэкап данных из облака

Level of difficultyMedium
Reading time11 min
Reach and readers2.3K

Есть какое то количество фото и видео в Google Photos или Yandex Диск и место в облаке постепенно заканчивается, особенно если вы снимаете много контента в 4К, либо активно делаете снимки.

Цель: Автоматизировать процесс скачивания большого количества файлов из вашего облака на ваш локальный диск. Автоматически отсортировать файлы по годам, месяцам и даже дням. Скачать все 4К видео и конвертировать их в 1080p 60к/c без использования видеоредактора.

Звучит как какой то сон? Давайте сделаем это и погрузимся в инструменты ffmpeg и Rclone.

Читать полный гайд

Как кандидат наук продал 230 000 экземпляров своих книг с намеком на мат в заголовке

Level of difficultyEasy
Reading time16 min
Reach and readers47K

Мой первый успех в литературе случился в 17 лет. Тогда я стал призёром олимпиады по русскому языку среди абитуриентов в вузы с сочинением: “Почему еврей Розенталь устанавливает правила русского языка”.

Читать далее

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

Level of difficultyEasy
Reading time3 min
Reach and readers8.3K

Недавно, просматривая рекомендации на популярном сайте поиска работы по моему резюме «Senior Python Backend», я заметил, что система предлагает вакансии, весьма «далекие» от моей специализации. Это натолкнуло меня на размышления о том, как можно улучшить процесс подбора вакансий для IT‑специалистов. В результате я решил за два вечера, создать свою собственную рекомендательную систему, которая бы более точно учитывала специфику работы в сфере разработки программного обеспечения.

Читать далее

Сам написал, сам полетал: как и зачем я разработал 3D-игру с нуля под компьютеры из 90-х в 2024 году?

Level of difficultyMedium
Reading time21 min
Reach and readers12K


Осторожно: Несмотря на кажущуюся сложность статьи о разработке целой 3D-игры с нуля, я постарался систематизировать и упростить материал так, чтобы понятно было любому заинтересованному читателю, даже если вы далеки от программирования в целом!

Статьи о разработке инди-игр — это всегда интересно. Но разработка чего-то абсолютно с нуля, без каких-либо движков или фреймворков — ещё интереснее! Почти всю свою жизнь, буквально с 13-14 лет меня тянет пилить какие-нибудь прикольные 3D-демки и игрушки. Ещё на первом курсе ПТУ я написал небольшую демку с 3D-вертолетиками по сети и идея запилить какие-нибудь прикольные леталки не покидала меня по сей день! Спустя 6 лет, в 22 года я собрался с силами и решил написать небольшую аркадную демку про баталии на самолетиках, да так, чтобы работало аж на видеокартах из 90-х — NVidia Riva 128 и 3DFX Voodoo 3! Интересно, как происходит процесс разработки игры с нуля — от первого «тридэ» треугольника, до работающей на реальном железе демки? Тогда добро пожаловать под кат!
Читать дальше →

Как я зарабатывал 13 млн в год на любителях пассивного дохода

Level of difficultyEasy
Reading time10 min
Reach and readers231K

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

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

Читать далее

Нестандартные варианты использования Raspberry Pi

Level of difficultyEasy
Reading time6 min
Reach and readers30K


Raspberry Pi — это универсальный компьютер, который можно использовать как угодно. Есть тысячи вариантов, где его применить. Поэтому не совсем понятно: что считать стандартным, а что — нестандартным вариантом использования? Например, управление станками или умный дом — вполне логичное применение «малинки», тем более что Home Assistant отлично работает на RPi OS. Блокировка рекламы/соцсетей из домашней сети на общем файрволе Pi-Hole или простейший piVPN — тоже очевидная и общепринятая практика.

Но есть гораздо более странные примеры.
Читать дальше →

Как американская коррупция превратила физика-ядерщика в быдло-кодера

Level of difficultyEasy
Reading time17 min
Reach and readers110K

Это история из цикла «как войти в IT», написанная старпером, ветераном броуновского движения, который помнит динозавров. Поэтому его опыт вхождения в ИТ никому не пригодится, но представляет интерес с точки зрения истории.  

Также поделюсь своим мыслями об интерфейсе инженерного ПО. Участвуя в разработках различного ПО, предназначенного для ускорения разработки сложных систем, периодически приходится выслушивать жалобы от новых пользователей на «кривой и устаревший» интерфейс ПО. Однако инженеры, погруженные в проблемы проектирования реальных железок, вообще не задают нам таких вопросов, либо потому, что уже искривили свои руки о кривой интерфейс, либо им это вообще неважно. Более того, есть два примера, когда реальные высокопрофессиональные инженеры в своей области предъявляли претензии обратного свойства, и первая версия кривая версия GUI была удобнее, а вот улучшения делали какие-то полупокеры. 

К написанию данного текста меня подтолкнула беседа с одним из крутых разрабов из «жирной» конторы, с которым мы пересеклись на яхте в Средиземном море. Узнав, что я тоже из Бауманки, и у меня свой бизнес, он заинтересовался и выспрашивал. Как я смог начать бизнес на софте, почему не пошел в большую контору, типа Yandex, Сбер и прочие. У него тоже знакомство с софтом началось как создание собственной разработки по анализу результатов металлургических испытаний в лаборатории, но закончилось работой прогером по найму. Попивая вино на яхте где-то между Турцией и Грецией в 2023 году, он предположил, что, возможно, если бы он продолжал писать софт для металлургических исследований, то, наверное, сейчас мог плавать на своей яхте, а не арендованной, и не около Турции, а на Карибах (но это не точно). А поскольку фарш невозможно провернуть назад, я решил описать свою историю успеха, так как она забавна и поучительна.

Читать далее

Добавление собственных данных в LLM с помощью RAG

Level of difficultyMedium
Reading time28 min
Reach and readers78K

Этот материал посвящён тому, как добавлять собственные данные в предварительно обученные LLM (Large Language Model, большая языковая модель) с применением подхода, основанного на промптах, который называется RAG (Retrieval‑Augmented Generation, генерация ответа с использованием результатов поиска).

Большие языковые модели знают о мире многое, но не всё. Так как обучение таких моделей занимает много времени, данные, использованные в последнем сеансе их обучения, могут оказаться достаточно старыми. И хотя LLM знакомы с общеизвестными фактами, сведения о которых имеются в интернете, они ничего не знают о ваших собственных данных. А это — часто именно те данные, которые нужны в вашем приложении, основанном на технологиях искусственного интеллекта. Поэтому неудивительно то, что уже довольно давно и учёные, и разработчики ИИ‑систем уделяют серьёзное внимание вопросу расширения LLM новыми данными.

До наступления эры LLM модели часто дополняли новыми данными, просто проводя их дообучение. Но теперь, когда используемые модели стали гораздо масштабнее, когда обучать их стали на гораздо больших объёмах данных, дообучение моделей подходит лишь для совсем немногих сценариев их использования. Дообучение особенно хорошо подходит для тех случаев, когда нужно сделать так, чтобы модель взаимодействовала бы с пользователем, используя стиль и тональность высказываний, отличающиеся от изначальных. Один из отличных примеров успешного применения дообучения — это когда компания OpenAI доработала свои старые модели GPT-3.5, превратив их в модели GPT-3.5-turbo (ChatGPT). Первая группа моделей была нацелена на завершение предложений, а вторая — на общение с пользователем в чате. Если модели, завершающей предложения, передавали промпт наподобие «Можешь рассказать мне о палатках для холодной погоды», она могла выдать ответ, расширяющий этот промпт: «и о любом другом походном снаряжении для холодной погоды?». А модель, ориентированная на общение в чате, отреагировала бы на подобный промпт чем‑то вроде такого ответа: «Конечно! Они придуманы так, чтобы выдерживать низкие температуры, сильный ветер и снег благодаря…». В данном случае цель компании OpenAI была не в том, чтобы расширить информацию, доступную модели, а в том, чтобы изменить способ её общения с пользователями. В таких случаях дообучение способно буквально творить чудеса!

Читать далее

Кадровый голод в IT не то, чем кажется

Level of difficultyEasy
Reading time9 min
Reach and readers89K

В 2024 году дефицит кадров в сфере IT считается общеизвестным фактом. Эксперты оценивают его в сотни тысяч человек — от 500 тысяч до миллиона. Все желающие идут учиться на онлайн-курсы, которые обещают трудоустройство и большой заработок. Но в реальности порог входа в IT остается высоким, а путь до первого оффера — тернистым. 

Существует ли в IT-дефицит кадров, откуда он взялся и что означает на самом деле, вместе с нами разберут участники подкаста «Вдруг тут что-то важное» — технический директор KODE Николай Николенко, менеджер проектов VK NFT Сергей Спиренков, автор YouTube-канала «Mobile Developer» Алексей Гладков, а также кандидат технических наук и директор лаборатории  FusionBrain Института искусственного интеллекта AIRI Андрей Кузнецов.

Читать далее

Как сделать наушники с костной проводимостью звука дома за 5 минут и разбор популярных заблуждений об этой технологии

Reading time9 min
Reach and readers88K
Мы изрядно пишем о технологии костной проводимости на страницах Geektimes:



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



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


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

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity