Amara Blog Redesign & Intro of CAT

In 2014, we focused on developing the Amara platform (making it faster and even more user friendly), building partnerships, and gaining long-term sustainability.  In 2015, in addition to continuing this work,  we also want to foster greater connections amongst online translation and accessibility communities. We’re starting with this new sub-blog: Community, Accessibility & Translation (aka CAT) – our goal with this space is to explore the values, communities, and issues that drive our work.

Amara attracts a uniquely diverse group of users, and we hope to reflect that uniqueness in this blog. We want to highlight the people who are making a difference, like Dawn, at iheartsubtitles, who is urging creators and producers to budget caption costs into their productions. We’d like to cross-pollinate with other large communities, for instance, the TED Open Translation Project community has published some great tips on language acquisition.

We’re also excited to spread awareness around groups like /r/CaptionsPlease on Reddit, a community of volunteers who help make specific videos accessible, upon request. These are just a few examples of a growing community of allies who are sharing best practices, advocating for a more inclusive world, and working to make the web a better place.

We’ll be doing plenty of writing here. More importantly, we will soon be inviting guest/cross posts as well. If you have any thoughts, ideas, or feedback you’d like to share, please get in touch: blogs@amara.org

Upcoming Amara API Changes

The Amara API is going to be going through some exciting changes in the near future.  I’d like to take this opportunity to explain the reasons behind the change and discuss what it means for people who interact with the Amara API.

First off, let me say that there are no plans to change how the API endpoints themselves work in the short term.  All of the current endpoints will stay around and there are no plans to change the interfaces.  We are planning a small change to the URLs, but  that’s it and there will be a transition period when both the old and new URLs work.

So what is changing?

First off, we’re going to be doing a refactor of the code for several reasons:

  • We want to clean up the API code that we’ve written, which could definitely use it.
  • We want to switch from an old version of tastypie to django-rest-framework.  This has the nice benefit of providing browser-friendly endpoints.  They’re pretty awesome for exploring and debugging the API.
  • We want to move most of the API to our public repository

Like I said, this will only be a refactor.  All current functionality should still stay the same.  That said, it’s going to be a somewhat large code change.  If you have client code that interacts with our API, I would definitely recommend testing it with our new code during the transitional period.

The other thing that’s going to happen is a switch to how we handle changes to the API.  Right now we use a versioning system, where the version is included in the API URL (the /api2/ prefix).

This system isn’t really working well.  First off there are semantic issues with including the version in the URL.  But the main issue is it doesn’t fit in with the way we work on amara which is based on agile, iterative development.  It’s much better for us to make small, incremental changes, then to try to save them all up and then make a huge API change with a new version.  In fact, we have made several small changes like this to the API in the last few months and kept the API version the same.

What we’d like to switch to is a system where the API URLs don’t include a version.  Instead of http://amara.org/api2/partners/videos/ we will use something like http://amara.org/api/videos/.  Under the new system, it should be expected that small changes will happen over time.  To make changes as least painful as possible, we will provide tools to help API client manage them:

  • We have created the Amara API Changes email list to communicate API changes.  Whenever we are planning to make one, we will announce it on our blog, announce the date when it will happen, and send an out an email to the list.
  • Before the switchover date, we will return an HTTP header to indicate that the API will be changing.  The name will be X-API-DEPRECATED and the value will be the switchover date in YYYYMMDD format.
  • Clients can start using the new API before the switchover date using the X-API-FUTURE header.  The value should be the date of the API that you want to use, also in YYYYMMDD format.  If the X-API-FUTURE date is >= the switchover date then the new API code will be used.  If this date is in the past it will be ignored.

When will this all happen?  This isn’t set in stone right now, but I think this will be the rough schedule:

  • 2-4 weeks to implement the new API endpoints using the new URLs:  At this point users can try testing their clients against the new API code.  We will send an email and post to our blog as we implement endpoints.
  • 2 week early transition period:  At this point the new URLs will all be implemented and you are encourage to switch your client code over to using them.  The old URLs will continue to work as usual
  • New world order: after the transition period the old URLs will redirect to the new ones.

dev updates 2015-01-15

Fixes and features deployed to Amara:

  • UI adjustments for team activity stats (video tab) #1937 opened 8 days ago by syl22-00
  • UI adjustments for team activity stats (team tab) status 4 merged-to-staging #1936
  • Compute team activity statistics as task status 4 merged-to-staging #1935
  • Better looking page for 403 errors status 4 merged-to-staging #1933
  • Link to setup language profile on team dashboard is broken #1923
  • Do not allow unauthenticated users to submit videos #1902
  • YT quota limit prevents subs from being sent to YouTube #1858

Amara’s site performance increases dramatically!

Amara users have probably noticed some serious speed improvements over the past month.   Average page load time has been halved, and some specific pages have seen even more dramatic improvements.  Today we’ve deployed another set of changes which mainly affect the video pages.

Here’s a quick summary of the features and fixes added to Amara in the past month:

Speedups:

  • Cache Video/Language pages better #1839
  • Refactor Video titles #1463
  • Speed up queries for the Action model #1473
  • Speed up teams activity page load time #1517
  • Improve performance for the team activity page #1266
  • Move videos page is slow #1837
  • Speedup admin pages that have a user field #1845
  • Stop counting video views #1879

And all the rest

  • Show the primary-audio language in the tasks list display #1580
  • Add ability to send custom message when a member joins the team #829
  • List of reference languages not displayed in the editor when subtitling into primary language #1821
  • Allow private versions to be selected in the reference language area #1893
  • Editor does not display reference language selector when original language is missing #1868
  • Add cal academy to communities page #1891
  • Outdated text on Account page #1887
  • Clicking Complete did not mark subtitles as complete #1752
  • Subtitles fail to save from new editor if user has non-ascii characters in username #919
  • Use API authentication for downloading subtitles #1876
  • Respect line breaks when uploading from TXT files #1764
  • Rename ‘pan’ to Panjabi #1436
  • Add Upper Sorbian, Lower Sorbian languages #1855
  • Broken link in email notification about reviewer’s note #1846
  • Line breaks in subtitle lines not displayed on diffing page #873
  • Add languages parameter to API User resource #989
  • Return the user languages in the API Language field #1491
  • Logout redirect page is wrong #1838
  • Featured link in footer broken #1843

Amazon shoppers: Here’s an easy way to help Amara

Amara has come a long way in the past 4 years, growing from a humble prototype into a powerful open platform! Today, Amara is used by millions to create, share, and view captions and subtitles — making it possible for more people to engage, participate, and benefit from all of the amazing content online.

Developed and maintained by the Participatory Culture Foundation (PCF), a non-profit ( 501c3) organization, Amara is built by a small team of individuals who share the belief that everyone deserves to communicate globally, with full access to the richest media on the web.

If you’re an Amazon shopper, especially if you’re doing holiday shopping, you can support Amara with each purchase you make. Simply bookmark the link below and use it any time you browse or buy on Amazon. A portion of each purchase will go to PCF, which ultimately helps us keep Amara going.

Automatic Option (easy!): Install browser plugin (Firefox or Chrome) and then visit this link one time – now all Amazon.com purchases will always benefit Amara.

Bookmark Option: Drag this link to your bookmark toolbar: Amazon + Amara

Animation of dragging Amara + Amazon link to bookmark  bar