Skip to content

Instantly share code, notes, and snippets.

@jacobh
jacobh / gist:1370732
Created November 16, 2011 17:25
Film Photography 101

Film Photography 101

After seeing so many repetitive questions in the film photography thread on facepunch I've decided to write a bit of a crash course into film photography. I've been using film for about a year now, and I'm loving it; most of what I'm going to say is based off either what I've discovered, or what far more experienced friends have taught me.

Some parts such as reccomendations are going to be, by nature, biased, as I'm inclined to reccomend stuff that I've used and can trust. Don't think that because I haven't listed something that means it's instantly terrible.

Cameras

The first question when looking at getting into film photography is which camera should I buy? This answer will vary from person to person, situation to situation, so I'm going to try to give a bit of a rundown of the various different types of cameras, and situations where they are best used.

/// This is a special string which indicates that no response will be received
/// for an RPC.
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct StreamingNoResponse {}
/// Generic Ack Message
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Ack {}
/// request the list of available plugins
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PluginListRequest {}
$ cargo test
running 134 tests
test ffi::bindgen_test_layout_FIT_ANT_RX_MESG_DEF ... ok
test ffi::bindgen_test_layout_FIT_ACTIVITY_MESG_DEF ... ok
test ffi::bindgen_test_layout_FIT_ACTIVITY_MESG ... FAILED
test ffi::bindgen_test_layout_FIT_ANT_RX_MESG ... FAILED
test ffi::bindgen_test_layout_FIT_ANT_TX_MESG ... FAILED
test ffi::bindgen_test_layout_FIT_ANT_TX_MESG_DEF ... ok
test ffi::bindgen_test_layout_FIT_BIKE_PROFILE_MESG_DEF ... ok
/* automatically generated by rust-bindgen */
#[repr(C)]
pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>);
impl <T> __BindgenUnionField<T> {
#[inline]
pub fn new() -> Self { __BindgenUnionField(::std::marker::PhantomData) }
#[inline]
pub unsafe fn as_ref(&self) -> &T { ::std::mem::transmute(self) }
#[inline]
@jacobh
jacobh / gist:9884192
Created March 31, 2014 02:39
LIFX build status light
require 'LIFX'
require 'net/http'
require 'json'
# LIFX setup
green = LIFX::Color.green saturation: 1
red = LIFX::Color.red saturation: 1
white = LIFX::Color.white
off_color = LIFX::Color.white brightness: 0
@jacobh
jacobh / lr_restore.py
Created May 5, 2016 11:57
might have another version of this in gist already...
from __future__ import division
import multiprocessing
from multiprocessing.pool import Pool
import exifread
import arrow
import glob
import os
import records
import shutil
from PIL import Image
from __future__ import division
import multiprocessing
from multiprocessing.pool import Pool
import exifread
import arrow
import glob
import os
import records
import shutil
from PIL import Image
for WAV_FILE in `ls | grep .wav`
do
MP3_FILE=`echo $WAV_FILE | sed s/.wav/.mp3/`
if [ ! -f $MP3_FILE ]
then
lame -q0 -V0 $WAV_FILE $MP3_FILE
fi
done
@jacobh
jacobh / gist:8491282
Created January 18, 2014 14:25
scraping my own flickr photos
from gevent.pool import Pool
import json
import os
import requests
from tqdm import tqdm
from urllib import urlretrieve
ENDPOINT = 'http://api.flickr.com/services/rest/'
API_KEY = 'nope'
USER_ID = '48735087@N06'
@jacobh
jacobh / gist:8277335
Created January 6, 2014 02:34
nltk stop words
i
me
my
myself
we
our
ours
ourselves
you
your