Как стать автором
Обновить
10
0
Виталий @laviol

HW/SW @ notAnotherOne

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

Как рос мой доход в IT: от 17к до $21000 в месяц

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

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

Читать далее
Всего голосов 250: ↑137 и ↓113+24
Комментарии145

Архитектура event-driven приложений

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


Автор статьи: Артем Михайлов


Введение в концепцию event-driven архитектуры


Event-driven архитектура — это концепция программирования, которая позволяет создавать сложные приложения, используя событийно-ориентированный подход. Основная идея заключается в том, что все действия в приложении основаны на событиях. Это позволяет создавать распределенные системы, которые легко масштабируются и обладают высокой отказоустойчивостью.
Читать дальше →
Всего голосов 15: ↑11 и ↓4+7
Комментарии6

Управление Linux-сервером — самая ценная инвестиция

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

В эпоху облаков настройка Linux-сервера своими руками кажется неким вымирающим искусством. Для непосвящённого человека даже bash-скрипты выглядят как заклинания, а коллеги проникаются уважением к сисадмину, как древние индейцы к своему шаману…

Сейчас это «древнее искусство» вновь стало актуальным. История идёт по кругу — всё старое возвращается в новом виде. Запуск сервера на своём хостинге стал хорошей альтернативой облакам. Этому есть ряд причин, которые мы не будем подробно разбирать, только повторим вкратце: безопасность, свобода, контроль над своими данными, экономия финансов.
Читать дальше →
Всего голосов 105: ↑101 и ↓4+97
Комментарии117

Внутренний Я(ндекс)

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

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

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

Читать далее
Всего голосов 469: ↑463 и ↓6+457
Комментарии287

Микросервисы — отчуждение от результатов труда

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

Поветрия

Я наблюдаю за развитием IT в течение приблизительно четверти века, и с каждым днём меня всё сильнее удручает происходящее.

Постоянно мы слышим, что какой-нибудь паттерн или язык становится всё более модным, а что-то, напротив, — уходит в историю. А ещё различные поветрия о "хорошо или плохо" будто волнами перекатываются через это вот всё.

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

Увы, новые вещи (коих не так чтобы вообще есть) всё чаще приносят с собой и очевидно деструктивные, будто навязываемые извне, паттерны.

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

В этой статье я хотел бы поговорить о причинах происходящего.

Если кому-то интересно - под кат
Всего голосов 294: ↑226 и ↓68+158
Комментарии1018

Электромагнетизм и некоторые интересные явления и процессы

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров14K
Картинка Freepik

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

Читать дальше →
Всего голосов 60: ↑56 и ↓4+52
Комментарии33

Изучаем распространение радиосигналов в ионосфере с помощью SDR

Время на прочтение6 мин
Количество просмотров8.5K
Привет, Хабр.

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



Я покажу как с помощью SDR-приемника и 50 строк кода на Python получить визуализацию сигналов радиостанций с точностью до долей герца, и увидеть довольно-таки любопытные атмосферные эффекты.

Продолжение под катом.
Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии18

Кто такой архитектор ПО и как им стать

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

Всем привет! Меня зовут Виктор Василенко, я техлид и Solution-архитектор. Я работал в Яндексе и X5 Group и уже не первый год сотрудничаю с Практикумом. Я делюсь опытом на курсах «Алгоритмы и структуры данных» и «Асинхронное программирование на Python».

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

Пока что индустрия не может чётко определить эту деятельность как профессию. В общероссийском классификаторе профессий ОКПДТР архитектор встречается скорее ландшафтный, чем программного обеспечения. В вузах вы не сможете найти специальность «Архитектура программного обеспечения». 

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

В этой статье я хочу поделиться своим видением роли архитектора ПО и рассказать:

Кто такой архитектор ПО и какие они бывают;

Чем занимается архитектор решений в компаниях разного масштаба;

Чем отличаются инженеры от архитекторов ПО;

Какие обычно задачи стоят перед архитектором ПО;

Конкретно: какие нужны навыки и компетенции;

Как перейти из инженера на позицию архитектора.

Читать далее
Всего голосов 27: ↑21 и ↓6+15
Комментарии9

Как Яндекс распознаёт музыку с микрофона

Время на прочтение10 мин
Количество просмотров159K
Поиск по каталогу музыки — это задача, которую можно решать разными путями, как с точки зрения пользователя, так и технологически. Яндекс уже довольно давно научился искать и по названиям композиций, и по текстам песен. На сказанные голосом запросы про музыку мы тоже умеем отвечать в Яндекс.Поиске под iOS и Android, сегодня же речь пойдёт о поиске по аудиосигналу, а если конкретно — по записанному с микрофона фрагменту музыкального произведения. Именно такая функция встроена в мобильное приложение Яндекс.Музыки:

image

В мире есть всего несколько специализированных компаний, которые профессионально занимаются распознаванием музыкальных треков. Насколько нам известно, из поисковых компаний Яндекс стал первым, кто стал помогать российскому пользователю в решении этой задачи. Несмотря на то, что нам предстоит ещё немало сделать, качество распознавания уже сопоставимо с лидерами в этой области. К тому же поиск музыки по аудиофрагменту не самая тривиальная и освещённая в Рунете тема; надеемся, что многим будет любопытно узнать подробности.
Читать дальше →
Всего голосов 321: ↑313 и ↓8+305
Комментарии113

Shazam: алгоритмы распознавания музыки, сигнатуры, обработка данных

Время на прочтение13 мин
Количество просмотров157K
В ресторане заиграла почти забытая песня. Вы слушали её в далёком прошлом. Сколько трогательных воспоминаний способны вызвать аккорды и слова… Вы отчаянно хотите послушать эту песню снова, но вот её название напрочь вылетело из головы! Как быть? К счастью, в нашем фантастическом высокотехнологичном мире есть ответ на этот вопрос.

У вас в кармане лежит смартфон, на котором установлена программа для распознавания музыкальных произведений. Эта программа – ваш спаситель. Для того чтобы узнать название песни, не придётся ходить из угла в угол в попытках выудить из собственной памяти заветную строчку. И ведь не факт, что это получится. Программа, если дать ей «послушать» музыку, тут же сообщит название композиции. После этого можно будет слушать милые сердцу звуки снова и снова. До тех пор, пока они не станут с вами единым целым, или – до тех пор, пока вам всё это не надоест.


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

Как же всё это работает?
Читать дальше →
Всего голосов 64: ↑58 и ↓6+52
Комментарии22

Глубокое погружение в принципы работы Wi-Fi 6: OFDMA и MU-MIMO

Время на прочтение11 мин
Количество просмотров25K
В своих разработках Huawei делает ставку на Wi-Fi 6. И вопросы от коллег и заказчиков о новом поколении стандарта подтолкнули нас к тому, чтобы написать пост о теоретических основах и физических принципах, заложенных в него. От истории перейдём к физике, подробно разберёмся, зачем нужны технологии OFDMA и MU-MIMO. Поговорим и о том, как принципиально переработанная физическая среда передачи данных позволила добиться гарантированной пропускной способности каналов и такого уменьшения общего уровня задержек, что они стали сопоставимы с «операторскими». И это при том, что современные сети на основе 5G дороже (в среднем в 20–30 раз) аналогичных по возможностям indoor-сетей на Wi-Fi 6.


Читать дальше
Всего голосов 10: ↑9 и ↓1+8
Комментарии10

Самое главное в Wi-Fi 6. Нет, серьёзно

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

Если верить теории простоты Эйнштейна, главный показатель понимания предмета — это способность максимально просто его объяснить, то и в этом посте я постараюсь максимально просто и подробно объяснить действие всего одной детали нового стандарта, которую почему-то даже Wi-Fi Alliance считает недостойной упоминания в инфографике о новых возможностях Wi-Fi 6, хотя она, как мы скоро убедимся вместе, очень важна и примечательна. Здесь не всё достаточно глубоко и уж точно не всеобъемлюще (потому что такого слона сложно есть даже по частям), но я надеюсь, что мы все почерпнём из моих словесных экзерсисов что-то новое и интересное для себя.

Тот самый 802.11ax, который мы ждём со дня на день вот уже минимум второй год, несёт в себе массу нового и удивительного. Перед каждым, кто хочет о нём что-то рассказать, всегда стоит выбор: либо устроить обзорные скачки по головам, упоминая ведро аббревиатур и сокращений, стараясь не увязнуть в сложных механизмах под капотом каждого из них, либо завернуть часовой доклад про что-то одно, наиболее приятное автору. Я рискну пойти ещё дальше: бОльшая часть моей заметки будет посвящена даже не новому!
Читать про несовершенство вайфая дальше
Всего голосов 43: ↑43 и ↓0+43
Комментарии69

Пошаговое развитие RESTful API

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

Разработка интуитивно понятного и удобного RESTful API — непростая задача. Она даже может оказаться весьма сложной задачей, если это ваша первая попытка. Планирование управления жизненным циклом вашего API, скорее всего, будет казаться второстепенным. Однако во всяком случае развитие вашего API весьма вероятно.

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

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

Фокус-менеджмент вместо тайм-менеджмента

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

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

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

Читать далее
Всего голосов 14: ↑12 и ↓2+10
Комментарии7

Как стать гуру или WiFi Cheat Sheet

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

А что мы знаем про пентест Wi-Fi?

Кажется, что уже всё, но вот на offzone 2023 была представлена атака WPA‑E (Надеюсь, в скором времени выложат запись и pdf) и я задумался, а так ли всё хорошо с моими знаниями... Нет, я всё с концами оставил на старых ЖД и где‑то далеко в памяти, пришлось восстанавливать по крупицам всю информацию. Заметки, время и старания — главное составляющее статьи.

Этот документ больше похож на чек‑лист для самопроверки и может содержать полезные советы и хитрости, за основу я взял структуру «WiFi Penetration Testing Cheat Sheet». Я очень благодарен автору, но он забросил вести данную шпаргалку и многие вещи устарели.

Все было протестировано на Kali Linux v2023.1 (64-битной версии), а также проработано на реальном опыте проведения тестирования на проникновение Wi‑Fi и в лабораторных условиях.

Пора ознакомиться
Всего голосов 37: ↑36 и ↓1+35
Комментарии9

CORS для чайников: история возникновения, как устроен и оптимальные методы работы

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


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

Если вы давно хотели разобраться в CORS и вас достали постоянные ошибки, добро пожаловать под кат.

Ошибка в консоли вашего браузера


No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://example.com/

Access to fetch at ‘https://example.com’ from origin ‘http://localhost:3000’ has been blocked by CORS policy.


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

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

Но давайте-ка пойдем к истокам…
Читать дальше →
Всего голосов 59: ↑58 и ↓1+57
Комментарии14

DreamBerd — идеальный язык программирования

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

DreamBerd - идеальный язык программирования. Вот его фичи!

Когда вы закончите знакомиться со всеми фичами, ознакомьтесь с примерами.

Восклицательные знаки!

Будьте смелее! Заканчивайте каждое утверждение восклицательным знаком!

print("Hello world")!

Если вы чувствуете себя особенно смелым, вы можете использовать еще больше!!!

print("Hello world")!!!

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

print("Hello world")?

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

if (;false) {

   print("Hello world")!

}

Читать далее
Всего голосов 89: ↑86 и ↓3+83
Комментарии45

Эволюция LTE и NR

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

В этой статье не будет дежурных фраз про увеличение спектральной эффективности и уменьшение задержки (latency). Вместо этого я расскажу про развитие технологии OFDM-MIMO и о том, какие идеи двигали это развитие. При этом постараюсь обойтись без формул. Тем не менее, статья написана не совсем в духе “LTE для чайников”, но предполагает наличие у читателя базовых знаний по цифровой обработке сигналов, OFDM и MIMO. 

Примерно к 2005 году разработчикам сотовой связи стало понятно, что MIMO это практический, а не теоретический, путь повышения пропускной способности. Стоит пояснить, что на профессиональном жаргоне MIMO означает возможность передачи нескольких потоков, а не использование множества антенн для создания направленного излучения (beamforming) или использование пространственных свойств радиоканала для повышения надёжности (diversity). То, что MIMO повышает пропускную способность в теории, было известно задолго до 2005 года, но та же теория объясняет, что для этого необходимы, как минимум, два условия: высокое соотношение сигнал/шум и независимость (некоррелированность) каналов между различными парами передающая-приёмная антенна. Противники MIMO, а тогда таких было довольно много, утверждали, что в реальной жизни ни одно из этих условий выполнено не будет, сигнал/шум будет низкий поскольку передавать (или принимать) хотят все и сразу, а каналы будут сильно коррелированы, потому что антенны (на одном устройстве) находятся близко друг к другу. Однако апологеты MIMO, которые, к слову, ныне считаются отцами-основателями, всё больше и больше убеждались в обратном.

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

Книга «Создание микросервисов. 2-е издание»

Время на прочтение31 мин
Количество просмотров14K
image Привет, Хаброжители!
А мы издали второе издание книги Сэма Ньюмена

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

Вы познакомитесь с современными решениями для моделирования, интеграции, тестирования, развертывания и мониторинга собственных автономных сервисов. Примеры из реальной жизни показывают, как получить максимальную отдачу от этих архитектур. Книга будет полезна всем: от архитекторов и разработчиков до тестировщиков и специалистов по эксплуатации.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии6

За границей Hello World: полный гайд по разработке Telegram ботов на Python + Aiogram 3. Часть 2: Меню и OpenAI API

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

Привет, Хабр! Продолжаю серию статей про разработку telegram-ботов на библиотеке aiogram и языке программирования Python. Хочется отметить, что статья не является документацией или учебником. Я просто рассказываю пошагово как разработать полнофункционального бота, стараясь затронуть как можно больше тем.

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

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

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Embedded Software Engineer