Показаны сообщения с ярлыком cpan. Показать все сообщения
Показаны сообщения с ярлыком cpan. Показать все сообщения

понедельник, 9 ноября 2009 г.

Все говно, кроме мочи

В очередной раз нашел этому подтверждение в интервью с Brad Fitzpatrick: "...The implementation of libraries that look like they could be beatiful are shit...".

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

В эти выходные наконец таки реализовал скрипт для сборки нового ядра и почистки старых. Экономия нервных клеток на этой операции будет оценена не скоро, но думаю - будет приятно. Мне кажется, именно в этом суть программистского подхода к делу, все рутинные операции учить делать машину. Если мы делаем это больше чем один раз, это уже надо автоматизировать. Очередной пункт в личном todo-листе выполнен. Выложу тут и код этого сокровища в следующий раз. А пока оставшиеся пункты:
1. python-скрипт для заполнения ежедневных отчетов на работе
2. perl-скрипт Finance::Quote::Sberbank - исправить накопившиеся ошибки (есть 9-месячный багрепорт, а это ужасно)
3. локализовать openerp
4. lfs-нуть нетбук
5. найти или написать штуку для проверки торговой стратегии на архивных данных
6. написать собственно штуку для торговой стратегии
7. сделать информеры на svn репозитории в виде notify в gnome

И еще много чего, что мне хочется сделать. Каждый день я сижу где-то до 2-х часов ночи, стараясь сделать сегодня чуть-чуть больше чем вчера. И главное - ни один день не должен пройти без познания или создания чего-то нового. Это настоящее счастье - узнавать новое.

воскресенье, 2 августа 2009 г.

Дело GnuCash живет и побеждает - модуль Finance::Quote для ММВБ (Micex)

Именно так можно охарактеризовать мое настроение после письма Андрея, с просьбой опубликовать разработанный им модуль получения котировок ММВБ для GnuCash.

Публикую: http://atsave.narod.ru/micex-pm/index.html.

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

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

Даешь больше модулей для GnuCash!

З.Ы. 21.01.2011 - поменялась ссылка на сайт автора, обновил. Попробую опубликовать на CPAN для облегчения инсталляции, тем более, что мой родной модуль что-то в последнее время поломался...

пятница, 16 января 2009 г.

CPAN Finance::Quote::Sberbank - Модуль для получения котировок ОМС Сбербанка

Выложил свои труды на CPAN. Теперь любой желающий сможет это установить.

kilork@pantogan:~$ cpan

cpan> i Finance::Quote::Sberbank
Strange distribution name [Finance::Quote::Sberbank]
Module id = Finance::Quote::Sberbank
CPAN_USERID KILORK (Alexander Korolyoff )
CPAN_VERSION 0.01
CPAN_FILE K/KI/KILORK/Finance-Quote-Sberbank-0.01.tar.gz
MANPAGE Finance::Quote::Sberbank - Obtain quotes from Sberbank (Savings Bank of the Russian Federation)
INST_FILE /home/kilork/perl/share/perl/5.8.8/Finance/Quote/Sberbank.pm
INST_VERSION 0.01


cpan> install Finance::Quote::Sberbank


Сразу, правда, в gnucash это не заработает - требуется немного магии. Магия заключается в том, что надо поправить сам Finance::Quote и добавить туда загрузку модуля, выглядит это приблизительно так:

kilork@pantogan:~/perl/share/perl/5.8.8/Finance$ diff Quote.pm~ Quote.pm -u
--- Quote.pm~ 2008-10-26 11:15:50.000000000 +0300
+++ Quote.pm 2009-01-08 11:13:02.000000000 +0300
@@ -170,7 +170,7 @@
DWS FTPortfolios Fidelity FinanceCanada Fool HEX IndiaMutual
LeRevenu ManInvestments NZX Platinum SEB StockHouseCanada
TSP TSX Tdefunds Tdwaterhouse Tiaacref Troweprice Trustnet Union
- USFedBonds VWD ZA Cominvest Finanzpartner
+ USFedBonds VWD ZA Cominvest Finanzpartner Sberbank
Yahoo::Asia Yahoo::Australia Yahoo::Brasil
Yahoo::Europe Yahoo::NZ Yahoo::USA/; }


Т.е. просто дописываем модуль в список загружаемых. В данном примере подразумевается, что cpan для пользователя настроен на локальную директорию в папке пользователя, и туда же установлены модули Finance::Quote и Finance::Quote::Sberbank. Подробнее о настройке установки модулей в локальную директорию можно посмотреть здесь. Я пока сомневаюсь, что мой модуль включат в официальный дистрибутив, так что пока так.

UPDATE: Внимательно прочитал модуль, можно сделать гораздо проще, надо назначить переменную окружения:
FQ_LOAD_QUOTELET="-defaults Sberbank"

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

kilork@mexidol ~$ FQ_LOAD_QUOTELET="-defaults Sberbank" gnucash finans



Итак, если мы все сделали правильно, то в gnucash->Инструменты->"Редактор ценных бумаг" можно будет настроить следующее:




Теперь, надеюсь более подробно описать собственно сам процесс разработки новых модулей для gnucash. Цепочка отработана.

UPDATE2: Добавил отдельный сайт для работы с котировками ОМС Сбербанка - пользовательский и программный интерфейс: http://kilork.blogspot.com/2012/01/sberbank-quotes.html.