Experience Reports

Pressgram! An Image Sharing App Built for an Independent Web.

John Saddington didn't like the terms of service of most online photo sharing services. He wanted to keep ownership and control of his photography. He discovered that there were many other photographers who shared his concerns. John wanted to combine the power of the WordPress publishing platform -- something he's also quite passionate about -- with his love of mobile photography. So he did something about it.

He started a Kickstarter project to create an application -- Pressgram -- that would allow iPhone photographers to share their photos with the world while retaining full ownership rights.

The premise is simple: I wanted to post filtered photos from my iPhone 5 but without worrying about any privacy or licensing issues (and we’re not interested in asking you to upload photo IDs). In other words, I wanted complete and total creative control of my images and content (as well as the page views).John Saddington

I know this thinking resonated with me. I was one of the many people who were upset ( no ... PISSED OFF ) when Instagram changed its terms of service (TOS) soon after being acquired by Facebook. I didn't feel ok with seeing my child's picture on a billboard advertisement for Facebook? What about my wife's photo next to an ad for vaginal herpes medication? I was so pissed off I said goodbye to all my followers, downloaded my images and deleted my Instagram account1.

The Instagram API limits exports to 612 pixels. So my downloaded images were the tiny, grainy images that look so great on a small iPhone screen but look like garbage on a large computer display.

If I wanted to publish my images to a self-hosted WordPress blog, there were a few WordPress plugins that allowed me to import images directly from Instagram but again only at 612 pixels. I wanted full creative control of my photos and to license them on my terms2.

On Instagram -- or any social network -- my followers are not mine. They are Instagram's. Once I deleted my Instagram account I also lost all my followers. Wouldn't it be nice to have those followers comment on my photos via a WordPress blog that I had complete control over?

Why not have complete control over how my images are represented and still get the social sharing benefits of Facebook or Twitter? Why not keep control of my photos while using social media to drive traffic back to my web presence?

Photographer Aaron Hockley summed it up nicely in a blog post:

It’s possible to have both our social-emotional networks while also owning our photos in a more permanent location. I look forward to seeing Pressgram in the wild!

John and his team have worked tirelessly for the last few months to bring his ( the community? ) vision to reality. A few weeks ago the app was submitted to the App Store for approval. It was rejected. Apple wanted some design changes. John's team made some changes and the app was resubmitted for approval. And was rejected again. Changes were made and the app was submitted to Apple for the third time. This time the app was approved. It was well worth waiting for.

setup account details

Getting started is easy enough. Download the app from the iTunes App Store and create an account via Twitter, Facebook or email. You'll want to check your email inbox for your temporary password.

2013-09-05 06.44.54

The first thing you'll want to do is complete the social profile for your Pressgram account. Tapping the area with your profile photo will take you to your profile page. Tap the little pencil and fill in the form with your name, your website and a short bio. You can also change your password or make your Pressgram account private.


Now it's time to set up your sharing options. Head back out to the main menu and tap the little gear icon. This will take you to the Settings menu.

2013-09-05 06.36.13

You can add the settings for your WordPress.com or self-hosted WordPress blog so that you can optionally post content. The support team has put together an Knowledge Base to help guide you through this.


In the Setting menu, you can adjust your social media sharing and iOS notifications options. Pressgram supports Twitter and Facebook and I expect John has more planned for a future release.

2013-09-05 07.07.44

Ok. Now setup is complete you are ready to start sharing some photos. You can either import an existing photo from your camera roll or snap a new one. All photos will be square by default. There is a grid overlay to help with compositions and flash and rear front facing camera toggles. After you capture or import a photo, Pressgram will walk you through choosing a filter -- there are some very nice ones -- putting a border around your image or adding a blur effect. Instagram users will be right at home with the options. Once you are doing tweaking your image, Pressgram will take you to another screen. Here you can add some text to go along with your image post to the Pressgram network. You can also add hashtags and choose which blog or social network to share your content to.

2013-09-05 06.45.07

Tap the little check mark and, voila! You have just joined the revolution. I spent quite a bit of time looking through the images in the Popular photo feed. Tap an image to bring up a screen with just that image.

2013 09 05 19 05 08

Double tap to "heart" a photo. Tap the little quote box to leave a comment. You can do @name type mentions in the comments. Tapping the … brings up a menu to report inappropriate content or share the image to Twitter or Facebook. Tapping the avatar for the photographer brought up his or her profile. You can see the photographers stats and if you choose to, follow him or her.

The app packs in a lot of the basic features that I think someone switching from Instagram would want. I know some people hate the square format but I love it.

There were some early birthing pains. About 1000 people signed up in the first few hours and John had to rapidly scale his AWS servers. Even though I posted early in the morning ( around 6:30 AM ) my images did not show up on Twitter or Facebook until the afternoon. At the time of this writing, no images have posted on my blog.

But, I have high hopes for Pressgram. I am already counting down the date to deleting my Instagram account ( again ) and enjoying my freedom from the tyranny of Instagram's TOS.

John wanted to change the status quo. He wanted a revolution. I think he has succeeded.

You see, this is a revolution in thinking – a way of freeing ourselves from the shackles of corporate greed and commercial exploitation to finally have true creative freedom through the publication of our own great work.John Saddington

  1. I recreated my account after Instagram changed the TOS back to the original. 
  2. Images on my site are all Creative Commons Attribution Non-Commercial unless otherwise noted. 

You Might Also Like

  • Experiment with Untappd and WordPress « Island in the Net
    28th February 2018 at 9:15 PM

    I try to follow the tenets of the IndieWeb movement in that I try owning all of my own data and in publishing on my own site and syndicating elsewhere (POSSE). By posting original content first on my site, and then syndicating to silos I reduce decencies on third-party services.
    But I can’t always have this kind of control. I can do it on Twitter and Facebook and there is an easy way to automate pushing out links from WordPress to my content. But some services aren’t easy to use in this way.
    In the last few years, I have enjoyed drinking some of the fine craft ales that are produced in the USA. I enjoy many different styles but my favourite style is the India Pale Ale (IPA). My favourite type of IPA is the New England IPA. This style of ale is cloudy and has a tropical and fruity aroma. One sip and your senses are overwhelmed with flavours of grapefruit, peach, melon, tangerine with little to no bitterness.
    I started using an app, Untappd, to keep track of the ales I drink, rate and comment on them, discover new ales and new breweries, and share and connect with other craft ale fanatics, and checkin to beers and breweries. Untappd also has a gaming element, where I earn a number of cool badges for completing a variety of different criteria. It’s a fun little app.
    I didn’t have a way to re-create my Untappd content on my WordPress website. Until recently I had been uploading my images and creating a post by manually copying and linking to the post on Untappd. It worked but it was a painful process. Here’s one post for the Neshaminy Creek Mango Shape of Haze to Come.
    Part of the pain is self-imposed. I love photography and I love beer. Combine the two and you have beertography. I stage my shots, usually using natural light, and I post process them in Adobe Lightroom. It’s what I do. But it means that my Untappd check-in isn’t instant. And then I have to spend time creating the blog post. I wish it was more like the process I used when I used the now dead Pressgram app.
    But … as I dig deeper into making my WordPress website more a part of the IndieWeb, I started to think about how I could integrate Untappd content. I looked at the Untappd API but quickly realized that POSSE would not work. But what about PESOS?
    In IndieWeb lingo, PESOS is an acronym/abbreviation for Publish Elsewhere, Syndicate (to your) Own Site. The publishing workflow starts with posting to a 3rd party service such as Foursquare, then using some infrastructure backend magic an archive copy if created under on your site.
    Untappd allows the syndication of check-ins to Foursquare so I tried using IFTTT to pull the Foursquare content back to WordPress. It worked. But it wasn’t what I wanted. I wanted all of the information that was siloed in Untappd — the ratings, the toasts, the badges. All of those things are lost from the Foursquare entry.
    So I looked at Zapier. Zapier provides similar automation functionality to IFTTT but has more involved workflow features to control the data with actions and triggers. Zapier allows me to chain together input and output from multiple web apps. It’s like IFTTT for programmers. After a week of frustration, I finally have a working method for pulling my Untappd check-ins back to my WordPress website.
    Here’s the workflow I created.

    The Untappd Checkin action connects to Untappd and pull data from the most recent check-in.
    The Upload Featured Image action uploads the image from the Untappd check-in data to WordPress
    The Create Post with Featured Image actions creates a new post on WordPress and links the uploaded image to the post as a featured image.

    There are few things I needed to resolve before this worked. When the Zapier action uploads the image from the check-in, it needs to give the WordPress image a unique name. I used the name of the beer and the check-in ID as a unique name for the image.

    The image I chose to upload from the Untappd API is {{29756616__media__items[]photo__photo_img_og}}.
    When the Zapier action uploads the image it creates a temporary object with a unique identifier, {{29831497__attachment_id}}. The attachment ID is made available to the next action.
    The post title is set using the name of the brewery and the beer.
    {{29756616__brewery__brewery_name}}'s {{29756616__beer__beer_name}}

    The main body of the post is created using the following template. I wanted to capture as much of the original Untappd checkin as I could and I also wanted to link back to the original post. The Check-in via <a href="https://untappd.com/user/{{29756616__user__user_name}}/checkin/{{29756616__checkin_id}}" class="u-syndication" rel="syndication">Untappd</a> code takes care of that.
    <p>I am drinking {{29756616__beer__beer_name}} by {{29756616__brewery__brewery_name}} at {{29756616__venue__venue_name}} {{29756616__venue__location__venue_city}}.</p>


    Name: <a href="https://untappd.com/b/{{29756616__beer__beer_slug}}/{{29756616__beer__bid}}" rel="nofollow noopener">{{29756616__beer__beer_name}}</a><br/>
    Brewery: <a href="https://untappd.com/w/{{29756616__beer__brewery__brewery_slug}}/{{29756616__beer__brewery__brewery_id}}" rel="nofollow noopener">{{29756616__brewery__brewery_name}}</a><br/>
    Location: {{29756616__beer__brewery__location__brewery_city}}, {{29756616__brewery__location__brewery_state}}<br/>
    Style: {{29756616__beer__beer_style}}<br/>
    Alcohol by volume (ABV): {{29756616__beer__beer_abv}}%<br/>
    IBU: {{29756616__beer__beer_ibu}}<br/>
    My rating: {{29756616__rating_score}}/5<br/>
    Brewer's notes: {{29756616__beer__beer_description}}<br/>

    <p><a href="https://untappd.com/user/{{29756616__user__user_name}}/checkin/{{29756616__checkin_id}}" class="u-syndication syn-link" rel="syndication nofollow noopener">Untappd</a>.</p>

    I set the excerpt for the post to something that would work well for syndicating to twitter.
    I am drinking {{29756616__beer__beer_name}} by {{29756616__brewery__brewery_name}} at {{29756616__venue__venue_name}} {{29756616__venue__location__venue_city}}.

    The date of the WordPress post is set to the same date as the Untappd check-in.

    So with a bit of persistence, I have a way to get the best of both worlds. I can check-in using the native Untappd app. I will have an entry on my blog with the details of that check-in.
    The title of the post was inspired by Chris Aldrich, who used the hashtag #ManualUntilItHurts on a comment to one of my posts.

    Syndication Links :

%d bloggers like this: