e0ne's comments

virtualenv + pip как альтернатива buildout

Published at January 4, 2012 ·  2 min read

Мне всегда казалось, что для небольших проектов использование buildout - это как с пушки по воробьям: долго, сложно и неудобно. Хотелось чего-то более простого и понятного. И таким оказалась связка virtualenv + pip. Про virtualenv я уже писал тут. pip - это замена easy_install, менеджер пакетов для python, который позволяет быстро и удобно устанавливать, обновлять и удалять пакеты. Более подробно можно почитать на официальном сайте. Сейчас же меня интересует возможность быстрого развертывания необходимого окружения для запуска проекта....

Мысли в влух о модульности Django

Published at January 3, 2012 ·  2 min read

Все сказанное ниже является личным мнением автора и не является объективной точкой зрения и/или истиной последней инстанции. Я всегда считал и продолжаю это делать, что Django - не очень-то и модульный фреймворк. Он расширяемый, но не модульный, IMHO. В моем понимании модульный фреймворк, это фреймворк, который состоит из ядра (core), и каких-то модулей, которые можно к нему подключать при желании/необходимости. Но и без них будет доступна минимальная функциональность. В случае же Django - выкинуть из него некоторые модули (e....

2012-й: успеть до конца света

Published at January 1, 2012 ·  1 min read

 Небольшой список того, что хотелось бы сделать в этом году: дочитать книги Learning Python & Prorgamming Python; опрделиться до конца с форматом блога; вывести со статуса beta notacash.com и доделать там всё, что планировал; разобраться с CQRS и дописать брошенное django-cqrs; ещё больше перейти на лицензионный контент (в первую очередь софт, книги, музыка); прочитать всё из http://www.etnogenez.ru/; сделать регулярными встречи KharkivPy; закончить начатое в 2011-м.  ...

OpenStack + RHEL + iptables = buffer overflow detected

Published at December 30, 2011 ·  4 min read

Никогда не знаешь, где упадет OpenStack©  Я, в процессе очередного дебагга. Те, кто читает мой твиттер (@e0ne), должны знать, что в последнее время я работаю с OpenStack’ом, а именно занимаюсь(конечно, не один я) попытками его запуска на Red Hat Enterprise Linux (RHEL), CentOS, Scientific Linux, etc. Т.к. все это построено на базе полной и непросветной enterpise в виде RHEL, то сборка нового дистрибутива, как правило, у меня начинается со сборки именно под эту ОС....

Мобильные сайты на Django

Published at December 27, 2011 ·  2 min read

Как правило, адаптация сайтов под мобильные устройства заключается в выполнении одного или нескольких пунктов из следующего списка: - подключения специальной версии CSS; - подключения нужных JavaScript’ов; - создание мобильных шаблонов (templates) с версткой (html). Сразу оговорюсь, что вопрос мобильной верстки сейчас затрагивать не буду. Исходя из этого списка, шаблоны, которые предназначенные для мобильных устройст будут выглядеть, примерно, так: {% if request.mobile %} Mobile {% else %} Not mobile...

Объекты в Python: equals or not equals

Published at December 22, 2011 ·  2 min read

Рассмотрим задачу сравнения двух инстансов простого класса A в Python. Сам класс A выглядит так: class A(object): def init(self, int_param): self.int_value = int_param В данном случае, если мы выполним такой код: a1 = A(1) a2 = A(1) то инстансы этого классы не будут равны между собой: a1 == a2 - False a1 is a2 - False Чтобы понять как это все работает и почему получается такой результат рассмотрим функцию id(object). Функция id() возвращает идентификатор объекта, который будет уникальным и неизменным на протяжении времени жизни объекта....

Git: создаем branch из tag'а

Published at December 21, 2011 ·  2 min read

Любая source control система (TFS, SVN, Git и т.д.) умеет работать с такими вещами, как branch (ветка) и tag (метка). Ветки нужны для разработки каких-то фич, исправления багов и т.д., что бы в это время не ломать уже работающий код. Тэги, в свою очередь, нужны для заморозки какой-то версии кода без возможности последующих исправлений. Грязные хаки вроде залезть в базу данных source control чтобы поменять файл с каким-то тэгом я не рассматриваю по понятным причинам....

Качество кода

Published at December 12, 2011 ·  1 min read

Качественного кода нельзя добиться в случае: - нет code review; - code review проводит один и только один человек; - нету guidelines; - проверка кода не происходит на Continius Integration сервере; - хотя бы один из членов команды не заинтересован в качественном коде; - время на уменьшение технического долга не закладывается при планировании следующей итерации. ...

Form submit: что может быть проще? Часть 1

Published at November 22, 2011 ·  3 min read

Казалось бы, отправить (засабмитить) HTML форму на сервер - стандартная задача, которая не должна вызывать никаких проблем и/или вопросов. Но так, как мы не занимаемся сферическим программированием в вакууме, то время от времени появляются трудности, вопросы, проблемы. Сегодня на повестки для такая задача: Есть страница для бронирования мест в театре/кино и т.д. Выглядит она, примерно, так: Можно выбрать несколько мест и нажать кнопку “Зарезервировать”. При этом данные на странице постоянно обновляются (ajax) для отображения актуальной информации о свободных местах....

Первая встреча харьковского Python Community Kharkiv.Py

Published at November 9, 2011 ·  1 min read

В Киеве ежегодно проходит PyCon, переодически собираются встречи Kyiv.Py - жизнь python community по немного идет своим ходом. А вот в Харькове, к сожалению, ничего подобного не было (не считая DevTime прошедшей весной). Вот мне и хахотелось собрать харькоское python community для общения, обменом знаниями и опытом. Подробности на http://kharkivpy.org.ua/...

Tags

.net .net-framework .net-framework-3.5 agile ajax ajax-control-toolkit ampq ansible apache asp.net asp.net-mvc axum bash benchmark blog blog-engine bootstrap buildout c# cache centos chrome ci cinder ckan cli cloud codeplex community debugger deface development-environment devstack devtime django dlr dns docker dockerimage dos easy_install elmah encoding environment-variables error event events exception exceptions fabrik firefox foreach forms gae gcc git github go google google-app-engine hack hacked hardware headless horizon html hugo iaas ienumerable iis internet iptables iron-python ironic iscsi java-script javascript jenkins jquery js kharkivpy kombu kvm kyiv lettuce libvirt linux lio loci logging mac-os mercurial microsoft microsoft-sync-framework mobile mono ms-office msbuild networking news nginx offtopic open-xml opensource openstack openvswitch os packages paraller-development patterns--practices php pika pip pnp podcast popup postgresql profiler project protocols pycamp pycharm pycon pykyiv pylint pypi python python-3 qcow quantum qumy rabbitmq rar react refactoring rfc rhel search-engine security selenium server shell silverlight socket source-control sourcegear-vault sql sql-server sql-server-express sqlalchemy ssh svg tests tgt tipfy tornado typescript uapycon ui uneta unit-tests usability virtualenv visual-studio vm vue.js vuejs web-development web-server web-service webpack windows windows-live word-press x32 x64 xcode xml xss xvfb интернет-магазин книги

Recent posts

Docker Image Collection

Not a DNS Server for Libvirt

Diskimage-builder in Docker

Everything as a Code

Vue.js, global variables and TypeScript


Archives

2019 (19)
2018 (2)
2017 (3)
2016 (2)
2015 (3)
2014 (5)
2013 (17)
2012 (22)
2011 (35)
2010 (25)
2009 (35)
2008 (32)
2007 (2)