April 4th, 2011

humster

ортопедические изделия

Я отношу себя к категории ленивых фотолюбителей. У меня есть неплохая «беззеркальная зеркалка», иногда на меня нападает желание пощёлкать чего-нибудь вокруг себя. Однако я ленив, и ковыряться потом в полученном фотоархиве у меня ни времени, ни желания нет. Как правило фотографии просматриваются один-два раза сразу после съемки путём подключения фотоаппарата к телевизору через HDMI кабель. Затем фотографии отправляются в небытие каталог ~/Pictures/Photos/Unsorted и, как правило, остаются там навсегда. С различным спец. ПО я как-то не сдружился, посему этот бардак просуществовал почти два года. И вот, на волне изучения Haskell, я созрел для решения проблемы.
Недавно в сети узнал много интересного про ортопедические салоны Огонёк .Я сразу решил поделится с вами и рассказать об лртопедических салонах.Если вам интересна ортопедия то заходите .
humster

детская одежда

Я не претендую на звание гуру функционального программирования, я допускаю, что код, который я написал — ужасен (ведь вплотную Haskell'ем я занимаюсь чуть более двух месяцев в свободное время), и более того — он может работать неправильно. Цель данной статьи показать, что Haskell — это действительно язык общего назначения, который может применяться не только для кошмарных сложнейших математических расчетов, но и для вполне обыденных, повседневных задач. И отлично с ними справляться.

Я в курсе существования специальных программ, решающих эту задачу, но мне нужна была простая, элементарная утилита, которая делает ровно то, что хочу я. Я в курсе, что данную задачу можно было бы решить вообще на каком-нибудь bash или perl, но таков выбор автора, то есть меня.
в сети много всего но интересное предложение только одно недорогая детская одежда оптом для вас !Обращайтесь если вам интересно!
humster

скоротай время за игрой

Постановка задачи

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

Как будем решать

Всё просто. Начнём с того, что необходимо поддержать два режима:
«автоматический» — когда в качестве аргумента командной строки передается директория, которую необходимо «просканировать»;
«ручной» — когда запускается простенький GUI фронтенд, в котором мы самостоятельно выбираем директорию для обработки.

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

Далее, независимо от того, каким образом нам был подсунут каталог, мы обходим этот каталог (включая обход всех субкаталогов, потому что многие фотоаппараты (если не все) заботливо кладут фотографии в папочку PHOTO, а затем в какие-нибудь 100PANA, 101PANA и т.п.) и обрабатываем каждый отдельный файл.

Обработка каждого отдельного файла до безумия проста: читаем данные Exif и, в случае если они вообще есть, копируем его (файл с фотографией) в директорию, соответствующую извлеченной дате.

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

Интересное предложение о том что можно скоротать время за игрой для вас.Если понравилось заходите по ссылке!