It's the gap between "could" and "can" that kills me.
Posts by Dan Olson
Repeat that 335 times.
So oGrowth gives us the total progress through the animation, Growth gives us each individual bar's progress through the animation as a function of oGrowth, multiply that progress by Value and to get the actual Height.
Growth (shouldn't have reused names), takes the minimum between [overall Growth from the CustomTool minus the index] and 1. Since Height can't have a negative value oGrowth-Index generates a Height of 0 until oGrowth = Index, until we get to a value of 1, when math.min caps it.
The Height is Growth*Value.
Value is just the original data point converted into a decimal that's appropriate for the scale of the animation.
X offset = CustomTool1.NumberIn1*(Index-1) Y offset = Height/2 Width = CustomTool1.NumberIn2 Height = Growth*Value Index = 26 Growth = math.min(CustomTool1.NumberIn3-Index, 1) Value = 0.046
Then each bar has its x position offset by the offset value * the bar's index number -1 (to zero out the first bar, the index starts at 1 which is good some places and bad others)
The Y offset is just Height/2 to anchor each bar at its base so they grow from the bottom.
Since I'm already on a roll, I might as well explain the rest of what I did:
A CustomTool centralizes controls for bar width and offset, and then an overall "Growth" value (how far through the animation things are)
And all of this is motivated by the fact that I don't just want a graph that fades in or whatnot, I want each bar to grow sequentially, so I need to be able to drive that with animation scripting and can't just make a nice looking graph in an actual graphing program.
And the whole time I'm sitting there with the frustration that I understand the logic of how to concatenate this procedurally, I just do not actually know the process
awful spreadsheet full of XML
It's extremely repetitive since every individual bar is just a rectangle with a name, sequential object ID, and the value pulled from the spreadsheet, so my absolutely cracked solution at 2am one night was to just... use a spreadsheet.
several pages of XML
That node tree is actually just a GUI over a bunch of XML, so really it looks like this:
MrBeast performance graph
Fusion node tree
Fusion full node tree
So, like, the MrBeast graph looks like this, but then the node tree looks like this, but then that's not actually what the node tree looks like because it really looks like this (you can see the exact moment I said "screw it" to proper organization and used a script to just merge all nodes)
I really need to learn more programming. Not tons, but just enough that I can do stuff like "assemble this fixed bit of text with this data cell from a spreadsheet, then this bit, then the next data cell, then this bit"
I asked during dinner on Tuesday and was told "you'll see"
It makes sense why we dropped that bit from earlier drafts, it's so embarrassing in the scope of things and I have no proof but my word, but it's probably the one thing that I wish we'd gone and added back in as the script evolved.
Of course now that I'm talking through it I'm like "but, well, you could make date into a coordinate by simply converting each date into days-since-epoch and then zero out your first data point and divide each by the value of the highest to distribute from 0-1 "
The issues are that the data when arranged by date gets needlessly noisy given that the videos are distributed almost but not quite evenly, so there's an accuracy vs legibility angle, which was easy to lean into because in the animation software it's way easier to position each bar by index#
1Y is the same story, and that's clipping the data to only include videos older than a year.
Even the bit in the studio, it's not in sync. I lined it up at the start of the line, and then the clip just happens to end before the drift gets too bad, plus I'm tiny in frame which hides it further.
oh, yeah, very few Super8 cameras have crystal sync so the sound sync generally suuuuuuuuuuucks. There's a reason we only did sync sound for two lines, one of which is only two words. If anyone wanted to do lots of dialogue on Super8 I'd encourage them to rent the new Kodak.
Also, yeah, 31 days from this dataset is less stark but still tells fundamentally the same story (I know a line is "incorrect" but it's visually clean and also the default, no one jump on me about that)
Just a couple questions:
1) where's a good resource for learning how to make these kinds of scrapers, my methods aren't very automated
2) is it mostly relying on MrBeast being popular enough that his page has been accessed by the archive enough that there's going to be a snapshot more or less at 31?
They do, the one honestly impressive thing I saw on the tour was they have a whole staff of translators and VAs doing the dubbing into 20+ languages.
We sent them a draft that included all the footage we intended to use, then they sent us zero notes but a "we're sad you didn't have a good time."
So they are running a bunch of ad campaigns where the "ad" is just a main channel video that can be skipped after x seconds so that it fully registers as a "view" for no other reason than constructing the optics of the channel's performance.
So, every ad you get served on YouTube must be uploaded to YouTube as a YouTube video. You can actually pause an ad, bring up the Stats for Nerds, and scrape the video ID (this is how I download Mikkelsen Twins ads).
So when you run an ad campaign you must provide a YT video. Any video.
So this clear hard drop in core audience that started late 2024 is *despite* active efforts to consolidate traffic into the main channel.
They are running full length videos as ads. How many views does that translate to? More than a few!
They have also sunset all their multilingual channels in favour of using YouTube's audio tracks (a feature they claimed credit for) which drives more traffic to the main channel.
Next caveat, something we didn't even mention in the video because it involves a lot of fiddly stuff and more than a little innuendo: Team Beast is juicing the numbers.
Even videos that were still in their major growth phase, like Ages 1 - 100 Race For $250,000!, are going to take 4 years to cross 300m, and that is assuming they retain their recency advantage forever, which they won't.
Also our snapshots do give us a bit of growth velocity, which I translated into "how many weeks to cross 300m milestone (assuming growth remains static)" and videos like Beat Neymar, Win $500,000, published 9 months ago, will do so in about 22 years.