• 07-09-2016 | Visual Studio Code для Python

    Это статья из лекций http://lectureswww.readthedocs.io/999.additions/texteditors/vscode.html

  • 31-08-2016 | IronLogic Z-2 USB на Linux

    Z-2 USB всеядный считыватель, который умеет работать на двух частотах 13,56 МГц и 125 кГц одновременно. Поддерживаемые форматы карт EM-Marine, HID ProxCard II, Mifare, Mifare Plus, Mifare-UL (чтение/запись), Temic (чтение/запись), Cotag (опционально).

  • 13-07-2016 | Пропал доступ в Интернет в Docker контейнерах

    Docker начиная с версии 1.10 и выше, перестал брать значение MTU от сетевого интерфейса. Теперь его нужно указывать явно:

  • 06-07-2016 | Пакетный менеджер Nix

    http://nixos.org/nix/

  • 06-07-2016 | NixOS

    Здесь я буду собирать разные полезные ресурсы по ОС NixOS и пакетному менеджеру nix. Если вы что то не нашли, пишите в комментах.

  • 05-06-2016 | gcc для C++11 из реп в CentOS6

    C++11 в gcc появился, начиная с версии 4.7, но в CentOS6 естественно более старая версия без С++11. Как вариант, можно собрать из исходников, но я опишу способ установки из дополнительных реп.

  • 31-05-2016 | REST API в Pyramid

    Это статья из лекций http://lectureswww.readthedocs.io/6.www.sync/3.framework/pyramid/5.1.rest.html

  • 30-05-2016 | Traversal роутинг в Pyramid

    Это статья из лекций http://lectureswww.readthedocs.io/6.www.sync/3.framework/pyramid/5.urldispatch.html

  • 21-11-2015 | Pyramid фреймворк

    Здесь я буду собирать разные полезные ресурсы по фреймворку Pyramid. Если вы что то не нашли, пишите в комментах.

  • 15-10-2015 | Декораторы для корутин в asyncio

    Это статья из лекций http://lectureswww.readthedocs.io/999.additions/python/asyncio-decorator.html

  • 10-10-2015 | Установка python 3.5 в virtualenv

    Все уже слышали про новый pyhton версии 3.5 (https://docs.python.org/3/whatsnew/3.5.html). Я постараюсь описать как начать им пользоваться в вашем виртуальном окружении.

  • 20-08-2015 | Обновление до Go1.5

    Для управления версиями я пользуюсь moovweb/gvm.

  • 13-08-2015 | Vim (и не только) для reStructuredText

    reStructuredText - очень удобная разметка, которая используется при написании документации (sphinx), README для гитхаба, битбакета, PyPi и всего прочего вплоть до научных статей (пример) или же статей для блога :)

  • 12-08-2015 | Блог в reStructuredText разметке

    Перевел тут блог с https://www.blogger.com/ на abakan/ablog. Блоггер это конечно хорошо, но у него крайне ограниченный WYSIWYG, тем более только из браузера. Ablog по сути это sphinx движок заточенный на блог со всеми плюшками, rST разметкой, RSS и disqus комментами.

  • 04-10-2014 | Королевский пингвин - круче только ты один!

  • 22-09-2014 | Документация python проекта на практике

    Документация в python проектах пишется при помощи sphinx, он умеет используя расширение automodule читать докстринги и формировать документацию из кода.

  • 05-09-2014 | REST API для Pyramid при помощи Cornice и SACRUD

    Mozilla использует в своих проектах Pyramid и у них есть отличный модуль для создания REST API https://cornice.readthedocs.org/en/latest/

  • 19-08-2014 | Chameleon, deform и маленькая хитрость

    Deform - это такая штука которая генерит формы, а шаблоны для виджетов в нем написаны в формате Chameleon шаблонизатора.

  • 26-06-2014 | sqlalchemy_mptt v0.0.5

    В новом релизе:

  • 06-06-2014 | Scrum и XP: заметки с передовой

    Старая, но очень полезная книга по Agile. Довольно редкий случай когда вся книга описывает рабочие процессы реальной организации, никакой воды, никакой зауми и вялой теории. Очень рекомендую. Тем более книга в свободном доступе и переведена на русский язык (лучи добра и счастья переводчикам).

  • 22-05-2014 | ia32-libs-multiarch:i386 : Зависит: libsane:i386 но он не установлен

    Что бы удалить поломанный пакет типа такого:

  • 12-05-2014 | MPTT для SQLAlchemy

    Запилил я тут для своих нужд небольшое приложение (sqlalchemy_mptt) которое добавляет в модель поля и функционал необходимый для Nested sets. По аналогии с django-mptt. Грубо говоря в модель добавляются поля left и right которые при помощи системы эвентов самостоятельно пересчитываются при изменении дерева. Ниже пример обхода дерева:

  • 13-04-2014 | Локальный Continuous Integration сервер

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

  • 06-04-2014 | Пишем на Go (Golang)

    Go замечательный язык программирования, который можно компилировать, компилировать под разные платформы (ARM, x86), распараллеливать. Он проще C/C++ и уже сформировавшийся язык в отличии от Rust который ломает программы с каждым обновлением. Область применения самая разная начиная от консольных утилит, всяких парсеров, системного, сетевого ПО, связи с физическими устройствами и заканчивая веб приложениями, разве что пока нету реализаций под смартфоны (android).

  • 15-03-2014 | Перенос БД с sqlite на postgres

    ORM позволяет быстро переключатся между БД не учитывая их диалект (практически). Но данные хранятся физически в разных местах и естественно их надо переносить, например при переключении с sqlite на PostgreSQL. В Django есть встроенный функционал в виде:

  • 10-03-2014 | Обновление sacrud. Версия 0.1.2

    В этой версии делался упор на кастомизацию интерфейса.

  • 28-02-2014 | Своя панель в pyramid_debugtoolbar

    Я создал небольшой пример, как это сделать на примере sadisplay. sadisplay - это модуль который отображает модели SQLAlchemy в виде UML диаграммы.

  • 23-02-2014 | Обновление sacrud. Версия 0.1.1

    Что нового?

  • 16-02-2014 | Мифический человеко месяц

    Я прочитал этот шедевр довольно давно, но всё же раз начал писать про книги, то напишу отзыв. Книга просто необходима для прочтения, в первую очередь руководителям и разработчикам с опытом решения разных проблем в области IT и возможно HR в той же области. В этой книге главное осилить первую половину, вторая читается на одном дыхании (а почему так это лучше узнать из контекста). Брукс крут! Реально крут!

  • 16-02-2014 | миграции в Pyramid

    Пример миграций в пирамиде:

  • 02-02-2014 | Django - кот в мешке.

    Django это фреймворк, при помощи которого быстро пишутся сайты. Так ли это?

  • 22-12-2013 | Причины названий python, django и pyramid

    Название языка произошло вовсе не от вида пресмыкающихся. Автор назвал язык в честь популярного британского комедийного телешоу 70x «Летающий цирк Монти Пайтона». Но потом все стали его ассоциировать со змеей, ибо змея она и в африке змея.

  • 23-11-2013 | Python’им в Vim

    В продолжение статьи о рабочем окружении (С чего начать?©), по просьбам трудящихся и во благо партии пишу о текстовом редакторе Vim.

  • 22-11-2013 | С чего начать?©

    С чего начать программировать?

  • 19-11-2013 | sacrud 0.1.0

    Обновил sacrud до 0.1.0.

  • 07-11-2013 | Linux attack

  • 29-09-2013 | Демо репозитарий Pyramid + sacrud

    pyramid_sacrud_example - пример работы sacrud в Pyramid вместе с PostgreSQL.

  • 07-09-2013 | Практическое использование Vim

    Еще одна книга по Vim на русском языке готовится к выходу. ДМК - это всегда прекрасный перевод тех. литературы, но ксожалению отсутствие эл.форматов.

  • 06-09-2013 | Новое в sacrud 0.1.0a

    Теперь sacrud 0.1.0a

  • 05-09-2013 | Изучаем редакторы vi и Vim, epub + pdf

    Уже упоминал эту замечательную книгу (Изучаем редакторы vi и Vim, epub + pdf). Теперь в epub’е, вобщем зачёт.

  • 26-08-2013 | Запись в БД через sacrud используя SQLAlchemy session.

    Для простых CRUD действий с БД, можно воспользоваться модулем action из sacrud. Это немного сократит код и добавит некоторой универсальности в ПО со сложной логикой.

  • 26-08-2013 | Обновление sacrud и pyramid_ext

    Новая версия sacrud 0.0.3. В ней поправлены некоторые баги, добавлены нескучные обои элементы дизайна в расширении для Pyramid и создан отдельный репозитарий с примерами работы разных типов полей (pyramid_sacrud_example). Pyramid_sacrud_example работает только с Postgres потому что включает в себя примеры полей специфичных именно для этой БД (таких как hstore).

  • 22-07-2013 | Опиум hstore в plpython

    Приведу просто пример триггера на plpython который использует данные из поля hstore:

  • 09-03-2013 | CRUD интерфейс для SQLAlchemy и подключение к Pyramid

    Запилил Yet another CRUD интерфейс для SQLAlchemy. По сути это аналог Django админки или FormAlchemy, но ОЧЕНЬ сильно упрощенный, ничего лишнего. Есть поддержка большинства полей + кастомные поля типа файл (для загрузки файлов, изображений) и GUID. Довольно просто подключить к Pyramid проекту и сразу начать работать по адресу http://localhost:6543/sacrud

  • 28-02-2013 | Объявление флага в цикле Jinja2

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

  • 19-02-2013 | Jinja2 Lorem ipsum dolor sit amet

    Иногда в шаблоне нужно зафигачить какую-нибудь рыбу типа "Lorem ipsum dolor sit amet", часто в цикле итд. Для этого существует функция lipsum().

  • 17-02-2013 | Использование SQLAlchemy в дополнениях к Pyramid

    У меня есть дополнение к pyramid которое я включаю почти в каждый проект при помощи includeme (include()). Приложение это дает мне простой CRUD интерфейс с Jinja шаблонами малой кровью. Что позволяет избавиться от монстра FormAlchemy. Естественно каждый проект имеет свое название поэтому пришлось применить немного магии что бы создать универсальный механизм получения DBSession в своем подключаемом дополнении.

  • 17-02-2013 | ThinkPad управление музыкой с помощью HDAPS

    Сначала установим HDAPS:

  • 16-01-2013 | Как устроен дифференциал в автомобиле

    Отличное видео 1937г.

  • 15-01-2013 | Матрица в терминале на python

    Программа для консоли в Linux, которая имитирует поток бинарных цифр из фильма матрица. Очень эффектно выглядит, рекомендую попробовать!

  • 07-01-2013 | Пингвины императорские

    Ускоряются за счет воздуха:

  • 01-01-2013 | Wat

  • 19-12-2012 | Срань...

    В последнее время мне кажется что я пользователь Интернета в Северной Корее.

  • 07-12-2012 | Изучаем редакторы vi и Vim, книга на Русском

    Издательство “Символ” радует последнее время годной литературой. Для предзаказа представлена ПЕРВАЯ книга на Русском языке по vi и vim. Я конечно понимаю что можно прочитать vimtutor, но когда это все в картинках и со стрелками то въезжаешь намного быстрее. В общем заказал, для меня очередной хэндбук.

  • 04-12-2012 | Меняем заголовок ответа в Pyramid/Pylons

    Обычно в заголовке находится что то типа:

  • 21-11-2012 | CMS на python-pyramid

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

  • 16-11-2012 | Раздача Интернета с десктоп Linux машины

    В ноутбук вставляем еще одну сетевую карту, например такую:

  • 16-11-2012 | Работа с PostgreSQL настройка и масштабирование

    Шыкарная книга по Postgres. Много умных и полезных мыслей в одном месте. Хорошо написано про репликацию и настройку производительности. Книга на гитхабе в свободном доступе! Автору лучи добра и счастья, пиши исчо!

  • 14-11-2012 | Идеальная архитектура. Ведущие специалисты о красоте программных архитектур

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

  • 13-11-2012 | Убираем свист коммутатора 3Com OfficeConnect Dual Speed Hub 8

    Если у вас засвистела электроника то 99% это схема питания, будь это нетбук x100e или БП или коммутатор.

  • 12-11-2012 | x220 tablet и доп кнопки в Linux

    В принципе мой Debian Wheezy определил почти все системные клавиши кроме 2х справа на картинке (Ctr+Alt+Del и поворот экрана), микрофон и zoom по Fn+пробел. Ctr+Alt+Del не нужен, микрофон и зум это повод написать отдельную тему, а про поворот экрана я напишу подробно.

  • 11-11-2012 | корова говорит fortune

    мой скрипт в .bashrc для животного говорящего цитаты при открытии терминала.

  • 10-11-2012 | Книга по Lisp на русском

    Внезапно, вышла книга НА РУССКОМ по кошерному, более чем, Лиспу.

  • 02-11-2012 | Redactor-js WYSIWYG редактор и python

    Redactor-js - это простой вайсвиг с возможностью загрузки изображений.

  • 18-10-2012 | Генератор лабиринта на Питоне

    Отличное приложение для создания лабиринтов. Написано на Python и доставляет много фана.

  • 14-10-2012 | Еще пингвины...

  • 28-09-2012 | Перевод шаблонов Jinja в Pyramid

    Основная документация как это делать здесь. Но как обычно есть нюансы.

  • 27-09-2012 | Перевод шаблонов Jinja в Pylons

    Все точно также как и с mako, “Но есть нюансы”©

  • 26-09-2012 | CMS на Pyramid фреймворке

    Poolyx CMS - малоизвестная система управления сайтом написанная на Python с применением Pyramid немецкими кодерами.

  • 24-09-2012 | Lisp...

    Ссылка: лекции

  • 15-09-2012 | debian business card зависает при установке

    При установке дистрибутива debian-6.0.5-amd64-businesscard.iso было замечено зависание на шаге network detect. Из-за чего это происходит я не знаю, но лечится нажатием Ctrl+C один или два раза. После чего начинается поиск настроек сети при помощи DHCP.

  • 11-09-2012 | Простой блог на фреймворке Pyramid

    Пример простого блога на Pyramid https://github.com/uralbash/pyramid_easy_blog

  • 05-07-2012 | Структура Pyramid приложений как в Django

    Одной из причин отказа развивать ветку Pylons стала его архитектура проекта. Все контроллеры хранятся в директории controllers, модели в models, шаблоны в templates. Это очень удобно когда у вас маленький проект, но если он разрастается до десятков и сотен сущностей, то становится крайне сложно скакать по этим папкам выискивая нужный файл, относящийся именно к этой сущности. В Django сделано по другому, в проекте хранятся приложения (application) - это такие маленькие подпрограммы которые отвечают за конкретный функционал проекта (например фотогалерея django-photologue или дерево сайта django-sitetree и прочее). Каждое такое приложение имеет свою папку и уже в ней хранятся контроллеры (views в данном случае) и модели (models). Т.е. вместо такой архитектуры Pylons:

  • 04-07-2012 | pyramid_formalchemy

    FormAlchemy это CRUD для SQLAlchemy. Для Pylons существовало расширение прямо в самом модуле в разделе ext. Для Pyramid создали отдельный пакет pyramid_formalchemy. Посмотрим как это работает:

  • 05-06-2012 | Установка ProxMox VE с USB флешки

    Взято от сюда http://c-nergy.be/blog/?p=897

  • 23-05-2012 | Настройка прокси для apt-get

    В файле /etc/apt/apt.conf.d/proxy (его небыло) добавить строки:

  • 22-05-2012 | Боян :)

    UPD: Создатель электромеханического бояна Владимир Демин - человек с высоким ощущением прекрасного: подробнее на Hack Day

  • 10-05-2012 | Обновление rrd задней датой при помощи faketime

    Иногда скрипты, выполнение которых зависит от времени, не срабатывают. Менять время и запускать их повторно или менять код приложения неправильно. Что бы выполнить их задним числом есть утилита faketime.

  • 26-04-2012 | Установка pycrypto в virtualenv

    Если появляется ошибка типа "RuntimeError: autoconf error", то необходимо установить C компилятор:

  • 17-04-2012 | Что юзать в Python’е для SNMP...

    Для SNMP в питоне есть несколько библиотек но у всех свои недостатки.

  • 12-04-2012 | Хостим документацию Sphinx на github

    Немного допиленная версия этого http://djangonaut.blogspot.com/2009/05/sphinx-documentation-github-pages-3.html

  • 11-04-2012 | RRDTool пример использования в python

    RRDtool (Round Robin Database). Обеспечивает хранение и отображение данных мониторинга (загрузка каналов, температура и любая другая зависящая от времени последовательность данных, которую можно получить некоторым способом). Задумывалась как повторная, но более правильная реализация MRTG. Объём хранимых данных не увеличивается со временем (ячейки хранения используются циклически). Использование различных функций консолидации данных позволяет охватывать большие интервалы времени без чрезмерного увеличения объема БД за счет снижения разрешающей способности. В отличие от mrtg, программа не упаковывает старые данные самостоятельно, это надо предусматривать при проектировании БД. Сбор информации и генерация HTML-кода также производится с помощью внешних средств. Более мощные средства генерации графиков. Все времена во внутреннем формате Unix (число секунд с 1 января 1970 в UTC). Значения счетчиков могут быть целыми или вещественными числами или специальным значением UNKNOWN. Лицензия - GPL (но автор не будет против, если в благодарность послать ему CD/DVD из указанного им списка; при установке rrdtool имитируется заказ CD на amazone.com ;-). Необходимо иметь perl 5 (без perl rrdtool соберется, но не будет модулей подержки perl) и обычный набор средств компиляции (make, gcc, autoconf, automake, libtool). Имеется также поддержка tcl и python. Нельзя использовать для учета и биллинга - слишком много он усредняет и сглаживает, используя достаточно сложные алгоритмы.

  • 11-04-2012 | SQLAlchemy и большие таблицы (Memory error)

    SQLAlchemy в больших таблицах при таком запросе s.query(TableName).all() зависает и выдает ошибку Memory error. Для решения проблемы нужно использовать метод yield_per(). Если необходимо еще изменять данные, то нужно делать коммиты каждые N записей.

  • 02-04-2012 | Qtile жив

    Qtile - это тайловый оконный менеджер написанный на Python. Последний месяц активно коммитится на github’е. Свежая инфа здесь http://qtile.readthedocs.org/en/latest/ (http://Qtile.org обновляется редко.)

  • 28-03-2012 | Троллинг от Пингвинов :)))

  • 27-03-2012 | Pylons обработка csv с веб формы (метод POST)

    Небольшой “хинт” как при помощи Pylons обрабатывать CSV файлы, отправленные из формы.

  • 12-03-2012 | Установка Matplotlib и Numpy в virtualenv на Debian

    Взято от сюда. Если вы хотите в virtualenv, через pip install установить Numpy и Matplotlib, то необходимо вначале поставить в систему:

  • 27-02-2012 | Pylons система плагинов для своего проекта (yapsy)

    При проектировании любого проекта, через определенное время, встает проблема маштабируемости, конечно если вы не пишите сайт-визитку или что то подобное. Проект может состоять из одного большого монолитного ядра с множеством контроллеров, сотнями или даже тысячами таблиц и бессчетным количеством разных шаблонов, библиотек итд итп. Под ядром подразумевается та часть проекта (pylons), которую либо нельзя изменить совсем, либо это потребует очень больших усилий. Для того что бы создать гибкий и легко масштабируемый веб (и не только) проект, необходимо иметь небольшое ядро, которое будет выполнять минимальный функционал соответствующий логически завершенной программе. Остальные функции, пусть даже улучшающие программу, нужно выносить за пределы ядра. Вообще я знаю только два способа решения этой проблемы:

  • 22-02-2012 | AJAX тройной выпадающий список (triple select)

    Опишу очень простую реализацию трех выпадающих списков, данные которых связанны последовательно. Выглядит это примерно так "Город" -> "Улица" -> "Дом". После выбора дома, на основе AJAX запроса, генерируется список улиц этого города, а после выбора улицы генерируется список домов на этой улице. Создадим html файл:

  • 10-02-2012 | pyandexmap работа с Яндекс Карты API используя Python

    У Яндекс Карт хороший геокодинг и есть API, но нет автодополнение поисковой строки (как в гугле). У гугла плохой геокодинг (для России) но есть автодополнение. Более подробно можно прочитать например здесь. Парадокс какой-то. Я написал простой модуль для вычленения данных через API при помощи питона. Это очень удобно использовать в AJAX запросах. Пример использования здесь (OpenStreetMap, Геокодирование и автодополнение адреса в строке поиска (как у гугла) с помощью Яндекс API :)). Код для изучения/исправления здесь https://github.com/uralbash/pyandexmap.

  • 10-02-2012 | Размещаем свои python проекты на https://pypi.python.org

    Я периодически использую свои скрипты в разных местах, для того что бы не копипастить их постоянно и следить за обновлением удобно добавить их в https://pypi.python.org и устанавливать/обновлять через pip install. Для этого необходимо подготовить наш модуль.

  • 10-02-2012 | Jinja замена None, Null, итд на пустую строку

    В питоне пустые значения возвращаются как None. Поэтому в шаблонах Jinja вместо пустых значений отображаются None. Что бы поправить это нужно изменить метод finalize. Пример из google groups:

  • 10-02-2012 | Скрипты работающие в окружении проекта на Pylons

    Иногда необходимо написать скрипт который выполняется из консоли и использует окружение проекта на Pylons. Копипастю простой пример с pylonshq. Так-как там есть привычка периодически удалять информацию.

  • 10-02-2012 | Python + ssh или основы paramiko

    Для работы с ssh в питоновских скриптах идеально подходит модуль paramiko.

  • 10-02-2012 | OpenStreetMap, Геокодирование и автодополнение адреса в строке поиска (как у гугла) с помощью Яндекс API :)

    Геокоди́рование — процесс назначения географических идентификаторов (таких как географические координаты, выраженные в виде широты и долготы) объектам карты и записям данных.

  • 10-02-2012 | Пример карты OpenStreetMap на своем сайте

    OpenStreetMap — это свободно редактируемая карта всего мира. Она сделана такими же людьми, как и вы. OpenStreetMap позволяет совместно просматривать, изменять и использовать географические данные в любой точке Земли. Также позволяет накладывать разные слои в том числе и карты Яндекса с Гуглом. У гугла проблема с детализацией карт в России у Яндекса с API поэтому OpenStreetMap смотрится наиболее красивым решением, при том что софт и сами карты распространяются по свободным лицензиям.

  • 26-12-2011 | Набор snmp скриптов облегчающие жизнь

    Скрипты написаны на питоне, для установки достаточно форкнуть git репозитарий https://github.com/uralbash/snmpdesk. Документация как работать со скриптами будет выкладываться на github. Сейчас пока только 1 для извлечения таблицы коммутации (fdb), со временем будут появляться остальные.

  • 21-12-2011 | upd: Режем пики в rrd

    Обновления в скрипте Срезаем пики в RRD при помощи python. В предыдущем варианте скрипт получал предельное значение и если любое значение в rrd файле его превышало, то оно обнулялось. Это неудобно когда для каждого datasource нужно задавать свой предел. Ниже пример где несколько строк, в каждой строке 6 значений.

  • 19-12-2011 | Как поднять demo версию проекта на paster + virtualenv в Debian

    Иногда необходимо поднять демо версию своего проекта для тестов. Склонируем наш git проект на сервер где будет демо:

  • 18-12-2011 | FormAlchemy KeyError: “Key not found: “

    Ошибка в FormAlchemy типа KeyError: "Key not found: u'Task--super_task_id'" лечится обновлением:

  • 16-12-2011 | Установка psycopg2 в virtualenv для Postgres 9.1

    При установке psycopg в virtualenv может возникнуть ошибка:

  • 09-12-2011 | Срезаем пики в RRD при помощи python

    В некоторых случаях на rrd графиках появляются пики, как например после перезагрузки сетевой карты:

  • 28-11-2011 | Основы CouchDB

    CouchDB - документо-ориентированная СУБД, в которой удобно хранить разную информацию с изменяющимся количеством параметров. Например сущность товары могут иметь бесконечное количество параметров. Создавать в РСУБД миллионы таблиц или одну огромную не вариант. В couchdb хранятся документы, т.е. простые записи. В записи может быть сколько угодно разных параметров. А для унификации записей обычно создают параметр type который заменяет имя таблицы в РСУБД.

  • 27-11-2011 | WTForm валидация

    Продолжение статьи готовим Pylons + WTForms. Рассмотрим как создать свой класс для валидации. Здесь можно найти стандартные валидаторы http://wtforms.simplecodes.com/docs/0.6/validators.html

  • 27-11-2011 | Вот он плеер моей мечты - Peyote

    Плеер который в Линуксе нормально отображает кодировки и читает на ура lossless, написан на python, работает в консоле. Интерфейс как в mc - очень удобно музыку перемещать + поддержка мышки. http://peyote.sourceforge.net/about.rus.html

  • 22-11-2011 | готовим Pylons + WTForms

    WTForm простая, но довольно удобная библиотека для создания форм. И еще WTForm очень похожа на формы в Django - одно из немногого что в джанге сделано хорошо. Посмотрим как это работает с Pylons. Для удобства будем хранить формы отдельно:

  • 19-11-2011 | Альтернатива SQL триггерам в SQLAlchemy

    Когда необходимо выполнять какие-то действия при записи в базу, обычно создают триггеры before, after INSERT UPDATE. В SQLAlchemy можно реализовать аналогичный механизм но работающий на стороне питона а не БД. В версии 0.6 это делается при помощи MapperExtension, в 0.7 MapperExtension заменили на sqlalchemy.event.listen().

  • 19-11-2011 | Установка Java Environment на Debian для Iceweasel (FireFox)

    Часто веб интерфейс какого-нибудь устройства требует Java. Что бы ее поставить на Debian необходимо выполнить команды:

  • 16-11-2011 | SQLAlchemy почему PostgreSQL?

    Потому что я могу делать так:

  • 13-11-2011 | Красивые графики javascriptRRD + Float

    В продолжение статьи Python + Tornado + RRDTool: температура на улице и в серверной: температура на улице и в серверной рассмотрим как можно рисовать RRD используя только javascript на стороне клиента. Результат будет такой:

  • 13-11-2011 | Pylons + FormAlchemy REST Controller

    Для своих REST контроллеров можно использовать, формы FormAlchemy.

  • 13-11-2011 | Python + Tornado + RRDTool: температура на улице и в серверной

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

  • 06-11-2011 | The Content Assignment

    В этом топике вольный перевод довольно интересной статьи http://knolleary.net об одной книге издательства penguin books.

  • 05-11-2011 | Linux xfce настройка двух мониторов

    В Xfce по умолчанию второй монитор работает в режиме зеркало. Что бы настроить его под себя придется лезть в консоль, т.к. более менее нормальных desktop приложений я не обнаружил. Нам понадобится команда xrandr. Если ее запустить без параметров то она покажет параметры мониторов:

  • 27-10-2011 | Админка FormAlchemy для Pylons и Jinja

    Для SQLAlchemy существуют интерфейсы управления моделями(что-то типа админки). Как минимум их 2, это Rum и formalchemy.ext.pylons.

  • 27-10-2011 | Pylons + Routes фикс слэша в конце URL

    Если мапить URL’ы вот так:

  • 27-10-2011 | Pylons + SQLalchemy расширенная модель (Mixin)

    Часто при проектировании структуры БД появляется необходимость повторять одни и те же действия с таблицами. Добавлять одинаковые поля, ссылки, счетчики и т.д. Модели в Pylons (SQLAlchemy), как и в большинстве других фреймворках использующих паттерн MVC, являются классом и соответственно могут быть унаследованы от других классов. Это позволяет нам избежать рутинной работы с повторяющимися действиями.

  • 26-10-2011 | Авторизация в Pylons за 5 мин при помощи repoze.what

    Статья по сути вольный перевод PylonsTemplates: extra Paster templates for Pylons apps с моими дополнениями.

  • 26-10-2011 | Простые хлебные крошки для Pylons и не только...

    В Интернете множество советов как делать хлебные крошки. Для Pylons эти советы довольно запутанные, сложные в реализации и рутины в поддержке на мой взгляд. Поэтому я рассмотрю простой способ парсить URI. Нас будет интересовать только URN (та часть которая идет после названия сайта).

  • 25-10-2011 | Pylons javascript и css link

    В Pylons, в шаблоны есть возможность вставить CSS или JS при помощи stylesheet_link() и javascript_link(). Но существует расширение MinificationWebHelpers которое позволяет также удобно добавлять javascript файлы.

  • 24-10-2011 | SQLalchemy UML диаграмма

    UPD: sadisplay - замечательная штука!

  • 17-10-2011 | ThinkPad TrackPoint настройка в Linux

    Вообще всю информацию по настройке trackpoint можно взять здесь: How to configure the TrackPoint

  • 17-10-2011 | Отключить CapsLock

    Отключение:

  • 17-10-2011 | Xfce перенос кнопок окна влево

    Для того что бы кнопки закрыть-развернуть-свернуть оказались слева, например как в Ubuntu или MacOS, необходимо: