We recently dropped iOS 5 so we could use the new 6+ APIs without backwards compatibility.
It makes me smile every time I notice IGListKit at work in Instagram. We put a lot of work into making and improving it. Proud to see it holding up 4 years later.
🧵 with some memories on how it was built:
We recently dropped iOS 5 so we could use the new 6+ APIs without backwards compatibility.
Except two things bugged the hell out of me:
1. No animated changes (duh)
2. Images could flicker and the like animation could cancel
If something triggered another reload after the animation started, the cell cancelled the animation (thus the UI bug)
When an image cell is reused set the background to grey, async load the image (cache or network), set the image. The async time between reuse and fetch/set from cache is where the flicker came from.
Enter UICV performBatchUpdates
So how the hell do I write a diffing algorithm? I literally had never done this.
I settled on Paul Heckel’s https://t.co/jpxuHNlpXg
Why?
1. It’s output matched UICV’s APIs: inserts, deletes, updates, and moves
2. There were example implementations I could actually understand
Foundation hashes can collide
https://t.co/h9eVHO342U
Or are too basic for diffing
https://t.co/Pp0eVFRS5e https://t.co/ZNPJnXlXa4
https://t.co/BACvyI2l08+
With profile done, I submitted a -12k change to remove the old infra.
Throughout this the eng team 10x’d and users 4x’d, we launched tons of products (Stories!), IG opened a NY office, UICV got diffable data sources, and more.
More from Social media
One example:
OK, so "The Daily Wire" and "https://t.co/oEa89coNak" are unreliable. Fair enough, maybe they are (I don't use either one of them).
So let's look into one of our new official arbiters of "reliability," Newsguard!
What's their advisory board look like?
https://t.co/5N8op70VE1
OK, so maybe a few names jumped out at you immediately, like, oh I don't know, (Ret.) General Michael Hayden, former Director of the CIA AND former Director of the National Security Agency in the run-up to the Iraq War in 2003! Google him, he's famous!
Newsguard is all about "seeing who's behind each site," (like how Michael Hayden is behind Newsguard?)
All they want to do is fight "misinformation." That's laudable, right?
Also, Newsguard has a "24/7 rapid response SWAT TEAM!!"
So cool!
https://t.co/EDN3UXvBR9
Ok, I'm not a journalist or a former CIA director, so I have no idea what's true or not unless someone tells me, so hey, Columbia Journalism Review - what do you think of Newsguard Advisory Board Member Michael Hayden?
So let’s talk about that!
Donald Trump has spent the last few months trying to ban TikTok.
— Sophia Smith Galer (@sophiasgaler) October 6, 2020
But I've found videos that suggest his re-election campaign might be using a TikTok hype house to track how well pro-Trump messaging performs on there. My story and a \U0001f6a8 thread \U0001f6a8 below. https://t.co/2XWLTRKLqq
Super glad I could be of help btw :P
Anyhoo: my background = senior web dev, data analysis a specialty, worked in online marketing/advertising a while back
You’ve got this big TikTok account that’s ostensibly all volunteer, just promoting Trump’s app because they’re politically minded and all that.
Noooooope. They’re being paid.
Sophia says it’s just possible (journalist speak I assume) but I know exactly what I’m looking at and these guys, Conservative Hype House, are getting paid to drive traffic and app installs for Trump.
So how do you know that, Claire?
Welp, they’re using an ad tracking system that has codes assigned to specific affiliates or incoming marketing channels. These are always ALWAYS used to track metrics for which the affiliate is getting paid.
The goal?
Learn how to craft interesting threads, and grow a following. It (mostly) worked.
- New followers: +2.5K (+100% MoM)
- Top thread: 373K impressions
- Top tweet: 2.5K likes
Here's what I learned. Quick thread 👇👇
To start, here's the most popular thread I've written.
Thoughts on what made it work, below.
Nikola Tesla was the greatest inventor of his era. He died penniless and alone, swindled by both Thomas Edison and JP Morgan.
— Mario \U0001f98a (@mariodgabriele) September 2, 2020
A thread \U0001f447\U0001f447\U0001f447 pic.twitter.com/80Gco1e6uq
1. Quality
The threads that performed best were (usually) the ones I put the most effort into.
One example is this one about Jeff Bezos's origins. I spent hours researching and drafting it.
It's worth taking the time to craft your
[Story time]
— Mario \U0001f98a (@mariodgabriele) July 30, 2020
Yesterday, Jeff Bezos testified in front of Congress. It was almost exactly 15 yrs ago that Amazon introduced itself to the world.
We have all heard some version of his story. But in investigating his childhood, I was surprised to find much that has gone unshared. pic.twitter.com/CDaIAA0Fzj
2. Timeliness
Capitalizing on the news can be one way to expand viewership.
When Fornite launched its #FreeFortnite campaign, I wrote this thread.
At the time, it was my 2nd best performing thread. It also introduced me to the lovely
Fortnite is standing up to Google and Apple.
— Mario \U0001f98a (@mariodgabriele) August 13, 2020
They're offering 20% discounts to players that buy digital currency in the app, bypassing the payment systems of Big Tech.
This is a thread about the game's humble beginnings. \U0001f447
(All likes + RTs appreciated! \U0001f64f) pic.twitter.com/Zg5Lr3hDRu
3. Narrative Arc
Have a clear start and end in your mind.
I made this mistake with a few Amazon threads. I thought because my first one worked, I could keep the story going. But they didn't have as clear a narrative arc and were much less popular.
A book about lichen saved Amazon from going out of business.
— Mario \U0001f98a (@mariodgabriele) August 10, 2020
A thread \U0001f447 pic.twitter.com/kgfmBf4Dsj
If you thought disinformation on Facebook was a problem during our election, just wait until you see how it is shredding the fabric of our democracy in the days after.
— Bill Russo (@BillR) November 10, 2020
Look at what has happened in just the past week.
In other words, the Social Media monopoly Facebook commands globally has gone full fascist in an attempt to preserve the corrupt and criminal hold on power by Republicans and Trump Administration.
Aiding and abetting a coup d’état.
As if there weren’t enough other reasons to dismantle Facebook’s monopoly, Zuckerberg is playing his cards and revealing clearly that Cambridge Analytica election interference was not just a onetime anomaly, but is now a feature of Facebook’s business model.
Megalomaniac Marc has now revealed the true colours of Fascist Facebook.
Facebook is a weapon to manipulate the masses. A tool to carry out disinformation campaigns with impunity.
And the response of the left... is to delete their Facebook account.
As if the deletion of a Facebook account will do anything. It might send a message that your virtues are principled, your morality superior. But it enables the weapon to be continued to gaslight and manipulate the electorate.
An inherent flaw in the left’s critical thinking.
You May Also Like
#ArudraDarisanam
Unique Natarajar made of emerlad is abt 6 feet tall.
It is always covered with sandal paste.Only on Thriuvadhirai Star in month Margazhi-Nataraja can be worshipped without sandal paste.
After removing the sandal paste,day long rituals & various abhishekam will be https://t.co/e1Ye8DrNWb day Maragatha Nataraja sannandhi will be closed after anointing the murthi with fresh sandal paste.Maragatha Natarajar is covered with sandal paste throughout the year
as Emerald has scientific property of its molecules getting disturbed when exposed to light/water/sound.This is an ancient Shiva temple considered to be 3000 years old -believed to be where Bhagwan Shiva gave Veda gyaana to Parvati Devi.This temple has some stunning sculptures.
🗓 Release date: October 30, 2018
📝 New Emojis: 158
https://t.co/bx8XjhiCiB
New in iOS 12.1: 🥰 Smiling Face With 3 Hearts https://t.co/6eajdvueip
New in iOS 12.1: 🥵 Hot Face https://t.co/jhTv1elltB
New in iOS 12.1: 🥶 Cold Face https://t.co/EIjyl6yZrF
New in iOS 12.1: 🥳 Partying Face https://t.co/p8FDNEQ3LJ