![]() ![]() Needless to say, eventually this made it very difficult to have consistent and easy to understand patterns for how we figure out things like… how many images are in a post? Since we added the ability to add an image in the caption, it’s possible there’s images in the “one”, “two”, or “three” columns, but each may be in a different format based on the post type. And each column’s value could be different based on the post type. And as Tumblr grew more, eventually we added “three”. Because Tumblr was growing so rapidly at the time, this needed to happen fast, so we took the easiest path available: add a new column! That first “post content” column was renamed “one”, and the new post content column was named “two”. We needed somewhere to store that new post content. We added the ability to add a “source” to quote posts. We added the ability to add a caption to photo, video, and audio posts. ![]() Here’s a simple example, note how each post type has different kinds of content:Īs Tumblr grew, its capabilities grew. So the actual value of that “post content” column can change depending on what type it is. For text posts, it’s just text, in HTML format. For video posts, this is either a reference to an uploaded video file, or it’s a URL to an external video. For photo posts, this is a set of one or more images. But once you have these discrete “types”, you have to determine how you want to store the content of each “type”. Post content (more on this in a minute)īefore the Neue Post Format, posts had discrete “types”, so that’d be a column here as well.When it was posted (a timestamp of some kind).Parent blog identifier (if it’s a reblog).Parent post identifier (if it’s a reblog).Author blog identifier (an integer pointing to the “blogs” database table).In a standard normalized database table, these columns would look like: In the case of reblogs, they also have the “parent” post and blog it was reblogged from (more on How Reblogs Work over here). Every post has a unique identifier once it’s created. This hellsite we all love is held together by duct tape, good intentions, and luck, and we’re constantly working to make it better!Ī post is seemingly a very simple data model: it has an author, it has content, and it was posted at a certain time. To understand how far we’ve come and the challenges we’ve had to face, you need to know the deep dark secrets of how we store post content on Tumblr. With literally billions (tens of billions!) of posts on Tumblr, how do we move this churning engine of content from one format to another without breaking everything? It took many phases, and releasing the new editor on the web will be one of the final pieces in place. But here on Tumblr, we still want to stay true to our blogging roots, while giving access to a wide creative canvas, and the Neue Post Format reflects that work. ![]() Over the years, the landscape of how people make posts on different platforms across the internet has changed dramatically. It’s been a very long time coming – work on the Neue Post Format began in 2015 and was originally codenamed “Poster Child”, and it was borne out of a lot of things we learned dealing with the previous new post editor we released on web around that time. We’re currently rolling out an opt-in beta for a new post editor on web which will leverage the Neue Post Format behind the scenes. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |