
This classroom-based dayschool aims to introduce participants to the various approaches to photographing people and places , using monochrome and colour . An illustrated talk will be followed by the showing of distinctive photographs , black and white and colour , and a discussion . This relaxing and enjoyable workshop will introduce a range of techniques to enable you to improve your skills . The dayschool is offered in association with the Royal Photographic Society and tutored by one of its award-winning Fellows . The course is limited 