<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>код on Bizibah</title>
		<link>https://bizibah.com/tags/%D0%BA%D0%BE%D0%B4/</link>
		<description>Recent content in код on Bizibah</description>
		<generator>Hugo</generator>
		<language>ru-RU</language>
		
		
		
		
			<lastBuildDate>Thu, 15 Jan 2026 00:00:00 +0100</lastBuildDate>
		
			<atom:link href="https://bizibah.com/tags/%D0%BA%D0%BE%D0%B4/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Work Time</title>
				<link>https://bizibah.com/projects/work-time/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://bizibah.com/projects/work-time/</guid>
				<description>&lt;p&gt;Расписание работы — вещь, которую в интерфейсах приходится делать снова и снова:&#xA;семь дней, у каждого свои часы, где-то перерыв, где-то выходной. Компонент&#xA;делает это одним тегом и отдаёт результат обычной моделью, как поле формы.&lt;/p&gt;&#xA;&lt;p&gt;Есть режим только для чтения и несколько видов расписания. Ставится из npm,&#xA;живёт на Angular 7 и бутстрапе — с тех пор я его не трогал, поэтому здесь он как&#xA;архив.&lt;/p&gt;</description>
			</item>
			<item>
				<title>eslint-plugin-superstition</title>
				<link>https://bizibah.com/projects/eslint-plugin-superstition/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://bizibah.com/projects/eslint-plugin-superstition/</guid>
				<description>&lt;p&gt;Линтеры следят за отступами и неиспользуемыми переменными. Этот следит за&#xA;суевериями: &lt;code&gt;no-number-13&lt;/code&gt;, &lt;code&gt;no-number-666&lt;/code&gt;, &lt;code&gt;no-number-4&lt;/code&gt; (несчастливое в&#xA;Японии и Китае), &lt;code&gt;no-number-39&lt;/code&gt; — и отдельным правилом &lt;code&gt;must-have-8&lt;/code&gt; требует,&#xA;чтобы в файле встретилась восьмёрка.&lt;/p&gt;&#xA;&lt;p&gt;Правила собраны в набор &lt;code&gt;recommended&lt;/code&gt;, так что подключается плагин одной строкой&#xA;в конфиге. Шутка, доведённая до рабочего состояния: ставится из npm и честно&#xA;ругается на сборке.&lt;/p&gt;</description>
			</item>
			<item>
				<title>cache-observable</title>
				<link>https://bizibah.com/projects/cache-observable/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://bizibah.com/projects/cache-observable/</guid>
				<description>&lt;p&gt;Типичная беда фронтенда: несколько компонентов на странице одновременно просят&#xA;одни и те же данные, и в сеть уходит пачка одинаковых запросов. Лечится это&#xA;кешем, но писать его в каждом сервисе руками скучно.&lt;/p&gt;&#xA;&lt;p&gt;Декоратор &lt;code&gt;@CacheObservable(ms)&lt;/code&gt; вешается на метод, который возвращает поток, и&#xA;дальше всё происходит само: первый вызов идёт на сервер, остальные в течение&#xA;указанных миллисекунд получают уже полученный ответ. Внутри — &lt;code&gt;publishReplay&lt;/code&gt;,&#xA;&lt;code&gt;refCount&lt;/code&gt; и &lt;code&gt;take(1)&lt;/code&gt;, то есть ровно та связка, которую иначе пришлось бы&#xA;выписывать в каждом сервисе.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Код либо умирает молодым, либо живёт долго</title>
				<link>https://bizibah.com/posts/kak-umiraet-kod/</link>
				<pubDate>Thu, 15 Jan 2026 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/kak-umiraet-kod/</guid>
				<description>&lt;p&gt;10 часов ноутбук шумел, а я смотрел, &lt;strong&gt;как умирает и выживает код&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Я взял репозиторий microsoft/vscode и прогнал его через git-of-theseus, чтобы&#xA;ответить на простой вопрос: что на самом деле происходит со строками кода со&#xA;временем?&lt;/p&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/kak-umiraet-kod/01_hu_6f36a4eacd2ea6bf.webp&#34; data-full=&#34;/posts/kak-umiraet-kod/01.jpg&#34; width=&#34;1100&#34; height=&#34;810&#34;&#xA;       alt=&#34;Когортный график: слои строк, добавленных в каждый год с 2015 по 2026, и то, как каждый слой тает со временем&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;p&gt;На графике — не просто рост проекта. Это когортный анализ: каждый цвет — строки,&#xA;добавленные в конкретный год, а их уменьшение — удаление, рефакторинг,&#xA;переписывание.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Сортировки: Либеральная, по Бакунину и некоторые другие</title>
				<link>https://bizibah.com/posts/liberalnaya-sortirovka/</link>
				<pubDate>Fri, 10 Jan 2025 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/liberalnaya-sortirovka/</guid>
				<description>&lt;p&gt;В ходе обсуждения с товарищем&#xA;&lt;a href=&#34;https://habr.com/ru/users/docent2007/&#34;&gt;docent2007&lt;/a&gt; статьи о сортировке&#xA;&lt;a href=&#34;https://habr.com/ru/companies/ruvds/articles/869746/&#34;&gt;«Милосердный Сталин»&lt;/a&gt; у&#xA;нас сами собой родились дополнительные, весьма полезные методы сортировки. Эти&#xA;методы определённо могут пригодиться каждому.&lt;/p&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/liberalnaya-sortirovka/01_hu_402260a88a56ea53.webp&#34; data-full=&#34;/posts/liberalnaya-sortirovka/01.png&#34; width=&#34;928&#34; height=&#34;717&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;h3 id=&#34;либеральная-сортировка&#34;&gt;Либеральная сортировка&lt;/h3&gt;&#xA;&lt;p&gt;Либеральная сортировка уважает каждое значение и его &amp;ldquo;право&amp;rdquo; на место.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;def&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;liberal_sort&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;):&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;c1&#34;&gt;# Каждый элемент остается на своём месте, потому что все равны&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;arr&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;То есть массив возвращается таким, какой он есть, без изменений, поскольку &amp;ldquo;у&#xA;каждого элемента своё уникальное место, которое нельзя нарушить&amp;rdquo;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Доклад про ChatGPT на митапе</title>
				<link>https://bizibah.com/posts/doklad-pro-chatgpt/</link>
				<pubDate>Mon, 04 Dec 2023 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/doklad-pro-chatgpt/</guid>
				<description>&lt;p&gt;1 декабря меня пригласили на митап, где я рассказал про своё использование&#xA;ChatGPT. 💻 Рекомендую послушать и почерпнуть полезное ✌️&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Публикации для блога в LinkedIn. Как правильно просить чат, примеры запросов,&#xA;автогенерация картинок.&lt;/li&gt;&#xA;&lt;li&gt;Как писать код на питоне для своего проекта. Как делать основу, как делать&#xA;уточнения и как приходить к генерации отдельных функций.&lt;/li&gt;&#xA;&lt;li&gt;Как использовать OpenAI для перевода текста для сайта. Сначала массивы, потом&#xA;объекты с ключами. Fine-tuning модели.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Запись: &lt;a href=&#34;https://www.youtube.com/watch?v=WY5EEz99YrY&#34;&gt;https://www.youtube.com/watch?v=WY5EEz99YrY&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Key-value storage на пакетах ping</title>
				<link>https://bizibah.com/posts/key-value-na-paketah-ping/</link>
				<pubDate>Tue, 26 Sep 2023 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/key-value-na-paketah-ping/</guid>
				<description>&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/key-value-na-paketah-ping/01_hu_dacdaa9afac42dd6.webp&#34; data-full=&#34;/posts/key-value-na-paketah-ping/01.png&#34; width=&#34;572&#34; height=&#34;424&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;p&gt;Как-то давно я просматривал опции для команды ping и обратил внимание, что можно&#xA;задавать размер ICMP пакета. &amp;ldquo;Хм&amp;rdquo;, — подумал я: &amp;ldquo;Можно же сложить в сам пакет&#xA;какую-то полезную нагрузку&amp;rdquo;. Эта идея время от времени всплывала у меня в&#xA;голове, но что именно можно хранить в пакете ICMP придумать не удавалось.&#xA;Однако, недавно пришло понимание, что если хранить данные в ICMP пакете, то они&#xA;не будут занимать место в оперативной памяти! То есть можно сделать key-value&#xA;хранилище, где &lt;strong&gt;все данные будут храниться внутри сети&lt;/strong&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Как «будет» превратилось в «бздеть»</title>
				<link>https://bizibah.com/posts/budet-prevratilos-v-bzdet/</link>
				<pubDate>Wed, 16 Aug 2023 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/budet-prevratilos-v-bzdet/</guid>
				<description>&lt;p&gt;В общем, есть у меня один проект свой, в котором я собираю новости с самых&#xA;популярных ресурсов, а потом каждой новости присваиваю теги.&lt;/p&gt;&#xA;&lt;p&gt;Вчера смотрю отчёт за день, в котором публикуются теги, набирающие популярность,&#xA;и вижу в топе русское слово «&lt;strong&gt;бздеть&lt;/strong&gt;». Выглядит так, словно резко выросла к&#xA;нему популярность и новостные ресурсы стали писать на эту тематику. Это очень&#xA;странно. К тому же в последней связанной с этим тегом новости этот тег не&#xA;присутствует.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Плагин для Jira, которого нет</title>
				<link>https://bizibah.com/posts/plagin-dlya-jira/</link>
				<pubDate>Sun, 19 Mar 2023 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/plagin-dlya-jira/</guid>
				<description>&lt;p&gt;Для рабочих нужд я как-то писал плагин для браузера, который  позволяет&#xA;автоматически генерировать сообщения для коммитов на основе задач Jira.&lt;/p&gt;&#xA;&lt;p&gt;Это очень удобно для ленивых разработчиков.&lt;/p&gt;&#xA;&lt;p&gt;В общем подумывал я написать такой плагин для Jira, но решил для начала спросить&#xA;у ChatGPT. Конечно же такие плагины есть для самой Jira:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Кешируем ответы API для фронтенда с помощью Yakbak</title>
				<link>https://bizibah.com/posts/keshiruem-api-otvety-yakbak/</link>
				<pubDate>Fri, 18 Nov 2022 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/keshiruem-api-otvety-yakbak/</guid>
				<description>&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/keshiruem-api-otvety-yakbak/01_hu_2ddcfa3a12f96be0.webp&#34; data-full=&#34;/posts/keshiruem-api-otvety-yakbak/01.png&#34; width=&#34;627&#34; height=&#34;153&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;p&gt;Представьте себе типичную ситуацию: вы frontend разработчик в обычный компании.&#xA;После сытного обеда вы лениво скроллите Хабр и смотрите Ютуб. Вдруг в чат&#xA;прилетает сообщение от девопсов: &amp;ldquo;&lt;em&gt;Ребята, мы планируем сегодня вечером&#xA;разгрузить мастер и перенести admission контроллер на ноду и чтобы два раза не&#xA;вставать всем подам выделим 50 CPU. Завтра всё будет работать как обычно, но&#xA;быстрее!&lt;/em&gt;&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Только 39% функций в node_modules уникальны</title>
				<link>https://bizibah.com/posts/39-procentov-funkcij-v-node-modules/</link>
				<pubDate>Fri, 30 Apr 2021 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/39-procentov-funkcij-v-node-modules/</guid>
				<description>&lt;p&gt;&lt;strong&gt;39%&lt;/strong&gt; — это количество уникальных функций в папке &lt;code&gt;node_modules&lt;/code&gt; в дефолтном&#xA;Angular проекте, созданном командой &lt;code&gt;ng new my-app&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Мне было интересно посмотреть, сколько похожих функций существует в&#xA;node_modules. Ведь наверняка же разработчики открытых библиотек решают проблемы&#xA;одинаковыми способами, так же изучают одни и те же алгоритмы, ну и, чего кривить&#xA;душой, копируют одни и те же решения со StackOverflow.&lt;/p&gt;</description>
			</item>
			<item>
				<title>А что если перейти на удобный шестидневный календарь?</title>
				<link>https://bizibah.com/posts/udobnyj-shestidnevnyj-kalendar/</link>
				<pubDate>Fri, 27 Nov 2020 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/udobnyj-shestidnevnyj-kalendar/</guid>
				<description>&lt;p&gt;Примерно месяц назад я добавлял в интерфейс кнопку, которая устанавливала дату&#xA;календаря, соответствующую понедельнику прошлой недели. В процессе разработки я&#xA;понял, что было бы хорошо изменить требования, потому что реализовывать их&#xA;достаточно сложно. Только менять требование заказчика как-то не очень хочется. А&#xA;что если изменить календарь так, чтобы он стал удобный и для устного счета и для&#xA;программирования?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Как программист читает «Происхождение видов» Дарвина</title>
				<link>https://bizibah.com/posts/programmist-chitaet-darvina/</link>
				<pubDate>Tue, 01 Sep 2020 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/programmist-chitaet-darvina/</guid>
				<description>&lt;p&gt;Во время чтения «Происхождения видов путем естественного отбора» Чарльза&#xA;Дарвина, меня не покидало стойкое дежавю. Позже я понял, что механизмы,&#xA;описанные в книге сильно коррелируют с механизмами enterprise разработки в&#xA;больших компаниях. Где в качестве условий окружающей среды выступают постоянно&#xA;меняющиеся бизнес-требования и программисты, а в качестве организмов — код.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Типичное использование Observable в Angular 4</title>
				<link>https://bizibah.com/posts/observable-v-angular-4/</link>
				<pubDate>Sun, 24 Sep 2017 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/observable-v-angular-4/</guid>
				<description>&lt;p&gt;Представляю вашему вниманию типичные варианты использования Observable объектов&#xA;в компонентах и сервисах Angular 4.&lt;/p&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/observable-v-angular-4/01_hu_ce929d2d7d73cde5.webp&#34; data-full=&#34;/posts/observable-v-angular-4/01.jpg&#34; width=&#34;775&#34; height=&#34;316&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;h2 id=&#34;подписка-на-параметр-роутера-и-мапинг-на-другой-observable&#34;&gt;Подписка на параметр роутера и мапинг на другой Observable&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;Задача:&lt;/em&gt; При открытии страницы &lt;code&gt;example.com/#/users/42&lt;/code&gt;, по &lt;code&gt;userId&lt;/code&gt; получить&#xA;данные пользователя.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Решение:&lt;/em&gt; При инициализации компоненты &lt;code&gt;UserDetailsComponent&lt;/code&gt; мы подписываемся&#xA;на параметры роутера. То есть если &lt;code&gt;userId&lt;/code&gt; будет меняться — будер срабатывать&#xA;наша подписка. Используя полученный &lt;code&gt;userId&lt;/code&gt;, мы из сервиса &lt;code&gt;userService&lt;/code&gt;&#xA;получаем &lt;code&gt;Observable&lt;/code&gt; с данными пользователя.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Чего хотят координаторы доменных зон?</title>
				<link>https://bizibah.com/posts/chego-hotyat-koordinatory-domennyh-zon/</link>
				<pubDate>Tue, 18 Aug 2015 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/chego-hotyat-koordinatory-domennyh-zon/</guid>
				<description>&lt;p&gt;Для того, чтобы зарегистрировать домен, нужны следующие данные:&lt;/p&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/chego-hotyat-koordinatory-domennyh-zon/01_hu_243927dff60385ab.webp&#34; data-full=&#34;/posts/chego-hotyat-koordinatory-domennyh-zon/01.jpg&#34; width=&#34;144&#34; height=&#34;200&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;ul&gt;&#xA;&lt;li&gt;Владелец домена;&lt;/li&gt;&#xA;&lt;li&gt;Администратор;&lt;/li&gt;&#xA;&lt;li&gt;Технический контакт;&lt;/li&gt;&#xA;&lt;li&gt;Контакт для счетов;&lt;/li&gt;&#xA;&lt;li&gt;Группа nameserver&amp;rsquo;ов.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Но некоторым координаторам доменных зон весьма скучно и, забавы ради, они&#xA;выдумывают задачки для владельцев доменов и разработчиков. Расскажу о&#xA;дополнительных данных для регистрации домена, которые нужно складывать в блок&#xA;&lt;strong&gt;extension&lt;/strong&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Учимся разбираться в искусстве программирования</title>
				<link>https://bizibah.com/posts/iskusstvo-programmirovaniya/</link>
				<pubDate>Tue, 10 Jun 2014 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/iskusstvo-programmirovaniya/</guid>
				<description>&lt;h2 id=&#34;классика&#34;&gt;Классика&lt;/h2&gt;&#xA;&lt;p&gt;Самый обычный код.&lt;/p&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/iskusstvo-programmirovaniya/01_hu_36abdd36b5886b6d.webp&#34; data-full=&#34;/posts/iskusstvo-programmirovaniya/01.png&#34; width=&#34;214&#34; height=&#34;231&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-php&#34; data-lang=&#34;php&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;$size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;sizeof&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$size&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;--&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;lt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$i&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;);&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;++&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;nv&#34;&gt;$k&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;];&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;];&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;nv&#34;&gt;$arr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$j&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$k&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;барокко&#34;&gt;Барокко&lt;/h2&gt;&#xA;&lt;p&gt;Барокко (итал. barocco — «причудливый», «странный», «склонный к излишествам»)&lt;/p&gt;&#xA;&lt;p&gt;Барокко свойственны контрастность, напряженность, стремление к величию и&#xA;пышности как в именовании, так и в комментариях, к слиянию разных стилей&#xA;кодирования. Обычно уже на продакшене обнаруживаются скрытые «детонаторы».&lt;/p&gt;</description>
			</item>
			<item>
				<title>Помогаем роботу-сортировщику на почте</title>
				<link>https://bizibah.com/posts/robot-sortirovschik-na-pochte/</link>
				<pubDate>Wed, 08 Jan 2014 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/robot-sortirovschik-na-pochte/</guid>
				<description>&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/robot-sortirovschik-na-pochte/01_hu_1b6d9be074642056.webp&#34; data-full=&#34;/posts/robot-sortirovschik-na-pochte/01.jpg&#34; width=&#34;253&#34; height=&#34;250&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;h2 id=&#34;короткая-предыстория&#34;&gt;Короткая предыстория&lt;/h2&gt;&#xA;&lt;p&gt;Беседовал я некоторое время назад со знакомым роботом. Устроился он временно на&#xA;Почту России сортировщиком писем. Работёнка не пыльная, смотрит индекс на письме&#xA;и помещает их в нужное отверстие. Но есть проблема с письмами, у которых в&#xA;индексе сделана опечатка. На выяснение правильного индекса уходит много времени&#xA;и пиво успевает выдыхаться.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Люди с кодопрошлым, или закат программистов</title>
				<link>https://bizibah.com/posts/lyudi-s-kodoproshlym/</link>
				<pubDate>Mon, 18 Nov 2013 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/lyudi-s-kodoproshlym/</guid>
				<description>&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/lyudi-s-kodoproshlym/01_hu_1032def189f472b6.webp&#34; data-full=&#34;/posts/lyudi-s-kodoproshlym/01.png&#34; width=&#34;117&#34; height=&#34;145&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;p&gt;— Багнутый диван! — чертыхнулся Антон, в очередной раз придавив пальцы&#xA;тяжеленным диваном, который они с Сергеем тащили уже 14 пролётов.&lt;/p&gt;&#xA;&lt;p&gt;— Багнутый? — переспросил Сергей, — ты тоже программистом раньше работал?&lt;/p&gt;&#xA;&lt;p&gt;Они уже почти месяц работали вместе, но Сергей ни разу не заподозрил в нем&#xA;бывшего программиста. Жилистый, мускулистый Антон как-то мало походил на бывшего&#xA;программиста.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Pick your color: какой цвет тебе к лицу</title>
				<link>https://bizibah.com/posts/pick-your-color/</link>
				<pubDate>Sat, 08 Dec 2012 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/pick-your-color/</guid>
				<description>&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/pick-your-color/01_hu_f489fc38d852eeb5.webp&#34; data-full=&#34;/posts/pick-your-color/01.png&#34; width=&#34;128&#34; height=&#34;128&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;h2 id=&#34;проблема&#34;&gt;Проблема&lt;/h2&gt;&#xA;&lt;p&gt;Жена очень тщательно относится к выбору одежды. Цвет нарядов должен сочетаться с&#xA;цветотипом внешности, чтобы подчеркнуть природные достоинства и скрыть&#xA;недостатки. Правильно подобранный цвет освежает лицо, делает его ярким и&#xA;выразительным. Поэтому пришла идея сделать сайт, на котором можно без особых&#xA;усилий определить — какой цвет тебе «к лицу».&lt;/p&gt;</description>
			</item>
			<item>
				<title>Запихиваем 280 символов в один твит</title>
				<link>https://bizibah.com/posts/280-simvolov-v-odin-tvit/</link>
				<pubDate>Sat, 18 Feb 2012 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/280-simvolov-v-odin-tvit/</guid>
				<description>&lt;h2 id=&#34;откуда-пришла-идея&#34;&gt;Откуда пришла идея&lt;/h2&gt;&#xA;&lt;p&gt;Как известно, twit&amp;rsquo;нуть можно символами юникода, а их, как известно, достаточно&#xA;много.&lt;/p&gt;&#xA;&lt;p&gt;Поэтому я подумал, а не кодировать ли два символа латинского алфавита одним&#xA;юникодовским?&lt;/p&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/280-simvolov-v-odin-tvit/01_hu_6aa9cd525cdf0b18.webp&#34; data-full=&#34;/posts/280-simvolov-v-odin-tvit/01.jpg&#34; width=&#34;427&#34; height=&#34;202&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;h2 id=&#34;немого-о-механизме&#34;&gt;Немого о механизме&lt;/h2&gt;&#xA;&lt;h3 id=&#34;про-html&#34;&gt;Про html&lt;/h3&gt;&#xA;&lt;p&gt;В html используется много специальных символов, у которых есть определенные&#xA;коды.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Хабракомментарии как машина Тьюринга</title>
				<link>https://bizibah.com/posts/habrakommentarii-kak-mashina-tyuringa/</link>
				<pubDate>Fri, 23 Dec 2011 00:00:00 +0100</pubDate>
				<guid>https://bizibah.com/posts/habrakommentarii-kak-mashina-tyuringa/</guid>
				<description>&lt;h2 id=&#34;как-это-вообще-взбрело-мне-в-голову&#34;&gt;Как это вообще взбрело мне в голову?&lt;/h2&gt;&#xA;&lt;img class=&#34;zoomable&#34; src=&#34;https://bizibah.com/posts/habrakommentarii-kak-mashina-tyuringa/01_hu_96dcca98a7536b70.webp&#34; data-full=&#34;/posts/habrakommentarii-kak-mashina-tyuringa/01.jpg&#34; width=&#34;266&#34; height=&#34;200&#34;&#xA;       alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;p&gt;У каждого хабракомментария есть свой адрес. Строение адреса коментария:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;habrahabr.ru/blogs/gtd/135090/#comment_4486120&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;То что до &amp;ldquo;#&amp;rdquo; — это ссылка на топик, а после — якорь, указывающий положение&#xA;комментария на странице.&lt;/p&gt;&#xA;&lt;p&gt;Если в комментариях указывать ссылки на другие комментарии, а потом жмякать по&#xA;ним, то страница будет прокручиваться до нужного места. Еще у самих коментариев&#xA;есть пара стрелок &lt;strong&gt;↑ ↓&lt;/strong&gt; позволяющих перемещаться между ответами на&#xA;комментарии.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Интерактивная диаграмма на CSS и HTML</title>
				<link>https://bizibah.com/posts/interaktivnaya-diagramma-na-css/</link>
				<pubDate>Tue, 30 Aug 2011 00:00:00 +0200</pubDate>
				<guid>https://bizibah.com/posts/interaktivnaya-diagramma-na-css/</guid>
				<description>&lt;h2 id=&#34;hover&#34;&gt;:hover&lt;/h2&gt;&#xA;&lt;p&gt;В очередной раз просматривая плагины для реализации всплывающих подсказок,&#xA;наткнулся на замечательный &lt;a href=&#34;http://ruseller.com/lessons.php?rub=2&amp;amp;id=664&#34;&gt;пост&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Ничего сверхсложного и сверхсекретного в реализации не было, но она мне&#xA;понравилась своей простотой и отсутствием javascript&amp;rsquo;a.&lt;/p&gt;&#xA;&lt;p&gt;Обмозговав возможное применение, решил что на самой подсказке тоже могут быть&#xA;подсказки, на подсказках второго уровня, могут быть подсказки 3его уровня и т.д.&#xA;Можно сделать &lt;strong&gt;интерактивную блок-схему!&lt;/strong&gt;&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
