
More on agreement.
Development
In setting out on this project, I wanted to meet a couple of secondary goals: to actually complete a web app, and to have an overarching strategy and result for the project. I needed to make sure I could see the end result from the start, and that meant being very deliberate and measured about how to make it.
Framework
For the site I chose to use Ruby on Rails. It's a Ruby-based framework that was quite popular in the late 2000s and early 2010s, but maybe lost some popularity over the last few years. I love it — it's an elegant framework, and I appreciate the level of thought that goes into it. The convention-over-configuration mentality suits me.
Ecosystem
A web app is great and all, but these days that web app needs support from social media. That meant setting them all up.
Hosting
I host a bunch of sites using Dreamhost.com, including this blog. It's pretty good, but sometimes hosting Ruby on Rails sites can get awkward and difficult. So for this site I decided to give Heroku.com a go. Heroku is a cloud-based, platform as a service (PaaS) for building, running, and managing apps. It's got really solid support for RoR, but comes with some functional overhead — namely, using Postgres databases, and tight Git integration. I've used Git before (it's not my favourite version control), but never Postgres. So it was a learning curve for sure.
UX & Design
Oof. I just jumped into the design of the app as I built it. It went through many, many changes as I did. Which I think is a good thing — even though it might not have been the fastest method, I effectively had several rounds of user testing just through development.
Sharing
Naturally I wanted the process of sharing these statements to be as easy as possible. One click. But it was not to be — certainly not with the moving target that is social media API compliance. Image sizes change, API calls change, oof. And what I assumed would be simple functionality — rendering out text to a fixed-size image — proved anything but. Many lessons learned there. But it works — at least, enough for a first version. More planned.

Part of the idea of this site is to ask people to take responsibility for opinions on social media. The current state of sharing allows for individuals to share a post from someone else, yet disavow agreement if confronted, to say “oh, I'm just reposting”. But the sharable image generated by We Agree That… explicitly states “I agree” — and that positioning with the first person makes it difficult to repost without taking responsibility. I've been tracking analytics, and there has been some traffic, but I hope that this gets picked up organically. If not, phase II means a more deliberate approach to publicising the site.