Text
IT’S A WONDERFUL LIFE (1946) • JIMMY STEWART as George Bailey and LIONEL BARRYMORE as Mr. Potter
121K notes
·
View notes
Text
A Timeline and History of MLKSHK, MLTSHP
👋 Hi, I’m Brad Choate. Here’s a recollection of my involvement with MLKSHK and MLTSHP over the years. The following is pieced together from bits of email, Twitter, TypePad, Tumblr, database records, and aging neurons.
A timeline of mlkshk.com
Domain registration - 4/13/2008
Initial commit from Andre - 3/13/2010
First commit from Ivan - 10/1/2010
AWS database created - 10/20/2010
First posted file (“farrrrrt bird”) - 10/27/2010
First users created (82) - 10/28/2010
Opens to limited audience - 10/28/2010
First TypePad blog post - 12/29/2010
Opens to wider audience via invites, waitlist - ~¼/2011
First comment - 1/11/2011
Opens to general public - ~4/26/2011
First commit from Mark - 5/19/2011
Shutdown announcement - 5/1/2014
Andre is hired at Slack - ?
Shutdown averted? - 6/18/2014
Shutdown averted announcement - 6/30/2014
First commit from Brad - 8/3/2014
Good Web Bundle promotion - 11/19/2014
Subscription woes - 5/20/2015
More subscription woes - 7/9/2015
Subscriptions restored (delaying another imminent shutdown) - 3/24/2016
Final shutdown announcement - 2/22/2017
Enters read-only mode - 3/31/2017
Waxy.org post about MLKSHK’s closure - 4/13/2017
Closes - 5/1/2017
Lifespan from 10/27/2010 - 2,379 days, or 6 years, 6 months, 5 days.
Lifespan extended 3 years from 5/1/2014 shutdown announcement.
A timeline of mltshp.com
Continuation community assembles itself… on Facebook?! - 11/3/2016
mltshp.com domain registration date - 3/9/2017
Initial commit to Github by Brad - 3/17/2017
Fundraising - 3/24/2017
Gettin things done - 3/31/2017
MLKSHK user login support - 4/30/2017
GIF to Video feature - 5/9/2017
First Tumblr blog post and launch - 5/16/2017
Dropped Google Analytics - 5/10/2019
2019 State of the SHP - 8/29/2019
Site search introduced - 9/3/2019
4th birthday - 5/16/2021
Fastly CDN switch(back) - 12/22/2022
6th birthday - 5/16/2023
Happy 7th Birthday - 5/16/2024
Lifespan to date (as of this writing on 12/24/2024): 2,780 days, or 7 years, 7 months, 9 days.
Some personal history
I joined MLKSHK by invitation on January 6, 2011 as a regular user. I found MLKSHK to be a breath of fresh air compared to your typical social media site (which still holds true today). After the shutdown announcement in 2014, I tried to offer help and reached out again around July 2014 after the announcement that the site would not be closing. I had met Andre once before, but mostly knew of him through colleagues at Six Apart. Andre took me up on the volunteer help… remember, by this time he wasn’t running MLKSHK as a business, so the ~3 years that follow are maintaining the site as a hobby, particularly since it was still losing money.
Initially, I helped with site performance issues, including some query optimizations. As time passed, it became clear that the site was still in danger of closing due to the cost of services it was incurring, which was not offset enough by subscriptions. So Andre and I went through a cost assessment process and we identified a number of things that could be done. Switching away from Fastly to a cheaper CDN (KeyCDN at the time) shaved CDN operational costs by 66% (Fastly charges 12 cents per gigabyte of transfer and KeyCDN charges 4 cents) so we started there, since it was the easiest change to make and had the most impact.
I also helped with the site’s participation in the “Good Web Bundle” promotion which brought in a few subscribers and returning members. The following year (2015), we had to rebuild subscriptions from scratch since both Tugboat and Amazon payments had to be retired, and we replaced those with Stripe. Alas, the site was still just not able to sustain itself as it was, and a decision was made to close for good in 2017.
Before that happened, the MLKSHK community began a conversation with Andre to transition the site to a community-run operation. I wasn’t involved in discussions, so don’t have insight into the choice behind creating a new domain and brand instead of adopting MLKSHK outright (I suspect Andre just preferred a clean break). Andre agreed to share all data and source code to the transition team. I helped with transitioning the source code for MLKSHK; cleaning it up for the basis of the MLTSHP repository to become an open source project.
It was decided that it would be best to make MLTSHP more closed in nature… so much of MLKSHK was open to free users, even some allowance for post creation. The plan was to relaunch with a membership requirement, but also with two price plans - the regular $24/year membership (plus an option to specify any amount over $24/year if the member wants to), and a new $3/year membership which effectively was the same level of service that was provided for free registered users before. While posting was being restricted to members, we wanted to keep certain things open for all: our “Popular” page, and individual post links which can be shared anywhere.
There would be some downtime between MLKSHK’s closure and the launch of MLTSHP. We aimed to keep that downtime low, but it gave us some time to make some larger changes that would make for a more sustainable and cost-efficient service.
Switching off of Amazon AWS for web server and database service was a big one. I had wanted to do this for MLKSHK as early as 2014, but we never did. I took a snapshot of AWS expenses from January 2017 and costs for that month were $400 (just RDS + S3 + EC2 and outbound data transfer to our CDN). We switched these to use Linode. For CDN service, KeyCDN was more cost effective than Fastly was, but we decided to switch to using Cloudflare for CDN since it wouldn’t cost anything (ironically, MLTSHP has since switched back to Fastly after receiving an offer to operate at no cost). The only remaining AWS feature MLTSHP is using is S3 for block storage. There are some cheaper S3-compatible services available, but the potential savings have never justified the task of a migration. Operational costs today are less than half of what we were spending for AWS alone, and we pay nothing for CDN service.
We also set up a real deployment process, utilizing Buildkite (they offer a free account for us to use), making it easier to test and deploy community-led changes. This also included utilizing Docker which also makes it easier for contributors to run their own copy of the site locally for development.
Ahead of MLTSHP’s launch, a service was built that would transcode GIF images (a popular, but heavy file format) to video formats that those would serve instead of the original GIF file. This was a cost-saving measure, since popular GIFs lead to a lot of traffic, so the smaller the better.
Another must-have for relaunch was a process that would migrate a user’s MLKSHK data when they signed into MLTSHP. This required us to load all the MLKSHK data into the MLTSHP database (in a separate set of tables) and we also had permission from Andre to make a wholesale copy of the MLKSHK S3 bucket to MLTSHP’s S3 bucket so all images were preserved.
And we also had a full rebranding to do. Replacing all site design and assets so that it was different, but retaining the spirit of the original site.
There have been a lot of changes to the site since that time. We’ve added site-wide search, responsive design so the site works well for mobile devices, support for light and dark mode, an alt text field so images can be described, and many other things. Big feature releases are few and far between, but the site is stable which is a great feature.
Our Github repo has had 412 commits from 26 different contributors. There’s still a lot of stuff to do (patches welcome)! But the most important feature we’ve developed is a self-sustainable community. We don’t have to worry about closing.
23 notes
·
View notes
Text
I think there's something to be said that saying the words "Deny, Defend, Depose, you're next" to an insurance sales rep can get you arrested for 'threats of mass homicide' or whatever with a threat of 15 years in prison
But when I was a manager in a fast food restaurant I've had customers throw food at me, demand for my personal phone number with an added threat of "Well I'll just have to FIND it", customers charging past the front counter to physically intimidate me and my coworkers, screaming and swearing, demands to know what time I get out of work, demands to know when my manager would be at work as a threat, people sitting in their car waiting for me to finish closing because they were angry at me, causing me to stay in the office watching the camera waiting for them to drive away...
But none of those incidents are arrest-able offenses, not one, any time I called the cops on any customer I would just hear excuses like " "there isn't anything illegal about calling a restaurant", that nothing physical happened and therefore there's nothing they could do, to call back and let them know if anything else happens
Idk, just think it's A TEENY TINY BIT ODD
Cop in the news goes "words have consequences" as if people don't berate and threaten fast food and retail workers every day
55K notes
·
View notes
Text
seeing a lot of people suggest that healthcare CEOs should go into hiding or employ more private security and i could not possibly disagree more. you can't live the rest of your life in fear. i think it's imperative that they get back to work, in person at least 3 days a week at the headquarters address listed on their company's website.
62K notes
·
View notes
Text
monks debating whether vows of silence should still allow you to leave emoji reacts on the monastery groupchat
66K notes
·
View notes
Text
46K notes
·
View notes
Text
Mutuals gather around we are looking at this gif together
56 notes
·
View notes
Text
the look of absolute dread on that ticker seller's face
11K notes
·
View notes
Text
An adaptation of Sherlock Holmes set in a world in which the fictional character/literary juggernaut Sherlock Holmes, and all the subsequent adaptations thereof, still exist.
Sherlock Holmes (pronounced Holl-mess, as he is constantly reminding people) just had the misfortune of having parents who really liked the books, and his attitude towards his fictional counterpart is pretty much the same as that of Sir Arthur Conan Doyle.
Sherlock runs a Youtube Theory channel called Mysteries Unwrapped with Sherlock Holmes. He has received no less than seven cease and desist letters from the Conan Doyle estate, all of which he has so faded managed to rebuff by pointing out that that's literally his name.
(No he won't change his name. He's Sherlock Holmes the real live human person. Let Sherlock Holmes the non existent fictional character change his name.)
John is Sherlock's flatmate. Sherlock almost refused to live with him once he realised that it would mean staying with a medical student named John, and only gave in once John pointed out that: a) he's a biomedical student, which is completely different from an md, and b) his surname isn't Watson.
It's now been three years, which is long enough for them to have developed a genuine friendship, and for John to have a) started working towards his PhD in biotechnology, and b) for him to start dating somebody with the surname Watson.
Sherlock can feel the narrative closing in.
His Youtube channel is meant to be focused on lost media, fan theories and stuff like that, but he keeps accidentally stumbling upon and then solving genuine crimes.
His brother Mycroft may or may not have chosen that name after he transitions specifically to annoy him.
He doesn't even live in London, but somehow the only flat they could afford was on a street named fucking Baker Street.
Sherlock Holmes and the Unescapable Power of the Narrative.
32K notes
·
View notes
Text
Megatron: it's pride month, Starscream. You know what that means
Starscream: huh. what.
Starscream: do you want us to steal like. gay energy.
Starscream: what
2K notes
·
View notes
Text
And they look out so hard for the well being of the spiders AND the dolphins
73K notes
·
View notes
Text
Lady Maria (astral monogear design inspired by b0tster's Nightmare Kart)
2K notes
·
View notes
Text
So you get the power to shapeshift, but you can only shapeshift into duplicates of people you have seen in person, starting now.
What's your next move?
501 notes
·
View notes
Text
19K notes
·
View notes
Note
you're not innocent.
oh I'M not innocent? i never did anything. i'm not the one writing tetris sex manifestos all over a perfectly legitimate public survey. i bet you sickos want me to draw the tetrimino gijinkas more. you're all sitting there thinking things like 'i wish topsy would draw I/T toxic yaoi and post it' as if that's a normal thing to think. well FINE
this is insane. you people are all insane
13K notes
·
View notes