Search
Write a publication
Pull to refresh
-13
0

Инженер

Send message

Гайд по архитектуре приложений для Android. Часть 5: слой данных

Reading time22 min
Views18K

Перевод обновлённого гайда Android по архитектуре приложений. Это — заключительная часть: рассказываем про слой данных.

Читать далее

Гайд по архитектуре приложений для Android. Часть 4: доменный слой

Reading time7 min
Views16K

Перевод обновлённого гайда Android по архитектуре приложений. Это — четвёртная часть из пяти: рассказываем про доменный слой.

Читать далее

Гайд по архитектуре приложений для Android. Часть 1: обзор

Reading time7 min
Views61K

Перевод обновлённого гайда Android по архитектуре приложений. Это — первая часть из пяти: обзор рекомендаций по архитектуре.

Читать далее

Кофеин: как это работает?

Reading time5 min
Views49K

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

Читать далее

Выборочный обход блокировок на маршрутизаторах с прошивкой Padavan и Keenetic OS

Reading time23 min
Views382K
Инструкций с разными вариантами обхода блокировок Интернет-ресурсов опубликовано огромное количество. Но тема не теряет актуальности. Даже всё чаще звучат инициативы на законодательном уровне заблокировать статьи о методах обхода блокировок. И появились слухи, что Роскомнадзор получит ещё одну пачку денег налогоплательщиков на «более лучшие» блокировки. Опытные пользователи ничего нового и полезного из статьи не узнают. А вот другие получат готовые пошаговые инструкции для простого и эффективного выборочного обхода блокировок на популярных маршрутизаторах с прошивкой Padavan и Keenetic.


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

Музыкальное творчество после работы — парочка простых онлайн-секвенсоров для начинающих композиторов

Reading time3 min
Views4.8K

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

Читать далее

В софте все всрато и становится еще всратее

Reading time5 min
Views181K

Приветствую хабравчане!

Глава 1 - Нытье про то, что раньше было лучше

Десяток лет читаю Хабр, в основном разработка, программирование, старое железо и посты с адовым рейтингом. Видел несколько постов об ожирении сайтов, софта. О разочаровании в программировании с 2000+ постов. И пост, что в софте все ок, но никто не доволен или как оно там. А не важно. Хочу поделиться своими мыслями и наблюдениями на этот счет.

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

Читать далее

Способы переписать логические параметры в С++

Reading time8 min
Views9.5K

Программисты читают код намного чаще, чем пишут его, поэтому важно писать понятный, последовательный, однозначный код. Автор книги С++17 in detail написал о способах избегать путаницы. Делимся его материалом к старту курса по разработке на С++.

Читать далее

Культовая драм-машина 80-х — с ней можно познакомиться прямо в браузере

Reading time2 min
Views7.4K

Мы уже рассказывали о необычном проекте, который позволяет превратить шуршание пачки чипсов и стук керамической посуды в полноценный трек. Сегодня расскажем о другом ресурсе, где можно познакомиться с драм-машиной Roland TR-808 и с её помощью записать музыку для личного приложения или игры.

Читать далее

Основы теории вероятностей с помощью Python

Reading time8 min
Views34K

Привет, Хабр! Я очень долго собирался с мыслями, чтобы попробовать опубликовать свою статью в вашем сообществе, это дебют, поэтому буду рад услышать в комментариях обратную связь по поводу содержимого материала. Тематика сегодняшнего сообщения – это разбор базовых понятий в теории вероятности с помощью языка программирования Python.

Прежде чем приступить к изложению базовых понятий немного расскажу о себе, о профессиональном опыте, чтобы вы могли иметь представление об авторе. Я окончил Уральский Федеральный Университет по направлению бизнес-информатика и сейчас работаю младшим научным сотрудником в Институте экономики Уральской Академии наук (г. Екатеринбург). В основном направление, по которому я обучался, опиралось на моделировании бизнес процессов. Было конечно немного статистики и теории вероятности, но по мере своего профессионального роста знаний, полученных в университете, мне оказалось недостаточно, поэтому сейчас я вспоминаю изученный материал и постепенно изучаю новый. В качестве такого своеобразного отчёта о проделанной работе принял решение публиковать небольшие статьи здесь. Надеюсь для новичков, которым собственно я и являюсь по сегодняшний день данный материал будет полезен.

За основу для изучения взял оксфордский учебник на английском языке «Bayesian Statistics for Beginners» (автор Therese M и Ruth M.Mickey). Если у вас есть какие-то базовые знания по математике, которые вы хотите углубить или вспомнить данная книга как раз для вас. Мне очень понравилось её необычное изложение в форме интервью, достаточно простой английский (для уровня B1-B2). Думаю, если вы часто читаете документацию на английском языке или ещё лучше научную литературу, учебник можно осилить практически без словаря. Сама книга – цветная, читать формулы – одно удовольствие. В общем зарекомендовал как мог.

Читать далее

Наши сервисы для бесплатного распознавания речи стали лучше и удобнее

Reading time3 min
Views12K

image


Сейчас для всех желающих доступны два наших сервиса для распознавания речи:


  • Бот в телеграме для коротких и не очень длинных аудио (мы не стали обходить ограничения телеграма, основная задача бота — распознавать голосовые сообщения);
  • Сервис audio-v-text.silero.ai для более длинных аудио, в котором можно скачать отчет в виде эксельки.

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


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

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

Использование потоков для создания высокопроизводительных Node.js приложений

Reading time9 min
Views10K

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

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

Читать далее

Настраиваем профиль IT специалиста в LinkedIn

Reading time10 min
Views57K

Данная короткая статья поможет IT коллегам из русскоязычного сегмента интернета заполнить свой профиль в LinkedIn. Заполненный профиль дает возможность в случае необходимости оперативно получить предложения о работе и оставаться в курсе актуальных новостей профессиональной сферы.

Читать далее

Асинхронное программирование в однопоточных средах JavaScript

Reading time52 min
Views33K

Асинхронное программирование в однопоточных средах JavaScript


Моя прошлая обучающая статья Введение в Redux & React-redux набрала больше 100к просмотров. Что же это не может не радовать меня. И поэтому я решил порадовать и вас написав очередную статью по JavaScript. Хотя если честно я не хотел больше писать статьи поскольку это довольно сложно, занимает уйму времени и сил, а еще мне не платят за всю эту научную работу. Так что следующую статью я напишу только если эта наберет 150к просмотров.

Оглавление


1. Введение в асинхронное программирование
2. Цикл событий
3. Отложенное выполнение кода с помощью setTimeout setImmediate и process.nextTick
....3.1 setTimeout
....3.2 setImmediate
....3.3 process.nextTick
4. Устаревшие паттерны асинхронного программирования
5. Promise
....5.1 Основы Promise
....5.2 Методы экземпляра Promise
........5.2.1 Promise.prototype.then
........5.2.2 Promise.prototype.catch
........5.2.3 Promise.prototype.finally
....5.3 Композиция и цепочки промисов
........5.3.1 Графы промисов
........5.3.2 Параллельная композиция промисов с Promise.all и Promise.race
........5.3.3 Серийная композиция промисов
6. Асинхронные функции
....6.1 Остановка и возобновление выполнения
....6.2 Стратегии для асинхронных функций
........6.2.1 Реализация Sleep
........6.2.2 Максимизация распараллеливания
........6.2.3 Серийное выполнение промисов
........6.2.4 Трассировка стека и управление памятью

1. Введение в асинхронное программирование

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

Музыкальные онлайн-секвенсоры для свободного творчества вне рабочих задач — три сервиса для тех, у кого есть время

Reading time3 min
Views9.8K

В прошлый раз мы рассказали об онлайн-секвенсорах, позволяющих написать саундтрек для домашнего проекта. Сегодня продолжим тему и обсудим еще три примечательных проекта — Online Sequencer, Signal и BeepBox.

Читать далее

Составное устройство USB на STM32. Часть 2: USB Audio Speaker

Reading time8 min
Views16K

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

В первой части публикации были описаны предпосылки запуска проекта по разработке составного устройства USB и приведены общие сведения о назначении и составе устройства.
Читать дальше →

Как побороть депрессию с помощью С++. Кто такие дескрипторы и с чем их едят

Reading time8 min
Views7.9K

Эта статья расскажет вам, как я начал бороться с клинической депрессией, используя для этого свое любимое занятие - программирование на c++. Это моя первая статья из цикла статей, который я решил назвать "Как побороть депрессию с помощью c++". Сегодня я хочу обсудить с вами дескрипторы. Дело в том, что в интернете я не нашел информации о том, что это такое и когда их нужно использовать. Спешу исправить ситуацию!

Читать далее

Подготовка к шатдауну. Как общаться после отключения интернета

Reading time3 min
Views275K


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

Например, международная ассоциация Internet Society зафиксировала в 2021 году 49 искусственно вызванных шатдаунов, в том числе 17 национальных, 26 региональных и 6 частичных (ограничения отдельных сервисов).

Частичный шатдаун предполагает избирательное отключение сервисов, например, VPN, мессенджеры, протокол HTTPS и так далее.
Читать дальше →

Собеседование по Javascript, мой опыт. Часть вторая

Reading time5 min
Views23K

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

(Виктор Цой)

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

"- Ну как на собеседование сходил? Успешно? - Да. Ручку у них спер" (ссылка)

Часть вопросов будет по typescript, часть по javascript, что-то будет из html, Node.js, настройки, библиотеки, концепции. В общем всё то, о чем говорят на собеседованиях.

Читать далее

Реальный Windows. Пишем realtime под окошками

Reading time11 min
Views16K

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

Читать далее

Information

Rating
5,943-rd
Location
Санкт-Петербург и область, Россия
Registered
Activity