<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Андрей Мукомолов</title><link>https://mukomolov.com/ru/</link><description>Andrey Mukomolov's personal website and blog</description><generator>Hugo -- gohugo.io</generator><language>ru</language><managingEditor>mukomolov@gmail.com (Андрей Мукомолов)</managingEditor><webMaster>mukomolov@gmail.com (Андрей Мукомолов)</webMaster><lastBuildDate>Thu, 09 Apr 2026 20:30:00 +0200</lastBuildDate><atom:link href="https://mukomolov.com/ru/index.xml" rel="self" type="application/rss+xml"/><item><title>Вайб-кодинг синхронизатора календарей</title><link>https://mukomolov.com/ru/blog/2026/04/vibe-coding-calendar-sync/</link><pubDate>Thu, 09 Apr 2026 20:30:00 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2026/04/vibe-coding-calendar-sync/</guid><description>&lt;p>Хотел написать пост до того, как уеду в относительно длинную поездку. Это первый пост после перезапуска блога и было бы забавно, если бы я пообещал себе писать чаще, а потом снова пропал на непонятное количество времени. Я так уже делал примерно 13 лет назад, и не хотелось бы повторять.&lt;/p></description></item><item><title>Reboot</title><link>https://mukomolov.com/ru/blog/2026/03/reboot/</link><pubDate>Mon, 16 Mar 2026 19:30:00 +0100</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2026/03/reboot/</guid><description>&lt;p>В прошлом году я довольно плотно развлекался с генеративным ИИ для написании кода. В какой-то момент я закончил и опубликовал один небольшой проект и подумал, что было бы неплохо написать об этом пост. Проект сам по себе маленький и вряд ли будет кому-то кроме меня интересен, но это хороший повод поделиться впечатлениями на более широкую тему вайб-кодинга и современного программирования.&lt;/p></description></item><item><title>Итоги года</title><link>https://mukomolov.com/ru/blog/2013/12/year-review/</link><pubDate>Tue, 31 Dec 2013 21:11:28 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2013/12/year-review/</guid><description>&lt;p>Что-то я совсем забросил свой блог, хотя изначально собирался писать сюда довольно регулярно. Ну да ладно - пост подведения итогов года неплохо подходит, чтобы коротко описать события, которые произошли за последнее время.&lt;/p></description></item><item><title>По следам WWDC 2012</title><link>https://mukomolov.com/ru/blog/2012/06/wwdc-2012/</link><pubDate>Tue, 06 Nov 2012 14:18:33 +0100</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/06/wwdc-2012/</guid><description><![CDATA[<p>Как и многие, почитал трансляцию с WWDC.
Интересно, что в отличие от прошлых таких ивентов некоторые сайты не стали делать страницы трансляций, а вместо этого <a href="http://twitter.com/iphones_ru_live" target="_blank" rel="noopener noreffer ">стали</a> <a href="http://twitter.com/macspoon_live" target="_blank" rel="noopener noreffer ">писать</a> в твиттер. Скорее всего это связано с неспособностью нормально держать нагрузку: в прошлые годы у многих таких сайтов были перебои, да и сейчас на том же <a href="http://appleinsider.ru" target="_blank" rel="noopener noreffer ">AppleInsider</a> включен режим трансляции и ничего кроме трансляции посмотреть нельзя, а в шапке сайта красным цветом крупно написано, что &ldquo;Во время онлайн-трансляции обновление страницы происходит автоматически&rdquo; :)</p>]]></description></item><item><title>Будущее зависит от меня</title><link>https://mukomolov.com/ru/blog/2012/10/future-depends-on-me/</link><pubDate>Sun, 28 Oct 2012 13:47:55 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/10/future-depends-on-me/</guid><description><![CDATA[<p>Четвертого октября был последний день моей работы в <a href="http://www.oilnet.ru" target="_blank" rel="noopener noreffer ">ОАО &ldquo;Связьтранснефть&rdquo;</a>. Я проработал там почти четыре года, за которые:</p>
<ul>
<li>так или иначе позанимался разработкой почти всех модулей нашей системы управления предприятием (&ldquo;Документооборот&rdquo;, &ldquo;Бюджетирование&rdquo;, &ldquo;Договорная работа&rdquo; и т.д.)</li>
<li>разрабатывал и дорабатывал базовые классы и компоненты системы</li>
<li>разрабатывал инструменты, автоматизирующие отладку, тестирование и прочие операции</li>
<li>администрировал часть инфраструктуры, используемой при разработке</li>
<li>переводил проект на новые компоненты, версии IDE, систему контроля версий</li>
<li>выступил на конкурсе молодых специалистов, где защитил нашу общую работу по автоматизации бюджетирования и занял первое место.</li>
</ul>
<p>Настало время двигаться дальше. С пятого октября я работаю в столичном филиале <a href="http://www.megafon.ru" target="_blank" rel="noopener noreffer ">&ldquo;Мегафона&rdquo;</a>, где занимаюсь разработкой портала на <a href="http://www.djangoproject.com" target="_blank" rel="noopener noreffer ">Django</a>/<a href="http://oracle.com" target="_blank" rel="noopener noreffer ">Oracle</a>, систем сбора статистики и еще рядом задач.</p>]]></description></item><item><title>Virtualenv</title><link>https://mukomolov.com/ru/blog/2012/08/virtualenv/</link><pubDate>Sat, 04 Aug 2012 22:30:00 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/08/virtualenv/</guid><description><![CDATA[<p>Есть куча способов установки питоновских пакетов. Какие-то более удобны, какие-то менее, в зависимости от ситуации. Опишу способ, который мне оказался удобен в большинстве случаев.</p>
<p>Для его использования не нужно ничего, кроме собственно <a href="https://virtualenv.pypa.io/en/latest/" target="_blank" rel="noopener noreffer ">virtualenv</a> и <a href="https://pypi.org/project/pip/" target="_blank" rel="noopener noreffer ">pip</a>. Для каждого проекта я использую отдельную среду со своим набором пакетов - мне так удобнее управлять зависимостями.</p>
<p>Для создания окружений я использую небольшую функцию в <code>~/.profile</code>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">mkenv<span class="o">()</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">  <span class="nv">VENV_PATH</span><span class="o">=</span><span class="s2">&#34;</span><span class="nv">$HOME</span><span class="s2">/.python-envs`pwd`&#34;</span>
</span></span><span class="line"><span class="cl">  virtualenv --no-site-packages -p <span class="sb">`</span>which python<span class="sb">`</span> <span class="nv">$VENV_PATH</span>
</span></span><span class="line"><span class="cl">  <span class="nb">echo</span> <span class="s2">&#34;VIRTUALENV_PATH=</span><span class="nv">$VENV_PATH</span><span class="s2">&#34;</span> &gt; .venv
</span></span><span class="line"><span class="cl">  <span class="nb">source</span> <span class="nv">$VENV_PATH</span>/bin/activate
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span></code></pre></div><p>Окружения создаются в скрытой папке <code>~/.python-envs/&lt;путь_к_папке_с_проектом&gt;</code>, а путь к окружению пишется в папку проекта в скрытый файл <code>.venv</code>. В принципе, путь можно и вычислять, но я уже пару раз менял место для новых окружений, а так нет необходимости переносить старые.</p>]]></description></item><item><title>Про Moscow Django Meetup</title><link>https://mukomolov.com/ru/blog/2012/07/moscow_django_meetup/</link><pubDate>Tue, 10 Jul 2012 20:20:05 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/07/moscow_django_meetup/</guid><description><![CDATA[<p>До недавнего времени я очень завидовал украинцам, потому что у них было довольно развитое сообщество питонистов. Проводилась куча конференций, из того что помню с ходу - <a href="http://kyivpy.org.ua/" target="_blank" rel="noopener noreffer ">Kiyv.py</a>, <a href="http://kharkivpy.org.ua/" target="_blank" rel="noopener noreffer ">KharkivPy</a>, <a href="http://ua.pycon.org/" target="_blank" rel="noopener noreffer ">PyConUA</a>, наверняка жизнь питоновской тусовки бурлила и на менее официальных встречах. В Москве же ничего подобного и близко не было, хотя довольно много питонистов посещало <a href="http://events.yandex.ru/events/yasubbotnik/" target="_blank" rel="noopener noreffer ">Яндекс.Субботники</a>, <a href="http://events.yandex.ru/events/yac/" target="_blank" rel="noopener noreffer ">YaC</a>, <a href="http://www.devconf.ru/" target="_blank" rel="noopener noreffer ">DevConf</a> и прочие конференции. Как оказалось, завидовал не я один.</p>]]></description></item><item><title>Machine Learning complete</title><link>https://mukomolov.com/ru/blog/2012/06/ml-complete/</link><pubDate>Thu, 28 Jun 2012 21:45:26 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/06/ml-complete/</guid><description><![CDATA[<p>Закончился <a href="http://www.coursera.org/course/ml" target="_blank" rel="noopener noreffer ">курс по машинному обучению</a> от Coursera. То есть, для меня он закончился, а вообще работы можно сдавать до первого августа.</p>
<p>Курс понравился. Изначально я на него записался, так как хотел использовать машинное обучение в паре своих проектов. Теперь лучше понимаю, что с помощью машинного обучения можно сделать и на какой результат рассчитывать.</p>
<p>Еще одно впечатление, которое впервые возникло от университетского курса искусственного интеллекта, и которое повторилось сейчас - удивление, насколько всё-таки простые и понятные идеи, подкрепленные математическим аппаратом, заложены в этих алгоритмах. Взять хотя бы градиентный спуск - его же вообще на первом курсе проходили!</p>]]></description></item><item><title>Twitter Bootstrap</title><link>https://mukomolov.com/ru/blog/2012/06/twitter-bootstrap/</link><pubDate>Mon, 18 Jun 2012 20:37:48 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/06/twitter-bootstrap/</guid><description><![CDATA[<p>Занимаемся тут с <a href="http://twitter.com/Yuki_Sumaguro" target="_blank" rel="noopener noreffer ">@Yuki_Sumaguro</a> одним некоммерческим проектом по созданию небольшого сайта. Вообще, навыки верстальщика у меня в довольно зачаточном состоянии, поскольку много верстать не приходилось. А когда приходилось, изображал что-то совсем макетнообразное.</p>
<p>А тут встала задача сделать сайт, и желательно с нуля. Соответственно, придется и дизайн придумывать, и верстать, и на js что-то накропать, и серверную часть накодить, хоть и простую.</p>
<p>В своё время <a href="http://twitter.com/hellodrw" target="_blank" rel="noopener noreffer ">@hellodrw</a> советовал мне вёрстку изучать, начиная с HTML4, потом переходить к xHTML и так далее. Но ведь долго, а сайт поскорее запустить хочется. Да и не было у меня никогда особого желания становиться верстальщиком: для меня бoльшая часть работы верстальщика сводится к поиску и попыткам исправления багов в рендеринге разных браузеров, причем количество багов и несовместимостей постоянно растет. В общем, не настолько вдохновляющая работа :)</p>]]></description></item><item><title>Sublime Text 2</title><link>https://mukomolov.com/ru/blog/2012/06/sublime-text-2/</link><pubDate>Sat, 02 Jun 2012 15:18:21 +0200</pubDate><author>Андрей Мукомолов</author><guid>https://mukomolov.com/ru/blog/2012/06/sublime-text-2/</guid><description><![CDATA[<p>Уже дочитывал <a href="https://blog.codinghorror.com/how-to-stop-sucking-and-be-awesome-instead/" target="_blank" rel="noopener noreffer ">статью Джефа Этвуда</a> и собирался сесть досматривать лекции по <a href="http://www.coursera.org/course/hci" target="_blank" rel="noopener noreffer ">HCI</a>, когда моргнул свет и в доме закончился интернет. В любом случае я собирался сегодня сюда написать, но хотел сделать это ближе к вечеру.</p>
<p>Поговорим сегодня об инструментах, используемых в работе. Так сложилось, что основным инструментом программиста является текстовый редактор. Есть конечно разной степени навороченности IDE, предоставляющие множество разного функционала, умеющие работать с плагинами, и позволяющие с помощью расширений изменить среду до неузнаваемости. Но самые мощные IDE так или иначе остаются по сути текстовым редактором, обвешанным дополнительной функциональностью.</p>]]></description></item></channel></rss>