Собрал себе фотика

Собрал себе фотика! Вот такой набор:

  • Фотик: Olympus Pen E-PM2 Kit
  • Объектив-блинчик на замену китовому: M.ZUIKO DIGITAL ED 14‑42mm 1:3.5‑5.6 EZ. По характеристикам тоже самое что китовый, но в 2 раза короче (в сложенном состоянии) и полегче немного. Кажется, что немного менее резкий по сравнению с китовым, но не так уж и намного, некритично в общем (для меня).
  • Вот такая классная крышечка на объектив, с автоматической шторкой - когда включаешь камеру, она сама открывается, когда выключаешь - закрывается, в общем как на мыльницах - очень удобно, не нужно мучаться с постоянным сниманием/надеванием крышечки: Olympus LC-37C Auto Lens Cap
  • Посколько в самом фотике вайфая нет, купил такую SD-карту с встроенным Wi-Fi (ещё не приехала): Toshiba FlashAir
  • Такую сумку, цепляю её к поясной стяжке рюкзака, чтобы фотик был постоянно в мгновенной доступности: Deuter Camera Case III. Фотик с некоторым трудом, но туда помещается.

Вес всего комплекта (без сумки) - 369 грамм. Толщина в сложенном виде получилась 61мм.

Дальше →

safeGpx

Запилил утилиту, которая позволяет выкидывать из GPX-трека точки из заданной области. Зачем - ну например, чтобы по публично выложенным (например, в Strava, Runkeeper, и т.п.) трекам нельзя было точно определить, где вы живете.

Как пользоваться

Очень просто, формат запуска таков:

safeGpx -skipArea 29.212000,53.136975,29.214000,53.136725 sourceGpxFile.gpx -o outputGpxFile.gpx

Аргументом -skipArea задаются координаты региона, точки из которого нужно исключить. Задаются в формате lat1,lon1,lat2,lon2,итд. Возможны два варианта:

  • можно указать 2 точки, тогда из них составится прямоугольник
  • можно указать более 2 точек, тогда задается произвольный полигональный регион

Установка, исходники

См. github.com/ivanzoid/safeGpx

Как пользоваться BTSync

Что происходит с сокетами, когда iOS-приложение уходит в фоновый режим

Итак, допустим, у нас есть приложение, в котором открыт TCP-сокет, мы в него читаем/пишем данные, и тут внезапно пользователь нажимает на кнопку Home. Что произойдет дальше?

Дальше →

Производительность рендеринга Safari, Firefox и Chrome в OS X

Давно хотел как-то замерить свои субъективные ощущения от скорости работы разных браузеров в макоси, и вот наконец удалось более-менее объективно это осуществить.

Дальше →

Automatically translating comments in source code to English

Recently I had to support some iPhone project, and part of the comments in source files was in Chinese. Unfortunately I do not know Chinese, so I quickly wrote an utility to make automatic translation to English. Luckily there already existed a Python library for Microsoft Translator API, so it wasn't hard to write.

You can find information how to use and utility itself on its GitHub page.

Слайды с доклада по Git

Слайды с небольшого выступления по Git submodules, SubGit и Git-flow.

Add sound tracks to a video file with FFmpeg

Short tutorial how to extract & merge audio tracks from/to video files with FFmpeg.

Continue →

Clean up Objective-C code for new (≥4.3) Xcode

In Clang ≥ 3.0 (and Xcode ≥ 4.3) it is no longer required to write forward declarations of methods in class implementation. For example, if previously you wrote:

@interface MyClass ()
- (void) someFunction;
- (id) anotherFunction;
- (int) weNeedMoreFunctions;
@end

Now, you don't need this section anymore at all.

If you want to automatically remove sections like this, use the following one-liners.

Continue →

Git Cheatsheet

SVN Cheatsheet

Automatically convert APE+cue, WV+cue, FLAC+cue, *.flac, to Apple Lossless (ALAC) tracks

Выкладываю пару скриптиков для проведения действий указанных в сабже, для пользователей Mac OS X и Linux, которые не боятся командной строки.

Instructions in English may be found here.

Дальше →