?

Log in

Previous 10

Apr. 13th, 2017

tux

Кодабра

Работая на полуудалёнке, некоторые вещи, происходящие в твоей же конторе, узнаёшь только из контактика :)
https://vk.com/wall-201069_985

Mar. 16th, 2017

tux

Простые человеческие радости



Mar. 7th, 2017

tux

Почтовые приключения

Загадочное нечто. Что оно делало между Швецией и Россией с 12 февраля по 1 марта? Почему после Внуково начали говорить на непонятном языке? Как оно умудрилось так похудеть за сутки? Кликабельно:



Feb. 8th, 2017

tux

Но мой папа не любит...

...эти модные приколы.
Только чистый C,
по заветам старой школы!




Jan. 24th, 2017

tux

Велосипед для rsync

Конечно, их уже навалом есть. Но что бы свой не написать, раз процентов 80 кода по другим рабочим скриптам болтается? Ну и на баше :)

Основная идея в том, что списки файлов для потоков формируются по-умному. Ну, как по-умному, относительно :) См. Partition problem # The greedy algorithm. Все файлы, которые меньше указанного размера, идут отдельным потоком. А те, что больше - делятся на части как можно более близкого размера.

Полный список ключей:
Usage: prsync.sh [options]
Valid options, * - required:
    -src   DIR   *  source directory
    -dst   DIR   *  destination directory (see '-x' option)
    -s     SIZE     file size to put it in papallel process, default: '10M' 
                    about size's format see 'man find', command line key '-size' 
    -p     N        additional processes, >0, default: '2'
    -v              be verbose
    -c              cleanup '-dst' directory before sync
    -x              print processes info and exit (no '-dst' required)
    -d              show debug info (some as '-x', but launch sync) 
    -k              keep temporary files 
    -b     N        show N biggest files with -x, default: '4'  
    --     OPT      rsync options, default: '-a --delete -q'


Для экспериментов есть ключи -v, -b, -k, -x. При указании -x запуска rsync не происходит, поэтому его удобно использовать для подбора параметров. Например:

$ sudo ./prsync.sh -src /home/postgres/pg95/data/base/16385 -s 1G -x
Additional processes:
 files:        0, bytes:                  0 (/tmp/prs-v6lKZe.include)
 files:        0, bytes:                  0 (/tmp/prs-GVbwQe.include)
Main process:
 files:     1387, bytes:     30 219 743 748 (/tmp/prs-qzGVYd.include)
Biggest files:
Rsync arguments: -a --delete -q


Обломс, падаем до 100M:

$ sudo ./prsync.sh -src /home/postgres/pg95/data/base/16385 -s 100M -x 
Additional processes:
 files:       35, bytes:     13 422 071 808 (/tmp/prs-KO7Zlt.include)
 files:       36, bytes:     13 527 990 272 (/tmp/prs-Z9e4at.include)
Main process:
 files:     1316, bytes:      3 269 681 668 (/tmp/prs-3P4rut.include)
Biggest files:
      1 073 741 824 bytes '/175490'
      1 073 741 824 bytes '/175489'
      1 073 741 824 bytes '/175487.2'
      1 073 741 824 bytes '/175487.1'
Rsync arguments: -a --delete -q


Уже лучше, но...

$ sudo ./prsync.sh -src /home/postgres/pg95/data/base/16385 -s 500M -x 
Additional processes:
 files:       10, bytes:      8 813 338 624 (/tmp/prs-Uy9twY.include)
 files:        9, bytes:      8 315 084 800 (/tmp/prs-79klmY.include)
Main process:
 files:     1368, bytes:     13 091 320 324 (/tmp/prs-jMVkFY.include)
Biggest files:
      1 073 741 824 bytes '/175490'
      1 073 741 824 bytes '/175489'
      1 073 741 824 bytes '/175487.2'
      1 073 741 824 bytes '/175487.1'
Rsync arguments: -a --delete -q


Во! Чего-то более приличного для 2 дополнительных процессов добиться с этим набором файлов уже не выйдет. А больше 2 (фактически трёх) - это уже индивидуально.

Да, живёт тут: Github # prsync.

Jan. 17th, 2017

tux

Победа

По поводу вот этого патча отписался автор AStyle:
Added to astyle as "attach-closing-while".
It will be in the next commit.


Dec. 9th, 2016

tux

Телефонодизайн

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

Примеры, одно приложение для SMS (дело не в количестве символов, все балуны обрезаются по одной границе, и не в аватарах, без них то же самое):



Другое:



Viber - просто лидер. особенно убого эта узенькая полоска смотрится на 8+ дюймах:



Да тысячи их :( Наверное, опять какой-нибудь гайд корпорация добра написала, и все ломанулись его соблюдать...

Dec. 6th, 2016

tux

Рабочее

Всё так и есть :)



http://xkcd.ru/705/



http://xkcd.ru/303/

Dec. 2nd, 2016

tux

Сишникам всех стран

А также плюсанутым :)
  1. Как запустить PVS-Studio в Linux
  2. Как использовать PVS-Studio бесплатно
  3. И моя сегодняшняя поделка: Встраиваем PVS-Studio в Eclipse CDT (Linux)
P.S. Всё для Linux, само собой. Как оно под Windows - понятия не имею.

Nov. 10th, 2016

tux

Полезный Яндекс

Тепер-то я точно знаю, как тёмным зимним вечером должен выглядеть дом по адресу Ленинский проспект, 129, корпус 1!



Previous 10