docs: def connection_with_anon(credentials, anon=True):
      """
      Connect to S3 with automatic handling for anonymous access.
  
      Parameters
      ----------
      credentials : dict
          AWS access key ('access') and secret access key ('secret')
  
      anon : boolean, optional, default = True
          Whether to make an anonymous connection if credentials fail to authenticate
      """
      from boto.s3.connection import S3Connection
      from boto.exception import NoAuthHandlerFound
  
      try:
          conn = S3Connection(aws_access_key_id=credentials['access'],
                              aws_secret_access_key=credentials['secret'])
          return conn
  
      except NoAuthHandlerFound:
          if anon:
              conn = S3Connection(anon=True)
              return conn
          else:
              raise