June 10, 2017, 10:22 a.m.

Sorting lines in VIM

Sorting lines in VIM works with:


it works perfect for todo.txt file format. http://vim.wikia.com/wiki/Sort_lines https://github.com/ginatrapani/todo.txt-cli/wiki/The-Todo.txt-Format

Jan. 18, 2017, 4:27 p.m.

Using Haroopad for writings


Installing on Fedora: http://www.bonashen.com/post/artifice/20140805-install-haroopad-on-fedora-20-64bit

Jan. 14, 2017, 10:37 a.m.

Jupyter notebook presentation

Creating presentation using amazing extension:


Dec. 10, 2016, 10:19 p.m.

Bitbucket Pipelines

Configuring pytest and bitbucket pipelines. Free CI until the end of 2016

March 5, 2016, 3:46 p.m.

Django templating

Transforming paid template into django style blocks.

Aug. 17, 2015, 11:10 a.m.

Vim in Chrome & JetBrains

Installed plugins for Vim like navigation - IdeaVim - Vimium

April 18, 2015, 6:53 p.m.

Checking size of SELECTed data in table


SELECT pg_size_pretty(pg_total_relation_size('tab1'));


March 20, 2015, 7:08 a.m.

Setting Vim as defalut editor


export EDITOR
export VISUAL

and uncheck in mc configuration embedded editor and viewer.

March 11, 2015, 6:12 a.m.

Encrypted file system in file container

The best way to encrypt your private data is to create a file, which can be mount on demand. You can easily move it, copy it, and when mounted use it as a ordinary, mounted file system.


Feb. 28, 2015, 7:06 a.m.

Connect with remote X server

$ ssh -X host

Running any GUI program on remote machine will redirect its its interface to client machine. Be careful it is really slow comparing to rdp or even vnc.

Nov. 24, 2014, 6:51 a.m.

Proffesionall presentations

Creating proffessionall presentation using software:

https://bitbucket.org/rivanvx/beamer http://impressive.sourceforge.net

Nov. 4, 2014, 7:19 a.m.

Notes and sketching on linux

Simple and powerful app for taking hand notes on Linux: "Xournal" combined with : "Nimbus Screen Capture" - editable screenshots provides comfortable way for taking notes from your web researches.

July 23, 2014, 12:17 p.m.

Queries optimization with Materialized

Remember complicated queries and caches results. Don't forget about manual refresh after source data changes.


July 10, 2014, 7:01 a.m.

Notes digitization - image optimization

Sharpen and reduce noise on photos from meeting notes.

mogrify -sharpen 0x2 *.jpg
mogrify -type Grayscale *.jpg
mogrify -quality 80 *.jpg

June 24, 2014, 3:59 p.m.

Unit of Work for client's view update

Using Unit of Work pattern in client - server event driven communication. Listing for attribute changes instead of comparing object's copies, looking for differences, at every response.

http://martinfowler.com/eaaCatalog/unitOfWork.html http://docs.doctrine-project.org/en/2.0.x/reference/change-tracking-policies.html http://docs.sqlalchemy.org/en/latest/orm/events.html#sqlalchemy.orm.events.AttributeEvents.set

June 20, 2014, 8:14 a.m.

Customer customization of web app modules

Symfony bundle inheritance


Don't forget about functional testing for every customization.

June 4, 2014, 10:04 a.m.

Uwsgi service for CentOS

Creating uwsgi service for CentOS because of Ansible deployment automation.

June 2, 2014, 12:49 p.m.

Application deployment with Ansible

Setting up playbook for automatic upgrade of application on multiple servers.


April 30, 2014, 9:20 a.m.

PostgreSQL loading data performance tips



April 8, 2014, 8:11 p.m.

Profiling - sort by cumulative time

cProfile.runctx('foo()'', globals(), locals(), sort=2)

April 1, 2014, 10:19 p.m.

Screen - running task in background

Start virtual terminal

$ screen -S [nameScreen]

Disconnect Ctrl + a Ctrl + d

List all running virtual terminals

$ screen -ls

Connect to terminal

$ screen -r [nameScreen]


March 25, 2014, 9:57 p.m.

Remove whitespaces from string

sentence = re.sub(re.compile(r'\s+'), '', sentence)

March 20, 2014, 4:48 p.m.

Postgres full-text search

SELECT to_tsvector('If the facts don''t fit the theory, change the facts.') @@ to_tsquery('fiction | theory');


March 18, 2014, 9:25 a.m.

Gvim disable temp and backup files

set nobackup
set noswapfile

March 11, 2014, 6:37 p.m.

Exposing project's API



March 10, 2014, 9:11 p.m.

Django templates injection

Main template embedes another template, and asks it for placing special element in it:

{% include 'container.html'
with element_template="element_x.html" %}

Subtemplate embedes passed element:

{% include element_template %}

March 8, 2014, 11:13 a.m.

Django project architecture - apps over MVC

Project's architecture based on apps and not infected by MVC/MTV. Templates placed in apps. Templates inheritance/include for keeping DRY.

Oh, and one more thing: Making humans edit XML is sadistic!

March 2, 2014, 8:10 p.m.

Arrange different size div blocks

Feb. 14, 2014, 9:08 p.m.

Designing Large Scale Applications

Python DI. Global component's module for decoupling python packages.


Feb. 8, 2014, 10:20 p.m.

C# DI Autofac

No constructors.


Aug. 11, 2013, 4:06 p.m.

Multitasking, rember the GIL

Threading in Python should be used carefully. Mainly for increase responsiveness while IO operation. It should not be used for multicore computing because of GIL. Nowadays in can be seen as an alternative for asynchronous computing. http://www.dabeaz.com/GIL/

Jan. 11, 2012, 8:42 p.m.

Checking computer hardware

$ sudo dmidecode

Jan. 8, 2012, 8:46 p.m.

Increasing the number of open files limit

ulimit -n