Tumgik
dchymko · 9 months
Text
StreamBuilder: our open-source framework for powering your dashboard.
Today, we’re abnormally jazzed to announce that we’re open-sourcing the custom framework we built to power your dashboard on Tumblr. We call it StreamBuilder, and we’ve been using it for many years.
First things first. What is open-sourcing? Open sourcing is a decentralized software development model that encourages open collaboration. In more accessible language, it is any program whose source code is made available for use or modification as users or other developers see fit.
What, then, is StreamBuilder? Well, every time you hit your Following feed, or For You, or search results, a blog’s posts, a list of tagged posts, or even check out blog recommendations, you’re using this framework under the hood. If you want to dive into the code, check it out here on GitHub!
StreamBuilder has a lot going on. The primary architecture centers around “streams” of content: whether posts from a blog, a list of blogs you’re following, posts using a specific tag, or posts relating to a search. These are separate kinds of streams, which can be mixed together, filtered based on certain criteria, ranked for relevancy or engagement likelihood, and more.
On your Tumblr dashboard today you can see how there are posts from blogs you follow, mixed with posts from tags you follow, mixed with blog recommendations. Each of those is a separate stream, with its own logic, but sharing this same framework. We inject those recommendations at certain intervals, filter posts based on who you’re blocking, and rank the posts for relevancy if you have “Best stuff first” enabled. Those are all examples of the functionality StreamBuilder affords for us.
So, what’s included in the box?
The full framework library of code that we use today, on Tumblr, to power almost every feed of content you see on the platform.
A YAML syntax for composing streams of content, and how to filter, inject, and rank them.
Abstractions for programmatically composing, filtering, ranking, injecting, and debugging streams.
Abstractions for composing streams together—such as with carousels, for streams-within-streams.
An abstraction for cursor-based pagination for complex stream templates.
Unit tests covering the public interface for the library and most of the underlying code.
What’s still to come
Documentation. We have a lot to migrate from our own internal tools and put in here!
More example stream templates and example implementations of different common streams.
If you have questions, please check out the code and file an issue there.
5K notes · View notes
dchymko · 9 months
Text
Tumblr media
good. you do not deserve to have bird imagery
34K notes · View notes
dchymko · 10 months
Text
172 notes · View notes
dchymko · 1 year
Text
Working during the last two weeks of December be like
Tumblr media
You could click through our Top Content Roundup blog as a lil distraction from pretending to work. You get some entertainment, and we get pageviews—it's a win-win.
16 notes · View notes
dchymko · 1 year
Text
I made a baby blanket for a pregnant woman at work and I went back and forth about it like “is this weird? To like hand make something for someone when we’re like friendly acquaintances not like bffs. God why are you so fucking awkward.” Anyway I gave it to her and she said she loved it and in the back of my head I’m like yea she’s nice and probably just humoring the weirdo. Well she texted me a picture this weekend of a scrunchy faced newborn at the hospital wrapped in the blanket I made her. And I’m like. Wow. She loved it so much she took it with her! To the hospital! To give birth! She wrapped her newborn it! I am just so filled with love and joy right now.
People will love the things you make them. Because you thought of them and you cared.
304K notes · View notes
dchymko · 1 year
Text
Tumblr media Tumblr media Tumblr media
I do actually think tumblr is winning at Icons. Nobody is doing it like them. I’m gonna keep a collection of these dudes cuz it’s super cool.
43K notes · View notes
dchymko · 1 year
Link
39 notes · View notes
dchymko · 1 year
Text
Goncharov to himself: Will you be here when I return?
To this day, that line gives me chills.
12K notes · View notes
dchymko · 1 year
Text
My favourite part of every song is when every single track stops for a second and the lady says "low battery"
18K notes · View notes
dchymko · 1 year
Text
tumblr tuesday: the many benefits
@aquariumpacific and @oregonzoo joined us last week! Welcome! To celebrate, here are some blogs you might enjoy if you like sea (and sea-adjacent) creatures. 
@marinememes​:
Tumblr media
@sarahmackattack​ is on a mission to get everyone to know exactly how cool squid are:
Tumblr media
@montereybayaquarium​ is known for its jelly cams, but have you checked out the other live feeds? Currently: nesting African penguins!
Tumblr media
@noaasanctuaries​ shares wonders from the national marine sanctuaries in the US:
Tumblr media
And finally, as mentioned, @aquariumpacific​ are new here. They want you to meet this leopard shark. His name is Sam. 
Tumblr media
6K notes · View notes
dchymko · 1 year
Text
1K notes · View notes
dchymko · 1 year
Photo
Tumblr media Tumblr media Tumblr media Tumblr media
The Honkerer
8K notes · View notes
dchymko · 1 year
Text
I'm a lumberjack and I'm OK
Tumblr media
1 note · View note
dchymko · 1 year
Text
Proper boundaries
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
92K notes · View notes
dchymko · 1 year
Text
Biggest indicator of US decline: You could buy 6 BigMacs with 1 hour of minimum wage in 1980, but today you can't even buy one, despite minimum wage more than doubling.
Tumblr media
It's over.
104K notes · View notes
dchymko · 1 year
Text
Tumblr media
Bowen Island, BC, Canada
YVR->YLW
0 notes
dchymko · 1 year
Text
Tumblr media
I say the more the merrier!
2K notes · View notes