If you use Tumblr on a web browser, you might have noticed us testing a brand new navigation on your dashboard in the last month. Now, after some extensive tweaks, we’ve begun rolling out this new dashboard navigation to everyone using a web browser. Welcome to the new world. It’s very like the old world, just in a different layout.
Why are we doing this? We want it to be as easy as possible for everyone to understand and explore what’s happening on Tumblr—newbies and seasoned travelers alike.
Labels over icons: When adding something new to Tumblr in the past, we’d simply add a new icon to our navigation with little further explanation. Turns out no one likes to press a button when they don’t know what it does. So now, where there’s space, the navigation includes text labels. Since adding these, we’ve noticed more of you venturing to previously unexplored corners of Tumblr. Intrepid!
What’s already been fixed? Thanks to feedback from folks during the testing phase, we’ve been able to make some improvements right out of the gate. Those include returning settings subpages (Account, Dashboard, etc.) to the right of the settings page instead of having them in an expandable item in the navigation on the left; fixing some issues with messaging windows on smaller screens; and streamlining the Account section to make it easier to get to your blogs.
What’s next? We’re looking into making a collapsible version of this navigation and improving the use of screen space for those of you with enormous screens. We’re also working on improving access to your account and sideblogs.
That’s all for now, folks. For questions and suggestions, contact Support using the “Feedback” category. Please select the “Report a bug or crash” category on the support form for technical issues. And keep an eye out for more updates here on @changes.
Fresh new 3D Tumblr logo that gets colorful when you hover over it
Search bar moved to the left (accommodates some really long search terms—try it)
Unread count badges are now light blue
Activity icon is in the header, and clicking it shows you your first page of notes (and you can click “See everything” to get to your full Activity page)
Get to all your blog stuff under the Account menu (the little human), no matter how far down the Dashboard you’ve scrolled
Our favorite part of today’s big iOS app update? The Trending widget. The more Tumblr on my Today screen, the better. As the release notes put it:
Witness today’s trending tags without even opening the app. Install it thusly: 1. From anywhere in your phone, swipe down from the top of your screen to open up your “Today” view. This is where all your widgets live. 2. Flick your way to the bottom, then tap the “Edit” button. 3. Find “Trending on Tumblr” in the list. There ya go.
The first cut of settings for communities is now available. Admins of communities can change the name, tagline, avatar, header image, tags, and description. You can find a link to these settings in the sidebar for your community on desktop, or in the context menu on mobile.
The community invite popup has been given a design refresh, include a counter of how many invites you have left.
Communities now display whether they are public or private in their header.
Community admins can now promote members to moderators. Moderators can delete posts, and we’re still building out the feature, so expect to see things change in the next few weeks!
We’ve updated the blog posts API endpoint to add the options to specify a sort order and an “after” time, to complement the current option to show posts from “before” a specific time. When using “before”, and by default, posts are sorted in reverse-chronological order (“descending”). With “after” and “sort = asc”, you can sort posts from oldest to newest instead, starting at a certain time.
🛠 Fixed
Since secondary blogs cannot post to communities yet, your primary blog will now always be selected when posting to communities.
Certain activity coming from communities, such as mentions in posts and comments, and soon invitations, now count towards your unread activity total.
🚧 Ongoing
We are aware of ads auto-playing audio in the Android app, sometimes quite loudly, and are working on a fix!
🌱 Upcoming
We are working to rename Community Labels to Content Labels across our official clients (Web, iOS, and Android), as well as Community Guidelines to User Guidelines. We hope this change will prevent any potential confusion regarding the relationship between these and Tumblr Communities.
Experiencing an issue? Check for Known Issues and file a Support Request if you have something new. We’ll get back to you as soon as we can!
For several years, the Tumblr help docs have mirrored the Tumblr experience: clean and simple. And that was fine. But as we’ve added features and choices and compatibility and complexity, the whole Tumblr experience has gotten richer and it feels like our documentation should reflect that too.
Introducing the new Tumblr help center. At tumblr.com/help, you’ll find
Better, more thorough search results
An improved, much-more-Tumblry look and feel
An announcements section at the top of the page for recent changes and news
All the same helpful content you know and love
Thanks for using the site and for giving us something to write help center articles about, Tumblr. 💗
At Tumblr, we’re always looking for new ways to improve the performance of the site. This means things like adding caching to heavily used codepaths, testing out new CDN configurations, or upgrading underlying software.
Recently, in a cross-team effort, we upgraded our full web server fleet from PHP 5 to PHP 7. The whole upgrade was a fun project with some very cool results, so we wanted to share it with you.
Timeline
It all started as a hackday project in the fall of 2015. @oli and @trav got Tumblr running on one of the PHP 7 release candidates. At this point in time, quite a few PHP extensions did not have support for version 7 yet, but there were unofficial forks floating around with (very) experimental support. Nevertheless, it actually ran!
This spring, things were starting to get more stable and we decided it was time to start looking in to upgrading more closely. One of the first things we did was package the new version up so that installation would be easy and consistent. In parallel, we ported our in-house PHP extensions to the new version so everything would be ready and available from the get-go.
A small script was written that would upgrade (or downgrade) a developer’s server. Then, during the late spring and the summer, tests were run (more on this below), PHP package builds iterated on and performance measured and evaluated. As things stabilized we started roping in more developers to do their day-to-day work on PHP 7-enabled machines.
Finally, in the end of August we felt confident in our testing and rolled PHP 7 out to a small percentage of our production servers. Two weeks later, after incrementally ramping up, every server responding to user requests was updated!
Testing
When doing upgrades like this it’s of course very important to test everything to make sure that the code behaves in the same way, and we had a couple of approaches to this.
Phan. In this project, we used it to find code in our codebase that would be incompatible with PHP 7. It made it very easy to find the low-hanging fruit and fix those issues.
We also have a suite of unit and integration tests that helped a lot in identifying what wasn’t working the way it used to. And since normal development continued alongside this project, we needed to make sure no new code was added that wasn’t PHP 7-proof, so we set up our CI tasks to run all tests on both PHP 5 and PHP 7.
Results
So at the end of this rollout, what were the final results? Well, two things stand out as big improvements for us; performance and language features.
Performance
When we rolled PHP 7 out to the first batch of servers we obviously kept a very close eye at the various graphs we have to make sure things are running smoothly. As we mentioned above, we were looking for performance improvements, but the real-world result was striking. Almost immediately saw the latency drop by half, and the CPU load on the servers decrease at least 50%, often more. Not only were our servers serving pages twice as fast, they were doing it using half the amount of CPU resources.
These are graphs from one of the servers that handle our API. As you can see, the latency dropped to less than half, and the load average at peak is now lower than it’s previous lowest point!
Language features
PHP 7 also brings a lot of fun new features that can make the life of the developers at Tumblr a bit easier. Some highlights are:
Scalar type hints: PHP has historically been fairly poor for type safety, PHP 7 introduces scalar type hints which ensures values passed around conform to specific types (string, bool, int, float, etc).
Return type declarations: Now, with PHP 7, functions can have explicit return types that the language will enforce. This reduces the need for some boilerplate code and manually checking the return values from functions.
Anonymous classes: Much like anonymous functions (closures), anonymous classes are constructed at runtime and can simulate a class, conforming to interfaces and even extending other classes. These are great for utility objects like logging classes and useful in unit tests.
Various security & performance enhancements across the board.
Starting tomorrow, reblogs will have a new look—one that showcases all comments as equals, not buried under an impossible stack of blockquote indents. Our change to reblog captions last month laid the necessary groundwork for us to arrive here, at a place where the dashboard will be a lot easier to read and cleaner-looking.
Here’s how this will look (original on the left, new look on the right):
Questions about all this? Keep reading for the answers…
FAQ
Q: Will this show up for all posts on the dashboard, or just the posts published from here on out? A: All posts! So you can scroll back in time and see your older reblogs in this format too.
Q: Will it look like this on my blog? A: Not necessarily: your public blog will continue to display reblogs according to however your chosen theme displays them. The new look is on the dashboard only, for now.
Q: How do I reblog starting from a certain post in the reblog thread? A: Same as before: Just click the username of whoever made the reblog you want to reblog from. It’ll open up, and you can click or tap its reblog icon to reblog that post. Got it?
Q: Can I edit earlier reblogs, or the original post, in my reblog? A: You can choose whether or not you want to include that stuff in your own reblog, but you can’t really go in and edit other people’s text. We know—that level of flexibility allowed you guys do some pretty interesting stuff, but it also made misattribution way too easy.
Q: Can I remove all captions on a post that I’m reblogging? A: Sure. Click or tap the reblog button and click on the X that appears when you hover over the comments.
Q: Can I delete a single reblog caption within the thread? A: No, it’s an all-or-nothing thing.
Q: How can I be sure my posts are credited properly? A: Use the content source field! No matter how many times an original post of yours gets reblogged, you’ll always be credited as the source. Rebloggers might add a gif, or some commentary, or take out the caption entirely, but your username will always, always be stuck to the bottom of the post. Click on that source link any time you want to see what was originally posted.
Q: Can I send you my feedback on this change? A: Yes. And for the record, even when you receive a simple thank-you response (which is necessary since there are millions of you and only a few of us), every word of your feedback is read lovingly by human eyes, then passed along to our engineers.
Is your biggest fear fast reblogging to the wrong Tumblr? Good news: We added an undo button on the confirmation bar. Just one less thing to worry about. Now you can focus on spiders.
Whew, it’s a busy day in the Tumblrhood. Here’s another new thing that’s rolling out.
So you’re clicking around on the internet, and you’re reading some great article on another site that is interesting and has nice graphics and / or cool engravings from the 1800s.
And you want to share this article with your friends (your REAL friends, let’s be honest) on Tumblr. So you copy the link and paste it into a new link post on your dashboard, and it comes out looking like this:
Aw, man. Now it looks a lot less exciting. So you end up taking a screenshot of the original article, and posting that on Tumblr as photo post, and linking to the article in your caption. Sigh. Kind of a lot of steps for just sharing an article to Tumblr.
Enter our new and improved link posts. You can now paste a link into a new link post on Tumblr, and (if there are any images for it to pull from) it will pull an image from that article for you.
Much better, right? Enjoy!
One more thing: this is only available on the web now, and you’ll see it in the mobile apps real soon.
Some great questions here. Let us answer them one by one.
How will I be able to let people see my community during this beta test and in the future?
Right now, communities aren’t listed anywhere. They’re invite-only and “hidden” by design to keep the test somewhat constrained. But in the future, there will be rich discovery experiences just like we have for posts and blogs on Tumblr today! We’re building this stuff as quickly as we can.
Will the cap be removed or be severely bumped up once the beta test is done?
Our hope is to remove the cap entirely. The cap exists as a kind of bottleneck to keep our experiment limited for now, and we already expanded it from 25 to 500 per community. However, the cap could come in handy for communities managed by a small number of people—or those that actually want to be small, which we’ve heard feedback about. The most likely outcome is that the cap will become optional.
If a community acts out will there be an option to report them?
Yes, we’re building moderation features for inside communities now. We are also building moderation features for communities themselves—so they can be reported the same way posts and blogs can be reported. Communities, overall, have to adhere to the same guidelines as everything and everyone else on Tumblr.
Thank you for your questions, and keep ‘em coming folks.