Обновить
33
0.5
ionicman@ionicman

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

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

Принципы SOLID, только понятно

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

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

Изучить принципы

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

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели2.3K

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

Спойлеры: 

- Собранный руками кастомный фид повысил отдачу от Яндекс Директ в 2 раза

- Доработки сайта подняли конверсию интернет-магазина в 2,5 раза

- Привлечение более платежеспособной ЦА принесло еще 35% заказов

- Стимулировали звонки, а не заявки и приросли в 1,5 раза

Кейс демократичной мебельной фабрики, которая без роста рекламного бюджета увеличила объем заявок в 2 раза. 

Читать кейс

Suno есть, скрипач не нужен!?

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели26K

Я еще не совсем отошел от шока полугодичной давности, когда познакомился с RVC ... а тут новый прорыв - Suno. Думаю, многие если и не знакомы с самим сервисом, то слышали результаты - саундтреки с вокалом, полностью сгенерированные ИИ, по сути, не отличимые от живого исполнения. Хотя, конечно, еще до ИИ в музыке стало так много синтетики, что теперь и музыкант не всегда определит, как именно она была сделана.

В общем, то, о чём мечтают многие сочинители текстов - положить свои стихи на музыку, стало невероятно простым и доступным. Именно невероятно - 3 клика и Suno за 30 сек выдает 2 варианта песни на ваш текст в выбранном вами стиле.

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

Сначала пару строк о качестве. Это ведь важно?

Suno генерирует, правильную, качественную, профессионально звучащую музыку, которую вы слушаете как-бы через некачественные колонки. Т.е. музыкальное качество высокое, а звуковое - не всегда, но ... Вот отзыв Сергея Кокорина, руководителя и дирижера сочинского Биг-Бенда, на один из первых примеров Suno, который я ему показал: "... поразительно точно соблюдены все правила штрихов, нюансов, аранжировки... Удивительно верное инструментальное произношение свинга! У вокалистов чудесный порядок, и в сольном произношении, и аккордовом! Огромное количество подробностей учтено!!! Поразительная железяка, хорошо это слышно, но не верится...". И согласитесь, живой джаз - очень непростая музыка для имитации, это не клубный трек.

Читать далее

Стратосферный сброс админов, трещина, срочная эвакуация арктической базы

Время на прочтение8 мин
Охват и читатели14K
image

Кое-что пошло не так, поэтому российскую научную базу пришлось эвакуировать.

2 апреля мы должны были сбросить экспериментальный арктический мини-ЦОД (из одного сервера и двух систем спутниковой связи) на дрейфующую льдину со временной российской полярной базой. Потом — подняться в стратосферу и выпустить орбитального админа, который вместе с двумя напарниками поставит рекорд высотного парашютного прыжка.

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

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

Но кое-что сделать удалось.

Собственно, начну по порядку.
Читать дальше →

Китай не принимает платежи из России. Где заказать печатные платы в Китае в 2024 году

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели56K

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

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

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

Читать далее

Как исправить изменившийся номер договора в нескольких сотнях Эксель файлов менее чем за минуту

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели13K

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

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

Ручной способ, который состоит из использования сочетания клавиш Ctrl + H хоть и позволял сделать замену во всей книге Microsoft Excel сразу, но подразумевал что придётся открыть каждый файл по отдельности, нажимать несколько раз (под замену не только номер, но и дата) сочетания клавиш для замены, сохранять книгу Экселя, закрывать книгу, открывать новую книгу. В общем совершать множество механических действий.

Я конечно же стал думать, как можно наиболее простым для себя способом сделать это множество автозамен. Выбор сразу пал на VBA - Visual Basic для приложений. Ведь при помощи VBA можно заставить Эксель делать то, чего он не умеет по умолчанию.

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

VBA Excel автозамена

10 > 64: как хранить больше данных в QR-кодах

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели8K

Для кодирования данных в десятичном формате требуется гораздо больше символов, чем для тех же данных, но закодированных в base64 — 06513249 против YWJj. Однако это правило не работает, когда речь идёт о QR-кодах. В них гораздо лучше работает использование десятичных чисел. Никакой магии, просто все дополнительные цифры сохраняются настолько эффективно, как если бы кодирования вообще не было. Десятичная кодировка позволяет QR-кодам хранить больше данных, а ещё их легче сканировать.

Читать далее

Введение в нейросети: что, зачем и как?

Уровень сложностиСредний
Время на прочтение25 мин
Охват и читатели70K

Это модное слово всё чаще используется в разговорной речи: обывателей плотнее окутывают угрозами бунта искусственного интеллекта и войны с роботами — с одной стороны, и рекламой нейросетевых продуктов — с другой. Отдельный котёл в аду — для тех, кто впаривает «курсы дата‑саентистов». А когда бедный юзернейм в поисках истины обращается к Гуглу своему любимому поисковику — то вместо простого ответа на простой вопрос, получает ещё больше вопросов — таких как тензорфлоу, сигмоида и, не дай Бог, линейная алгебра.

Как же нейросети рисуют картинки?

Большая шпаргалка по Docker: как распилить монолитный проект на части

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели34K

Погружение в мир контейнеризации с докером — это путь к оптимизации развёртыванию приложений, а также ключ к упрощению жизни разработчиков и системных администраторов. Меня зовут Андрей Аверков, в IT c 2008 начинал пусть с аналитика-проектировщика IT систем, 11 лет в роли разработчика и последние годы на руководящих должностях. Сейчас я тимлид команды разработки из 9 человек в группе компании Кокос. Мы занимаемся созданием и поддержкой CPA платформ (gdeslon.ru, fxpartners.ru, ads.mobisharks.com), а также проектом по генерации лендингов — lpgenerator.ru. У нас большой опыт в разделении продуктов на части, поэтому, сегодня мы собрали самое основное и необходимое для работы с Docker. В нашей шпаргалке вы найдете все необходимое для успешного старта с докером: от базовых концепций и установки до продвинутых техник работы с контейнерами.

Читать далее

Ыыыы ыыыыыыыыыы с помощью AmneziaЫЫЫ

Время на прочтение3 мин
Охват и читатели163K

Ну что теперь будем писать про VPN вот так?

Кстати, в Китае вместо слова VPN вы часто можете встретить «Science Online»(科学上网), «ladder»(梯子), или «Internet accelerator»(上网加速器), все это обозначает VPN. В России, кажется еще все не так плохо, но это не точно. С первого марта писать о VPN на русскоязычных площадках нельзя, наказание для площадок — блокировка на территории России. При этом считаются как новые статьи, так и статьи, опубликованные до вступления в силу приказа о запрете. В скором времени, крупные ресурсы будут блокировать любую информацию о VPN, поэтому мы настоятельно советуем подписываться на телеграм каналы разных VPN, в том числе на наш. Мы не знаем сколько еще статей нам отведено на Хабре, и как хабр дальше будет показывать статьи со словом VPN в разных странах.

А теперь о хорошем.

Самый ожидаемый нашими пользователями бесплатный VPN AmneziaFree v.2 c защитой от блокировок наконец‑то готов. Должны признаться, последнее время мы много работали над self‑hosted приложением AmneziaVPN, а так же над протоколом AmneziaWG (или по простому — AWG, его мы используем в бесплатном VPN), поэтому работа над проектом AmneziaFree v.2 немного затянулась. В любом случае, мы очень рады, что наконец можем пригласить Вас присоединиться к числу пользователей нашего бесплатного сервиса. Все так же, как и раньше, без регистрации, рекламы и ограничении по сроку работы.

Бесплатный VPN AmneziaFree v.2, можно использовать только для популярных недоступных на территории России сайтов (не будем их перечислять, вы и сами их знаете), список достаточно большой, поэтому, скорее всего, то что вам надо в нем есть. При этом, не заблокированные в России сайты, будут открываться напрямую, без VPN. То есть напрямую с Вашего IP‑адреса.

Читать далее

Анонимная P2P-сеть внутри централизованного HTTPS-сервера: вшиваем паразитный трафик всеми правдами и неправдами

Уровень сложностиСложный
Время на прочтение25 мин
Охват и читатели18K

Государственная цензура есть многогранный монстр, закрывающий путь не только к зарубежной информации посредством блокировки ресурсов и их методов обхода, в лице Proxy, VPN, Tor, но также и постоянно пытающийся подавлять неподконтрольные безопасные и анонимные коммуникации внутри самого себя. Гос.структуры ради этого готовы пойти буквально на любые ухищрения и запугивания, включая штрафы (дело Threema, отказ передачи ключей шифрования), уголовные преследования (дело Дмитрия Богатова, дело по VIPole), регулирование неконтролируемой криптографии (история запретов до 2016, запрет шифрования доменных имён), а также возможные бэкдоры в собственных криптоалгоритмах (Кузнечик и Стрибог). Рэкет становится для государства нормой жизни.

Читать далее

Знай свой инструмент: Event Loop в libuv

Время на прочтение6 мин
Охват и читатели70K
image
Юдель Пэн. Часовщик. 1924

«Компьютер — это конечный автомат. Потоковое программирование нужно тем, кто не умеет программировать конечные автоматы» 
Алан Кокс, прим. Википедия


“Знай свой инструмент” — твердят все вокруг и все равно доверяют. Доверяют модулю, доверяют фреймворку, доверяют чужому примеру.

Излюбленный вопрос на собеседованиях по Node.js — это устройство Event Loop. И при всем том, очевидном факте, что прикладному разработчику эти знания будут полезны, мало кто пытается самостоятельно погрузиться в устройство событийного цикла. В основном, всех устраивает картинка сверху. Хоть это и похоже на пересказ фильма, который ты не смотрел, а о котором тебе рассказал друг.
Читать дальше →

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Уровень сложностиСредний
Время на прочтение46 мин
Охват и читатели483K

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

Вы, наверняка, помните отличный цикл статей на Хабре в прошлом году от пользователя MiraclePtr, который рассказывал о разных методах блокировок, о разных методах обхода блокировок, о разных клиентах и серверах для обходов блокировок, и о разных способах их настройки (раз, два, три, четыре, пять, шесть, семь, восемь, десять, десять, и вроде были еще другие), и можете спросить, а зачем еще одна? Есть две основные причины для этого.

Читать далее

Корутины C++ для чайников: пишем асинхронный веб-клиент

Уровень сложностиСредний
Время на прочтение24 мин
Охват и читатели50K

Написать этот материал меня побудило... отсутствие хороших статей по корутинам в C++ в русскоязычном интернете, как бы странно это не звучало. Ну серьезно, C++20 существует уже несколько лет как, но до сих пор почти все статьи про корутины, что встречаются в рунете, относятся к одному из двух типов. Или обзор начинается с самых глубин и мелочей, пересказывая cppreference, а потом автор выдыхается и все сводится к "ну а дальше все понятно, возьмите и примените это в своем коде", что напоминает известную картинку с совой. Либо иногда в статьях рассматривается применение корутин на примере генераторов, и этим все и ограничивается. Но, давайте будем честны, генераторы — это замечательно, но за все время моей многолетней карьеры разработчика я, вероятно, делал что‑то подобное генераторам разве что разок, в то время как асинхронный ввод‑вывод приходится использовать почти в каждом проекте. И поэтому меня гораздо больше интересует реализация асинхронного ввода‑вывода с использованием корутин, а не генераторы. Поэтому пришлось разбираться во всем самому.

Читать далее

Самое понятное объяснение Специальной теории относительности

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели171K

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

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

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

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

Читать далее

USB Type-C SWD Adapter

Время на прочтение4 мин
Охват и читатели10K

Прочитав статью Программируем и отлаживаем STM32 через USB Type-C порт, не нарушая спецификации USB у меня сразу появилась идея, как сделать более правильно и удобнее (как хочешь втыкай кабель, по привычке и рабочий USB 2.0 порт). Получился вот такой вот адаптер для J-Link (для JTAG 10 pin):

Читать далее

Как я пишу HTTP-сервисы спустя 13 лет работы с Go

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели48K

Примерно шесть лет назад я написал пост о том, как пишу HTTP-сервисы на Go, и сегодня я снова хочу рассказать, как пишу HTTP-сервисы.

Тот пост оказался довольно популярным и вызвал обсуждения, повлиявшие на то, как я делаю это сегодня. И спустя годы ведения подкаста Go Time, обсуждения Go в X/Twitter и поддержки подобного кода я решил, что настало время обновить информацию.

(Если вы педант и скажете, что Go не совсем 13 лет, то я отвечу, что начал писать HTTP-сервисы на Go версии .r59.)

В этом посте рассматривается широкий спектр тем, связанных с созданием сервисов на Go

Читать далее

10 продвинутых сниппетов Python, которые повысят ваши навыки программирования

Время на прочтение3 мин
Охват и читатели20K

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

Читать далее

Анализ безопасности Wi-Fi: атаки на WPA2-Personal / Enterprise и методология взлома WPA3

Время на прочтение13 мин
Охват и читатели81K

Подробное исследование методологии взлома протоколов WPA2-Personal / Enterprise и WPA3: какие атаки и уязвимости существуют, и какой инструментарий применяется для их эксплуатации.

Читать далее

Как установить Windows 11

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

Да, статья о том, как установить Windows 11 правильно. Этот процесс нынче сопровождается таким количеством шаманских плясок, что ей-богу, проще Arch устанавливать. Решил вот поместить все познания по этому вопросу из головы в статью.

Читать далее

Информация

В рейтинге
2 120-й
Зарегистрирован
Активность