Yearly Archive:2022

Thoughts on Photography

What is missing in discussions about photography is the pursuit of a new way of thinking. We should focus on the aesthetic aspects of the medium. There is a new form of existence taking shape in our culture and society. The change from text based communication to a more image based culture, the linearity of two dimensional magic, within the change of a society from industrial to post industrial, from work to “play”, all this should be inside the frame of reference when we talk about photography.

I don’t really see a limit. At least not as a media of communication or form of art. Unfortunately, most photography I observe limits itself due to the lack of quality. There seems to be a trend in our culture to move away from quality towards a quick and disposable result. The fine art print seems to only exist in a museum setting. Even without formal training, most people are able to distinguish an image of poor quality from one of a nice quality. Being overwhelmed by a plethora of selfies and smartphone pics we are literally dumbed down by superficiality. I remember the days where we had an outcry about the new way of distributing music on CD’s and the quality lost compared to vinyl. Now mp3 and its siblings are THE thing, streaming music is what we do. But the audio quality of this music is really disappointing. That’s beside the point that there is a pile of low quality music produced as well. It almost appears that we don’t care anymore. But, to be fair, there are some exciting trends pointing the other direction, which is encouraging.

There is a lot of talk about technique and technology, gadgets and tools. However, a “technical” image is something produced by apparatuses. With the advent of digital the entry barrier into photography was dramatically lowered. Everybody has those apparatuses nowadays. Everybody takes pictures, but the desire to create good photographs is spread between few.

It’s important not to lose our visual literacy, the ability to decode visual symbols into meaning. Technical images are very difficult to decode. The non-symbolic, and perceived objectivity of technical images misleads the viewer to see them as a window into reality and not as a photograph, or a work of art.

Edward Steichen said “A portrait is not made in the camera but on either side of it.” When I talk about photography my thoughts mostly relate to portrait and editorial work because that’s what I do. This kind of work requires a connection between the photographer and the subject. In my mind the goal of photography is to convey a message, tell a story, make the viewer contemplate, stir emotions, evoke feelings, shock, dazzle, and raise or lower brows, to name a few.

Our culture is changing, we are highly adept to visual communications, mostly in advertisement but also in games. It’s getting harder and harder to achieve the goals because the gap is widening. To be successful as a photographer we need to have something that grabs our viewers attention, makes them stay with our work and contemplate, makes them want more of our imagery. Unfortunately, there is good content and then there is the rest. Some content will always grab attention of certain groups, i.e. if it’s provocative enough. Even a poorly executed duck face selfie will get attention if there is enough exposed skin. My photographic jungle consists of human objects ‘intentionally produced’. I think the intentional production, the thoughtful process to arrive at something that is trying to meet the goals mentioned above is what the overarching goal in photography should be.

Inside the world of digital photography the image is basically without value; it’s just an accumulation of bits and bytes on a memory chip. Nobody knows what that really is and why it should have any value. The photographer owns it, it’s copyrighted, but it only exists in cyberspace or the cloud until it’s made into something tangible. The fact that digital is so easily reproducible makes it worth even less. We all are observing this devaluation on a daily basis. The digital reproductions are always perfect copies and the multiplicity is overwhelming. Once there is a print the devaluation stops, at least to a certain extent. Digital images are being treated as pure information in an information society. They are almost treated with contempt.

There may be a sliver of hope because there are NFT’s or Non Fungible Tokens. Maybe if we as photographers learn how to take advantage of this new technology we’ll be able to stop the viscous circle of ruining ourselves.

Don’t forget to check out my epigram studio photography website!

Synology NAS & SVN

With DSM version 7 Synology decided to remove the SVN Server package from their distribution. Many developers, including myself, were caught by surprise. After upgrading to DSM V7.x, SVN just didn’t work anymore. It was gone! I have to admit that I didn’t pay attention to the release notes and I found out the hard way because my TurtoiseSVN client couldn’t connect to the repository anymore.

After evaluating my options I had to make a decision between downgrading my Synology NAS or running SVN inside of a Docker container. I didn’t want to downgrade so I decided for the Docker solution. I think Docker might come in handy later because there are a few things such as home automation that I’d like to try as well. If you’re interested in home automation, the image you’re looking for is Home Assistant. But I digress . . .

I need to mention that I have never worked with Docker or SVN Server before. I only used TurtoiseSVN for configuration management while the server was an easy to use DSM package. I had a bumpy ride!

Getting Docker

My decision to use Docker created another challenge because my DS416play DSM does not include the Docker package. Fortunately there is a manual install option in the Package Center. I downloaded the Docker package from the Synology archive at

and then used the manual install option of the Package Center. By the way, the latest Docker version may not work with your DSM version. If that’s the case you’ll see an error message during install and you have to go back and pick an earlier version from the archive.

Getting an SVN Server Image

Next we need an SVN Server image to run inside our Docker container. There are several SVN images available at the Docker Hub. Looking at what’s available I opted for the elleflorio/svn-server. You can find an image through the Docker Registry tab by typing svn into the search box, select which image you want, and then chose Download.

Once the package is downloaded the image is available on the Docker Image tab.

Creating a Docker Container

It’s time to create a Docker Container and launch the image. After clicking the Launch button we’ll get to the container settings. By the way, you can execute all these steps from a command line interface using PowerShell or PuTTY and SSH. All the CLI commands you need are listed at the Docker Hub page. But I’m lazy so I take the “easy way”. Click on Advanced Settings.

There’s one very important step in this process and that is to mount a Volume which is being used to store the repositories. Docker creates a share during install called “Docker”. Since I plan to have more than one container, each with a different purpose, I created a folder named SVN inside the Docker share for use by the SVN Server. We use this folder in the next step.

This folder needs to be mounted at /home/svn which is the default path from the SVN image. Other SVN images may use different paths. It is important to mount a volume outside of the container if you want to easily backup your repositories or access the repositories directly via file system. This comes in handy later when we have to configure access rights for the SVN repositories. Also make sure that “Read-Only” is NOT checked.

In this scenario the ports for accessing SVN Server are set automatically by the Docker configuration tool. If you want to map your own ports you’d want to change the values on the Port Settings tab. If you chose to keep the automatic setting the actual port settings can be found on the Docker Container tab under Details. Keep in mind that if you restart the container or reboot your NAS the ports may change!

Creating a Repository

From here on we need to use an SSH CLI to access the Docker container on the NAS. I use PuTTY but Windows PowerShell etc. work as well. First we want to test the SVN server and see if it’s running. To do so we need to create a SVN server username & password.

docker exec -t <your-server-name> htpasswd \
            -b /etc/subversion/passwd <username> <password>

This will allow us to check the SVN repository via browser http[s]://<your-nas-ip>:<your-port>/svn

If it’s working it will show an empty repository. Sometimes you’ll see a @eaDir directory. That’s something the NAS creates and it can be deleted. Next step, we need to create a repository. Since svnadmin is included in the image we can use the create subcommand:

docker exec -it svn-server \
       svnadmin create /home/svn/<repository_name>

Make sure you use the /home/svn/ path in front of the repository name. This will create the repository at the mounted file system not inside the container. If we check the repository again at http[s]://<your-nas-ip>:<your-port>/svn it will show a repository with your <repository_name>. You can also go to the Docker share and find everything there. Unless you’re very familiar with SVN Server, do not change what’s in the repository folder. It may corrupt your repository.

Configuring the SVN Server

The last step is to edit the SVN configuration files. Each repository has its own configuration files. The files are located at docker/<repository_name>/conf/.

First we edit the svnserve.conf file.

[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

This basically says

  • anonymous users have no access
  • authorized users have write rights
  • the password file name is “passwd”
  • the authorization file name is “authz”

Additional details about the SVN configuration can be found at the Apache Subversion web site.

Next we have to add user[s] to the passwd file.

[users]
user_joe = user_joe_password

Each line is a user = password combination. Lastly edit the authz file.

[groups]
allaccess = user_name

[/]
@allaccess = rw

This creates an allaccess group and gives the user user_name access to all repositories from the repository root down. Again, more detail about this configuration can be found at the Apache Subversion web site.

This should be it to get your Docker SVN Server going. On first access with TurtoiseSVN or else it will ask you for your username/password. After that it’ll be a smooth ride.