Search
Write a publication
Pull to refresh
46
0
Константин Львов @klvov

программист, программист СУБД, веб-разработчик

Send message

Будущее ИИ — формальные грамматики

Level of difficultyEasy
Reading time19 min
Views1.9K

Почему даже самая мощная LLM иногда выдаёт бессмысленные фразы и противоречия? Всё дело в экспоненциальном росте вариантов (N^M) и свободном копировании человеческих ошибок. Читайте статью, чтобы узнать, как мы с помощью формальных грамматик превращаем хаотичную генерацию в управляемый синтез, усиливая роль семантики и соблюдая структурные правила.

Читать далее

Решаем проблему «деградации» YouTube с помощью NoDPI

Level of difficultyEasy
Reading time5 min
Views105K

Салют, Хабр! Я думаю, каждый из вас знаком или, по крайней мере, слышал о такой прекрасной утилите как GoodbyeDPI (большое спасибо @ValdikSS!). Сегодня я хочу представить вам (почти) свою разработку - аналог GoodbyeDPI.

Около полугода назад в своей статье Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 1 (заблокирована по требованию РКН) я рассказывал о том, как скачивать видео с YouTube на Python, а так как YouTube у нас "деградировал", я поделился инструментом, с помощью которого можно исправить этот вопиющий недостаток. Инструмент тогда выглядел достаточно сыро, и несмотря на то, что он выполнял свою задачу, требовал серьезных улучшений. Увидев интерес общественности, я решил допилить его, и вот, спустя полгода, после немалой работы, я рад представить вам NoDPI - проект, который явно не понравится РКН (и он опять меня заблокирует).

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

Читать далее

Со Scala-монолита на Java-микросервисы, или Как перебрать движок, не останавливая машину

Level of difficultyMedium
Reading time10 min
Views1.9K

Привет, Хабр! Меня зовут Евгений Кермас, я главный эксперт по технологиям в Управлении развития технологий модельного риска в Сбере.

В этой статье я попробую ответить на вопрос: «Что делать, если вы, как архитектор, пришли на существующий проблемный проект в качестве кризисного-менеджера?» Расскажу о нескольких подходах и дам советы, которые могут помочь в принятии решений в создании архитектуры и планировании проекта. Для этого разберём один пример с максимальным количеством проблем. На входе у нас есть монолит с запутанным кодом, на legacy-инфраструктуре, с нецелевым техстеком и большим грузом проблем, как технологических, так и организационных.

Читать далее

Низкоуровневое программирование под 8086 для любопытных, часть 2

Level of difficultyMedium
Reading time15 min
Views10K

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

Читать далее

Заинтересовавшимся, но еще не вляпавшимся – краткий ликбез про трейдинг

Reading time12 min
Views18K

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

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

Сразу отмечу мою личную позицию – я настоятельно никому не рекомендую связываться с любой разновидностью трейдинга без фундаментальной подготовки. Даже простое инвестиционное «купить и держать» требует некой базовой подготовки инвестора к реалиям, и далеко не каждый образованный финансовый консультант способен обеспечить безопасность и эффективность инвестирования своего клиента. Думать надо всегда своей головой!

Читать далее

Хабр — стоп кран (восклицательный знак)

Level of difficultyEasy
Reading time7 min
Views15K

Кто у нас там насегодня за главного? Денис? Алексей?

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

Читать далее

Ускорение загрузки Windows for fun and profit

Reading time4 min
Views811K
image Пожалуй, начну с того, что если перегружаться 15 раз в год, то любой «тюнинг» процесса загрузки отнимает больше времени, чем будет выиграно на перезагрузках за все время жизни системы. Однако, спортивный интерес берет свое, тем более, что люди интересуется процессом оптимизации быстродействия. А загрузка оказалась самым очевидным кандидатом в примеры того, как на мой взгляд должен выглядеть этот самый процесс. Сразу скажу, что грузиться будем с 5400 rpm винта, грузиться будем в «рабочую» систему: помимо недобитой вендорской крапвари там стоит еще куча всякого типа вижуал студии, антивируса, скайпа, стима, гуглапдейтера и пр…

Про то, почему отключение pagefile-а скорее вредно, чем полезно — как нибудь в другой раз, а пока…
Под катом много однообразных картинок и немножко унылого текста

Нужно ли «развитие» языкам программирования

Level of difficultyMedium
Reading time6 min
Views4.6K

TL;DR: Нет. Хорошо спроектированный язык в развитии не нуждается.

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

Более того, ниже я постараюсь уложиться в нескольких абзацев, чтобы рассказать, какие требования лично я предъявляю языку программирования в 2025 году, и почему этому «идеалу» просто некуда «развиваться».

Опять школота против ООП и ФП

Апгрейд компьютера в 2025

Level of difficultyEasy
Reading time20 min
Views55K

Свой предыдущий компьютер я собрал 10 лет назад. Я еще застал то время когда за подобный промежуток времени персоналки успевали измениться до неузнаваемости а для того чтобы не отстать от жизни их требовалось апгрейдить каждые два или три года. Но в тихие 2020е годы «железо» развивается уже не так быстро и по большому счету я мог бы продолжать этим старым компьютером и дальше. Однако руки у меня чесались уже из принципа и когда «винда» объявила мне что поддержка win10 прекращается, а win11 на моем компьютере работать не может, то я воспринял это как знак и решил немного побаловать себя. Эта статья — это обзор для олдфагов типа меня о том что появилось на рынке персоналок в последние годы и о том чего можно ожидать при подобном апгрейде.

Да, кстати, стоит ли вообще игра свеч?

Главный секрет успеха языков программирования

Level of difficultyEasy
Reading time11 min
Views57K

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

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

Узнать секрет

Дикая Java

Level of difficultyMedium
Reading time5 min
Views20K

«Безопасный язык» говорили они, «четкая спецификация» говорили они, «Java не даст вам выстрелить себе в ногу» и прочее и прочее. Реальность же оказалась куда веселее официальной документации.

«Ибо JVM темна и полна ужасов». (ц)

Погрузиться

Минимум книг, которые нужно прочитать начинающему или продолжающему свою кривую обучения программисту

Level of difficultyEasy
Reading time3 min
Views72K

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

Читать далее

Почему въехав по «визе талантов» в США я с радостью вернулся в Россию

Level of difficultyMedium
Reading time32 min
Views107K

Так получилось, что неожиданно для меня, в 2022-м году я оказался в США в статусе сотрудника американской компании. Но уже через полтора года я вернулся обратно в Россию. И не думаю, что когда-нибудь опять окажусь в США. Часто мелькают статьи о том, что пора переезжать в США и прочие страны. Однако правда такова, что существенное их количество пишут по заказу компаний, оказывающих услуги по оформлению документов. Много статей от только что покинувших свою страну молодых людей, которым просто не с чем сравнивать то, что они увидели в новой стране из-за отсутствия жизненного опыта. Часть статей написана людьми с весьма странными идеологическими установками. Ну и не исключаю, что часть статей — это откровенная пропаганда, написанная по заказу спецслужб стран, которые в них рекламируются. Поскольку у меня есть свой опыт жизни и работы за рубежом, я решил поделиться некоторыми наблюдениями в отношении «страны мечты» у нескольких поколений наших и не только сограждан. Возможно, кому-то мой, в целом позитивный, опыт поможет не наделать непоправимых ошибок. У меня же всё закончилось благополучно и я вернулся домой.

Читать далее

Создаём HTTP-сервер на Java NIO

Level of difficultyEasy
Reading time4 min
Views6.5K

Привет, Хабр!

В этой статье создадим HTTP-сервер на чистом Java NIO, без всяких Spring Boot, Jetty и прочих фреймворков. Будем разбираться, как работает неблокирующее I/O, что такое Selector, SocketChannel, и как заставить сервер обрабатывать тысячи запросов одновременно без запуска тысяч потоков.

Читать далее

Сети для самых маленьких. Часть девятая. Мультикаст

Reading time51 min
Views701K

Наш умозрительный провайдер linkmeup взрослеет и обрастает по-тихоньку всеми услугами обычных операторов связи. Теперь мы доросли до IPTV.
Отсюда вытекает необходимость настройки мультикастовой маршрутизации и в первую очередь понимание того, что вообще такое мультикаст.
Это первое отклонение от привычных нам принципов работы IP-сетей. Всё-таки парадигма многоадресной рассылки в корне отличается от тёплого лампового юникаста.
Можно даже сказать, это в некоторой степени бросает вызов гибкости вашего разума в понимании новых подходов.

В этой статье сосредоточимся на следующем:




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

Назначение языка программирования Elixir

Level of difficultyEasy
Reading time6 min
Views8.8K

Я являюсь в России одиноким поклонником языка программирования Elixir. Почему я делаю такой пессимистичный вывод.

В России язык Elixir не пользуется популярностью:

·         русскоязычные сайты, посвященные Elixir, постепенно умирают или уже умерли;

·         вакансий программистов Elixir я не встречал, (видел только на Украине);

·         статьи по Elixir в русскоязычном сегменте Internet в основном переводные;

·         переведенных на русских язык книг по Elixir всего две:

1.     для начинающих “Введение в Elixir” С. Сенлорен и Д. Эйзенберг

2.     достойная книга “Elixir в действии» Саши Русич.

Обе книги были переведены издательством ДМК.

Язык Elixir является молодым языком, но считается быстроразвивающимся. На Западе, судя по форумам, у него появилось много сторонников. Но оказалось, что и там вакансий для программистов Elixir очень мало: видел объявление о вакансии, на которую претендовало несколько сотен кандидатов.

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

Читать далее

Роберт, ты мне не дядюшка

Level of difficultyMedium
Reading time6 min
Views29K

Роберт Мартин нехило так повлиял на айти‑индустрию. Он придумал принципы SOLID, о которых спрашивают на собесах, пишут статьи на хабре и спорят в комментариях. Он написал книгу «Чистый код» и сделал это словосочетание айтишным мемом. Если зайти на хэдхантер, вбить в поиске слово «чистый», выбрать специализацию «Программист, разработчик» и нажать «Найти», получим больше семисот вакансий. Про чистоту кода и архитектуры спорят на код‑ревью, в комментариях и статьях по всему интернету. Разговоров о чистоте внутри айти‑тусовки бывает так много, словно мы находимся в сообществе клинеров, а не программистов.

Мартин называет себя «дядюшкой Бобом». В своих работах он выступает в образе опытного мудрого и взрослого родственника, который несёт свет и знания таким зелёным и неопытным племянникам. И у него отлично получилось втереться в доверие! Типичный хороший программист‑анальник бессилен перед таким добрым дядей. И я знаю, о чём пишу. Восемь лет назад я сам запоем читал книги дядюшки, а потом до усрачки защищал чистоту кода на код‑ревью. Я на себе почувствовал, насколько Роберт Мартин отличный агитатор и пропагандист. Работая с другими людьми, читая статьи и обсуждения на Хабре и хакерньюс, анализируя требования к вакансиям, я понимаю, что не я один попался на отличную пропаганду от «дядюшки Боба».

Читать далее

Сэм Альтман знает, как достичь AGI. Я тоже, и сейчас расскажу как

Level of difficultyMedium
Reading time15 min
Views45K

«Теперь мы уверены, что знаем, как построить AGI в том виде, в каком мы традиционно его понимали… Сейчас это звучит как научная фантастика, и даже говорить об этом как-то безумно. Все в порядке — мы уже были там раньше и не против оказаться там снова.» Такое сообщение 6 января опубликовал Сэм Альтман.

Человечество нашло дорогу, по которой можно дальше и дальше улучшать качество моделей, и мы не видим здесь никакого предела. Про эту дорогу знает Альтман, и скоро узнаете вы.

Поехали в AGI

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей

Level of difficultyEasy
Reading time14 min
Views131K

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

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

Читать далее

Моя рецензия на «кабанчика» Мартина Клеппмана и главная идея проектирования быстрорастущих баз данных

Level of difficultyMedium
Reading time19 min
Views5.7K

Здравствуйте. Меня зовут Олег Юрченко.

Здесь моя рецензия на эту книгу: «Клеппман М. Высоконагруженные приложения. Программирование, масштабирование, поддержка. — СПб.: Питер, 2018.»

Я видел много рекомендаций прочитать это творение, а начав читать, решил написать рецензию.

Содержание книги соответствует второй части оригинального названия «Designing Data‑Intensive Applications. THE BIG IDEAS BEHIND RELIABLE, SCALABLE, AND MAINTAINABLE SYSTEMS».

Можно утверждать, что многие «THE BIG IDEAS BEHIND...» рассмотрены с подробной библиографией. А вот название перевода вводит в заблуждение каждым словом. В книге только идеи, а не это вот всё.

Но главной идеи в книге нет. Мартин Клеппман не знает про основной способ устранения зависимости нагрузки на сервер баз данных от размера базы данных, главной проблемы с быстрорастущими базами данных. Эта идея важнее всего написанного в этой книге, я её объясню с примером из моей практики.

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

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

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

Читать далее
1
23 ...

Information

Rating
4,917-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity