It happens to the best of us. You send a tweet, scroll up through your timeline and suddenly see your mistake - a typo, an autocorrect fail, a broken link, a missing picture - all realities of being an active Twitter contributor. So what do you do? You edit your tweet of course. Ah, except, no... that feature doesn't exist yet. You instead copy your original tweet to the clipboard, delete it, start a new tweet, paste the content in, fix it, post it and hope nobody noticed.
Not a great user experience is it.
So why isn't tweet editing a thing? Only @jack can really answer that question. Is it too expensive or time consuming? I'm going to say no, given Twitter is a company with a $14 billion market cap. Is it low priority? When it comes to other things such as sorting out harassment and the like, yes, but see previous comment. Is it too hard? I don't think so. Does it need to be done right? Absolutely... but I think it's possible.
To begin with, let's take note of a few things that are important when it comes to editing tweets.
The biggest problem I hear talked about is the danger of an edited tweet changing the context of associated actions. For example, imagine I tweet 'I love Arsenal!' and you retweet it, quote it, reply to it or similar, but then I later edit it to say something completely different. You might no longer want to be associated with the tweet, the meaning of it might have completed changed, I might change it to something unpleasant. That wouldn't be good.
Tweet editing could come to the web and Twitter's own clients early on, but the solution needs to not break existing clients (and fundamentally the APIs) if at all possible.
When introducing such a powerful new feature, it needs to be intuitive, accessible and in keeping with how Twitter is today.
Were I running the show at Twitter... here's how I would get my team to implement tweet editing.
Edited tweets are new tweets
This is the most important factor in my proposal. How do you ensure that actions off the back of an original tweet maintain their context? You keep the original tweet of course! If you see me reply to someone and they've since edited their tweet, it doesn't matter, because the original version will be referenced. Ditto quotes / retweets.
Non-breaking apps and API
Tweet items returned by the timeline should have an additional attribute to indicate an edited status. Timelines will only return the latest versions of tweets. Tweets referenced individually (e.g. when showing a tweet against a reply) will indicate if they are related to an edited tweet. A new endpoint will provide a tweet's history.
Web and updated clients will indicate updated tweets
A good user experience means indicating if a tweet has been updated, whether the original or an updated version is being viewed. This could be a piece of text saying 'edited', a small pencil icon or similar (caveat: I'm not a designer!). It should then be possible to complete an action to view effectively the history of the tweet, showing changes over time, via the API endpoint above.
Editing a tweet should be as straightforward as deleting a tweet is today
Click the overflow icon, select the edit option, change the content in what is effectively a pre-populated 'new tweet' window. As simple as that.
What have I missed? What are your thoughts? How would you do things differently? Let me know!