Курс по функциональному программированию от ИТМО

Замечательный курс по функциональному программированию  от Университета ИТМО доставляет острых ощущений: лекции интересные и сложные, как и задания для самостоятельного решения.
Курс обозревает концепции функционального программирования: рекурсию, функции высшего порядка, свёртку и отображение последовательностей, ленивые вычисления, метапрограммирование (макросы) и остальное — всё на Common Lisp, одном из популярных диалектов семейства Lisp.

Подробнее →

Загрузка...

Терминал и его команды

Подборка сниппетов для bash, которые используются слишком редко, потому не сохраняются в истории и вылетают из головы, но при этом бывают полезными.

Процессы

Убить все процессы с заданным именем

Когда не доверяешь pkill.

Узнать родителей процесса

Узнать родителей всех порождённых процессов

Во всех командах параметр -f для cut может требовать подбора верного числа.

Вывести процессы, сортированные по потребляемой памяти

Подробнее →

Загрузка...

Бэкап на Google Диск из командной строки

Для работы со своим гуглдиском из командной строки потребуется установить пакет gdrive. Установка проста и описана на странице проекта, там же примеры работы с утилитой.

Далее полезные команды и скрипт для бэкапа.

Подробнее →

Загрузка...

Отладка отправки почты на локальном сервере

Для того, чтобы перехватывать почтовую рассылку с локального веб-сервера, понадобится установить пакет mailcatcher.
MailCatcher — это простой SMTP-сервер, который отображает отправленные на него письма в веб-интерфейсе.

Я настраиваю веб-сервер для PHP, на официальном сайте описана настройка и под другие платформы.

Подробнее →

Загрузка...

Python: вставить строку в буфер обмена (Linux)

Данный код копирует строку «Cthulhu fhtagn!» в буфер обмена — это значит, что после запуска скрипта данная строка будет доступна для вставки в любом текстовом поле.

Код будет работать только в рабочих окружениях, которые используют GTK+ (GNOME, Xfce etc.).

Подробнее →

Загрузка...

Python: загрузка альбомов ВКонтакте

Кратко: описание способа массовой загрузки аудиозаписей из Вконтакте, с сортировкой по альбомам.

Good news, everyone. Вконтакте закрыл свободный доступ к API аудиозаписей, и теперь скрипт не работает.

История

Я слушаю музыку онлайн, для чего использую Вконтакте как музыкальный каталог, в котором можно сохранять и сортировать аудиотреки по альбомам. С помощью специальных плагинов для браузера (использую VK Audiopad), для этого даже не нужно заходить на сайт. Удобно.

Со временем, у меня накопилось больше 65-ти альбомов, в которых находятся свыше 4000 записей.

Подробнее →

Загрузка...

Linux: конвертировать файлы в PDF

Конвертировать документы MS Office в PDF

Утилита unoconv работает с большим количеством других форматов (xls, doc, odt, pot, ppt, полный список на официальном сайте) и доступна в популярных репозиториях.

Объединить pdf-файлы

Последний аргумент для команды (merged.pdf) является названием итогового файла, а входных аргументов может быть любое количество. Утилита pdfunite входит в пакет программ poppler-utils, и также доступна в популярных репозиториях.

Загрузка...

Linux: экспорт аудио из видеофайла

Все перечисленные в статье пакеты должны быть доступны к установке из стандартных репозиториев.

Способ с Mplayer

MPlayer поистине могуч, а его ман-страницу можно читать детям на ночь.

Пример запуска:

Подробнее →

Загрузка...

VLC-вещание и ошибка с crossdomain.xml

При попытке забирать поток с другого домена флэш-плеерами возникает ошибка 404 crossdomain.xml not found. Происходит это из-за политик безопасности, и решается помещением соответствующего файла в корень домена, с которого забирается поток.
Подробнее →

Загрузка...

VLC: добавить водяные знаки к вещанию

Добавить свой логотип к видео, которое раздаётся с помощью VLC:

Документация: http://wiki.videolan.org/Documentation:Modules/logo

Загрузка...