Fun fact: In the original pitch for Stranger Things, El had a little brother.
After being rejected by almost 20 studios for the Montauk pilot, the Duffers were finally green-lit by Netflix. It was at this time that they began casting and then writing the first season officially, which included reworking a lot of that first episode.
This led to the removal of the brother reference, and with it, removing any sort of arc El could have had about her apparent brother.
But the thing about this moment, is that it might not have been scrapped entirely...
Going into the final season, no one can explain why or how El recognized Will back in 1x02. And while there are plenty of things on the show that are left unexplained, with a small portion likely left that way with the intention to uncover it later, what sets this moment apart from the rest is that there are very few possibilities here.
Because for starters, the story presents El's ability to see people in the void in s1 as requiring either a picture of that person for reference, or having met that person before.
But when El see's this picture of Will, she's never met him before. Or maybe she has, but we wouldn't know because they never showed us. They could have just not done this scene at all, given that it's clearly a copy/paste/edit of something scrapped from the pitch. Or they could have even still included it, but explained it.
One explanation could be that the lab had shown El a picture of Will before, similar to what they did with the Russian agent they wanted to spy on. But then that begs to question, why would the lab show El a picture of Will? Why would they want to see what he was doing? That alone is incriminating in and of itself, implying that Will is more connected to the lab than we realize.
The only other, and frankly most likely explanation, would be that El stumbled across Will at some point on her journey between escaping the lab and Will going missing. This is actually something that happens in The Other Side comic, which explores all the things Will may have experienced during his time in the Upside Down.
Though it’s worth noting the comics aren’t technically canon, and I highly doubt they would outright spoil everything in relation to Will’s time there, years before it was intended to be revealed. But still, let's humor this for a moment given that I do think Will's time in the UD is going to be very relevant in s5, which means it's highly likely they will finally address how exactly El saw him.
Basically, in the comic, Will see’s El walking through the woods, almost apparition like, glowing as she passes by, while also sporting the Benny’s burgers shirt. This means they would have crossed passed within a short span of time, between when El escaped Benny’s when the agents arrived, but before she was found by the boys.
Though it’s worth noting that we’re seeing this all from Will’s perspective. This means from the UD, Will was capable of seeing El on the other side, despite them being on different sides. And not only that, but she also looks back at him.
What confuses me about this, is that it doesn’t make sense for El to be in the woods, only to randomly decide to pop in to the void for a moment. She was trying to escape the lab and everything that came with it. I doubt she had any desire to lurk back there for some reason, not until someone encouraged her to. Not to mention, it would make no sense for her to go there and see Will if she wasn't even looking for him in the first place. And so this would mean Will and El could see each other, with Will being in the UD, and El being on the other side.
While it does seem pretty far off, given that you would think Will and El wouldn't be able to see each other from different sides, it is true in the story that El not only recognizes Will, but knows that he is in danger. She mentions that he is hiding specifically.
Which means she has likely seen him within the last 24 hours regardless.
This, in combination with Will being able to respond to El in the void at the end of the season in Castle Byers, when no one else outside of Terry and flayed-Billy have been able to, seems to imply that there is indeed something special about Will that makes him capable of communicating with El from the UD. Not only that, but El also seems to have an ability to be in this constant knowing state of how Will is doing, without even checking again to confirm. She's just certain of it. And she seems terrified about it.
Going forward, El never uses a picture of Will to find him. She never did. And more often than not, they don’t show us what she see’s either, not until the very end. And that’s the moment they reveal that he was able to communicate with her.
Again, there was really no reason to have El recognize Will. If anything it complicates things. But the fact that they chose to introduce this concept, with a scene from the original pitch that was related to El’s younger brother, with her pointing at his name cryptically, startling Benny, only to revamp it and have El not say anything at all while pointing at the picture of Will, startling Mike… It just really makes you stop and think.
Which brings me to the other aspect of this that might have people doubting, which is that El’s brother was originally younger than her.
We know Will is not younger than El, so how could this apply to him?
Well, it might be helpful to consider that in the original script, El was actually 10 years old, while the boys were always 12. Meaning that for some reason, they decided to age her up to the age of the boys, aka the same age as Will…
Ever since @erikiara80 shared this brother discovery with me, I have been sort of reeling. It then led to other little discoveries of changes they made between Montauk and Stranger Things.
It’s important to understand that the Montauk bible and the original script precedes what we ended up with in the final product, with it finally changing and evolving months, maybe even a year since that original vision. Even casting occurred before writing started for the first season. We know this because casting announcements were made in June and August of 2015, with writing not starting until August going into early 2016, simultaneously while they were filming.
And believe it or not, what I've discovered is that a lot of the changes they made between their original plans and what we see in the final product, have to do with not only Willel, but also Byler.
If you've read the original script for Montauk, you'll know that Mike's crush on Jennifer Hayes was focused on right from the jump, along with the birthmark on his face being focused on, which was the main cause of the bullying he experienced.
This has actually been talked about recently, and some of the claims people make do fit with what I am genuinely starting to consider here, which is that the initial plan for what makes Mike an outcast shifted.
I think when they completed casting, and started actually deep diving into what they wanted this world to look like, both from a short-term and long-term standpoint, they were presented with some pretty interesting discoveries, arguably already hiding in their initial plans without realizing it.
And this is where it sort of becomes a 'chicken or the egg' situation. Because which one came first? Byler or Willel?
I can't say for certain, because obviously this is all just speculation. But in the case that Willel came first, I think Byler would come very naturally after that.
The Duffers themselves are twins. Then they hire Noah, who is a twin. Then they're thinking and planning for El's past and how her family all fits into this, and they're thinking... wait a damn minute... We could totally Star Wars this bitch!
And then when they think it couldn't get any better, they uncover another layer that they hadn't planned or really considered in their initial plans.
While Will was always going to have sexual identity issues according to the Montauk bible, meaning that the writing process for him likely involved sitting down imagining scenarios that encapsulated this arc for Will from the beginning, they were simultaneously now finding very interesting aspects of Mike's character that made it hard not to at least consider the possiblity that Mike is not exactly straight.
Just think about it. The Byers and Wheelers are basically polar opposites on the spectrum of what a family looks like. While Will's discovery and acceptance of his queerness is interesting to explore because he comes from a low-income, single-mom household, all while having been bullied for years based on his perceived queerness, he also has a mother and brother constantly reinforcing that they will accept him no matter what. They've been sort of hitting us over the head with it for years, and so it wouldn't be very satisfying for his entire arc to merely lead up to something we've known all along. It's pretty much a given at this point.
On the other side of the spectrum, Mike comes from a more upper-middle class family at the end of a cul-de-sac, more aligned with what a nuclear family looks like. Mike's family is also presented as being more conservative, and while Karen does give that very queer-coded speech to Mike in s1 (I'm convinced they only wrote this after deciding to explore queer-coding more heavily with Mike), it also comes with comments from Ted and even still Karen that hint that they are probably not as open-minded and accepting as Will's family is to him. Which means Mike's arc would be a lot more about acceptance around him from his loved ones who we have been led to believe might not be as accepting of his queerness in contrast to Will.
And so as they're putting this story together, and they're being presented with something very interesting. Two similar experiences that play out in different ways because of the characters circumstances.
Will goes missing, and his twin sister with a buzzcut pops up and has the ability to help them find Will.
This leads to several moments where El is being compared to as not only a boy, but Will as well.
Now suddenly, their initial plans to have Mike's arc be about having a girl be interested in him and to hopefully have his first kiss and feel like less of a loser, starts to look a lot like what the experience a queer kid in his position might encounter growing up in the environment that he did.
And if you don't want to take my word for it, just hear the Duffer's themselves hinting at what they initially planned for Mike and the fact that it changed.
The changes don't stop there.
Believe it or not, 'It was a seven', did not exist in the initial pitch. When the boys went outside bickering over Nancy, they leave right after that.
Another thing that changed from the first script, was Scott Clarke's introduction:
And so you might be thinking, who cares? What does that have to do with anything?
Well, it's interesting because the line we end up with on the show is arguably one of the most on the nose Twelvegate proofs to date. Mind you, this is from the first episode:
Why chuck the original version, which was arguably more interesting and fascinating in terms of it hinting at the mysteriousness surrounding this story, only to replace it with him listing off tips about their upcoming test?
Well, I think it's the irony of it all. Here Mr. Clarke is practically telling us where to look to figure stuff out for ourselves what is going on, with all the kids filing out and ignoring him...
I relate to Scott a litttle too much in this shot here, any time I try to drop Willel evidence.
And the changes go on, as they obviously would.
Things like Terry Ives not even being El's mom, but actually a man who more so aligns with the characterization of Murray.
And one very interesting one I almost overlooked was in Hopper's introduction, where instead of a kids drawing done by who we assume to be Sarah, we actually see a picture on the wall of him and his wife and daughter... Interesting that they decided to switch it something that is a lot less definitive in presenting what Hopper's past looked like...
If you've made it this far, congratulations.
If you still think I'm out of my mind, just remember that El was going to have a brother in the original script, but they scrapped the scene and gave a near identical one to introduce her connection to Will instead 😘
119 notes
·
View notes
Reconciliation
Old dome squadmates Trito and Kinoga get together at Trito’s place to catch up after years apart and a meeting by chance on the surface.
⚠️Warning for suggestive content below + implied chest trauma
After several weeks of chipping away at this, the comic is finally done! Very happy to have rendered a full 7 pages of oc stuff. Please give it a read!!
read the full 7 page comic on twitter! <-please do not click if you are a minor and view at your own discretion, this link contains explicit 18+ content. Thank you!
For the lore, includes stuff from splatoon Octo Expansion: Trito and Kinoga were a part of an octarian military squad living in the domes, Kinoga being their squad leader that many looked up to and admired. There were 6 of them who considered each other to be their closest friends. Upon hearing about the tests from Kamabo Co. and the allure of the Promised Land, Kinoga wished to seek it out in order to find a better life for their squadmates. A difficult decision, since it meant leaving them all behind, promising to come back and take them there.
Kinoga enters the metro trials and soon realizes that the Promised Land isn’t what they expected, their hope crumbling when they encounter one of their sanitized squadmates Agara, who followed suit to the metros soon after. Kinoga narrowly escapes, eventually making a break for the surface, carrying the shame of unwilling to return for their squadmates with them (it’s justified, of course, there might not be an easy way in, they might get caught again, Agara is gone)
Trito enters the Metro not too long after Kinoga does, wanting to catch up to them, and an accident that occurs in a test early on results in Trito’s near sanitization, giving him his scar. Terrified, and realizing what happens to his fellow octolings, Trito is unable to return to his squadmates, not wanting to break the news of their loved ones’ untimely fates. He hides away on the Metro until the events of OE happen and Agent 8 dismantles Kamabo, opening an opportunity to escape to the surface. Unwilling to face the possibilities of going back, Trito takes his chance to leave, starting a new life and feeling that it’s for the best if he doesn’t acknowledge it, though he missed his friends dearly.
Years later, Trito and Kinoga run into each other on the streets of Splatsville by chance, and the implications of them both being on the surface and alive hit them, having to carry the burden of leaving their loved ones behind and finding out the truth, knowing the other felt exactly the same, not knowing the fate of their squadmates and not wanting to think about the possibility of them being gone. They have a tearful reunion about it, and set up a meet later, to sit down and really talk, and get into a brief argument when the topic of returning to the domes comes up. Trito’s in disbelief that Kinoga never went back down to check on the rest of their squad, wanting them to have been a better person than him, who was too cowardly to do so. Eventually they do reconcile, and end up at Trito’s place to hook up, where the above comic takes place :]
119 notes
·
View notes
Honestly people in the fandom always say Faerghus is the least progressive of the three, but they’ve honestly been the most progressive? People say Edelgard’s way is the best future for Fodlan because of the Crest system, but it’s... really not. Faerghus has been steadily working to dismantle the Crest system for years in Hopes, and in Houses it’s something Dimitri plans to formally work on (and doesn’t get the chance to yet in Houses until after the war because of what happened in the five year timeskip) in the future.
Also, the class system was being fixed as well in this regard, and the whole “outside of Fodlan’s border” thing was being worked on by Lambert and only came to a temporary halt because he was murdered for attempting change (outside of TWS, TWS had help in the form of other Faerghus nobles who didn’t like the change Lambert was attempting). Dimitri would have continued Lambert’s efforts sooner if he could have, but as the prince/not yet king he couldn’t, and then the war happened for five years so even when he came of age he wasn’t able to take the crown yet.
When it comes to hiring people and whatnot, Dimitri has Dedue as his “vassal” as far as Duscur hating background NPCs would call him and what Dedue tries to insist he is. Dimitri is already trying to get people from outside of Faerghus as well as commoners into high positions. He can’t officially do a whole lot as the prince, but in his ending he does fix Faerghus.
In Hopes, he’s actively working on the power system for the two years and they’re succeeding rather quickly, both with the Crest system and the disparity between royalty, nobility and commoners. The only reason Faerghus wasn’t able to do that sooner in Houses is because Dimitri wasn’t the king yet, and when he became king it was during a war so it was a bit less “official”. There was no formal ceremony for it until after the war.
If Edelgard felt the need to use war to get rid of the problem, it means Adrestia wasn’t able to solve that problem internally on its own, and the Alliance wouldn’t have done so either with the roundtable, so when the Alliance becomes part of united Fodlan under Dimitri or Byleth (depending on the route), that fixes the Alliance’s issue with it, but ultimately Faerghus had a better progression of the Crest system and the class system overall.
Also, the whole thing about Rhea not allowing outside influences isn’t true at all. Shamir, Cyril, Petra and Dedue were at the Academy even if for different reasons, but Rhea didn’t have to hire a foreign mercenary or bring in a foreign orphan. She didn’t have to let Dedue in considering he was from Duscur and everyone basically knew loads of people hated Duscur (and she could’ve easily reasoned that it would cause problems and drama with him there, whether she thought his people were responsible or not. Even if she knew 100 percent he wasn’t involved, she could’ve tried to turn him away when Dimitri brought him in, reasoning that it wouldn’t be good to have someone people would be suspicious toward). She didn’t have to let the princess of a foreign land come to the Academy.
That’s important because the Church is closest to Faerghus out of the three lands and has the most power over Faerghus, but it’s Faerghus that’s progressing toward a weaker Crest system the fastest. Rhea definitely is trying to keep Fodlan’s borders relatively closed up from threats, but she doesn’t disallow people from outside of Fodlan to enter it (and she lets people in right where she lives, so she obviously isn’t worried that any of these people are going to try to kill her/anyone from the Church). Fodlan just has more security in place, and Claude is under the impression it’s just too much security if he wants Almyra and Fodlan to be more openly friendly. It’s true that Rhea’s past experiences led her to keeping Fodlan from advancing as much as it could have, but she’s not completely disallowing people from outside of Fodlan to enter it.
The fact that the Church is closest to Faerghus makes it easier for Faerghus to be able to sway the Church if even necessary at any point to let the change gradually kick in.
Also, I’m not saying Claude didn’t or couldn’t help enact change in the Alliance, but that Faerghus had begun progressing its future long before Claude was even living in Fodlan. It just came to a temporary and screeching halt when Lambert was murdered by TWS who also had help from some angry baby nobles that didn’t like the thought of change. In other words, Faerghus was already heading toward that future before the Alliance was too.
tl;dr faerghus is the good shit and they’re all about that change and all the great stuff and they gonna do that shit peacefully and sylvain is a huge part of that and here in this house we love him for it even if it’s bc his dad is a dummy dumb and made both his kids have to suffer bc of the system to make sylvain so intent on changing it like bruh why’d u have to go and do that but don’t get me started on miklan bc i care him and hopes made all my headcanons a reality
also tl;dr faerghus is the good shit and they’re all about that change and i want dimitri to run my country too but then again that might be awkward bc imagine saying u have the hots for the president of ur country like man what a thought
72 notes
·
View notes
What is Async Anyway?
Explaining async/await and general concurrency concepts in programming languages.
A lot of modern languages have async/await syntax built directly into them, and the construct can be extremely useful. Examples of languages that include these concepts are JavaScript, C#, Python, and Swift, and even modern relatively low-level languages like Rust have this syntax. Even though it's usually thought of as a more advanced feature, I think it is really not that hard to use once you get the hang of it, and it is super useful and rewarding when you really understand it.
This is going to be a bit of a long and pretty technical post, but I hope it can give you some confidence to know what async/await really does when you use it, and maybe it can help you use it more effectively. Keep in mind that I will not be able to go over everything in super deep detail, and that I am going to simplify stuff, but it should give you an idea how these systems work.
I am a little curious about eventually following this up with a post looking at how these systems compare under the hood in different programming languages, so let me know if you'd be interested in that.
Big post under the cut.
Parallelism and Concurrency
Computers today can do many things at the same time. And I mean that literally: in one instant, a modern CPU can be working on multiple instructions. That's because a single CPU has multiple cores that can all execute code (mostly) independent from each other.
This is called parallelism, and the way we as programmers interact with that is through threads. Most programming languages, especially "lower level" ones, have a way for programmers to create a thread that will run some part of your code. Creating a thread is telling the computer that it can, and should, run the code in your threads in parallel (although various systems such as the OS still have discretion over when and if that actually happens).
Parallelism is not quite concurrency tho. Where parallelism is about your computer literally doing multiple things at once, concurrency is about your computer doing multiple things, but not at once. With concurrency, you kind of pretend you're doing a parallelism. But in reality, stuff doesn't happen at the same time. Instead, your system (runtime) does some work on task A a bit, then on task B, then maybe again on task A, etc., but doesn't work on the two at the same time. So, in a concurrent system it might look like task A and B are progressing simultaneously from the outside, but work actually only happens in sequence.
Let's Talk About I/O
I/O stands for input/output and describes data in your program that comes from elsewhere, or that gets sent elsewhere.
So for example, user input is I/O. And similarly, a web request can be I/O, whether you send it or receive it. So let's use that as an example: you send a web request to some API to fetch you the cutest bunny images and facts:
But the service is taking its sweet time to respond.
Fact: Loading bunny fact…
With how we did it here, we halt execution of the entire thread until the response comes in (at least in most languages, more on that later). In this case, we call get a blocking method because it, well, blocks the thread without actively doing useful work.
What if we could instead use the thread for other tasks instead of just sitting there, twiddling our thumbs and waiting on the server?
This smells of concurrency…
Callbacks
Callbacks are a way for programmers to avoid that period of thumb twiddling. The new getWithCallback function now returns immediately, but it doesn't return a value. Instead, we have to register the code we want to run once the server responds with the function:
The function we pass to getWithCallback is called the callback, and it gets called by the client* only once the response arrives.
Oh look, here it is:
Fact: A rabbit's life span is about 8 years, though sterilized rabbits (those who are spayed/neutered) can live as long as 10-12 years.
*"The client calls it" is a big simplification, there might be a lot more stuff happening here. But the important bit is that the client magically does not need to block to wait for the response.
Promises and Futures
What JavaScript calls Promises and what a lot of the other languages call Futures is essentially sugar sprinkled on callbacks - it makes our callback code a little nicer. Callbacks can commonly create a concept called "callback hell", where you have to call a function that takes a callback inside the function that takes a callback inside the function that takes a callback…
(Code modified from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises)
To avoid this, functions now can return a Promise instead of taking a callback. Promises represent the promise that, while a concrete value might not exist right now, it will in the future. Once the value exists, we say the Promise resolves. The code above with Promises would then look like this:
It still doesn't look perfect, and there are things you can do to make it look a little nicer, but it's so much less nested. The callback in the then function will be called once the value is ready, and the callback itself can also return a Promise. The then function then returns a Promise which will get resolved once the future from the callback is resolved. Many other languages have a concept similar to JavaScript's Promise, and it's often called something like Future or Task (because it would be too easy to have consistent naming across languages).
Now keep in mind neither of those solutions above are really "concurrency" in the definition we used above. This is because the thread we call, for example, getWithCallback on still completely belongs to us. We could keep using it, and we would not get interrupted to execute the callback. Depending on the language and runtime, the callback might get executed on a different thread, or the runtime might have to wait until we are completely done with what we were doing to then use our thread to call it. The same thing goes for the callbacks in the then method of promises.
Async/Await
And async/await is just some sugar and magic fairy dust on top of Promises (or Futures or whatever). It makes our code look like it should be blocking, but in reality it isn't. Here's what our bunny image code looks like with async/await:
So here, a couple things happen. First, the Promise is created and the web request is initiated. Then, the Promise is awaited. For that, (if the Promise is not resolved at this point already,) the task first yields, meaning it tells the runtime that it is not doing any useful work at the moment, and that the thread it ran on can be used for other tasks. The runtime then makes a note of where to continue execution when that Promise resolves, and looks around for other tasks that currently need executing to put them on that thread. After a while passes, the Promise resolves, and once the runtime has some resources available for us (maybe because another task just yielded), execution on our original task is continued with the API response.
Fact: A rabbit's teeth never stop growing! Many people believe they need to chew to keep their teeth short. While they do enjoy chewing, it's the normal wear from where their top and bottom teeth meet that keeps a rabbit's teeth short.
This is more in line with the concurrency we sought out above. We can interleave other computations while our task is still running, but during times where it is not doing any useful work. (Still, because you may have multiple threads your tasks can run on and move between, it might not always be 100% technically accurate to call this system concurrent.) This is also why it is important to not block for long in async contexts: if you're hogging the thread for too long, you're stopping other tasks from progressing and throwing a lot of the benefits you gained from doing it concurrently in the bin. Most async runtimes will give you some option to run expensive or blocking code elsewhere, so that you can keep the benefits you gain from async.
So that's the explanation what async/await does, and the broad strokes of how it works. If you have any more questions regarding the topic, feel free to ask! I think it'll be fun to occasionally write a longer post on interesting things I've learned, so if you have topic suggestions, don't be afraid to tell me!
Further links and sources
Don't Block The Event Loop! - Why you should avoid blocking in Node.js, and what pitfalls to look out for.
I got the bnuuy images and facts from the animality API. The licenses on the images are not super clear, but I'll assume it's okay for me to use them here with credit because it's an open API.
I lifted the definitions and some of the explanation for parallelism and concurrency from Steve Klabnik's talk on Rust's Journey to Async/Await. The talk is more technical and very focused on Rust, but it's a great talk.
I referenced the mdn web docs at various points, they're a great resource.
I created the code screenshots using the carbon app.
2 notes
·
View notes