Notas del Terrible
Заметки Ужасного Зануды

Perl Cheat Sheet

августа 25, 2010 19:31 by terR0Q

Отличная таблица всех настроек регулярных выражений Perl. Там же по соседству куча листов по совсем другим темам и для других языков.


MonoDevelop & Visual Studio

августа 20, 2010 21:27 by terR0Q

Однако же MonoDevelop спокойно работает с проектами от Visual Studio. Пробовали решение от VS 2010. С постепенной доводкой .NET под *nix это просто супер.

Спасибо Рогову за подсказку.


what the original author used wasn't sane

августа 18, 2010 23:09 by terR0Q

Perl мне даже понравился. Если писать аккуратно, то получается реально быстрее C#. Но, есть одно толстое «но»: модули. К одному модулю в ревью я нашел шикарный комментарий:

«(14:02:14) rafl: dandv: the dist name simply changed at some point, because what the original author used wasn’t sane.»

Не то, чтобы так во всем, надо отдать должное за усилия CPAN в стандартизации. Установка так или иначе не проблематична и я только один раз наткнулся на «капризный» модуль (оттуда и комментарий). Но есть одна вещь, к которой я привык и не хочу отвыкать: в Visual Studio достаточно добавить ссылку на нужную библиотеку в проект. Всего пара кликов против горы текста, тестов и сборок.


Установка старого Perl

августа 10, 2010 02:30 by terR0Q

Немного баш-нёрдства, а то будет обидно забыть.

В Ubuntu 10.04 в комплекте идет Perl 5.10. Для проекта нужен 5.8. Даунгрейд делается не так просто через apt-get.

Подробное описание, что и зачем есть тут (by Ovid). Вкратце и с рядом поправок (с тех пор не нужен патч и есть версия 5.8.9, а 5.8.8 не доступна) все выглядит так:

wget http://www.cpan.org/src/perl-5.8.9.tar.gz

tar xzf perl-5.8.9.tar.gz

cd perl-5.8.9

sh Configure -de

sudo ln -s /bin/bash /bin/sh

perl -i~ -nle 'print unless /<command-line>/' makefile x2p/makefile

sudo ln -s /usr/src/linux-headers-2.6.28-13/arch/x86/include/asm/page.h /usr/include/asm/page.h

 

make test && make install

 

sudo ln -s /bin/dash /bin/sh

Исполнять все надо от root’а. После завершения рестарт и вуаля: perl -v выдает 5.8.9.

Попутно в очередной раз посмеялся про «слаженность» софта (если кому вдруг внезапно интересно, смотрим в ссылке про dash и bash).


Ubunto & Perl

августа 9, 2010 19:51 by terR0Q

Заценим-с этот чей-то там Убунту.


Killa Appz + Perl

августа 8, 2010 15:09 by terR0Q

С такими приколами делать своё дело в 2 раза интереснее.

И ещё первые впечатления от Perl: столько вариаций написания кода и позволений со стороны среды, что пускать в разработку зеленых новичков просто страшно. Плюс непривычно, что для получения готового сервера приложений, надо делать самостоятельную заготовку для решения таких задач как: очередь запросов, определения внешнего интерфейса, контроль ошибок и т.д.

С другой стороны, всё это делается достаточно легко, если просто покопаться в библиотеках и погуглить (умные люди уже все давно перебрали по косточкам). Но всё же написание велосипедов с нуля это перебор. В ASP.NET такие штуки готовятся щелчком пальцев без единой строки кода, а тут примерно так: «поднимите ваши руки, улыбнитесь, сделайте наклон вперед и откройте ваш сокет». Это просто дорого с проектной точки зрения.


1 к 20

июля 15, 2010 16:37 by terR0Q

Про соотношение эффективности. То, что я сделал за полтора часа (настройка PHP ещё в апреле — один час и установка UMI.CMS под винду), один товарищ не может сделать на юниксе уже 7 дней.

Квалификация, знания, платформы... Это всё ерунда и слова для метрик. Что реально нужно: внимательность и хотя бы немного вежливости, а также своевременность. И честность в плане «могу — не могу».


Visual Studio 2010

июля 7, 2010 00:45 by terR0Q

Распробовал Visual Studio 2010. Наконец-то, спустя долгие годы после появления первой версии VS .NET эта штука стала быстрой и удобной! Свершилось же спустя 8 лет.

Для сравнения (с VS 2008). Солюшн из двух проектов, один ASP.NET MVC, другой — Silverlight. Раньше отладка дружила только с IE, теперь прекрасно «слышит» закрытие закладки в том же Хроме. Сильвер опять же отлаживается не только в осле. Старт отладки с нуля (запускается мини-сервер) происходит за 10 секунд против 30-40 раньше. Старт программы — 5 секунд против 12-15 даже при всех способах ускорения. Открытие, создание файлов, работа с файлами проекта вообще не тормозит, виват.

В общем, в плане скорости стало напоминать Eclipse. И это чертовски радует.


Umbraco 4.5

июля 5, 2010 19:36 by terR0Q

В конце июня вышел релиз 4.5 Umbraco. Релиз нестандартный и весьма интересный: наконец-то появился полноценный редактор для JS, XML и прочих файлов. Производительность админки и самого сайта заметно приросла.

Есть только одна важная мелочь. Для работы теперь необходим .NET 4, а веб-приложение должно работать только в интегрированном режиме ASP.NET 4.

В Umbraco 5 будет переход на модель MVC, и я надеюсь, что разработчики к этому подтянут реальную пользу для разработки и результатов работы с движком.


bad/good code

июля 1, 2010 15:20 by terR0Q

Как же это чертовски хорошо знакомо


CodePeckers

июня 25, 2010 20:54 by terR0Q

А ещё 3 дня, как готовы визитки и сайт студии. Вечером еще и форму заказа на всякий случай добавим.


Различие ASP.NET и PHP на IIS

июня 25, 2010 17:43 by terR0Q

Столкнулся с очень увесистым различием в работе ASP.NET и PHP под управлением IIS. Симптом проблемы очень нагляден: на одном и том же сервере .NET-сайты работают быстро, на основе PHP — тормозят.

Такое положение дел достало, начал копать вопрос. Проверка ping’ом показала, что сетевой проблемы нет: ответы приходят максимум за полсекунды (привет, «последняя миля»). Запустил профилирование на сервере и закидал его запросами по всем сайтам. Профиль был короткий, всего 1 минута, но наглядный.

Проблема вкратце: оперативная память была перегружена и её не хватало, активно использовался своп.

Решение: сервер был хиленький, Hyper-V с 512 Мб рамы. Сейчас памяти в 2 раза больше, а процессорного времени в 2,5 раза больше. Теперь занято не 85%, а 71% в среднем, и главное, что не свопятся сайты.

В чём суть проблемы.

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

С PHP история другая. Природа PHP основана на парсинге текста. Как итог, постоянная работа с файловой системой, от которой частично спасает кеширование. Так или иначе, при более менее схожем функциональном объеме, такой сайт будет съедать заметно больше памяти и чаще обращаться к диску, чем сайт под управлением .NET. Именно поэтому сайты на PHP вылетали из оперативной памяти в своп, отсюда и жуткие тормоза в среднем по 2-5 на генерацию ответа — доступ к жесткому диску дорогой.


Microsoft SEO Toolkit

апреля 21, 2010 12:05 by terR0Q

До кучи к другим средствам повышения качества сайта, свежая тулза от MS: SEO Toolkit.


IIS: all your ASP.NET belong to us

апреля 16, 2010 18:51 by terR0Q

Парой весьма простых действий довёл IIS до того, что он перестал узнавать свою родню — ASP.NET. Любые попытки восстановить работу впустую, перерегистрация при помощи aspnet_regiis.exe -i приводила к ошибке инициализации приложения. Рецепт лечения оказался заходом с совершенно другого края: в реесте по пути HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SysPlant меняем настройку Start в значение 4, рестартим и успешно стартуем aspnet_regiis.exe -i.


Tahoma

апреля 14, 2010 17:41 by terR0Q

Ненавижу Тахому в русском исполнении и вообще для блоков текста. Для мелких отдельных и простых надписей годится. Для всего остального — нет. Тем не менее, в веб-дизайне встречается слишком часто. Английский вариант несколько лучше, да и читать можно.