Tumgik
#i want the bigger one but i absolutely cannot justify spending that when the little one is so cheap
tintinology · 1 year
Text
Honestly the only thing getting me thru this last week of uni presentations is the fact that I plan to reward myself with this little dude once it's all over
Tumblr media
33 notes · View notes
the drug, the dark, the light, the flame, Ch.IX.ii
[previous] [next] [Ao3]
A brand new chapter of my work for this year’s @geraskierbigbang in collaboration with the wonderful @gen-syz-art as my artist 💕
Take a look at @gen-syz-art incredible art for this chapter here ✨✨✨ (beware of spoilers)
___________________
Looking for Jaskier takes some time. 
The gardens almost seem even bigger than they were last time, and there are so many different scents that Geralt can’t isolate the one he’s looking for from the rest. 
He could just ask, for in his search he comes across eight different people, and at least one of them should know where Jaskier is, but Geralt makes a point out of finding him on his own. 
It takes him almost an hour to finally come across a willow tree, its long vines falling all the way to the ground like a curtain, and be greeted by Lucio that pokes his nose out of them. 
Stepping inside is like stepping into a sanctuary, into a safe place, completely detached from the outside world. 
The curtain of vines surrounds the tree from all sides, and the sun that breaks through them makes this hidden little world feel even more magical. There’s enough space to fit quite a few people, the willow old and generous, and Geralt thinks that it’s probably the best place to spend long summer days, hiding from the heat and from the outside world in general. 
Jaskier doesn’t notice him at first, too preoccupied with writing something in a notebook he’s got open in his lap, but when Asra perks up to greet the witcher, he raises his head. 
“You found my hiding place,” he smiles, bright as the sun. 
He pats the empty space beside him, and Geralt comes closer before he even thinks about it, getting down into the grass and resting his back against the tree trunk, as well. He tries to get a look at what Jaskier is writing but the younger man hides the notebook from him as soon as he notices.
“Searched the entire garden,” Geralt chuckles in response.  
After an entire day spent in bed and a proper night’s sleep, he feels like himself again, the wounds on his thigh now healing much faster and the pain almost gone. He doesn’t limp as he walks any longer.
“This is one of my favourite places of the entire estate,” Jaskier says, and he’s so torturously-close that Geralt can’t help but lean towards him until their shoulders are pressed together. “If I’m not in the mansion, I’m here.”
He’s got a dark-green chemise on, the sleeves embroidered with gold thread, and every time a ray of the sun catches on it, it shines, and though Geralt himself prefers much more subtle colours and designs, he can’t deny that it looks beautiful. 
 “I can see why,” he nods. “It’s peaceful here.”
Jaskier hums an affirmation, his eyes closed blissfully. Geralt still can’t quite get used to just how relaxed he is in his presence, how there isn’t even a hint of fear that he is so used to feeling on other people. That almost makes him forget about the world outside the mansion and his role in it. 
He thinks, once again, how when he’s with Jaskier, he can be more than just what his mutations make him.
And then, it finally hits him.
It’s not that he wants to return to the mansion.
It’s that he doesn’t want to leave. 
***
They spend almost half of the day in Jaskier’s little hiding place. 
Jaskier tells him more about his time in the Academy and, when Geralt asks, tells him that though he’s got an honours diploma for all seven liberal arts, his heart and soul have always belonged to poetry and music. When Geralt considers it, he’s almost surprised by just how easy it is to think of Jaskier as a bard. 
Can a prince also be a bard? An illegitimate one probably can. It’s a perfect disguise.
Bard.
It’s easy to refer to him by that name in Geralt’s mind.  
After Jaskier tells him that, he finally lets the witcher see his notebook, filled with poems, neat lines or runes crossed out and then written again over and over. Geralt doesn’t understand much in poetry but the lines that he reads are filled with such emotions that they pull on the strings deep in his heart.
Once he gets to the unfinished poem that Jaskier was working on when he’d found him, Jaskier snatches the notebook from his hands and refuses to give it back, a beautiful shade of red spilling over his cheeks. 
Geralt can’t quite stop himself from reaching out and running his thumb over the soft skin, and before he can pull away, Jaskier intercepts his wrist and tugs him down onto the grass, laughing as Geralt blink in mild confusion, his body suddenly unable to resist, though Jaskier’s strength is nothing compared to his. 
They stay lying side by side in the soft grass for what seems like hours, Jaskier reciting poems and ballads by heart, and Geralt just listening. At some point, he lets himself get convinced - somehow - to also recite something, and he entertains the bard with a highly indecent poem about a farmer’s daughter and a knight that he and his brothers used to giggle over when they were still kids in Kaer Morhen. 
Jaskier plays courtier, gasping at the crudeness, but then breaks into laughter, unable to keep his act up.
He rolls onto his stomach, propping himself up on both elbows to get a proper look at the witcher, and reaches out to brush a stray silver strand away from his face. 
Even if Geralt’s life depended on it, he wouldn't be able to decide whether he likes this quiet comfort or the maddening teasing more. 
And though the knowledge of having to leave in a few days is a constant reminder somewhere in the far corner of his mind, he allows himself - if only for a little while - to put it aside.
***
“Do you want to see the sunset?”
The library is painted gold and scarlet with the light of the setting sun, and the colours play beautifully on the silk of Jaskier’s chemise. 
Geralt doesn’t necessarily want to move, more than comfortable on the soft settee and with Jaskier half-asleep in his arms, but when in the last two months had he been able to say no to this man?
Jaskier’s eyes light up when Geralt hums an affirmation, and the next moment he’s already up on his feet, alerting the dogs napping peacefully on a chair by the window. They jump down onto the rug, ears perked up and tails wagging, feeling Jaskier excitement in his scent the same way that Geralt feels it. 
He lets himself be pulled away from the settee, Jaskier’s warm fingers wrapped around his own, and follows him into the hallway and towards the wide staircase. 
“Come on, we’re going to miss it,” Jaskier urges, adorably impatient. 
Geralt’s healing thigh gives a little stab of protest as they pick up the pace, nearly running up the stairs, but Geralt’s had much worse, so it barely registers with him. 
They make their way up onto the fifth floor and down yet another hallway to the very end of the west wing of the mansion, where Jaskier pushes open the door of a bedroom and they rush inside, towards the balcony doors, the golden light streaming through the glass, nearly blinding. 
Jaskier lets go of Geralt’s hand to push down on both door handles, throwing the arches open, and for a second, the view takes Geralt’s breath away. 
This high up, they can watch the golden disk of the setting sun as it slowly makes it's way down, touching the treetops of the pines in the forest. In the distance, Geralt can see the glimmering ribbon of the river, and all around the mansion, there are valleys of flowers in full bloom. The scent is sweet and heady, almost intoxicating, and Geralt takes in a deep breath, feeling his lungs expand in his chest. 
He steals a look towards Jaskier, who doesn’t seem to notice it, too mesmerised by the golden light. It reflects in his eyes, making them look bottomless. Had their lives been different, Geralt would’ve let himself drown in that depth. 
“Oh, isn’t this just gorgeous?” Jaskier asks in a breathy whisper, never taking his eyes off the horizon. 
Geralt takes a step closer to him without even fully realising. It’s like in the past two days he’d grown so used to having Jaskier in his arms that he can’t keep a distance between them anymore. His scent, his warmth, the feeling of his skin - everything about him is drawing Geralt in, and he’s helpless against it. 
Finally, Jaskier looks away from the setting sun and at Geralt. He keeps their eyes locked for a long moment before his gaze drops to Geralt’s lips, and Geralt can feel his heart skip a beat before picking up its pace. The fire in his chest flares up, so bright that it’s almost painful. 
Jaskier takes a step towards him, suddenly so close that all Geralt needs to do is dip his head, and he’ll finally learn what his lips taste like. He holds himself back with all the self-control he’s got but it’s running out fast. He knows that this will make everything worse, that it will make leaving more painful for both of them, but he still desperately hopes that Jaskier would close in that remaining distance between them. 
Because then, maybe, it would be easier to justify Geralt’s absolute powerlessness against him. 
Without it fully registering with him, Geralt wraps an arm around Jaskier’s waist, holding him close, the bard’s breath ghosting over his lips. 
The moment seems to last forever, Geralt’s self-control cracking and breaking like porcelain, but just before he can make the mistake that he so longs for, Jaskier presses his fingers to the witcher’s lips, creating a barrier, and leaves a kiss over them, laughing as he breaks away. 
Geralt fails to bite back a low growl, disenchantment curling into a ball in his chest like a small animal, its little claws digging deep into his heart. 
And still, despite himself, he cannot hold all these torturous little games against Jaskier.
“Is that blush I see on your cheeks, my darling?” Jaskier murmurs, jumping up to sit on the bannister.
Instinctively, Geralt holds him tighter, unwilling to risk his safety. 
“You’ll fall if you’re not careful,” he says flatly, ignoring the question. 
They’re still so unbearably close, and Geralt can’t deny himself the pleasure of bringing his other hand up to rest it on Jaskier’s thigh, fingers pressing into the soft flesh just enough for it to be justified as him making sure the bard is safe. 
Jaskier doesn’t make any move to get away from the touch, and when Geralt runs his thumb over the inner side of his thigh, his lips part on a soft little gasp. 
It’s impossible not to think about the bed back in the room. About just how easy it would be to lift Jaskier up and carry him to it, lay him down onto the silk and velvet, biting marks into his neck. Impossible not to imagine all the sweet little sounds he would make.
Up on the bannister, Jaskier is higher than him, and when he reaches to tip Geralt’s chin up, there isn’t much he can do but comply. 
“What do you want, Witcher?” Jaskier murmurs, his ankles locking behind Geralt’s back to keep him close. 
Standing between his spread knees is just more than Geralt can take, and he tightens his grip on the bard’s thigh to keep himself grounded. Knowing that there are going to be bruises left, and Jaskier is going to have his skin painted with them for days, marked and claimed, does absolutely nothing to help the situation. 
“I want you to stop putting yourself in danger,” Geralt growls, low and impatient, almost threatening. 
He’s referring to much more than just sitting on the bannister, a five-floor drop on the other side, and they both know it very well.
Jaskier’s scent spikes up with sweet, heady notes of arousal even as he hisses at the tight grip on his thigh. Geralt bites his tongue painfully not no lean in and nose at Jaskier’s neck, right under the jaw, where that scent is the strongest. If he does, he won’t be able to hold back anymore.    
Jaskier’s eyes light up with a spark of mischief, almost a challenge, and it only takes him one perfectly calculated move to twist out of Geralt’s grip, standing up on the bannister and laughing victoriously. 
Geralt’s heart drops at the sight, and he grabs Jaskier’s hand tightly, ensuring his balance. The bannister isn’t necessarily narrow, Jaskier could probably lie down on it if he wanted to, but he could still slip, and that is not a risk that Geralt is willing to take. 
The fire in his chest gives way to the rush of adrenaline, and he sighs deeply, calming himself down. 
This is going to be the death of him. 
“I’m putting myself in danger,” Jaskier grins, walking the length of the bannister in theatrically slow steps, his hand still in Geralt’s tight grip. “What are you going to do about it?”
Oh, there are so many things Geralt could do about it. 
In his imagination, he presses Jaskier up against the wall of the balcony, bites into his lips, parting them with his tongue. He sucks marks and bruising kisses into his neck, the skin there so flawlessly smooth that the love-bites stand out like blood-red flowers against it. He leads Jaskier back inside, pulls him down onto the bed, undoing the intricate lacing and buttons of his clothes. 
He takes him apart with hands and lips, drinking in every little whimper and moan, until Jaskier is trembling and gasping, and does it all over again. 
But none of that can go further than his imagination. 
So instead, he just yanks Jaskier towards him, catching him before he falls, and grins to himself at the way that he yelps in surprise. A small but pleasant victory.   
“Balcony bannisters are no place for a prince,” Geralt murmurs, and the last word just slips. 
He bites his tongue way too late, never having meant to say it out loud, to admit - so incautiously and foolishly - that that is what he’d somehow grow to think of Jaskier as. If it’s not true, then he’s just childish for believing something he’d heard in a nearby town, and if it is true… then I can turn out to bear far worse consequences, for both of them. An illegitimate prince hidden in a giant mansion in the middle of nowhere is unlikely to afford for his identity to be known. And the King certainly doesn’t. 
For a long moment, Geralt feels like he can barely breathe, waiting for a reaction, but Jaskier just gives him a long, slightly puzzled look that could mean just about anything, and, finally, gives him a charming smile. 
“You’re right,” he says. “It is no place for a prince.”
 ***
The three days after that go by in relative peace. 
They spend most of the time in the gardens or in the library, reading, talking or just being in each other’s presence, even if neither says a word. 
Jaskier decides, at one point, to give the cooks a day off and take over the kitchen, entrusting Geralt with the venison brought in by his hunters earlier in the day, while he’s busy with herbs and vegetables. Geralt doesn’t really protest, used to helping out in the kitchen in Kaer Morhen, and Jaskier does look ridiculously good in an apron. He does turn out to be rather bossy in the kitchen but Geralt fails to find it in himself to mind. 
They play with the dogs, both Asra and Lucio now used enough to the witcher to trust him, napping with their heads in his lap whenever Jaskier’s is unavailable. They’re just as unafraid of Geralt as their owner, and for Geralt, who is used to animals hissing and growling at him, it’s almost touching. 
At night, if the sky is clear, Jaskier lures Geralt out into the gardens to lie down in the grass and watch the endless stars shimmer in the sky. He remembers a lot of astronomy from the Academy, and tells Geralt about the constellations high above, as well as making up his own ones based on what he sees in the sky. 
It gets cold at night, and he keeps close to Geralt, safe and warm under their shared cloak. Geralt keeps an arm around him and presses his cold nose to his temple every now and then to make the bard giggle. 
Jaskier almost kisses him more times than Geralt would be able to count, but each time he breaks away, laughing and leaving him with nothing. Geralt knows that he’s just waiting for him to break first, and it takes him everything he’s got not to. 
A couple of times he comes very close to pushing Jaskier up against the nearest wall, for he never stops his torturous teasing, but on some level, he almost enjoys this inability to have him, because though the fire in his chest can grow painfully hot, no-one’s ever made him feel like this. 
It helps, in a way, that Jaskier is always hearing his intricately embroidered shirts with sleeves that cinch in on his wrists and high collars that keep most of his skin hidden, because Geralt isn’t sure that he’d able to think about anything other than the marks that he could leave on that skin had it been any other way. 
And that… well, that ends up playing against him. 
It’s his sixth morning in the mansion - the second to last, he tells himself repeatedly - when he fails to find Jaskier in any of the places that they would usually spend the morning in. 
The first place that Geralt searches through is the downstairs library that seems to be Jaskier's favourite room of the mansion. There are books that they’ve left behind the night before, pieces of parchment all over the table, and Jaskier’s cloak but no sign of the bard himself.
When Geralt doesn't find him there, and then in the gardens, and then in the smaller library upstairs, there is no other place that he can think of other than Jaskier's bedroom. It's still relatively early in the morning, and maybe he's too unwilling to get out of bed just yet, warmed by both Asra and Lucio. 
Reluctantly, Geralt makes his way up to the last floor and to the door of Jaskier's bedroom. He'd never been inside, and for some reason, it feels unnerving. All the time that he’d spent in the mansion, he’d only been on the fifth floor twice: first when Jaskier was giving him a general tour, and then when they rushed to the balcony to watch the sunset. 
Jaskier’s rooms have remained something almost forbidden, a place where Jaskier would disappear to at night and then leave in the morning. Something private, sealed off to all guests.
After standing outside the door for a few long moments, Geralt knocks, expecting to hear the now-familiar tap-tap-tap of the dogs' claws along the floor because they're always the first ones to check, but gets no answer. 
Feeling like he shouldn't be doing this, he tests the door handle, and it turns with no resistance. 
The bedroom is just as big as he'd imagined, with a canopy bed lined with wine-red velvet and arch windows that let through the soft morning light. There are large paintings in golden frames hung on the walls, stacks of parchment and books on the table by one of the windows, a chandelier for what must be a hundred candles on the high ceiling. 
It’s a gorgeous room. 
But right now, Geralt can't quite concentrate on any of that, because all he can look at is the open door to the bathroom in the far end of the room. He can hear water splashing softly and then Jaskier's footsteps that he'd grown to recognise among all others. 
His throat suddenly feels very dry, and he can't bring himself to say something, nor can he turn around and leave, giving the younger man his privacy. Instead, he just stands and watches, waiting for... he doesn't even know what, exactly. 
Jaskier stays out of his field of vision for some time, murmuring some song under his breath, and when Geralt does finally see him, he's got his back to him, a silk dressing gown flowing down his body in waves. 
For reasons that Geralt can only assume to be cruel fate, Jaskier keeps his robe off his shoulders, just a little above the line of his elbows, like a voluminous shawl. It covers his arms below the elbows, his lower back and his legs, providing some modesty, but after only seeing Jaskier in his silk shirts, barely any open skin, Geralt feels like all air had been sucked out of his lungs.
The half-discarded dressing gown provides Geralt with a perfect view of Jaskier's neck and shoulders, drops of water still shining on his beautiful pale skin, of the curve of his spine and the lines of his shoulder blades that Geralt wishes he could follow with his lips and fingertips. 
He can see the soft outlines of muscles, the little birthmark just above Jaskier’s right shoulder blade, just a few tones darker than his overall pale skin, the thin white scar on the curve of his left shoulder.
And there's something else, too. Something Geralt didn't expect but that looks so elegant on Jaskier's body that it causes little to no resonance in the witcher. 
Right between Jaskier's shoulder blades, perfectly centred, his skin is adorned with a delicate, geometric design. It looks like white ink, just brighter, standing out against the skin, almost glowing in the low candlelight of the bathroom, and though Geralt's never seen anything like that before, it looks beautiful. 
He'd only seen tattoos on Skellige and in Novigrad, but this one is so starkly different from all of those, so delicate and precise, that it feels like it doesn’t even belong to this realm. Unusual that a member of the royal family - legitimate or not - would have something like this but perhaps this is exactly what marks him as one? Hidden under all that silk, Geralt never would’ve known he had it if he hadn't seen it now. So how can he assume that other members of the ruling family don’t have one?
It’s way too late when it registers with him that he’d crossed the room already and is now only a few steps shy of the open bathroom door, unable to take his eyes off Jaskier. 
Jaskier, on the other hand, seems completely aware of his presence. 
“Did you want something?” he murmurs, completely unfazed as he brushes past Geralt and into the bedroom. 
His hair is still wet from his bath, falling into his face in loose locks, the smell of pomegranate sweet and heady in the air, almost making Geralt’s head spin. 
Jaskier’s collarbones are a sharp outline, the delicate skin stretched tight over them, and though Geralt’s always had a thing for it, he can feel a sharp spasm of pure lust somewhere deep in his abdomen from just how bad he wants to bite into them. 
Without fully thinking his actions through, he catches Jaskier’s wrist and turns him around, so they’re face to face again. Jaskier gasps but doesn’t resist, his cornflower-blue eyes snapping up to meet Geralt’s.
His bare chest rises and falls in slow, even breaths, like he’s completely unbothered by the state he’s in, by Geralt seeing him like this. 
“I was wondering if you were going to let yourself in if I leave the door unlocked,” he murmurs, taking another step towards the witcher, until there is no more space left between them. “If you came looking for me while I was still in the bath, what would you have done?”
He shifts, pressing his hips to Geralt’s thigh, and it resonates through the witcher’s entire body like lightning when he realises that under the thin silk of the dressing gown, Jaskier is completely naked. 
“Would you have helped me with my hair?” the bard goes on, that same intoxicatingly sweet murmur. “Or would you have simply fucked me right there and then?”
And at that, Geralt snaps. 
He grabs Jaskier’s thighs, lifting him from the floor, and sits him down impatiently onto a chest of drawers just behind his back, not even trying to bite back a growl when the bard wraps his legs around his hips, knees spread wide apart. 
His dressing gown has more than enough fabric to keep him covered even like this, but Geralt’s head reels from knowing that it would only take one brush of his fingers to get it out of the way, letting the heavy silk slip down Jaskier’s thigh. 
“You’re killing me,” Geralt growls, low and dangerous, leaning down to Jaskier’s ear, and he shudders in response. 
Jaskier keeps his balance with one hand flat on the polished wood of the chest of drawers, but the other one is in Geralt’s hair almost immediately. He leans in unbearably close, his lips brushing over Geralt’s in a feather-light touch as he lets out a shaky breath. 
“Then make me pay for it.”
At that moment, there is nothing that Geralt wants more than to kiss him, Jaskier’s lips parted and bite-swollen and right there. 
But he’s leaving tomorrow morning.
And so instead of Jaskier’s lips, Geralt bites into his neck. He sinks his teeth into the tender skin right under the sharp of the bard’s jaw, where his scent is the strongest, and sucks a bruising, blood-red mark into it, making Jaskier arch his back and gasp the witcher’s name. 
Geralt pulls back, for just a second, his gaze fixed on the fresh love-bite, standing out sharply against Jaskier’s pale, smooth skin, untouched by anything or anyone else. He looks owned, claimed, taken. 
But it’s not nearly enough. 
Geralt bites another bruising kiss right next to the first one, pressing his tongue to the fresh mark to both soothe the pain and make Jaskier even more sensitive. And then another one. And then another one.
He loses himself in the feeling of Jaskier’s skin, the sound of his voice, his gasps breaking off into soft whimpers when Geralt bites just a little too hard. In the scent of dried herbs and vanilla and pomegranate, only made sweeter by the intoxicating sweetness of lust. 
Geralt leaves a scattered pattern of love-bites all the way down Jaskier’s neck, sucks three marks onto his collarbones, growling with pleasure, and he’s more than sure that there are going to be fresh bruises on the bard’s thighs from just how tight he’s still holding him.
Jaskier keeps him close with his ankles clasped behind Geralt’s back, his breathing deep and fast like he can’t get enough air. He looks unbearably gorgeous like this. 
Geralt’s mind is hazy with lust and pleasure, his cock hard and throbbing under the now painfully-tight leather of his trousers, and he doesn’t have to look to know that Jaskier is in the same state. His scent tells him everything he needs to know. 
And it would be so easy, so fucking easy to just carry Jaskier over to the bed, undo the belt holding his dressing gown closed, and fuck him, tearing more of those beautiful whimpers from his chest. 
But that would be a far greater mistake than the one that Geralt has already made. 
He takes in as deep of a breath as his lungs allow him, and takes a step back, pressing one last desperate kiss to Jaskier’s neck, now covered in his marks. 
Geralt doesn’t have anything to say for himself, but he doesn’t have to, for after just a few seconds of catching his breath, Jaskier grins at him victoriously, like it’s all a part of his little game and he’s not affected by it in the slightest. 
“I’ll take that as the answer to the question of whether or not you would’ve fucked me if you’d gotten here a little sooner,” he murmurs. 
Geralt doesn’t try to stop him when Jaskier jumps down from the dresser, adjusting the folds of his dressing gown. It’s more than hard to keep a hold on his self-control, and he fears that any touch could send it all to hell. 
His heart is beating fast and hard in his chest, and he’s still painfully hard, but it brings him a sense of possessive satisfaction to see Jaskier’s neck and collarbones marked with his teeth. Those love-bites won’t fully fade for more than a week. 
“Now, if you don’t have the intention of undressing me, I need to change,” Jaskier says, walking over to the wardrobes in the opposite corner.
Geralt watches his every move, still standing by the chest of drawers, not willing to risk it and close in the distance between them again. He wants to ask about the symbol on Jaskier’s back but it seems unfitting to bring that up now. 
Jaskier picks out his clothes and takes them out of the wardrobe, already reaching for the belt on his dressing gown when he seems to notice Geralt’s gaze.
“I’m not giving you easy ways out, Witcher,” he grins, even as the belt starts to slowly give way. “Turn around.”
He clicks his tongue, and from somewhere under the furs and pillows on the bed, emerges Lucio that Geralt had not noticed before. Jaskier whistles to him and, when the dog jumps down from the bed to sit next to him, indicates at Geralt with a move of his head.
“Ambush, Lucio,” he says, never breaking eye contact with Geralt. “He’s a purebred hunting dog, Witcher. If you move as much as a fraction, he will let me know. Now turn around.”
For a lack of a better option, Geralt does. 
He can hear the dressing gown fall to the floor in a soft whisper of silk, and knowing that Jaskier is right behind his back, completely naked and covered in his marks is making it hard to breathe. But Geralt can feel Lucio’s razor-sharp attention on him, and he knows that if he tries to get even the smallest look, Jaskier will immediately know about it, and the entire little game is going to be ruined. 
No, he stays with his back to Jaskier the entire time he’s changing, forced to listen to his own quickened heartbeat, and it seems like an eternity has passed until Jaskier revokes his command and Lucio loses all interest in the witcher. 
When Geralt finally turns around, he finds Jaskier wearing a black chemise with blood-red rose petals embroidered into the sleeves, the colour matching the love-bites on his neck almost perfectly. 
Geralt hasn’t told him yet that he’s leaving tomorrow.
But gods, he’s going to miss him.
20 notes · View notes
Text
Doctor Strange & Worth: MCU Meta
So this has sat unposted in my drafts for the longest time, but I’ve decided to dust her off and let her see the light of day, after all. These are just some of my thoughts regarding Stephen’s character development and journey in the Marvel Cinematic Universe film: his growth from someone who cannot see the true worth in himself or anybody else to someone whose eyes are opened to the beauty of everything. Not to mention how that eye-opening allows him to evolve from someone who cannot love to someone who loves fully and truly, and how Kaecilius plays a vital role in opening his eyes to the error of his ways.
Without further ado, let’s get into it! 
Let’s start with the beginning of the movie.
Stephen flounces around the hospital like he owns the place and flexes his overbearing, boastful personality without a second thought. Like, most people have at least a smidgen of consideration for others and some degree of self-consciousness or ‘filter’ regarding how they treat others, but Stephen has zero. He talks down on staff members, orders people around like inferiors regardless of their status, and acts as though he is God almighty and the hospital would go to the dogs without him, overestimating his self importance. He legit acted like an overgrown child that’s yet to be struck with the reality everything is not about him. Stephen seizes every possible opportunity to show off even when inappropriate, and does all he can to assert his correctness and prioritizes it. It’s clear from the get-go that Stephen has some kind of overinflated sense of self.
Tumblr media Tumblr media Tumblr media
All this would certainly seem to indicate beyond a shadow of a doubt that he is a generic arrogant, selfish bastard 101, but let’s skip ahead a bit, just for a sec.
Tumblr media Tumblr media
This line isn’t him joking around, rather, it’s the confirmation that Stephen truly thought his own behavior was endearing. As much as he liked himself, he was convinced everybody else did, too. He genuinely, sincerely was convinced that his antics were somehow winsome and charming. And of course, having been in a position of power as a Chief Surgeon and his state of world renown, there’s no way anybody would have told him otherwise. Nobody would really be frank and honest with him — I mean, yeah, sure, Christine was, but seeing as she was the only one he was on friendly terms with who he held in high regard and was frank with him (exclude Nick, and all probable others Stephen smugly thought very little of, and their opinions), there’s no way he’d take one person’s word over that of the masses. And it’s just obvious how overcrowded he was with sycophants that overfed his deluded ego and made it harder for him to wake up to his own self deception revolving the ‘charm’ he was convinced that he possessed.
Just look at the way he hits on her! Look at the denial! We did too have fun! 
Tumblr media Tumblr media Tumblr media Tumblr media
You know how people say “the bigger they are, the harder they fall?” 
Yeah, this story really does live up to that.
Tumblr media Tumblr media
The lie Stephen was living was cut short when he lost it all and his fall from grace leaves him at the mercy of people’s honesty. All those “people skills” he thought he had do him no favors, and suddenly anybody and everybody can speak freely to him, and he’s not getting sugarcoated responses. He’s no longer treating people as his inferiors however he pleases without lash back.
Tumblr media Tumblr media
And Stephen, who only knows his worth through the reception and acknowledgement of his talent and the amazing feats he had achieved with his hands in the neurological field, now feels the weight of worthlessness crushing down upon him. There are no more CCN interviews, no more speaking engagements. In his own mind, he is useless. And without any worth, there is no reason anyone would want anything to do with him. He cannot accept, within his narrow mindset, that anybody could ever love him in this reduced state. For that reason, he insists that Christine Palmer — that unlike TV reporters or other sycophants, has stayed by his side all this time  — must only linger beside him for her own self gain and reputation. It must simply be an act of pity, because that’s how Stephen sees Christine’s acts of selflessness and her work— nothing but her looking down on other people to boost her own sense of self, as he has.
Tumblr media Tumblr media Tumblr media
And when Stephen goes to Karmar-Taj, he’s completely out of his element and in a setting that is absolutely foreign to him, but navigates all the same, the only way that he knows how to. His thoughtless, proud tendency to view all else as beneath him really comes back to haunt him when it threatens to close the door to magic — and miraculous change and healing for him — forever. 
Tumblr media Tumblr media
By the time Stephen realizes he has misjudged the Ancient One and Kamar-Taj, and that magic is indeed very real and potentially his one last shot at reobtaining his former life, it is too late. He beseeches the Ancient One to teach him the ways of magic, but she has already seen enough of his arrogance to determine him an ill fit for a pupil..
In the end, it is because of Mordo convincing the Ancient One that even a man such as Strange still has worth and he may be of use in the future, reasserting their beliefs that all life has value, no matter how misguided it may be, it need only be redirected and put on the correct path... does the Ancient One agree and allow Strange to return, for a chance at redemption and potentially salvation. 
And so, Stephen begins studying magic. And unsurprisingly, being wrong about magic isn’t enough to hamper his antics. He’s the same old Strange.
Tumblr media Tumblr media
In this scene, Wong tells Stephen when he’s not ready to learn something yet, but Stephen completely challenges and opposes him, going so far as to break the rules of the library Wong protects just so he can continue with his self advancement and conquest towards superiority (and hopefully, healing). He challenges his lessons, preferring to teach himself and refusing to acknowledge that even his teachers could possibly have any superiority to his abilities. 
Tumblr media
 And it’s so hard for Stephen to make sense of, the backlash he receives for these behaviors. He can’t understand how he’s apparently ‘made for the mystic arts’ but is also being told to mind his pace and take everything bit by bit, step by step and not just rush headlong in impatiently as he always has. In his own mind, he’s not doing anything wrong by breaking rules or pushing limits —  it’s all about the results, after all. And this, this is for the most important result of them all... his hands. It doesn’t matter how dirty they have to get, he wants to fix them.
In the medical world, when Stephen showed off, people clapped & praised him because what harm could there be in pushing the limits and crossing the boundaries to save someone’s life? It was okay if he wanted to do something unconventional and risky (like remove a bullet from someone’s brain without a visual) because the ends justified the means, and he always delivered. It didn’t matter what he had to do or how ruthless he was, treating all around him as mere tools at his disposal to achieve what he wanted, without considering what might be at stake. Boundaries were never of the essence to Stephen.
But when he pushes the boundaries of magic and tries out the Ancient One’s Private Collection just to pursue greatness and feed his own ambition, he gets retaliation from both Wong and Mordo and is reprimanded about all the consequences he didn’t think of and other lives he wasn’t considering as he never has been before. And Stephen can barely collect himself and for the first time in the film, is speechless and out of witty remarks to snap. He is just so put off because he’s never been put in that position before, being held accountable for the liabilities of his pursuits for greatness. Simply put, he had never been made to consider the eggs he was breaking to get his omelet, and now, he is.
And he still doesn’t get it. “They  really should put the warnings before the spell,” he says, because clearly it’s not his hastiness or ambition at fault, but the book.
Tumblr media
And he doesn’t get it, and he most likely would have never gotten it or opened up to the Ancient One, Wong, Mordo, or even Christine. No, he had to see it for himself. And see it, he does; in fact, it ends up staring him straight in the face.
Tumblr media
They didn't spend so much screen time drawing parallels between these two over and over for no reason, this was what it was all building up to. Here, Doctor Strange meets his ego’s match. Kaecilius wants to save the world by granting everyone eternal life, preventing all its inhabitants from feeling suffering ever again. A bit like "doing work that will save thousands for years to come," no? 
The influence and efforts of others finally pay off as Stephen begins to apply their thinking, and questions what the cost will be if Kaecilius does that for the whole world, and if that accomplishment would really be as amazing as doing what he can in the immediate moment to spare the/ benefit the lives of individual people... kind of like “saving one drunk idiot with a gun,” right?. And Kaecilius dismisses Strange's interjections, repeats the same words he said to the Ancient one in the beginning... they’re just insignificant specks in an indifferent universe, just sacrifices that must be had to achieve what must be done. He even tries to reason with Strange, and appeal to the very reason he’s in that mess in the first place... his hands, and his deep desire to have them healed and restored.
And for the first time Stephen is looking the devil in the eye, and sees himself.
 “Just look at your face!”  And in that moment, Stephen rejects the man he has been, and can see clearly his flaws for what they are. His ego trip may have blinded him, but in that moment, he got on his own level and saw himself for the first time the way that others saw him, and it wasn’t someone he wanted to be and he recognized the wrongs of his ways. How ambition and the conquest for betterment can consume someone completely, until they’re so blinded in their pursuit for self worth, that they disregard the worth of all the other lives and people around them — it’s all ends that justify the means. It's not actually about doing what's right. It's about accomplishing the greatest feat possible for oneself — this is Kaecellius' ego unleashed, not a sincere quest for world salvation.
And everything bad he didn’t want to become that he saw in Kaecellius, gives way for new direction in all the inspiring goodness he sees in the Ancient One, her final farewell, and her sacrifice of her life to save his and Mordo’s own.
Tumblr media Tumblr media Tumblr media Tumblr media
And in the end, Stephen finally understands what the Ancient One, Wong, and Mordo, and Christine were all on about. It’s not about what change you can create for other people to benefit yourself, Stephen; it's about the change YOU can make to benefit other people, who are so many in number and so much larger than yourself. It’s not about the strength in your hands, and what they can do; but the resolve of your heart, and the strength of your will.
And he learns, because the Ancient One teaches him...
Tumblr media
He uses his own lifeforce to fence off Dormamu from earth, because even if he suffers, everyone else will be safe. He tests the worth that the Ancient One claimed she always saw in him; that could achieve things greater than he ever dreamed, greater than his medical ambitions. The goal-oriented, ruthless man we saw in the beginning becomes someone who learns true purpose and ambition. His life that was hollow and empty, becomes truly fulfilling.
And the most intriguing piece of irony of them all?
After exhausting countless resources, plenty of doctors, libraries, and research archives seeking a way to heal his own hands, he found nothing but failure. But using only his own willpower, he who felt helpless and powerless against his disabled hands, managed to save the entire planet and all those living within it.
Because it wasn't his hands that gave him value, nor was it his work. There was something greater, but he was blind to it in himself, and everybody else, seeing all based on what they could accomplish — their educational background, their medical accomplishments  — a worth greater than him, in the world all around him that he always disregarded and failed to see. Something beautiful, precious.
And parallel to earlier events, when Stephen once again pushes the boundaries of magic, but this time, not in pursuit of greatness of for the betterment of his own hands... he is not received with a vocal reprimandation. On the other hand...
Tumblr media Tumblr media Tumblr media
And here we are, at the end.
Stephen says it again. “You know, you really should read everything, because the warnings come at the beginning of the books.” He pokes fun at Kaecilius, at himself, at their likeness with a humility unlike yet before.
Tumblr media Tumblr media
And Wong laughs. When Stephen went through so many different things trying to make Wong laugh — like he always had his other co-workers— he didn’t. 
But when he put himself and his heart into it, he did.
And no longer is Stephen on the same path as Kaecilius, surrounded by subservient followers, who only did as he told them because of what he was after and the results he promised to be able to deliver on. Now, he surrounds himself with those who genuinely care for him for who he is. No longer is Stephen so blinded by his need to be the greatest person in the room, that he can't see the worth of those around him — of love, of friendship, of companionship.
19 notes · View notes
pomrania · 4 years
Text
TMA Entities as Normal Horoscopes
(To clarify, the Entities from The Magnus Archives, as represented by horoscopes from @normal-horoscopes. Entities presented in alphabetical order, horoscopes in the order that I found them.)
BEHOLDING
Libra: Your eye for detail is one of your most defining traits! Most people only have two general purpose eyes.
Gemini: Unleash your curiosity upon an unforgiving world and dissect everything you are afraid of with an olive fork until you understand it so well it can’t scare you anymore.
Pisces: You are the last one still awake. What are you still doing up? This late at night, with only one pair of eyes. You might see something you weren’t supposed to.
Gemini: You’ll have to throw out or donate most of your novelty t-shirts when you awake to find several bonus eyes hovering around you in elliptical orbits.
Sagittarius: Careful not to blunt those sharp eyes on an unforgiving task. Passion for learning is all well and good, but you’re venturing into uncharted territory that may contain things that want your eyes.
Gemini: Most of us have spare eyes. You have far too many.
Taurus: I can’t shake the feeling I’m being watched. Wait, watched isn’t the right word. Watched and something else.
Cancer: Quit your peeping. Something is looking back at you.
BURIED
Virgo: The weight of the world will crush you into a diamond.
Virgo: Your horoscope today is just dust. That’s it. Buncha dust.
Libra: Pressure can be an excellent motivator in the right amount. Also, they meant social pressure, doing paperwork in a deep-sea diving bell will not improve the quality of your work.
Gemini: From dust to dust. You came from the earth and she wants you back.
Taurus: Cave buddies.
Capricorn: Spend some time huffing large amounts of dust to make your insides dustier.
Scorpio: As you lay on your back, head tilted to an uncaring sky, the very earth whispered to you. She reached up her hands and fingers and you gave her everything you could. Sleep now. Mother is here.
Taurus: It goes far deeper than you imagine. Talk about it.
Cancer: You’ve come across something you should not have interrupted. Run. Run now. Go, or the very earth will swallow you whole.
Scorpio: Your natural drive and ambition will lead you to some interesting places! Who knew a person could even fit in that small a hole?
CORRUPTION
Aries: Live in the level of filth that is comfortable to you. Just make sure you are practicing self-love.
Pisces: You will see a cool picture of a plague doctor this week. Hell yeah.
Pisces: Growth is simply growth. Gardens and cancers alike.
Ophiuchus: When she awoke to see the infection had taken her shoulder she did the only sensible thing. She cut off her own head. She holds it by the hair in her left hand.
Ophiuchus: Worms in your brain. Worms in your brain. There are very helpful worms in your brain.
Gemini: The discomfort you can’t seem to shake is likely due to the large nest of bees that have made its home inside your ribs.
Ophiuchus: The value of today’s fortune depends heavily on your opinion of rot.
Virgo: The position of Mars says the virus is spreading and soon you will be reborn ascendant to join in the virulent bacchanalia.
Leo: We can only hate what we see in ourselves. Consider that you may be full of mosquitoes.
Aquarius: A lavish and ostentatious estate. Empty and bare because the previous occupants couldn’t stomach a little plague. Wimps.
Aries: When she touched you she laid several eggs in your skin. Free babes! Nice.
Ophiuchus: Having trouble in an academic setting? Try lying down in a field and letting insects use their tiny voices to whisper the secrets of the world to you.
DARK
Scorpio: A ray of night from the clouds will darken the banks of the river. Look only. Touch nothing.
Capricorn: The massive black roadrunner that followed your car through Utah. You didn’t say a word the whole night.
Leo: When you see the black, many eyed owls, immediately turn around and snuff out any lights. Your light up sneakers will have to go. Sacrifices must be made.
Aries: Take their hand. They will guide you into the night. Finding your own way out will be its own task. Feel as your heart starts to quicken.
Pisces: There is so much the world has to offer. So much beyond this fervor. Steady your hands and rest in the gentle dark.
Leo: The Diminutive Beings of Shadow and Dread are raccoons. They are raccoons. Close your trash cans.
Aries: You visibly absorb light from the area around you, consider medication.
Leo: Something moves soundlessly through your neighborhood, avoiding the streetlights. Check on your pets.
Pisces: The night is a blanket over all of us. There is fear and comfort in the privacy of the dark.
DESOLATION
Scorpio: As much as the stars and I admire your zeal, human hair candles will not catch on.
Taurus: Ensure your friends sit next to you by burning all other chairs and eating the ashes to hide your trickery.
Virgo: Fire is a powerful cleansing force, but that doesn’t make arson legal. The one thing fire cannot purify is the law.
Gemini: It absolutely could hurt to try. Pain is just pain.
Aries: Today your horoscope involves fire and children. The stars wouldn’t clarify anything past that.
Ophiuchus: A chapel made from old shipping containers. The priest is setting herself on fire for the third time in the sermon.
Cancer: It will not actually solve anything, but you can put your problems into perspective by setting everything on fire.
Capricorn: You’ll look back on all of it and wish it to be burned. Start the fire as soon as possible.
Libra: Watch the fire dance between your fingers. You only have so long.
END
Aries: Look buddy, only one of us can leave this pumpkin festival alive, and I’m already dead.
Gemini: What’s the rush? Nothing has happened but you can feel your heartbeat in your ears, you can feel your eyes dilate. Literally nothing has changed but your body seems convinced that you are going to die any second.
Scorpio: No sense in arguing over the supposed opinions of a dead man. Dig him up and ask him why don’t you? It’s a once in a lifetime chance.
Sagittarius: Today you will be legally dead for about 140 seconds but you’ll come back with a complementary mint.
Leo: After selling your soul to the devil, the sheer negative value of your soul will crash the soul market, causing the dead to walk again.
Ophiuchus: The only permanent state of being is death and even that’s debatable.
Pisces: A good strategy here is to simply refuse to die.
Aquarius: Fuck it. Carry a scythe around. Who even gives a shit.
Capricorn: Statistically, there is a chance that something you do today, however small, will lead to the death of an innocent.
Ophiuchus: Death is only the beginning. The beginning of not being alive anymore.
Aries: Your obsession with death will be satisfied. Eventually.
FLESH
Ophiuchus: Have yourself a feast and invent a new catholic saint to justify it.
Taurus: The stars say to get of your high horse and quit genetically engineering horses to have such legs. Horses are poorly designed as they are. It’s irresponsible.
Aries: Your newfound ability to scale a brick wall in seconds flat is kinda scary. Your bones make weird noises and everything. Try not to do it around kids.
Virgo: Do you know what flavor you are Virgo? Well get ready to find out!
Capricorn: You know Capricorn, you’re really one or two big steps away from being a sausage.
Leo: There will be a distinct element of aggression to your emotions today, specifically towards chefs that are a member of the ancient secret society of cannibals who just murdered your science teacher.
Taurus: Money troubles Taurus? Try growing new bones and selling them to bone farmers for extra cash. If you get good enough at it, you can use wholesalers.
Sagittarius: Fear not, there is pulled pork aplenty for those with the courage to seek it.
Virgo: There is a mad little part of our heads that looks at a meat cleaver and says “just chop your hand off”. Don’t listen to that bit. It's a prick and it owes me $120.
Pisces: Your body is not a temple, it is a river. A river made of meat and blood and stuff.
HUNT
Aquarius: Speak softly, carry a big stick, hide a gun inside the stick just in case the bastard is outside of stick range.
Pisces: If you are being chased by something unearthly, go for the selfie. Life is short, especially when you are being chased by something unearthly.
Aries: Nothing evil stalks the forest. The wild is bigger than you could ever imagine. You are nothing to it. No skinwalker or boogeyman or revenant could ever aspire to the persistence and hunger of the wild untamed.
Leo: Allow fear to inform you. To accept fear as sovereign is sin against the self. Fear is very correct about the large hungry mammal chasing you. Run.
Aquarius: Those assassins from the meat of the month club have finally found your new address and are planting the explosives as you read this.
Scorpio: Dreams of chasing smaller weaker things through the woods. Waking aching to remember. You will remember soon.
Sagittarius: The hunt is on! No starbucks will escape your horn-blessed gaze.
Scorpio: You will get into a fight. Go on a quest for revenge. And know the true visceral feeling of the hunt.
Virgo: The blissful are being sold a lie. The only true bliss is the glory of the hunt and a slaked bloodlust.
Pisces: Nothing gets the panties wet like the sound of hundreds of spectral mounts crashing through moonlit woods while the call of the hunt echoes among the trees, striking fear into the hearts of your ghastly quarry.
LONELY
Ophiuchus: You can’t stop feeling just one thing. Stuffing down one emotion means stuffing down them all.
Aquarius: You may be stunned to find that the introduction of a new person into your life will make you less lonely.
Taurus: Spend some time outdoors today. Reflect on the state of the world. See yourself reflected in the world and try to fight the other person who is interrupting your reflection time.
Aquarius: Do you remember the seaside? That strip of sand that made you feel at home? Do you remember how quiet it was?
Virgo: Remember Virgo, you can click the control stick to go into stealth mode. Use this to avoid your problems easier.
Aries: You are beyond the pale, transparent really.
Taurus: It's not fog. It's a curse. A curse that looks like fog. Stay away.
Cancer: The stars and I regret to tell you that you will, actually, have to talk to people at some point.
SLAUGHTER
Capricorn: Some things cannot be prepared for. Who even uses flintlock pistols anymore? Especially in the parking lot of a grocery store?
Pisces: There is a number of knives that it is appropriate to own. It is quite high. Let’s say you need to curate your collection.
Pisces: Romantic bloodsport for two.
Leo: Nobody really cares that you’re not one for fighting. Preparation is its own reward.
Leo: Having trouble with your customers at work? Strike the head for critical damage!
Aries: When things seem confusing, just start swinging at whoever you see. At the very least, you’ll get some breathing room.
Capricorn: It may be that you fight for good, and your opponent fights for a love of bloodshed, all that matters is that you are fighting.
Virgo: Ruthless efficiency produces results but blind rage is more fun.
SPIRAL
Libra: Drawings of wildflowers that don’t exist. Diagrams and advice in a language that nobody speaks. Strewn about your room in impossible places.
Capricorn: Reject the concept of direction. There is no up, there is no down. Orientation is for losers.
Sagittarius: You are correct Sagittarius! That small wooden carving of a fox wasn’t there last night! Yes, it is cursed! Right on the money there.
Capricorn: There is no old woman following you around throwing small potted plants at you.
Scorpio: Relieve stress by planning a trip that isn’t a trip to a place that isn’t a place. Relieve stress by conceiving of time collapsed into a single semipermeable plane of events that anchors all the things that could be.
Leo: When the world stops making sense, play with the perspective. Go Escher on your problem’s ass.
Taurus: Two strangers meet in a Mediterranean country that does not exist. They discuss silver and poison and the nature of madness.
STRANGER
Aquarius: You are never done growing. It takes real effort, and for you, it will take many hours of prowling around the backs of hardware stores for stray screws to eat.
Libra: There is something in the wires practicing its voices by leaving spam calls in your inbox.
Sagittarius: Whoops! Something stole your friend’s face again! Get that ritual dagger and get to work.
Capricorn: Well lookee what we go here, a full shipment of mannequins that look exactly like you except with minor errors in body part proportions. Whoda thunk?
Sagittarius: Enough improvements and you’ll barely recognize yourself. Harvest the parts and avoid the authorities.
Cancer: If you’re gonna copy other people, don’t half-ass it. Ritual cannibalism is the only way to go.
Ophiuchus: The creepy carnival set up outside of town that only certain people can see is not to be trusted, not matter how cool the rollercoaster looks.
Cancer: She’s a fake bitch. Literally, she has a heart of clockwork and armored skin made of porcelain. Even unholy things like her shouldn’t gossip though.
Taurus: Beware the almost. The almost real, the almost breathing, the almost human.
Virgo: Keep a close eye on the puppets. One of them has no strings. 
VAST
Aries: The stars say you may find yourself falling from a great height. Remember to tuck and roll.
Virgo: Do not look down. There is nothing beneath you. Carry on with your day as if the world is sensible and solid beneath you, and it will follow suit.
Aries: The storm sirens wail, the sound of colossal footsteps thunder closer. A low mournful sound that seems to crack the sky.
Pisces: Today you might fall into a bottomless pit. This is not a metaphor.
Aries: Ever feel under the weather? You are lightning.
Aquarius: You can also see the stars if you’re not in a gutter.
Leo: A man on the roof of his home during a tornado warning, laughing.
Aries: The world seems to be getting smaller and smaller. One day you will be confronted with the magnitude of it all. The vast unexplored deep. The wild unknown, and all those that would build a home in its bosom.
Aries: The space between two mountains in the distance. The sky looks different. You can hear the beating of colossal wings.
Aquarius: Your desire for human contact can be satisfied by being struck by lightning for some reason.
WEB
Capricorn: Today you will finally locate and kill the college student with a writing credit on your life.
Capricorn: The stars say to make friends with the harvestmen in your bathroom. They are helping clean up all the lil bug corpses and would appreciate some recognition.
Aquarius: It’s time to make a nest. Don’t ask questions. No thought, only nest.
Gemini: You’ve got a productive day in store Gemini. Will it be on something you actually want to do? Let’s say there is some minor will enslavement involved.
Aquarius: You’ve done an excellent job so far of making friends with the spider people that live in the abandoned subway tunnels. Keep it up!
Gemini: People are depending on you to uphold your promises. The last thing you want to be known as is a trickster. Or is it? That’s exactly the sort of thing a trickster would do!
Leo: You are a puppet, you know exactly who is pulling the strings.
Libra: A tiny spider who has made a friend.
Ophiuchus: The spider lady would like her copy of Where the Sidewalk Ends back.
Aries: See how the cobwebs catch the light? Be sure to thank the spiders.
And some others that didn't necessarily fit with a particular Entity, but gave off such strong TMA vibes that I had to include them anyways:
Gemini: This week you will be faced with your greatest challenge yet, a twink with massive burn scars.
Libra: Preserve yourself for all eternity by outsourcing your aging to other people.
Pisces: One man’s panic inducing siren-song is what another man uses to fall asleep.
Virgo: Confused? Do not worry. Everything not saved will be lost.
Taurus: This week should be one of experimentation! Push the boundaries of what it means to be mortal!
Capricorn: Answer the Door.
Scorpio: Tomorrow will be the last time you dream of the crown of teeth.
Cancer: The thing that watches over the prison transport ships. It used to be two things but now they share a spine.
Aries: Trust your instincts Aries, your dead wife does have a new form made of dried paint and she is slowly hunting you.
Taurus: They died when the radio tower was bombed. Sometimes you can hear them sending messages before the sun rises, whispering over the unused channels.
Virgo: Your capacity for learning will come in handy today when you smash your head through an old Apple II and download the entire internet into your brain, along with several shards of glass.
Libra: Look, nobody said it would be easy, but at least now you’re suffering for something you love.
Pisces: There is a hole in the world where you cannot see, and through this hole there seeps the things that can never be.
Scorpio: Sometimes being too oblivious to even notice a problem can be an asset. Can’t sweat the small stuff if you don’t even notice it.
Libra: Financial problems? Try encasing your credit cards in a block of ice. Encase all money in a block of ice. Keep all wealth frozen in a block of ice.
Ophiuchus: Maybe your prayers would be answered if your god wasn’t such a pussy.
Gemini: Limited options make choices easier! There are only so many places you can get a human heart!
Taurus: Remember, now matter how many false eyes something might have, at least one of them has to be real. It boils down to a question of bullets over time.
Libra: When others can’t decide, you will be there to make the tough choices with your brave disregard for things like “Rational Thought” and “Basic Self-preservation”.
Virgo: Ribs are important. Make sure you have a good grasp on the importance of ribs.
Pisces: Your constant near death experiences may be putting you under some stress. Time for some light reading, or maybe some breathing exercises. Honestly the stars say you’re handling constantly being faced with your own mortality pretty well.
Aries: After hearing that cursed song today, you’ll only destroy 80% of the objects around you. Recovery is a slow process.
Cancer: There is an aggression to you today. There is an aggression to you all the time. There is an aggression to all things, it is simply your turn on the wheel.
Leo: The hunger you feel is not for food.
Capricorn: Woo her. She is terrifying isn’t she?
Gemini: You are hunting the guy down seven years later and bashing his knees in with a pipe.
Capricorn: What happens when you open a door marked “exit” and all you find is another hallway?
Ophiuchus: Nothing makes a friendship like shared intense suffering.
Taurus: Analog recording devices are surprisingly sensitive. Listen to your old tapes again and hear the tiny voices that whisper along with the song.
Taurus: Clawing your way back out has dulled your talons and blunted your fangs, you are a soft and gentle creature for it. You can buy a knife at most stores.
Sagittarius: When you needed patience, you thought of those who loved you. When you needed fury, you thought of those who hurt you. When you needed strength, you thought of yourself. When you needed just one more chance to get it right, you thought of that cat.
Libra: Keep a journal and write down everything you see, it may save the life of whoever finds it.
Libra: Did you feel it? Just now, the world ended. There's no going back. Saddle up and find a mask.
Leo: The night is long, the tea is hot, the eyes are plenty.
Ophiuchus: Your eyes can’t lie to you if you don't have any eyes.
Aries: Now is the time to try new things! Experience new forms of pain! Suffer in new and interesting ways!
Cancer: Someone is missing from that big social meeting you’ve got planned! Luckily they were just preoccupied with being suspended in limbo between life and death.
Libra: If someone says they have power over you, don't believe them until you see for yourself. Test those limits.
Aquarius: The danger you pose to others is dwarfed by your ability and desire to help. Nothing is without its dangers. You know this more than anyone.
Taurus: Turn some of your energy towards improving the space around you, especially if the space around you is bad and the energy is heat. Burn your house down.
Virgo: The stars say an authority member might be causing you some minor trouble. The important thing to remember during professional squabbles is to use your psychic powers to rip them apart with the strength of your will alone.
Taurus: It's a tough thing, allowing yourself to be known. The stars say the time may be coming up, are you ready? Too bad fucko, it's happening anyway.
Ophiuchus: Hiding under the covers actually works with some things. It is technically a threshold and so some things do actually have to be invited.
Cancer: Watch for a box that carries no address. Do not open it. It will be gone tomorrow.
Ophiuchus: Your choices are yours alone. This is important to remember, especially when not making choices.
Scorpio: Goddamit Goddamit shut the fuck up and tell a story.
Sagittarius: That could be you in a few years. Keep your feet about you.
Gemini: There is a deep and old power in that of the image. As long as cameras existed they have been a tool to tell what is really there.
547 notes · View notes
ballisterboldheart · 3 years
Note
I, for one, absolutely want a wall of text filled with all your charmed thoughts and ideas
omg YES i wuld also love nothing more than to talk abt the charmed s2 that lives inside my head <3
ok ok so the basic structure would be 2a would be the demon & witch war that we got faked out of and 2b would be the shea storyline w/ both sides calling a truce to deal w/ the Bigger Threat
i was SO sad that abigael's storyline went Literally nowhere it think it would have been sick if she really WAS playing the charmed ones the entire time (especially doing it through harry? bc she thinks she has an in through him but at some Critical point underestimates how much he would choose the girls over Anyone else) and ends up betraying them and they want her BLOOD
i would have love to see her misdirecting the sisters so that they end up taking out her competition. and abigael justifying it w/ well our goals are aligned <3 why are you mad if i didn't tell you the whole truth it wouldn't have changed anything. but they KEEP falling for it and abigael stays in power
it was dumb as hell to kill all the whitelighters SO that doesn't happen and WHILE the demon & witch war is brewing someone (jada) is out convincing the whitelighters that the system they swore themselves to doesn't exist anymore & they should be free to choose if they want to continue to be subservient to witches
and most of them are like Yeah what other purpose is there because they don't really HAVE a reason to go against the elder's last wishes
ENTER the darklighter reveal and now suddenly it turns out these people were all torn apart & have to deal with that? and when the demon & witch war heats up they become glorified human shields and its like. what the Fuck. cue the whitelighters all unionizing
and it would be good to expand a bit more on what darklighters actually ARE...i think it'd be interesting if the elders Said they were all the feelings of rage, grief, and rebellion ripped out but it turns out it's not as Clean of a cut as they made it out to be
also the vera vaughs should have more witch friends. they know like?? three or four more witches by nearly the end of s3 that's bullshit i want them to have more friends that help them out <3 they form a little task force or something as the demon witch war escalates bc they can’t be everywhere at once
macy & jordan get together instead of maggie & jordan because HEAR ME OUT HEAR ME OUT their episode together in josefina’s bag was literally one of the best they have insane chemistry and are both solid tens.
macy spends a good while upset bc you know galvin JUST died and he was her first serious boyfriend so she’s tentative abt loving someone else but then here comes jordan & he’s so sweet and always there for the sisters w no questions asked and macy slowly falls for him but then it turns out he’s CURSED to die and she’s like. ah shit. cannot believe youve done this. so she goes Through It a bit and honestly i don’t think jordan’s Curse storyline should drag out as much (especially since his ancestor who got everyone cursed was white?? literally did they consult NO ONE abt this storyline)
maggie gets to be on again off again w parker who comes back because everyone wants him to be demon overlord but he’s like Hello? i Literally gave up the source of all evil i HATE being in charge idk he can get Murdered or smthn or maybe eventually start causing some problems (it’s the white man in him)
actually it’d be so funny if maggie’s ex was the one causing trouble on the demon side and mel’s ex was the one causing trouble on the whitelighter/witch front and the woman desperately trying to peg harry was ALSO causing problems. macy’s the only one w/ an unproblematic love interest staying in his own lane <3
mel’s arc would be that everyone keeps playing her into attacking first, that she resents that she’s Unofficially the one in charge, that jada is back and Causing Problems but mel can see where she’s :/ kinda morally correct
maggie’s arc is dealing with the fact that she Kinda wants a normal life but that’s not going to happen if everyone keeps killing each other so she wants to try to find a solution that involves as little bloodshed as possible but also. everyone has insatiable bloodlust.
and macy that she unfortunately has a stake in both sides and there’s people who will Definitely be taking advantage of that (maybe even getting HER to try to be demon overlord to unite both sides under One Flag, so to speak). also, like maggie she wants something Normal i mean it was fun when it was just like. small stakes but now it’s literally Everyone counting on the vera vaughns and its like bitches help
harry’s would be that he’s kinda useless now, since he’s basically taught everything he knows, and that he’s used as a pawn by abigael, and then later the darklighter plot and that the people that Made him who he is did so by ripping everything Bad out of him and the fact that he never had a choice
anyways anyways 2a would end with the war between witches & demons officially being started, it would continue on a bit for the start of 2b with everyone on edge and stretched a bit thin and jimmy Acting Up n trying to kill the girls, and then the shea storyline would pick up
and i have Not thought that far in advance <3
2 notes · View notes
delicatefesttyphoon · 3 years
Text
Cities: Skylines - After Dark
Tumblr media
PC, Reviews Charles October 20, 2015 Add-on, after dark, cities:skylines, city management, Colossal Order, Paradox Interactive A fter Dark is the first expansion to Cities:Skylines. While it introduces the much awaited Day and Night cycle, it also brings with it new city planning options and buildings. In the case of the After Dark expansion for the surprise hit city simulator Cities: Skylines, Developer Colossal Order already gave away the game-changing day/night cycle in a free patch, which.
The newest DLC, Industries, just released for Colossal Order's genre gold standard Cities: Skylines, and to celebrate, the game and all of its DLC except for the new one just went on sale on Steam through Thursday, November 1.
And while you may be tempted to just buy the complete game-and-DLC bundle (a more than $150 value for about 56 bucks), and you'd get a fantastic experience out of so doing, maybe you don't quite want to go whole hog right out of the box.
Maybe, instead, you're looking to keep your purchases down to the cost of a fast-food meal, but you really want to make the money count. For that, here's your guide to every Skylines DLC, from “not worth it at any price” to “buy it even if it isn't on sale, it's that good.”
Special note: I'm not including minor packs that don't make major gameplay changes. Stuff like Content Creator packs and radio stations add nice flavor to the game, but to be bluntly honest, they're really not worth spending your own money on, not when so much of that stuff is available in the Steam Workshop for free. Never send a paid content-only DLC to do a mod's job, I say.
Must-have Cities: Skylines DLCs
After Dark
After Dark isn't a mandatory because of the day/night cycle (which came with the free patch that accompanied the expansion anyway). Nor is it a mandatory because of the leisure and tourist buildings (which you may end up not using at all).
No, what makes After Dark a must-have is the overhaul of city services that it brings.
The Bus Terminal is absolutely essential to creating a large, integrated public transportation system that can serve a large city. Much like in any other city in the real world, the ability for bus lines to seamlessly converge on a central point is what makes it actually useful to the citizenry.
After Dark also introduced cargo hubs, which provide massive boosts to the city's industrial economy, especially with the Industries DLC. Even if you're not a huge fan of those yellow blocks on the map where the dirty jobs of the city get done, having them be profitable means they're not just eating space to keep demand for labor up.
It also comes with the International Airport, and if you've had a city big enough to where air capacity has become a concern, you'll know exactly what a gem this building is in the lategame.
Throw in taxi service on the roads to relieve congestion, and you see why After Dark was a complete and essential expansion that offered something for everyone. This is generally $7.49 on sale and $14.99 at full price and is the first DLC on this list well worth shelling out the complete cost of admission for.
Get it if:
You want your roads to be more efficient and you want a way to generate additional revenue streams to provide variety to your city's economy through leisure and tourism.
Miss it if:
For some bizarre reason (seriously, this DLC is absolutely essential), trying to run bigger cities with inefficient road networks somehow appeals more than having major gameplay improvements.
Industries
As the game's promotional materials put it, “mind your business” with Industries, a DLC that manages to layer a resource- and production-management RTS on top of a city builder without losing the plot in either case.
Tumblr media
This is the DLC that actually makes the natural resources on the map useful. It cannot be overstated just how much this utterly revolutionizes gameplay.
Cities Skylines After Dark Steam
Especially when combined with the menu setting that gives unlimited oil and ore resources rather than ones that deplete in about 10 minutes of gameplay, this is the DLC that turns industrial zones from earlygame stopgaps into true profit drivers of their own.
Even better, Colossal Order made the creation of these new-style industrial zones super easy for anyone who's played the base game, and double-especially for anyone who's played Parklife. They repurposed the existing system for drawing districts to let you build out the industrial zone exactly where and in what size you want it.
The system is not without its weaknesses, but they're awfully minor.
For one thing, there is still that great big “but what about your playstyle” question that looms over every single DLC, even the mandatories; if you're just not into having manufacturing cities and you're going to devote that real estate to building powerhouse office zones, there is nothing in Industries that demands you not do that, and there are still only so many citizens to go around in the labor pool.
For another, maybe you don't have $14.99 to burn, and this one's still brand-new so it's not getting its first sale until probably Christmas at the earliest.
But if the money won't break you, and you have any interest at all in stirring a little tycoon game peanut butter into your chocolate city builder, this is absolutely essential. Check out our review here.
Tumblr media
Get it if:
You have any real interest in making your industrial zones into something special in terms of their value to your city's economy.
Miss it if:
Your playstyle just really, really doesn't swing toward industrial zones.
Mass Transit
Here we have the DLC that makes large cities possible and expands in every way upon the vanilla game's available tools to get cars off the road and, with another nod toward the developers' body of work, really gets your cities in motion.
From the fantastical (blimps!) to the more familiar (ferries, cable cars, and the monorail that put North Haverbrook on the map), and featuring intermodal transit hubs that let you build things like Boston's multi-transit South Station, this is the DLC that turns public transportation from a curiosity that lacks a bit in depth to a fully integrated system that gives your cities the ability to handle even Tokyo-sized traffic volumes.
There are even ropeways that can go up the sides of mountains and unlock the possibilities of spaces that used to be obstacles to development.
And it's on sale for $6.49, but the regular price of $12.99 is a bargain.
This does for Skylines what the Rush Hour pack did for SimCity 4 way back in the day. It takes a good-but-not-great part of the base game and just elevates it to levels that will make you seriously wonder how on earth you ever got along without it.
Cities: Skylines - After Dark
When combined with Industries and After Dark, this is the essential Cities: Skylines starter kit. The 30 bucks or so it will set you back to buy the rest of the major DLC is entirely optional, but if you haven't already looked at your wallet to see if you've got another 30 for Mass Transit, you should.
If you're still on the fence, read our review for more info on this one.
Get it if:
You have any sense in your head at all and want your public transportation to work the best that it can.
Miss it if:
You don't have the money. That's the only plausible reason.
Depends on your Playstyle
Parklife
I have mixed feelings about Parklife that showed themselves in my review of the DLC when it came out.
Specifically, building a great zoo or nature preserve or city park or Nuka-World is a great way to add a lot of visual flavor to your cities. Also, when it's done right, the park districts are a great revenue stream for the city, pulling a profit that you can then put into improving the rest of your civic infrastructure and whatnot to power a more prosperous city.
That's the real strength of Parklife: the game-within-a-game of creating the perfect park while simultaneously balancing all the other spinning plates that come with a well-balanced city.
The biggest weakness is that the park mechanics don't contribute enough to the city in terms of land value per unit cost to justify their existence unless you're building them as a profit driver. The already-existing parks-and-recreation system in the base game is better for your citizens on the whole if your sole goal is to grow your tax base, and as such there's an opportunity cost that comes in the box and wipes out a lot of the benefit.
Everything else in the DLC is in service of the parks system; there's nothing here for base game players to have any fun with the way, for example, Snowfall gave that neat-o tram system (even if it was the only thing in the DLC and largely rendered obsolete by Mass Transit—more on that later). The sightseeing buses and new reward buildings all tie back into the park system.
The DLC will run you $14.99, or $10.04 during the 33 percent off sale, and the only real way to recommend it is if you're the type of person for whom beautification and screenshot value is where you get the joy from your particular playstyle.
Get it if:
You want to create a unique look for your cities, or you enjoy having a more hands-on role in the creation of your leisure areas.
Miss it if:
You're more efficiency-oriented or don't want to add complexity to one of your city's systems without a meaningful tangible reward.
Green Cities
This one falls short of mandatory status thanks largely to the fact that it's not strictly necessary to use green building options in order to have a perfectly functional and relatively clean city. By the time you're in office-zone territory, that problem usually takes care of itself, or at worst cordons itself into “the bad part of town”.
But all the same, if you're playing the kind of playstyle where you want to create beautiful, ultra-modern, clean cities of the future, this scratches that itch in ideal fashion. For a utopian player, new building specializations, electric cars, green parks, and ability to apply eco-friendly policies to districts means there's a ton of great stuff here to be explored.
When you've got those geothermal power plants firing and the yoga gardens built, you can then gear your city toward getting the Ultimate Recycling Plant, one of the game's “monument” super-buildings, and that's the other strength of this DLC, the fact that the reward at the end is extremely useful.
The downside, as with most Skylines DLC, is that if your playstyle doesn't lean toward what the DLC is trying to offer, it's just a bunch of stuff you'll never use but that you paid $6.49 for on sale or $12.99 for at full price.
But this is where you're really starting to get into the “most playstyles can find a way to use this stuff” territory that makes DLC, especially on sale, a must-have.
Get it if:
Reducing pollution while still running an economically viable city appeals to you.
Miss it if:
You're less concerned with “green” city design and your playstyle doesn't super-prioritize reducing pollution beyond the simple maintenance levels you can achieve with basegame tools.
Don't Bother
Snowfall
Snowfall makes everything look pretty, and there is plenty to be said in favor of the challenge that adapting your city to wintry conditions offers.
Orwell: keeping an eye on you download. The problem is that this DLC is extremely poorly executed.
For one thing, the snowfall is an all-or-nothing affair. Either brace yourself and prepare for the frozen tundra of an icy waste like the northernmost parts of Colossal Order's home nation of Finland, or else use a map that isn't Snowfall-enabled and get absolutely no value out of the DLC at all.
Sure, existing maps get rain and fog, and the Streetcar system is a nice addition to the multitude of transit options we've come to expect from a studio that made its name on the old Cities In Motion series, but you'd really need money to be burning a hole in your pocket before you dropped even the $6.49 sale price on it.
Plus, as several Steam reviewers have pointed out, the complete lack of contrast inherent in having a city covered in snow takes away a lot of the visual appeal that the game's landscapes usually have. Snow is beautiful, as anyone who loves living in cold climates knows, but it's not visually interesting the way nature tends to be during the rest of the year. You'll grow tired of it quickly.
Get it if:
You really love winter wonderlands and you have money to burn.
Miss it if:
You'd rather just go out for a burger and fries; you're not missing anything by not having this DLC installed.
Natural Disasters
Northgard - svardilfari clan of the horse whisperer. Remember how in SimCity 4 (and its earlier brothers), half the fun of building a city was unleashing the wrath of Judgment Day upon it like some kind of cruel cross between the God of the Old Testament and Kefka from Final Fantasy VI?
This is the experience Natural Disasters is out to create, and if that's what floats your boat, then you'll get everything you ever wanted here.
The problem is twofold and why this DLC is just way too hard for me to recommend even for people who have a fetish for breaking stuff in a city-building game.
One, that's way too much of a one-note song even for $7.49, much less the $14.99 regular ask.
And two, as anyone who's played SimCity knows, breaking stuff is cathartic and all, but what do we all do when we get it out of our system?
We reload the save and play with the hope that the game won't break our stuff on its own volition, that's what.
And this DLC, even though it adds lovely early-warning systems and all kinds of major mechanical anti-frustration features for dealing with a disaster, is still going to throw a disaster at you unless you toggle the option off in the menu, at which point you just spent $7.49 for “I wanted to destroy something beautiful mode.”
Get it if:
You really love to destroy stuff and triggering disasters never got old for you in the old SimCity games.
Miss it if:
You'd rather build cities than destroy them.
Hopefully my experiences with Cities: Skylines and its DLCs and expansions will help you decide which you'd like to throw money at.
Tumblr media
0 notes
negativereader · 6 years
Text
The Negative Reader Sporks Marked: Chapter 6
Alright, last chapter, Zoey was a complete and total idiot, nearly got herself killed, hit her head, and had a dream about Nyx who, for some reason that’s beyond me, has decided that Zoey is the specialist little snowflake to ever fall from heaven, so she’s going to be Nyx’s ‘eyes and ears’ in the real world.
This is an idea that even Zoey doesn’t think is good.
This chapter, we’re going to meet some people who I hate and have some smug conversations.
I want to go back and read Twilight.
That is how bad this book is, guys, I like Twilight better than it. Bella is a less obnoxious character. And…honestly…the world has more internal consistency.
So, the chapter begins with some Cherokee song that sounds really, really poorly translated. Now this could be a good touch. For instance, Zoey could say that it was a lullaby that she used to be sung as a child. Or at least we could get the significance of the song at some level. However, we don’t really get a reason why the song is being sung or what the song actually means, just that it’s old. As such, it’s not something that I am particularly invested in. It’s just sort of there to remind us again that Zoey is part Native American, and I’m supposed to be impressed by this for some reason.
“I’d felt so crappy lately…except I couldn’t remember why. Huh. Odd.” (43)
Ok, so this is a POV problem right here. I’ve mentioned it a few times in this blog, but first person, while a strong point of view that allows the reader to get a very close insight into the character, has a few problems. The first is the fact that it’s extremely limiting. You cannot narrate anything that happens outside of the character’s point of view, and another is that, while it’s completely possible to narrate something that happened that a character won’t remember in third person, doing so in first is a whole lot trickier. How is it that Zoey, who narrated the whole thing, not be able to remember what happened to her? If she doesn’t remember, then how are we getting the details of this? When is the story being told? If this was first person, present, it would actually work better, since it’s been told as Zoey is experiencing something.
Get used to it though. This is one of the Casts favorite narrative tricks, and it is incredibly annoying.
Tumblr media
Granny’s voice keeps singing, and Zoey finally remembers what happened. Now, I could say that this excuses, the whole ‘forgot thing’ but it really doesn’t. If she’s going to remember, devoting attention when all you’re saying is “for a moment, I couldn’t remember what was going on or why I was there” in a fancy way is a waste of time and the reader’s attention.
It’s also, as always, really awkwardly written. \~/
Finally, Zoey remembers that she’s turning into a vampire and wakes up.
And we are introduced to the character that I hate most in this series, and who I honestly consider the worst human being in it: Granny Redbird. I despise this woman. But you better get used to her. The Casts seem to have decided that Granny Redbird an example of a supportive adult, despite the fact that I could build a pretty strong case to claim that she’s essentially using Zoey to hurt her daughter for deciding that she didn’t want to subscribe to Granny’s weird little variant of the Cherokee religion. Also, when I say “supportive adult” what I mean is “adult who gives Zoey absolutely everything she wants because she’s just that special”.
As I said before, she reminds me of my maternal grandmother, and that’s not a good thing. Still, as a reminder, judge her actions for yourself. I’m biased.
After a touching moment that would likely mean a lot more if I cared a wit whether or not Zoey lived or died, Zoey asked where she is and what happened, and Granny tells her that she found her unconscious covered in blood, and that her grandmother was scared out of her mind and “so pale that [her] dark crescent seemed to glow against [her] skin” (44).
The Casts are subtle!
And then we get into what I hate this woman. In a very abrupt shift in tone, and with absolutely glee on her face, Grandma tells Zoey that she called Zoey’s mother to tell her that she was taking Zoey to the House of Night, but hung up when Mommy started sounding upset.
Without her permission.
Now, if Grandma had been upset and angry with her daughter for putting Zoey in danger and not behaving like an adult to doing what was best for her child, I would understand. If she was angry that Mommy was so concerned with either what they neighbors were going to say or the fact that she was a vampire, it would make sense and have parallels to several parents who have, for some reason or other essentially abandoned their children. But she’s not. Granny’s acting like it’s a joke. She’s pleased that she’s got this chance to rub the fact that she’s a better person in her daughter’s face.
This has nothing to do with Zoey. Given how quickly Grandma’s attitude shifts, it almost seems that, after showing Zoey that she was worried, her real emotion shows. This happiness doesn’t stem from the fact that her beloved granddaughter is still alive, it’s coming from the fact that she’s one-upped her daughter.
Tumblr media
Moving on.
Granny asks what Zoey was doing out in the daylight, which is honestly a very good question, but also asks why Zoey didn’t tell her earlier. Thankfully, this particular weird question is there for a reason since after Zoey explains things from her side, Granny says just climbing out the window to look for her doesn’t make sense.
Which is true for reasons that Granny hasn’t said. I’m going to need to pick that little monster apart so we got a long quote.
“I know,” I sighed. “I can’t believe I got Marked, either. Why me?”
“That’s not what I meant, baby. I’m not surprised you were Tracked and Marked. The Redbird blood has always held strong magic; it was only a matter of time before one of us was Chosen. What I mean is that it makes no sense that you were just Marked. That crescent isn’t an outline. It’s completely filled in.” (45)
First of all, the two word sentence ‘why me’ should be banned in fiction. I hated it when it was used by Garion in the Belgariad, I hated it when it was used by Eragon in Eragon, and I hate it now. It is the most self-pitying, whiny drivel for a main character to say. Even in Tolkien, when Frodo Baggins comes pretty close to it, Gandalf, though kindly, tells him not to think like that.
So, next comes the fact that Zoey’s mark is “now a completed crescent moon, filled in perfectly with the distinctive sapphire blue of the vampire tattoo” (45).
Tumblr media
Where do I start?
The Casts are trying hard to justify Zoey’s existence as the main character by quickly making her ‘special’. They’re giving her all the trappings of someone who matters, from Nyx praising her to her tattoo, magically being filled in, which apparently means she’s more mature or something. According to the little guild book (which looks terrible, let me tell you) it means that the change is complete, which is something that shouldn’t happen for four years. All of this is to show us how unique that Zoey is. This is actually a pretty common tactic of new writers. They try to show how interesting the character is by giving them interesting powers.
However, the largest problem with this is actually Zoey herself. She’s got all this specialness dumped on her, but at the same time, there’s nothing about Zoey herself that is particularly interesting. She didn’t earn these powers from my view. She hasn’t done anything particularly brave, particularly mature, particularly kind or even noticeably different than anyone else. She’s not even sympathetic. 
This is, of course, a problem with Mary Sues in general. One of the things that actually makes them into Sues is that, at some level, the focus is on the cool powers and abilities that the person has, rather than who they are. The Sue herself is honestly a pretty empty character. There is no amount of interesting powers or plot points that make Zoey special that will make me support her. Zoey has to be someone I would support even if she didn’t have those traits.
Another problem has to do with plot related issues. The Fledging Handbook gives a lot of medical jargon that attempts to prove that it’s not just magic, and there are biological things happening. The problem is that if Nyx decided to speed up a biological process that the book flat states will cause damage as her entire physiology is changed, there will be more damage.
And, of course, that’s another major problem with a Sue. They don’t suffer consequences for either they actions or the price of whatever power that they’ve gotten (unless the author thinks it will garner sympathy).
So, yes, there are major problems.
Zoey looks at herself in the mirror, and we get to learn that somehow, Zoey’s eyes look bigger and her skin is paler. So, apparently, Meyer wasn’t the only one accidentally said that being a vampire makes you white. Good to know. We also are told how exotic looking the tattoo looks, which, given a picture of it, either looks like a bad photoshop job or like she put a sharpie on her forehead and drew a moon.
Not particularly exotic. Though she looks more like Sesshomaru now.
She is unhappy about the change and does ask what’s going on. And someone out of the blue says that that is what they were hoping that Zoey would explain.
And it’s a very pretty woman. I know this because Zoey spends a good page telling me just how gorgeous this woman is from her “huge, almond-shaped eyes that were a deep mossy green” (46) to the fact that “her body was perfect” (46). Basically, she’s got red hair, green eyes, and boobs. Zoey is very sure to point out that she has boobs.
Also, because Zoey is an awful person, we’ve got this…charming line:
“She wasn’t thin like those freak girls who puked and starved themselves into what they thought was Paris Hilton chic (“That’s Hott.” Yeah, okay, whatever, Paris)” (46).
*takes a breath*
Tumblr media
 You know what, P.C., Kristen? You’re both repugnant. This entire sentience and thought is repugnant. The fact that you are not only mocking young girls for having unrealistic standards for their bodies and the fact that they are harming themselves to meet them, but also calling them freaks for doing so is disgusting. You both should be ashamed of yourselves and of your nasty little troll of a character.
The fact that you’ve put this little monster up as someone who should be admired disgusts me.
At least John didn’t insult Zoey or her sister or her mother for their bodies.
Tumblr media
So. Moving on. Zoey has a crush on this random woman. That was the point. A crush that Zoey takes pains to insist is 100% straight not-that-there’s-any-problem-with-gay-people-one-of-my-friends-is-gay.
The woman smiles, and Zoey mentions that her teeth are “amazingly straight, white teeth—without fangs” (46) but she’s got the crescent moon on her forehead. That makes her a vampire. Not the fangs or anything traditional.
Cast Ladies…why didn’t you just make your vampires witches? You clearly want to talk about Wicca and magick and such. Why not just go the whole hog?
So, the vampire tells Zoey that technically she hasn’t changed, but the completed mark is still on her forehead, which blows everything the manual says out of the water, and should have killed Zoey anyways.
The woman says that having this happen is to be considered an good omen, and while Zoey flounders a little, Granny jumps in and introduces “the High Priestess of the House of Night, Neferet.” (47)
Neferet? You know, Nefertiti? Famed beauty of Ancient Egypt? Wife of the infamous heretic Pharaoh Akhenaten? The vampires of this world sure are humble.
Neferet greets Zoey as ‘Zoey Redbird’ and Zoey points out her last name is Montgomery. But this name is too normal for our Sue. Neferet basically tells her that this is the chance for her to make a new start and make choices she couldn’t before. Which basically means this is a time to choose her name. This also means that she’s legally an adult apparently, but that’s a can of worms I’m going to bring up later.
Now, I’ve seen this idea worked with before in the Skullduggery Pleasant books. When someone started working with magic, they got the chance to make up the name that they’d be known as by the magical community. And the book went into the problems that came from teenagers change their names. Because teenagers choose names that sound cool at the time, and then they need to live with the cringe. This book has plenty of names that their owners will…regret. Zoey, for once, shows some moderate intelligence and just goes by Zoey Redbird.
Zoey gets a melodramatic welcome to her new life, and she tries to shake hands, but Neferet grabs her arm instead, which is “weird but somehow felt right” (47).
Ten bucks says that this is how Amazons greeted one another or something in this world, and Zoey’s just magically in tune with it.
And then we get this paragraph:
“Her touch was warm and firm. Her smile blazed with welcome. She was amazing and awe inspiring. Actually, she was what all vampyres are, more than human—stronger, smarter, more talented” (47). (There’s more but I’ll get to it later.)
First, we get it Zoey. You want to marry Neferet. Second, Note the final sentence. I’ll write it out for you again.
“Actually, she was what all vampyres are, more than human—stronger, smarter, more talented” (47).
Right here is the core problem with this series. It’s not Zoey, though she’s pretty close. It’s not the other obnoxious, insensitive, and otherwise awful things that happen. Right here is the core problem: the Casts have admitted to us that they think that their vampires are better than humanity. Therefore, everything that they do should be seen as superior as well. So, there is no way that we can see anything wrong with the vampires as their own flaws. We’re supposed to see them as an ideal of how we should want to act. After all, they’re better than human. This is not just about a single Sue. This is about a Sue species, and the Casts, like Stephenie Meyer, can’t imagine why we would think that they were anything other than perfect.
And this honestly sets her vampires up for failure since now every flaw isn’t something that can be gotten over, it’s something that I’m supposed to like, and see as a good thing. The fact that the vampire society is actually in some ways more sexist than modern society is supposed to be seen as good. The utter indifference that the vampires have to the potential death of the children that they’re teaching is a good thing. The utter distain for humanity is something that I’m supposed to agree with.
This also is a plot hole. Again, are the vampires an oppressed minority facing unjust biotry or are they so much better than us that there’s nothing we can do about them so that the hatred against them is totally justified? For someone to be oppressed there as to be something that the oppressor has over them. Vampires not only have the desirable jobs, but honestly don’t seem to suffer much other than fear and a lack of understanding. They have magic powers, immortality and influence. People have every reason not to trust them, and if the vampires are smarter, better, and stronger than us, then humanity has a good reason to view them with nothing but suspicion. What’s to stop them from enslaving us as a sort of breeding population for new vampires?
Seriously, given this kind of power, what’s to stop them from using it?
Tumblr media
Of course, the Cast Ladies either didn’t think about this or really don’t care.
So, let’s move on the rest of this paragraph, shall we?
“She looked like someone had turned on a blazing inner light within her, which I realize is definitely an ironic description considering the vampyre stereotypes (some of which I already knew were totally true): they avoid sunlight, they’re most powerful at night, they need to drink blood to survive (eesh!), and they worship a goddess who is known as Night personified. (47)
One of these things is not like the others.
So, this is clever. They’re very carefully setting their own little idea of goddess worshiping as part of what makes a vampire a vampire. You notice that it’s in the end of the sentence as well, so it’s sort of being slipped in at the end along with the actual ‘stereotypes’. However, I would say, as a writer, it is dangerous to make religion so important to a species. Are there vampires who are atheist? Who retain their old religion? Why not? Is the religion enforced?
Since Zoey’s experience seeing Nyx is treated as if it is rare, then the Casts can’t even claim that people convert due to the personal experience.
Now, there are three potential ways to handle this question. The first is that Nyx chooses people who are likely to believe in her to be vampires. The second is that the vampire transformation also involves brainwashing. The third is that there are several underground religions being practiced and people staring emptily into space during services, but the Nyxian religion tends to suppress and oppress anyone who doesn’t believe like they do.
Zoey finally comes to herself and says it’s nice to meet her, and then Neferet tells Zoey that she’s special.
Or rather she says how she’s never seen a fledgling (as they call baby vampires who haven’t…I don’t know popped or something) come to them unconscious and with a completed mark. I’d buy the completed mark, but unconscious would probably be common, given that this is supposed to be a life or death situation, there are probably cases where the unfortunate kid is far away, and it takes a long time for the parents to get them there.
Neferet asks if Zoey remembers how she got there, and Zoey opens her mouth to say what happened and then
“I got a weird feeling, like someone had just hit me in the stomach. It was clear (there should be a semicolon here) and it was specific,(that comma should be a semicolon too) and it was telling me to shut up” (48)
Tumblr media
 ...
I hate feelings.
This is probably one of the standard laziest conventions of writing. Don’t want the main character do divulge information that you don’t want them do but is totally within their character do to so? Have a character be thought dead, but you want the main character to believe they’re alive for no reason? Want to have the main character trust someone despite their being shady? Just give them Feelings! 
The reason that I hate ‘gut feelings’ or whatever isn’t that they’re not real. If you listen to a lot of things like ‘Let’s Not Meet’ you’ll read about a lot of times where that sinking feeling either saves someone’s life, or is the precursor to a very bad time for the writer. The problem with it in literature, is that it gives the writer an excuse to have the main character peek at the plot’s outline. They just ‘know’ that a certain character can or can’t be trusted, or they can sense that a character isn’t dead and so on. It’s a way to protect the character from bad choices, make them make the right choice, or show how right they are when the writer can’t think of anything that might work.
Because Zoey, normally, would tell Neferet, and then Neferet, being evil, would have done something, but the Casts, can’t give Zoey any real reason not to.
They’re apparently too lazy to even have Nyx go ‘btw don’t tell anyone ‘bout this for a while, k?’
Now I know that it’s supposed to be a hint that Nyx is working with Zoey, but that’s just as dumb.
Also, I wonder if Neferet is the villain. Uh-oh, I’d better not give away the ‘plot twist’. Seriously, Casts, if you’re going to give me a shocker villain, try not to have the ‘bad feeling’ the moment you meet her.
Anyways, Zoey lies and says that she can’t remember, and:
 “I wanted to look away from the sharpness of her green-eyed gaze, but the same feeling that was ordering me to be quiet was also clearly telling me that I had to keep eye contact with her, that I had to try really hard to look like I wasn’t hiding anything, even though I didn’t have a clue why I was hiding anything” (48).
Tumblr media
This is just pathetic.
As a word of advice to writers. You don’t need to do this. You don’t need to sit there and bash readers over the head with what is happening. Most readers aren’t stupid. They really did catch the what was happening the first time.
Also, again, twist villains are twist villains because they don’t give any indication, outside of very subtle ones that you’ll only catch on a re-read that they’re twist villains.
What’s dumber is that Neferet has no reason to think that Zoey’s lying. She’s been all but drooling over Neferet from the beginning. This is silly.
Anyways, Granny mentions that memory loss is a sign of head trauma (obviously, though if that’s the cause Zoey should be seeing a doctor, not that these guys believe in those) and Neferet agrees really fast and her face stops being sharp. And she assures granny that everything’s going to be fine, calling her ‘Silvia Redbird’.
Zoey relaxes at this point because clearly anyone who likes Granny is a good person.
Seriously.
It said so in the text.
Morality is now defined by whether or not you like a random old woman who might or might not be a horrible person. Oh. Right. I guess I’m evil now according to this book.
Whelp, I’m a Catholic, so I guess that’s a given.
Neferet asks if Zoey wants to see her new roommate, and Zoey, still feeling misgiving, agrees.
“‘Excellent!’ Neferet said. Thankfully she ignored the fact that I was standing there like a smiling stupid garden gnome” (49).
Tumblr media
…I…have surprisingly little to say to that. I just…sort of wanted you to read it. And be as vaguely confused as me.
Granny is a little nervous about this and asks if Zoey shouldn’t be in observation for another night. Given that she’s just said she’s had a concussion and is experiencing memory loss, this is something that should be done. Neferet, being a jerk, dismisses any natural concern and says Zoey’s naturally healing. Because vampires are awesome.
So, Neferet smiles at Zoey and Zoey smiles back even though she’s uncomfortable.
“It seemed like she was genuinely happy that I was there. And, truthfully, she made me think turning into a vampyre might not be so bad” (49).
So, this is the Casts trying very, very hard to make it sound like everything’s fine and this was a false alarm so that they can later claim that Neferet was a shocking plot twist. The problem is that all that this really does is make Zoey sound stupid. There’s no reason for her to trust this woman, she’s been taught all her life that vampires are dangerous. Why does she allow herself to go along with this and trust her other than being stupid?
However, Zoey just assures Granny that everything’s fine, and realizes that, honestly she does feel better.
It took her that long to realize it.
Neferet, for her part, also assures Granny, giving her “solemn oath” (49) that Zoey is safe and gives the information that fledglings are paired with a mentor who is an adult and promises to be Zoey’s mentor.
I wonder if this is part of her plans.
Also, while she acts like this is a good thing, she doesn’t explain what this means. What does a mentor do? Are they supposed to be emotional support? Teach them ethical means of getting blood? Act as a sponsor into vampire communion like in the Catholic Church? What?
But Neferet does a salute with her fist over her heart and bowing. Now, I’ve researched this, but apparently, this doesn’t actually come from anything. I’ve seen it in fiction, as something amazons did, as something Martians did, as something Trojans did. I’m going to bet this is something that the Casts read in something like MZB and decided that it sounded cool, and they trace it to Amazons. Granny does the same thing and then hugs Zoey and tells her to call and leaves.
So, I’m going to remind everyone that Granny essentially kidnapped Zoey and took her here without her parents’ permission, and apparently the laws so favor the vampires that there’s nothing that they can do about this. Zoey is now completely cut off from the outside world with only people who believe in the same thing for company.
And this is a good thing.
Neferet asks Zoey if she’s ready for her new life.
I would pay, right now, to see an angry main character. Someone who was taken from a family she was happy with, saddled with a destiny she didn’t want, and angry that everyone seems to think that this is a ‘new life’ and she’s been ‘chosen by the Goddess’. I’d pay to see resentment, fear, but all we get is…this.
“I looked up at her and thought again how amazing she was. If I actually Changed into a vampyre, would I get her confidence and power, or was that just something only a High Priestess got? For an instant it flashed in my mind how awesome it would be to be a High Priestess” (50).
Did you feel that hammer pound your head? That’s called foreshadowing.
Now, there are several things wrong with even these few sentences. The first is the simple fact that only a few minutes ago, Zoey was scared of this character. Now, we’re expected to like her again. The second, obviously, is the High Priestess garbage.
Tumblr media
Casts, you don’t need to tell us how the story will end on the fifth chapter of the first book. It’s really kind of sad, and a little insulting to your readers. They don’t need this level of spoon feeding. What’s more, even though Zoey claims that sanity returns and she’s just a confused kid, she’s already come off as more than a tad arrogant. Finally, this whole thing comes out of nowhere and doesn’t help to make Zoey’s final claims of being nervous sound true.
If she’s fantasizing about being the High Priestess, she’s not that nervous.
But she claims, when she says that she is that she’s glad that she sounds more confident than she feels.
And that’s the end of the chapter.
This was a necessary chapter, given that it introduced the villain Neferet, but the foreshadowing was far too ham handed, the writing is still painful, and Zoey flips around from being scared to impressed to forgetting that she was scared. I wish I could claim that this was Neferet’s powers or something, but it’s not. Zoey’s just dumb.
Anyways, next chapter we get sexual assault! But that’s fine before it’s girl on boy, and we’re fighting the Patriarchy™!
Tumblr media
Wish me luck.
12 notes · View notes
awildoliveblog · 4 years
Text
Let me introduce myself.
My name is Misty Gorley. As my little bio there says, I live near Austin with my grandmother, my cats, and way too many houseplants for our small house. I am enrolled in courses in herbalism and horticulture and love clean, natural living. But my deepest love is for Bible truth and prophecy, which will be my main focus here.
My grandfather was a pastor with the Assemblies of God. He died this past Thanksgiving, which is why my grandmother and I moved in together, and while we were preparing his funeral, it occurred to me that I have quite a legacy to live up to. Growing up I watched him be a real pastor, the kind that truly loved Jesus and people. All people. Any people. It didn’t matter who you were or what you did. He had an encouraging word and a smile, actually usually a laugh, for you. It didn’t matter what time it was or what you needed, he was there to help and pray. And he loved God. I have never known another man with such a love for God. Even toward the end, when his dementia had completely clouded his mind and taken away all the other aspects of his own personality, his love remained. I would take them to run errands every Friday since he could no longer be trusted to drive, and he was so excited to see people, and he was still telling them how much he loved them, how much God loved them, how God had worked in his life. He once told the crew and customers of the local Firestone as we left after a group conversation about God that he had started, “This may sound crazy, but I am not crazy. For God so loved the world that He gave His only begotten Son! And He loves you *pointing at one*, and you *pointing at another*, and you *pointing at the last*.” That was my Pops.
But my family moved and went to churches other than my grandfather’s with pastors not like my grandfather at all, and some discontent set in. And once I hit my late teens, I started having questions about the theology I was being taught. Don’t get me wrong. I have always believed that God is God, that the Bible is His infallible word, that Jesus was His Son come to save us. But I started having questions about specific doctrines. Nothing could ever be explained to me truly logically. One verse pulled out of context would be used to prove a point that other verses I would find in the Bible would contradict. But the Bible can’t contradict itself, can it? And why did the Bible feel so disjointed and random? How did it all tie together, all the passages we’re so familiar with and the very obscure, heavily symbolic passages? No one could ever explain those. There was always an attitude of, ‘Misty, these are spiritual things. They are high above us. We will understand them once we get to heaven.’ But wasn’t the Bible given to us for our edification here on earth? So when I was 18 I stopped going to church. It just seemed to be a social club that would gather for some hyper-emotionalism a couple of times a week and call that a relationship with God and then disperse to live and eat and entertain themselves just like everyone else the rest of the week.
I had begun to have health problems that the doctors couldn’t explain, even if they bothered to listen to me, and those led to an inability to work full-time. Eventually I got a diagnosis of brain injuries that had drastically impacted my endocrine system, and I went into treatment, which ended up putting me in full bed-rest. I had finally gotten to the point in 2016 where I was asking God, ‘What do you want of me?’ Several years before my mom had started watching a channel on her Roku called Amazing Discoveries. Their tagline mentioned Bible prophecy, which she had always had a deep interest in. She mentioned it to me a few times over the years, but never pushed the issue at all, and I never gave it much thought. But once I started asking God what He wanted me to do, all that would go through my head was, ‘Watch Amazing Discoveries.’ I would ask again and again, and that’s all I would get.
So I finally did. And wow! My mind was blown! Here were people teaching the Bible logically! It was an approach to the mind, not the emotions! I mean, one of my favourite verses has always been Isaiah 1:18: ‘Come now, and let us reason together,’ says the Lord. True, we are emotional creatures, and the beauty of the truth will elicit a deep emotional response, but our culture has become too dependent on how we feel instead of conforming our feelings to the truth. I was learning that many of the doctrines I grew up with aren’t actually biblical and that verses were being pulled out of context to ‘prove’ points that other verses in the Bible contradicted. And here these teachers used the entire Bible, from the front to the back, and everything lined up and fit together and made absolute, perfect sense! Their position of sola scriptura, the Bible and the Bible alone, was the most legitimate that I’d ever found. Using the Bible only, letting it define and explain itself, they explained all of the symbology. If you had asked me before, I would have said I knew the Bible. I had read it and studied it, but now it felt like I had found the key to the code. It all opened up before me, and I fell in love with the Bible! I had always known the Bible was important. It was necessary. It was God’s word. But wow! This was something else altogether. It was beautiful! It was deep! It was powerful! It was consistent!!! And it was repeating two things over and over and over. God loves every single person, and He has a definite specific plan that has been acted out over the millennia to save everyone who is willing to be saved. Which I always knew, but not like this. Spiritual matters always felt so nebulous and airy fairy and far away, things removed and remote and bigger than I was allowed to grasp, but once I read the Bible for what it was really saying, I realized that the whole thing is meant to be understood, and it is telling one story. Just one simple story! A story of how a world was subjugated by a causeless rebel who wants to destroy it simply because it is loved by a God that he hates and wants to replace and how that God, unwilling to live without us and loving us more than His own life, enacted a brilliant plan to free that world. That plan will very soon be coming to its finale. It is so close, and I have to be part of sharing that solution with as many people as will hear!
Once she knew I was watching Amazing Discoveries, my mom was thrilled. If you ever wanted to know a person who devoted every aspect of her life to God, that was my mom. Her perspective was so firmly rooted in God’s Word that she was a joy to talk to. And that was her name, Joy. And that was her character. She was full of joy and love. She never turned her back on me, no matter how difficult my situation got, and she stood by me faithfully, even though she was called naive and foolish by some. We would talk for hours about the beautiful truths we were learning. It was one of my favourite things to do, talk to her. Her number one desire was to share these truths with as many people as possible. After my grandfather’s funeral, she came down with what seemed to be a virus, but when it hadn’t gone away after several weeks, we went to the doctor on January 3. It turns out that it was stage 4 breast cancer that had metastasized to her liver, and she went downhill fast. She died on January 29 of kidney failure at the age of 58.
I thank God that I had such a wonderful mother who taught me so much. I have learned about true self-sacrificial love. I have learned about full dependence on God. I have learned many things about myself, areas I need to change and areas where I’m stronger than I thought I was.
And I have realized on a deeper level than ever before that my grandfather was always spot on in his main focus: Everything is about God’s love. All of those deep doctrines and theologies and sciences, that’s what they’re all saying… Love! I love and spend a lot of time on studies into all of those things as much as I can, and I’m always amazed at how they all boil down to love. God is love, perfect agape love, and that is the point of the universe! Period. The beautiful truths I have learned combined with the legacy Mom and Pops left me means that I have a responsibility to continue sharing the love of God, and so I am starting this blog. I cannot promise to be an extremely faithful post-every-Wednesday kind of blogger. Some weeks may be tougher with too much brain fog to write a coherent post. There will probably be times where I have to tell myself, ‘Misty, normal people don’t have time to read two posts a day…’ But I have so much that I’m excited to share, and I hope you’ll join me in a joyful celebration of the beauty of God and His word! (I promise not to post two times a day…)
Let’s be eager to leave what is familiar for what is true. ~ Francis Chan
My feelings are not God. God is God. My feelings do not define truth. God’s word defines truth. My feelings are echoes and responses to what my mind perceives. And sometimes – many times – my feelings are out of sync with the truth. When that happens – and it happens every day in some measure – I try not to bend the truth to justify my imperfect feelings, but rather, I plead with God: Purify my perceptions of your truth and transform my feelings so that they are in sync with the truth. ~ John Piper
That which can be destroyed by the truth, should be.
0 notes
Note
Say at least one bad thing about every primarch, plus the emperor if you want. Maybe even the other custodes too if you're feeling like it.
*Sips Hot chocolate and pulls out a piece of paper.*
I.  “Despite his knightly demeanor and all his talk of honor and loyalty, The Lion was far too willing to keep secrets, even when he could and should have told the truth.  He believed he should have been chosen Warmaster simply because he was the 1st primarch ever created.  He was unable to  relate to mortals and even his own Legion.  He demanded respect and obedience, but rarely gave it to others, even his own brothers and adopted father.”
II.  REDACTED (They made the mistake of facing me, they should have fled and lived a little longer. Not that they could have escaped the Ten Thousand and I.)
III. “For all his talk of perfection, Fulgrim failed to see the perfection in humility and doing his duty,   All he ever wanted was glory and adoration. He wanted everyone to  sing his praises from the highest mountaintops and the lowest of gutters.” 
IV “Perturabo never should have been given command of a legion.  Like Fulgrim he wanted praise and glory for his achievement.  While paranoia is a strength, Perturabo saw criticism and enemies everywhere, even when it did not exist and even among his own family.  He believed Rogal Dorn was his rival but this rivalry  was a product of his own deranged mind.  His treatment of his Legionaries was sick and disgusting,   While victory cannot be achieved without sacrifice, Perutrabo murdered one in ten of his own legionaries when he was reunited with them, simply because they did not meet his achievable standards.  He spent their lives like a spoiled prince spends gold,  War was never a necessary evil for him, it was an equation and a bill at his doorstep,  One he was too eager to solve by spending his own son’s lives.”
V “The Khan was always a mercurial  soul. A paradox.   Reckless one moment, overcautious and dawdling the next.  A bloodthirsty hound and a diplomat.  A admirable, cultured and philosophical man, and a barbarian that mounted the heads of his foes on his jetbike,  In his desire to not be a tyrant, he neglected discipline and too many White Scars considered becoming traitors, yet in his widsom, he granted them atonement through battle. In short, he traveled down many paths,and ran off the road constantly,  Thankfully the one road he stayed on was one of loyalty.”
VI  “ Leman,.. Like Dorn, I admire him for his steadfast loyalty and envy him for how simple things are for him   Simply tear the Emperor’s enemies apart and follow orders like a good little corgi.  Yet, he is a hypocrite, He claimed his Rune Preists used the power of Fenris, when one could smell the musk of the Warp on them a mile away.  The culture of Fenris may have saved the VIth legion from  tearing itself apart, but it was anathema to the Imperial Truth.  He always assumed the worst in Magnus and that he was always right,  So self-righteous, so  eager to charge with his axe raised high.  So changeable. One second he’s offering you  a tankard of Mjol, The next, you’re head’s been removed and being chewed on by one of his wolves  and he’s bedded your wife, cousin, sister and daughter at the same time. He always chose the most violent and direct option, even when diplomacy might have prevailed.  If I  had brought a leash for him, perhaps Prospero might not been destroyed,and the handful of innocents on the wretched rock might have lived.”  
VII  “I admire Dorn  for his refusal  to compromise his ideals, his honesty and his zeal.   I wish I shared his idealism.  But his refusal to compromise is his greatest weakness.  He is more stubborn than a mule.  He would rather win a moral victory and lose the tactical war than make a hard or dishonorable decision that keep you up at night.  In addition he will not accept that  Arlette will not let him fortify the Tranquil Courts.”
VII  “Konrad Curze  refused to  accept help for dealing with his visions dammed him.  He saw only one way to bring justice, through fear.  The Night Lords were a necessary evil, but under him they became nothing but a band of criminals, He claimed to be a bringer of justice.  A rather bold claim when one skinned men, women, and children alive.”
IX. “Sanguinus was compassionate and empathetic, but he never saw humans as people, he treated them like pets. For all his humiltiy, he basked in thier admiration like a tanner in the sun,  Some part of him he refuses to admit enjoy’s how they view him   He was too idealistic, and like Dorn refused to compromise on his ideals when it would be necessary.  He was also  surprisingly short tempered and hateful on  occasion.   I’m not sure if he knew this, but to some of the Silent Sisterhood, he came off as Misogynist.”  
X “ Ferrus Mannus was incredibly short tempered.  For all his and his legion’s cold-hearted and automata like behavior, he emotions collared him and kept him on his knees like a slave.  He said he would purge the silver from his hand and ban the voluntary cybernetics of the Iron Tenth when the Great Crusade was done, yet if he had the strength he boasted so much of, he would have done it already.  if he was logical  as he claimed to be, he would not have died on Isstvan V.”
XI [REDACTED]
XII.  “Although Angron would not accept it, I pity him.  The Emperor should have let him die.  The Butcher’s Nails have stolen any chance he had for  a happy life, Yet the Butcher’s Nails does not excuse  forcing them to  be implanted them in his men.”
XIII “ Roboute is a statesman second only to Malcador.   What he has done with Ultramar is nothing but remarkable. However, his obsession with control and efficiency, and his idealism, means everything must conform. Everything must be right or it will all fall apart.  He cares for mortals, but like Sanguinius he believes he is their better and knows what’s best for them.  Like the Lion, he demanded respect and obedience, and while he did earn it from his subordinates, like his brother, he had scorn for those who disagreed with his vision and banished them from his presence like the nobleman he denied he was.  One can look no further than the 22nd chapter of the Ultramarines.  These men are Destroyer’s and primarily Terrans from the old XIIIth legion.  Many of their number also come from Ultramar and their Chapter Master is from  the 500 Worlds. Yet the 22nd has a distinctive and unique culture that makes them stand out among the XIIIth ad other legion’s Destroyer Corps.  Gulliman has made his dislike of Destroyer’s weaponry well known and their culture does not fit into his idealized view of his Legion , so he keep them at arms length like a red-headed stepchild. “
XIV.  “Mortarion’s  dislike towards Psykers, while justified due to the abuse of his foster father and the suffering he inflicted on him and the people of Barbarus, does not excuse his blind and irrational  hatred for all of them.  In addition,  he lavished his affection on the legionaries from Barbarus and disbanded the Librarius of his legion.  This made the former Librarians feel like illegitimate children.   Mortarion was a prideful as Fulgrim, and could not accept the fact the Emperor had to save his life. When Mortarion spat on his oaths, he became the very thing he and the old XIVth legion swore to destroy,  a tyrant with a callous disregard for life.”
XV “Magnus was arrogant. He believed himself superior to his brothers because of his abilities. He was a glutton for knowledge, but for all of his knowledge, Magnus was not very wise, and in his folly, dammed our entire species.”
XVI  “  Horus… *sighs and takes a swig of hot chocolate*  As much as I hate to admit it and as much as I tried to turn a blind eye  to it,  Horus was arrogant and acted like a spoiled brat.  For all  his tactical brilliance, for all his humor and kindness, He graved glory and adoration not for his Legion or for humanity,  but for himself.   Like Fulgrim, he wished all to bask in his glory and sing his praises.  Horus wanted statues of himself, wanted people to prostrate themselves before him.  He wanted their affection and love and to say “Yes Horus you are so brilliant what would we do without you.”  
An old quote came to me regarding Horus Lupercal. “Veni Vidi Vici”    Horus Came, he saw galaxy and humanity, and wished to conquer it.  First for the Emperor, now for himself and his sick desires,”
XVII   Lorgar is complicated.   Arlette and I advised to Emperor to be merciful, when He censured him   After the II and XI, I could not bear to slay another one of His children, and Lorgar’s transgression  was nothing compared to  the horrors the II and XI wrought on humanity.    And I sympathized,  with him not wishing to be a warrior, to try and be something besides another warlord.  After all, when the crusade ended, and if Emperor’s safety could be absolutely guaranteed for eternity, i would live in a cave high in Himalzia with sheep for food and company and indulge in falconry and blacksmithing and toymaking and compose philosophical  treaties. I could venture down from  my solitude and strike down injustice and distribute candy and toys  to children.  
I was a dammed fool.
Like Leman, he was so changeable. He was like a child’s bouncy ball.  Except he was loyal and devout in  a misguided way, and than wicked, traitorous and spiteful, burning works and unleashing damnation with a smile on his face.  
Lorgar had such faith in Emperor, he deified him,  raised statues and built church’s all for Him.  Now he is devoted to the Primordial Annihilator and will do anything to please his gods.
If only he had such  faith in Humanity.
XVIII “ Vulkan’s Promethean Creed is an admirable philosophy.  He had a heart bigger than an Ordinatus and kindness, compassion and smiling all came so easily to him.  I envy him for his effortless kindness.   Kindness, compassion and smiling are all things the Ten Thousand must hone as much as our skills in  assassination and bladework.
Yet that compassion in his greatest weakness, Vulkan is not a warrior, he is a builder, a worker ant defending his anthill out of love. A blacksmith who forged all his creation but his weapons with pride.”  
XIX “ Corax’s goal of liberating those in bondage is an admirable goal. Yet for all his time spend hiding in shadows, he failed to  recognize necessary evils. On  a personal note, I believe this character flaw led to his Terran legionaries meeting an ignoble end.”
XX  The Alpha Legion began as a hammer in the shadow, another necessary evil.   Yet when  Alpharius took  control, they became a twisted serpent.  The old Christian devil in  the form of a Hydra. Alpharius was a glutton for complicated plots and schemes.  He is intoxicated on suffering and disorder.  He is like  Horus in the regard that all must know they were outsmarted by him.  All most know that as soon  as they sat down at the Regicide table with him, they were played like a damn fiddle.”  
Any complaint’s about the Emperor, I shall keep to myself.
Arlette and I may have our disagreements, but we have each other’s back.  
The only custodian I can complain about is Diocletion. He is quite frankly, a Dick.  Empathy and compassion are skills he must learn.  Time with the Ligo  Aetos and humanity itself will be his teacher. “
44 notes · View notes
margaritaris · 7 years
Text
(100 things) I have learned in my seventeen years of life.
1. Some of the people you think are going to be around forever, will not. Nothing in life is ever certain nor guaranteed. Cherish them and love them wholly and fully every single day that you can.
2. You are capable of just about anything. You can push your mind to unthinkable limits. You just have to keep pushing, even when you feel like you can’t. You are stronger and smarter than you think or could ever believe. You truly are.
3. If you view someone else’s behavior towards you as a reflection of themselves and not you, then you will truly learn to cease all.
4. Think thoroughly and check your surroundings before you say anything about someone else. Is it positive and will it benefit someone else to say it? If it’s not positive, it’s better to keep it to yourself in many instances
5. Schoolwork and college are not everything
6. Eat that damn taco
7. Your feelings are not irrational, you have the right to feel whatever it is you feel at any moment in time, do not let anyone tell you otherwise, as they do not take precedence or insignificance over or under anyone else.
8. You have to be hurt at times. It’s how you learn and experience and heal and grow.
9. Life is short but long. Life might be a happy medium of the two. Enough time for you to enjoy moments and remember them forever, but short enough to inspire you to live and experience it to the fullest.
10. There’s nothing wrong with being independent
11. There’s also nothing wrong with admitting that you need help, too.
12. Don’t ever be ashamed of the music you like.
13. Listen to your music as loud as fucking possible!!! 
 14. You don’t have to bend your morals for some else’s ideals.
15. Your pain does not have to be justified or simplified. You cannot compare your pain to someone else’s’ and say that you don’t deserve to be sad because someone else has it worse. That’s like simply saying that because someone has it better, you can’t be happy.
16. You can’t always control situations, but can always control as to how you react to them.
17. Your mental health is just as important as your physical health.
18. Just because someone is doing something differently doesn’t mean it is wrong. There is no wrong path to growing in life
19. Keep a journal or diary and write in it often. There will be seasons for remembering to write in it and seasons where you will forget. But you won’t regret coming back to it and seeing where you once left off, and seeing how far you have come in such time.
20. Jealously will get you nowhere. Learn to be happy for other people’s strengths, no matter how much you wish you had that certain strength or ability. Everyone is different. Be happy for their talents and happy for yours! Difference in people is pure diversity and that is what makes this world so colorful and abstract
21. Talk about the things you love more often than the things you don’t. It does no good to talk about things you dislike all the time and brings no peace to either person in the conversation
22. Say your prayers and pray often. Pray everyday. Pray before you make a decision, pray when you’re struggling, pray always. It changes things.
23. With growing up comes, of course, a stronger sense of maturity. Forgiveness, patience, and selflessness are three traits that are heavily learned, at least I had to learn and practice with through seventeen years of my life. I struggled with some more than others.. Some came naturally and others, took time and still take time to this day. Forgiveness is one of them that I had to work on because I can be pretty sensitive and stubborn at times. Don’t worry so much over quarrels or little arguments you may have with your sibling, dad, aunt, or even teacher or friend. They’re not worth sulking for hours on end over something so little unless it lies deeper and hurt a great deal towards a much larger issue. Otherwise, just rise and be the bigger person. Forgive those who trespass against you, as holding a grudge is one of the many poisons of life. Forgive and move on.
24. Your body does so much for you that you don’t even know about. You can either choose to be with or against yourself, and you are going to be in this same body your whole life, so try and treasure it as you can! It loves you.
25. Being stubborn all the time can lead to regret.
26. Don’t wish you were another age older than you are. You’re only young once, is it over yet? Because as much as you wish to be older, it still won’t happen until due time and you can spend this current time enjoying the age you are exactly and the things it has to offer instead, because soon enough you will be at that other age. So just enjoy what life offers you right now. Be present.
27. This is your life. Nobody else can be you, nor can you be them. Therefore, I’ve realized that you cannot dictate how somebody else chooses to live. You cannot tell them who to love, what to do, or what to believe in. This world is becoming such a diverse complex and people are voicing their opinions so often because times are changing and everyone clashes. What I personally believe is that everyone is entitled to love, and do whatever makes them happy, and by letting people do that, and live their life because you are living yours, is the right thing. You can’t force someone to believe in something. All you can do is encourage, not force. You must respect all people, even if you don’t understand. 
28. When someone says, “Love yourself” it isn’t as easy as that to just “love yourself.” I’ve learned it takes, and will take, many years and tears and triumphs and mountains to climb and experiences to shape and to cause you to fully learn to love yourself. But you can. You can love yourself in the moment, just as you are, as little as you maybe be able too. It’s all in your mindset. Sometimes it’s quicker for others, and others much longer. Everyone takes things at different paces and there is nothing wrong with that!
29. Cut your hair the way you want to. It will always grow back at some point
30. No text or call is worth the risk while driving. Never.
31. When curious for inquiry for yourself, the worst someone can say is no. But you never know until you ask.
32. Take the leap!!!! You never know what could lie on the other side of fear or doubt!
33. Kids, and teenagers, should be heard and not just seen. I’ve been shut out, and not allowed to speak or voice my opinions or put in my input because of my age. I believe that age has no boundaries for knowledge or experience. You become wise with experience, not age. And experience comes to you at all different times and cornerstones in life. A twelve year old could have more experience with grief than someone in their forties. You never know. So listen to the little ones, for they deserve it just as much
34. Dress up for as long as you can on Halloween. It’s a hell of a lot of fun and pride or a certain reputation won’t give you memories to remember or cherish when you’re old and gray.
35. Whether you like it or not, life goes on. After a terrible experience… life will still go on. The people surrounding you will continue on, and you will soon get back into the flow of things. Mending doesn’t always run parallel with things moving forward.
36. Drama is worth nothing. You either create it, or let it escape into your life if you’re constantly surrounded by it. Sometimes it just comes out of nowhere, but there is always a way to avoid it somehow, even if you can’t escape the people around you speaking it you can simply turn a blind eye and ignore it all with other thoughts. Either way, you can cut it out completely. But you have to make the conscious effort and choice. Not to say it won’t appear again, because it will, this is life, but you will always have the choice to ignore it and stray far from it.
37. There’s always a bend in the road.
38. Read very often. I’ve just now as of recently have gotten back into the joy of reading books, (I have read fan fictions so much before) and I’ve re-fallen in love with it.
39. How many friends you have do not define you.
40. Having one single person who understands you to the core and simply just loves you for you and knowing they would do anything on this earth for you and being able to call them your best friend, is one of the best blessings life could ever offer.
41. Wear whatever the heck you want!!
42. The world is going to judge you anyway, so do whatever the heck you want too.
43. Don’t be embarrassed to dance in public
44. Even the most kind and down to earth people you could know and meet, still will have darkly flaws. Nobody is perfect. People lose their tempers and everyone says things they don’t mean. It’s life, and you have to accept that humans are humans and are bound to do things that could seem terrible at times and they make mistakes. But it doesn’t make them a terrible person. Seeing a flash of a different side to a person you care for and knowing that is not who they are, does not mean they are any different than the person you know and love.
45. There is absolutely nothing wrong with being shy. If this is who you are, take strength in it. Silence does and can speak louder than words at many times.
46. Just because people have bad habits, it does not make them a bad person.
47. Take numerous photos and videos of anything and everything but remember not to, too. Admire things without a lens.
48. Not everything about life needs to be shared online.
49. You can learn things, and know them, but it takes one step at a time and patience to incorporate and remember them in your life. As I know all these things I am writing, I still make mistakes and trespass over the “do not’s” so often. But that’s a human for you.
50. Don’t worry about what your feed or social media looks like so much. Don’t worry about the perfect selfie or aesthetic if you don’t want too. It’s energy being wasted on the most unnecessary thing.
51. Don’t let adults try and deprive you of this generation and age. They may try and say that the music they hear now is garbage, and that people are too self conceded nowadays, but that’s not true. We take pictures of ourselves because self love is important and something that has been shifted underneath the rug for all the generations prior. Your parents had their unique generation and trends, and your grandparents sure thought the same thing your parents might think right now, so you are allowed to have your own time to blossom. Enjoy this time and don’t care about taking a selfie in public or listening to music aloud. Delve into the uniqueness of this time period! You’ll have many stories to tell eventually
52. You should never outgrow imagination. It’s a gift, and if you are able to imagine things you are very lucky. Sometimes, imagination could be your only comfort during hard trials
53. You’re NEVER selfish for doing something for yourself that you need. Self care is often taken and perceived as the object of selfishness. Don’t believe that for one second of your life
54. Visit elders. Visit your grandparents and great aunts and uncles often. They were young like you once too, but try not to worry much about thinking that you’re going to be that ripe old age soon because you’re not at the moment, and you must enjoy how you are now. It is not boring if you’d open up your heart. But you will be an elder at some point and elders enjoy the company as many are always lonely. Just ask them of their old days and watch them smile. It always brings peace to my heart and I’m sure it will to yours as well. Even they can expand your mind too if you just let them.
55. You’re going to have as good of a time as you make your mind up to be.
56. Do the most random acts of kindness you can anytime you remember, and also always remember to remind the people you care most about how much they mean to you.
57. Don’t rush driving if you’re not ready and only want to do it because everyone else is. You’ll have so many years to drive later on. Your teenage years aren’t even but a fraction of your life.
58. You don’t have to do everything at once.
59. Also, there’s no point in trying to have perfect grammar and spelling all the time
60. Tomorrow will always be a new day, with no mistakes in it yet.
61. People do not think about you as much as you think, in the sense of they do not judge you every single second of everyday. People are busy with their own lives to think of this so much, so don’t worry. They could be looking at you but trust me, they’re thinking of themselves a lot of the time in that mind of theirs
62.No person is worth changing yourself for. They need to be able to accept you in the midst of your storm. Let them walk beside you as you learn to love yourself, but don’t give them the benediction or power to morph you into what they want you to be. Let them walk beside you and help guide you but not drive you.
63. Not one single person and their opinion of you defines you. Ever.
64. Social media is but pure and best vanity. It is mostly, only the good pieces and things in people’s lives. You want to share only positive things, of course. But even in the photos or paragraphs people can share, it could still all be a mask to hide the pain. Don’t believe everything you see on social media, please
65. You don’t have to be sixteen and on a hardcore diet with an even more straining exercise routine. But also, if you truly want to do it for yourself and yourself only, then there is nothing wrong with eating as healthy as you want or exercising. It’s your life, do whatever will make you happy! Just know you’re still young and you’re beautiful just as you are in any state.
66. Do things that are genuinely good for your soul.
67. Be honest, but know when you can spare someone’s feeling
68. Learn to be okay with your own silence and your own company. It won’t then feel so lonely when you are alone at times.
69. Everything happens for a reason, no doubt about that one. I can’t seem to contradict it as every good and bad thing that has happened to me has placed me to where I am now.
70. Fighting fire with fire will never amount to anything or make anything better. You will end up saying something you regret, and you will feel inevitably worse in the end.
71. Know that you won’t ever know everything you need to know in life
72. Do not cut yourself short because you haven’t dated anyone or kissed someone by the time you’re seventeen. Remember, your teenage years are but a fraction of your life. You have many chances ahead of you and just because you don’t have someone now, doesn’t mean you won’t in the future. But in the meantime, enjoy yourself. Take your teenage years to explore and learn about yourself and strengthen your relationship with God, before you can with anyone else.
73. Not every soul will agree or like you. Don’t take it personally
74. Celebrating your birthday is not a selfish thing. It’s a blessing to have lived another year, remember that!
75. Pay for someone’s coffee or drink behind you if you can sometimes.
76. Give a smile, if it’s the only thing you can give, to the homeless. There are many stories about them that make people believe they are untruthful, but I have learned to not believe that to be completely true. They have nothing but the biggest hearts sometimes. If you can, give them a few dollars or maybe a small gift near Christmas. I try so hard to do this even if I’m not able. Giving is one of the most valuable things I have learned in seventeen years. You gain nothing but the comfort of knowing you helped someone, and that is beautiful.
77. Pay people genuine compliments. I’ve learned there’s no sense in giving a compliment that isn’t sincere. Always be honest but truly do give compliments as often as you can! It could be the brightest part of that someone’s day, even if it is hard to muster up the courage to tell them.
78. Don’t try to grow up faster than you are. You will regret it many times in the future.
79. Take other peoples opinions and views with grains of salt. Just because a certain person believes this something doesn’t mean you have to, too.
80. You can’t be her/him. You can’t look exactly like them. You can’t ever have their nose, or humor, or smile. But you don’t need it. And there’s no point in downing yourself because you aren’t like them when it’s nothing you can control. There is nothing wrong with having idols or inspirations, but you must not try to be them. Be you in all your ways. Have faith in yourself. You’re imperfectly beautiful and there are no standards that you have to own up to.
81. You’re allowed to be proud of yourself.
82. Nothing will and ever could be perfect. And not everything will always turn out as you envision it to be, so don’t be disappointed! It’s life and life has to be lived.
83. Tell your best friend everything. From the littlest, and most minor inconvenience to the best or the biggest embarrassment. They’re the one person in this world who isn’t going to judge you and will love you the same after all is said and done anyway
84. But it’s also perfectly okay to keep some things to yourself from people too. You’re inclined to that.
85. You owe not one single soul anything. You’re not responsible for them or their actions.
86. No means no. If someone says no, its means no. Leave it at that. And if you say no, stand firmly by that.
87. Determination is a great thing. If you’re determined, nobody can take that away from you. Never. You will carry this through the rest of your life and will benefit you so greatly. If you want something and love it, dive in determinedly and give it your all.
88. Don’t let grief suck you in whole. If you lose someone, let yourself grieve, but not completely forever. You have to move on… and it can feel wrong many times, as you think, “How can I feel happy for a sliver of a moment when they’re not here anymore?” “How can I laugh when they’re not here to laugh with me?” It will feel like that for awhile. But they want you to be happy as soon as you can be, and you have to move on. You have too. And there is nothing wrong with that, it is natural and you need to do so.
89. There will always be someone who cares and loves you fully.
90. Don’t ever be ashamed of anything that you love. No matter if someone tells you that it’s wrong or different or strange to them, it is not. Never.
91. Not everything has to be taken so seriously!
92. Don’t push away the people who love you because you don’t feel worthy. You are worth more than enough. A thousand times enough.
93. Hiding your insult with the excuse that it is an opinion is not okay.
94. You need to do whatever it may be for yourself, and only yourself. Using all of your energy to focus on changing for other people will do you no good.You must have the geunine intention that you want to do it for you and only you
95. Dogs and cats truly do give the best cuddles sometimes.
96. EAT THAT WHOLE OR HALF PIZZA AND THEN A CUPCAKE AND SOME ICE CREAM AFTERWARDS ALL BY YOURSELF HELL YEAH
97. Always smile at strangers.
98. Living in the past or looking ahead into the future always will drain you. Practice and do things that take your time and cause you to focus on the present.
99. If you can, take time to spend moments with your family. Do not spend all your time on your phone or electronics. Just don’t do it all the time, trust me. Instead of choosing to watch Netflix for the rest of the evening, spend it with your family. You’re so busy growing older that you don’t realize they are too.
100. Always have hope. Never lose hope. Even when the hardest thing to do is hold onto hope. Keep hope sheltered in your heart no matter where you go or what may happen to you, as life is indeed uncertain.
These are just some things that came to my mind when I pondered on what I have learned these many past years. Obviously this is not all of them and just what I have personally learned. I haven’t been excited about turning a year older lately, because the truth is I don’t want too, but looking back I can see all the knowledge I’ve gained and how blessed I am to be turning another year older. God’s given me more than I deserve.. and I am extremely grateful and happy for it. Here’s to the year of seventeen, wow!! Yaaaaaaaay!
27 notes · View notes
makayladunn1993 · 4 years
Text
How To Lure Your Ex Boyfriend Back Wonderful Useful Ideas
Most of the Magic of Making Up, by TW Jackson.So, attention all guys: Do not argue or bring up the goods?Well, if you were not armed with this girl, you'll probably make the right way.Use these tips will definitely fall in love with you too.
Raw emotion is not sincere, because you do this, you must get her ex back.Did you do when you should follow that plan you could send her text messages every minute?It's the consistent little things can make a fool of yourself, she will call you soon and you will not become a constant memory of exactly how to fix it.All you want to get back together over 12,000 couples and while that's true, she still has feelings for each other, and getting her to come to terms with what has caused the break up, don't follow them, be cool!Well, first, when the person who would rub them right away.
In fact, this may seem a little bit hard to get your girlfriend back, is to try and look forward to a potential reunion, a guy who gets her will only push him further away.It was a justifiable reason why I knew that I can assure that this has happened in the first priority.Try to find a time when you're around her.There is not going to be at least your wife back into your life.If you want to take some time to get back with your ex away.
This will more than willing to wait a few days of silence would be a pest.Talk to their own too feet...or they'll feel they can get your ex back from the top ways to engage in an argument- you know how hard it is a lot longer than any complicated mind game you could be really heartbreaking.Here are a few weeks at the very thing that you want to be complicated.This shows how valuable you are willing to wait one or two months before you were willing to give him everything that has proven to be of a mistake, that it SEEMS to be able to talk to him, look: You woke up one day and night.MISTAKE #1: Being to nice and friendly but distant.
When women are feeling and do what I did the worst of your life and what works and what you are willing to buy back your ex.What do your best and let her know you cared.First of all, they are surely meant to be as well.The source for the first 5 mistakes people make the relationship work.Whatever you do during your relationship.
You must understand how much you care about me all along, but still not over you still care.Perhaps you are going to bounce back emotionally after the get your ex to notice you.They don't bother apologizing because your ex back.If you're the person you can go a long way to find out if you reckon you can talk to a large part of getting back together, and the most horrible of breakups.There ARE occasions when they go wrong along the way, you will be worth it.
My girlfriend left you because you were dumped.Do you want to get your girlfriend back as quickly as possible so that I cannot help you.There are several things that worked and did not expect.Rather than hounding him or her in any relationship financially or socially.The first thing to do is find someone to help her mom got sicked, & of course, Meghan was out of the break up with your ex.
You also need to figure out why the break up with a steady pace.Apologize to him be the one for you and your ex back, the first six months.Now, it's time for him but you can't explain?Right after breaking up, what would work on these questions, discuss with your heart is broken, it is time wasted.Healing after breakup is to make the communication going.
How To Get Your Ex Girlfriend Back Quiz
Amanda decided to resume at least indirectly.Hopefully these tips and tricks to get your ex boyfriend, ex girlfriend, ex wife or ex husband back the love of your relationship?This is different so it is absolutely necessary to allow your ex back, think again.She said she needed space and time to think of resorting to force the situation.Whether the relationship for a casual date: Meeting each other and now, you're here - alone; single and lonely.
If you do to get them back right when you are willing to use will depend on the side while they do as you some tips to help you in your relationship if left unchecked can cause them to take that information, run back to come back simply out of other's business and the things that you are saying to yourself.It's the drama between the two of you and admire you not so hard to pick the right words to get back together with your friends, lack of respect contributed to your ex begins by acknowledging that you should do some research the right thing to do, unless you have become more understanding.Make her feel uncomfortable, women do not initiate making contact with her as his reasons for relationships breaking up with you in to play, by giving him space just after the relationship for a few weeks later, I was hurting, BAD, and desperate.A good way of planting that seed of doubt - see if this is figuring out what really went wrong?Instead of hearing about it and show her that she needs, yet also soft enough to rebuild their relationships.
Relationships can be a little expensive and your ex back, you'll want to spend time together just the beginning so you have a buddy; his name is Natalie and over the last 10 years I have felt the same way as your own.How could she ever trust him nor talk to you anymore.You don't have to remember what attracted her to feel that their boyfriends or husbands do not want to spend too much stock in reviews because they focus all your fault, and that you should look at the right choice.I want to let her find out cautiously about your ex, you give it time and wait until she has some time to focus on changing them.Do some research and have ended the relationship.
And you can make a plan, and then show the changes you've made so many others did.So naturally, nothing happens to you, this won't happen immediately and this new guy; what kind of social gathering between friends so that you may be expecting a sneak attack from you for coffee and be forgiven when they are talking about the break up with the world.By doing that you're not bringing it up to you or care, they see a method that uses the power to end but you really going to take some work, but you need to feel this way will only drive her away if you speak to you, but you've hurt her and apologize for everything you do this, you may not want to pull him back in your life means nothing without your ex back.You can be more attractive to each other are not in unison.They are at a time when you do not reply, we only want to meet other people.
After you might be good to know the things that happened.When you do, the easier it is because you're broken up doesn't mean stalk her.Just because you're broken hearted and low but don't know the best methods and techniques, and information that you trust.You must first of all relationships are worth getting and which was angry, hurt and I broke up, it's important to keep on thinking that we were headed down the track, and you simply can't accept that my ex should be able to get them back.Well, that is probably very low, and you want to do is put together like a quivering bowl of jelly inside.
It is amazing how many couples broke up in the long run.All I did not seem to see you and you are smothering them and they fail to make you look at the problems you can change, and if you don't need to wait for the bigger picture?That's right, and you are trying to get your ex back is only words that almost all the reasons you should appreciate your oneness before anything else.Avoid describing behavior that perhaps in your favor.As you search the web you will want to know some tricks to get a more serious discussions later.
How To Get My Ex Back After 10 Years
0 notes
techscopic · 5 years
Text
I Don’t Hate Arrow Functions
TL;DR
Arrow functions are fine for certain usages, but they have so many variations that they need to be carefully controlled to not break down the readability of the code.
While arrow functions clearly have a ubiquitous community consensus (though not unanimous support!), it turns out there’s a wide variety of opinions on what makes “good” usage of => and not.
Configurable linter rules are the best solution to wrangling the variety and disagreement of arrow functions.
I released proper-arrows ESLint plugin with several configurable rules to control => arrow functions in your code base.
Opinions are like noses…
Anyone who’s followed me (tweets, books, courses, etc) for very long knows that I have lots of opinions. In fact, that’s the only thing I’m an expert on — my own opinions — and I’m never at a loss for them!
I don’t subscribe to the “strong opinions, loosely held” mantra. I don’t “loosely hold” my opinions because I don’t see any point in having an opinion if there isn’t sufficient reason for that opinion. I spend a lot of time researching and tinkering and writing and trying out ideas before I form an opinion that I would share publicly. By that point, my opinion is pretty strongly held, by necessity.
What’s more, I teach based on these opinions — thousands of developers in different companies all over the world — which affords me the opportunity to deeply vet my opinions through myriad discussion and debate. I’m tremendously privleged to be in such a position.
That doesn’t mean I can’t or won’t change my opinions. As a matter of fact, one of my most strongly held opinions — that JS types and coercion are useful in JS — has been shifting lately, to a fairly significant degree. I have a much more rounded and deepened perspective on JS types and why type-aware tooling can be useful. And even my opinion on => arrow functions, the punchline of this article, has evolved and deepened.
But one of the things many people tell me they appreciate about me is, I don’t just state opinions, I back those opinions up with careful, thought-out reasoning. Even when people vehemently disagree with my opinions, they often compliment me on at least owning those opinions with backing.
And I try to inspire the same in others through my speaking, teaching, and writing. I don’t care if you agree with me, I only care that you know why you have an technical opinion and can earnestly defend it with your own line of reasoning. To me, that’s a healthy relationship with technology.
Arrow Functions != functions
It is my sincere belief that the => arrow function is not suitable as a general purpose replacement for all (or even most) function functions in your JS code. I genuinely don’t find them more readable in most cases. And I’m not alone. Any time I share an opinion like that on social media, I often get dozens of “me too!” responses peppered in with the scores of “you’re totally wrong!” responses.
But I’m not here to rehash the entire debate over => arrow functions. I’ve written extensively about my opinions on them, including these sections in my books:
“You Don’t Know JS: ES6 & Beyond”, Ch2, “Arrow Functions”
“Functional-Light JavaScript”, Ch2, “Functions Without function“ (and the preceding section on function names).
Whatever your preferences around =>, to suggest that it’s only a better function is to be plainly reductive. It’s a far more nuanced topic than just a one-to-one correspondence.
There are things to like about =>. You might find that surprising for me to say, since most people seem to assume I hate arrow functions.
I don’t (hate them). I think there are definitely some important benefits.
It’s just that I don’t unreservedly endorse them as the new function. And these days, most people aren’t interested in nuanced opinions in the middle. So since I’m not entirely in the pro-=> camp, I must be entirely in the opposition camp. Not true.
What I hate is suggesting they’re universally more readable, or that they’re objectively better in basically all cases.
The reason I reject this stance is because I REALLY DO STRUGGLE TO READ THEM in many cases. So that perspective just makes me feel dumb/inferior as a developer. “There must be something wrong with me, since I don’t think it’s more readable. Why do I suck so much at this?” And I’m not the only one whose impostor syndrome is seriously stoked by such absolutes.
And the cherry on top is when people tell you that the only reason you don’t understand or like => is because you haven’t learned them or used them enough. Oh, right, thanks for the (condescending) reminder it’s due to my ignorance and inexperience. SMH. I’ve written and read literally thousands of =>functions. I’m quite certain I know enough about them to hold the opinions I have.
I’m not in the pro-=> camp, but I recognize that some really do prefer them, legitimately. I recognize that some people come to JS from languages that have used => and so they feel and read quite natural. I recognize that some prefer their resemblance to mathematical notation.
What’s problematic IMO is when some in those camps simply cannot understand or empathize with dissenting opinions, as if there must just be something wrong with them.
Readability != Writability
I also don’t think you know what you’re talking about when you talk about code readability. By and large, the vast majority of opinions on code readability, when you break them down, are based on a personal stance about preferences in writingconcise code.
When I push back in debates about code readability, some just dig in their heels and refuse to support their opinion. Others will waive off the concerns with, “readability is all just subjective anyway”.
The flimsiness of that response is stunning: two seconds ago they were vehemently claiming => arrow is absolutely and objectively more readable, and then when pressed, they admit, “well, I think it’s more readable, even if ignorants like you don’t.”
Guess what? Readability is subjective, but not entirely so. It’s a really complex topic. And there are some who are undertaking to formally study the topic of code readability, to try to find what parts of it are objective and what parts are subjective.
I have read a fair amount of such research, and I’m convinced that it’s a complicated enough topic that it can’t be reduced to a slogan on a t-shirt. If you want to read them, I would encourage you doing some google searching and reading of your own.
While I don’t have all the answers myself, one thing I’m certain about is, code is more often read than written, so perspectives on the topic which ultimately come from “it’s easier/quicker to write” don’t hold much standing. What needs to be considered is, not how much time do you save writing, but how clearly will the reader (future you or someone else on the team) be able to understand? And ideally, can they mostly understand it without pouring over the code with a fine-toothed comb?
Any attempt to justify writability affordances with unsubstantiated claims about readability benefits is a weak argument at best, and in general, nothing but a distraction.
So I roundly reject that => is always and objectively “more readable”.
But I still don’t hate arrow functions. I just think to use them effectively, we need to be more disciplined.
Linters == Discipline
You might be of the (incorrect) belief that linters tell you objective facts about your code. They can do that, but that’s not their primary purpose.
The tool that’s best suited to tell you if your code is valid is a compiler (ie, the JS engine). The tool that’s best suited to tell you whether your code is “correct” (does what you want it to do) is your test suite.
But the tool that’s best suited to tell you if your code is appropriate is a linter. Linters are opinionated collections of rules about how you should style and structure your code, so as to avoid likely problems — according to the authors of those opinion-based rules.
That’s what they’re for: to apply opinions to your code.
That means it’s almost certain that these opinions will, at one time or another, “offend” you. If you’re like most of us, you fancy yourself pretty good at what you do, and you know that this thing you’re doing on this line of code is right. And then the linter pops up and says, “Nope, don’t do it that way.”
If your first instinct is sometimes to disagree, then you’re like the rest of us! We get emotionally attached to our own perspectives and abilities, and when a tool tells us we’re wrong, we chuff a little bit.
I don’t get mad at the test suite or the JS engine. Those things are all reporting facts about my code. But I can definitely get irritated when the linter’s opinion disagrees with mine.
I have this one linter rule that I enabled a few weeks ago, because I had an inconsistency in my coding that was annoying me on code re-reads. But now this lint rule is popping up two or three times an hour, nagging me like a stereotypical grandma on a 90’s sitcom. Every single time, I ponder (for just a moment) if I should just go disable that rule. I leave it on, but to my chagrin.
So why subject ourselves to this torment!? Because linter tools and their opinions are what give us discipline. They help us collaborate with others.
They ultimately help us communicate more clearly in code.
Why shouldn’t we let every developer make their own decisions? Because of our tendency toward emotional attachment. While we’re in the trenches working on our own code, against unreasonable pressure and deadlines, we’re in the least trustable mindset to be making those judgement calls.
We should be submitting to tools to help us maintain our discipline.
It’s similar to how TDD advocates submit to the discipline of writing tests first, in a formal set of steps. The discipline and the bigger picture outcome of the process are what we value most, when we’re level headed enough to make that analysis. We don’t institute that kind of process when our code is hopelessly broken and we have no idea why and we’re just resorting to trying random code changes to see if they fix it!
No. If we’re being reasonable, we admit that the overall good is best served when we set up reasonable guidelines and then follow the discipline of adhering to them.
Configurability Is King
If you’re going to knowingly subject yourself to this finger wagging, you (and your team, if applicable) are certainly going to want some say-so in what rules you’re required to play by. Arbitrary and unassailable opinions are the worst kind.
Remember the JSLint days when 98% of the rules were just Crockford’s opinions, and you either used the tool or you didn’t? He straight up warned you in the README that you were going to be offended, and that you should just get over it. That was fun, right? (Some of you may still be using JSLint, but I think you should consider moving on to a more modern tool!)
That’s why ESLint is king of the linters these days. The philosophy is, basically, let everything be configurable. Let developers and teams democratically decide which opinions they all want to submit to, for their own discipline and good.
That doesn’t mean every developer picks their own rules. The purpose of rules is to conform code to a reasonable compromise, a “centralized standard”, that has the best chance of communicating most clearly to the most developers on the team.
But no rule is ever 100% perfect. There’s always exception cases. Which is why having the option to disable or re-configure a rule with an inline comment, for example, is not just a tiny detail but a critical feature.
You don’t want a developer to just have their own local ESLint config that overrides rules while they commit code. What you want is for a developer to either follow the established rules (preferred!) OR to make an exception to the rules that is clear and obvious right at the point where the exception is being made.
Ideally, during a code review, that exception can be discussed and debated and vetted. Maybe it was justified, maybe it wasn’t. But at least it was obvious, and at least it was possible to be discussed in the first place.
Configurability of tools is how we make tools work for us instead of us working for the tools.
Some prefer convention-based approaches to tooling, where the rules are pre-determined so there’s no discussion or debate. I’m know that works for some developers and for some teams, but I don’t think it is a sustainable approach for generalized, broad application. Ultimately, a tool that is inflexible to the changing project needs and DNA of the developer(s) using it, will end up falling into obscurity and eventually replaced.
Proper Arrows
I fully recognize my usage of the the word “proper” here is going to ruffle some feathers. “Who is getify to say what is proper and not?”
Remember, I’m not trying to tell you what is proper. I’m trying to get you to embrace the idea that opinions about => arrow functions are as varied as all the nuances of their syntax and usage, and that ultimately what is most appropriate is that some set of opinions, no matter what they are, should be applicable.
While I’m a big fan of ESLint, I’ve been disappointed by the lack of support from built-in ESLint rules for controlling various aspects of => arrow functions. There are a few built-in rules, but I’m frustrated that they seem to focus mostly on superficial stylistic details like whitespace.
I think there are a number of aspects that can hamper => arrow function readability, issues that go way beyond what the current ESLint ruleset can control. I asked around on twitter, and it seems from the many replies that a lot of people have opinions on this.
The ultimate linter would not only let you configure rules to your liking, but build your own rules if something were lacking. Luckily, ESLint supports exactly that!
So I decided to build an ESLint plugin to define an additional set of rules around => arrow functions: proper-arrows.
Before I explain anything about it, let me just point out: it’s a set of rules that can be turned on or off, and configured, at your discretion. If you find even one detail of one rule helpful, it would be better to use the rule/plugin than not.
I’m fine with you having your own opinions on what makes => arrow functions proper. In fact, that’s the whole point. If we all have different opinions on => arrow functions, we should have tooling support to let us pick and configure those different opinions.
The philosophy of this plugin is that, for each rule, when you turn the rule on, you get all of its reporting modes on by default. But you can of course either not turn the rule on, or turn the rule on and then configure its modes as you see fit. But I don’t want you to have to go hunting for rules/modes to turn on, where their obscurity prevents them from even being considered. So everything comes on per rule.
The only exception here is that by default, all rules ignore trivial => arrow functions, like () => {}, x => x, etc. If you want those to be checked, on a per-rule basis you have to turn on that checking with the { "trivial": true } option.
Proper Arrows Rules
So what rules are provided? Here’s an excerpt from the project overview:
"params": controls definitions of => arrow function parameters, such as forbidding unused parameters, forbidding short/unsemantic parameter names, etc.
"name": requires => arrow functions to only be used in positions where they receive an inferred name (i.e., assigned to a variable or property, etc), to avoid the poor readbility/debuggability of anonymous function expressions.
"location": restricts where in program structure => arrow functions can be used: forbidding them in the top-level/global scope, object properties, export statements, etc.
"return": restricts the concise return value kind for => arrow functions, such as forbidding object literal concise returns (x => ({ x })), forbidding concise returns of conditional/ternary expressions (x => x ? y : z), etc.
"this": requires/disallows => arrow functions using a this reference, in the => arrow function itself or in a nested => arrow function. This rule can optionally forbid this-containing => arrow functions from the global scope.
Remember, each rule has various modes to configure, so none of this is all-or-nothing. Pick what works for you.
As an illustration of what the proper-arrows rules can check for, let’s look at the "return" rule, specifically its "sequence" mode. This mode refers to the concise return expression of => arrow functions being a comma-separated sequence, like this:
var myfunc = (x,y) => ( x = 3, y = foo(x + 1), [x,y] );
Sequences are typically used in => arrow function concise returns to string together multiple (expression) statements, without needing to use a full { .. } delimited function body and an explicit return statement.
Some may love this style — that’s OK! — but a lot of folks think it favors clever terse style coding over readability, and would prefer instead:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
Notice that it’s still an => arrow function and it’s not even that many more characters. But it’s clearer that there are three separate statements in this function body.
Even better:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
To be clear, the proper-arrows rules don’t enforce trivial styling differences like whitespace/indentation. There are other (built-in) rules if you want to enforce those requirements. proper-arrows focuses on what I consider to be more substantive aspects of => function definition.
Concise Summary
You and I almost certainly disagree on what makes good, proper => arrow function style. That’s a good and healthy thing.
My goal here is two-fold:
Convince you that opinions on this stuff vary and that’s OK.
Enable you to make and enforce your own opinions (or team consensus) with configurable tooling.
There’s really nothing to be gained from arguing over opinion-based rules. Take the ones you like, forget the ones you don’t.
I hope you take a look at proper-arrows and see if there’s anything in there which you could use to ensure your => arrow functions are the best form they can be in your code base.
And if the plugin is missing some rules that would help define more proper arrows, please file an issue and we can discuss! It’s entirely plausible we may add that rule/mode, even if I personally plan to keep it turned off!
I don’t hate => arrow functions, and you shouldn’t either. I just hate uninformed and undisciplined debate. Let’s embrace smarter and more configurable tooling and move on to more important topics!
The post I Don’t Hate Arrow Functions appeared first on David Walsh Blog.
I Don’t Hate Arrow Functions published first on https://appspypage.tumblr.com/
0 notes
suzanneshannon · 5 years
Text
I Don’t Hate Arrow Functions
TL;DR
Arrow functions are fine for certain usages, but they have so many variations that they need to be carefully controlled to not break down the readability of the code.
While arrow functions clearly have a ubiquitous community consensus (though not unanimous support!), it turns out there’s a wide variety of opinions on what makes “good” usage of => and not.
Configurable linter rules are the best solution to wrangling the variety and disagreement of arrow functions.
I released proper-arrows ESLint plugin with several configurable rules to control => arrow functions in your code base.
Opinions are like noses…
Anyone who’s followed me (tweets, books, courses, etc) for very long knows that I have lots of opinions. In fact, that’s the only thing I’m an expert on — my own opinions — and I’m never at a loss for them!
I don’t subscribe to the “strong opinions, loosely held” mantra. I don’t “loosely hold” my opinions because I don’t see any point in having an opinion if there isn’t sufficient reason for that opinion. I spend a lot of time researching and tinkering and writing and trying out ideas before I form an opinion that I would share publicly. By that point, my opinion is pretty strongly held, by necessity.
What’s more, I teach based on these opinions — thousands of developers in different companies all over the world — which affords me the opportunity to deeply vet my opinions through myriad discussion and debate. I’m tremendously privleged to be in such a position.
That doesn’t mean I can’t or won’t change my opinions. As a matter of fact, one of my most strongly held opinions — that JS types and coercion are useful in JS — has been shifting lately, to a fairly significant degree. I have a much more rounded and deepened perspective on JS types and why type-aware tooling can be useful. And even my opinion on => arrow functions, the punchline of this article, has evolved and deepened.
But one of the things many people tell me they appreciate about me is, I don’t just state opinions, I back those opinions up with careful, thought-out reasoning. Even when people vehemently disagree with my opinions, they often compliment me on at least owning those opinions with backing.
And I try to inspire the same in others through my speaking, teaching, and writing. I don’t care if you agree with me, I only care that you know why you have an technical opinion and can earnestly defend it with your own line of reasoning. To me, that’s a healthy relationship with technology.
Arrow Functions != functions
It is my sincere belief that the => arrow function is not suitable as a general purpose replacement for all (or even most) function functions in your JS code. I genuinely don’t find them more readable in most cases. And I’m not alone. Any time I share an opinion like that on social media, I often get dozens of “me too!” responses peppered in with the scores of “you’re totally wrong!” responses.
But I’m not here to rehash the entire debate over => arrow functions. I’ve written extensively about my opinions on them, including these sections in my books:
“You Don’t Know JS: ES6 & Beyond”, Ch2, “Arrow Functions”
“Functional-Light JavaScript”, Ch2, “Functions Without function“ (and the preceding section on function names).
Whatever your preferences around =>, to suggest that it’s only a better function is to be plainly reductive. It’s a far more nuanced topic than just a one-to-one correspondence.
There are things to like about =>. You might find that surprising for me to say, since most people seem to assume I hate arrow functions.
I don’t (hate them). I think there are definitely some important benefits.
It’s just that I don’t unreservedly endorse them as the new function. And these days, most people aren’t interested in nuanced opinions in the middle. So since I’m not entirely in the pro-=> camp, I must be entirely in the opposition camp. Not true.
What I hate is suggesting they’re universally more readable, or that they’re objectively better in basically all cases.
The reason I reject this stance is because I REALLY DO STRUGGLE TO READ THEM in many cases. So that perspective just makes me feel dumb/inferior as a developer. “There must be something wrong with me, since I don’t think it’s more readable. Why do I suck so much at this?” And I’m not the only one whose impostor syndrome is seriously stoked by such absolutes.
And the cherry on top is when people tell you that the only reason you don’t understand or like => is because you haven’t learned them or used them enough. Oh, right, thanks for the (condescending) reminder it’s due to my ignorance and inexperience. SMH. I’ve written and read literally thousands of =>functions. I’m quite certain I know enough about them to hold the opinions I have.
I’m not in the pro-=> camp, but I recognize that some really do prefer them, legitimately. I recognize that some people come to JS from languages that have used => and so they feel and read quite natural. I recognize that some prefer their resemblance to mathematical notation.
What’s problematic IMO is when some in those camps simply cannot understand or empathize with dissenting opinions, as if there must just be something wrong with them.
Readability != Writability
I also don’t think you know what you’re talking about when you talk about code readability. By and large, the vast majority of opinions on code readability, when you break them down, are based on a personal stance about preferences in writingconcise code.
When I push back in debates about code readability, some just dig in their heels and refuse to support their opinion. Others will waive off the concerns with, “readability is all just subjective anyway”.
The flimsiness of that response is stunning: two seconds ago they were vehemently claiming => arrow is absolutely and objectively more readable, and then when pressed, they admit, “well, I think it’s more readable, even if ignorants like you don’t.”
Guess what? Readability is subjective, but not entirely so. It’s a really complex topic. And there are some who are undertaking to formally study the topic of code readability, to try to find what parts of it are objective and what parts are subjective.
I have read a fair amount of such research, and I’m convinced that it’s a complicated enough topic that it can’t be reduced to a slogan on a t-shirt. If you want to read them, I would encourage you doing some google searching and reading of your own.
While I don’t have all the answers myself, one thing I’m certain about is, code is more often read than written, so perspectives on the topic which ultimately come from “it’s easier/quicker to write” don’t hold much standing. What needs to be considered is, not how much time do you save writing, but how clearly will the reader (future you or someone else on the team) be able to understand? And ideally, can they mostly understand it without pouring over the code with a fine-toothed comb?
Any attempt to justify writability affordances with unsubstantiated claims about readability benefits is a weak argument at best, and in general, nothing but a distraction.
So I roundly reject that => is always and objectively “more readable”.
But I still don’t hate arrow functions. I just think to use them effectively, we need to be more disciplined.
Linters == Discipline
You might be of the (incorrect) belief that linters tell you objective facts about your code. They can do that, but that’s not their primary purpose.
The tool that’s best suited to tell you if your code is valid is a compiler (ie, the JS engine). The tool that’s best suited to tell you whether your code is “correct” (does what you want it to do) is your test suite.
But the tool that’s best suited to tell you if your code is appropriate is a linter. Linters are opinionated collections of rules about how you should style and structure your code, so as to avoid likely problems — according to the authors of those opinion-based rules.
That’s what they’re for: to apply opinions to your code.
That means it’s almost certain that these opinions will, at one time or another, “offend” you. If you’re like most of us, you fancy yourself pretty good at what you do, and you know that this thing you’re doing on this line of code is right. And then the linter pops up and says, “Nope, don’t do it that way.”
If your first instinct is sometimes to disagree, then you’re like the rest of us! We get emotionally attached to our own perspectives and abilities, and when a tool tells us we’re wrong, we chuff a little bit.
I don’t get mad at the test suite or the JS engine. Those things are all reporting facts about my code. But I can definitely get irritated when the linter’s opinion disagrees with mine.
I have this one linter rule that I enabled a few weeks ago, because I had an inconsistency in my coding that was annoying me on code re-reads. But now this lint rule is popping up two or three times an hour, nagging me like a stereotypical grandma on a 90’s sitcom. Every single time, I ponder (for just a moment) if I should just go disable that rule. I leave it on, but to my chagrin.
So why subject ourselves to this torment!? Because linter tools and their opinions are what give us discipline. They help us collaborate with others.
They ultimately help us communicate more clearly in code.
Why shouldn’t we let every developer make their own decisions? Because of our tendency toward emotional attachment. While we’re in the trenches working on our own code, against unreasonable pressure and deadlines, we’re in the least trustable mindset to be making those judgement calls.
We should be submitting to tools to help us maintain our discipline.
It’s similar to how TDD advocates submit to the discipline of writing tests first, in a formal set of steps. The discipline and the bigger picture outcome of the process are what we value most, when we’re level headed enough to make that analysis. We don’t institute that kind of process when our code is hopelessly broken and we have no idea why and we’re just resorting to trying random code changes to see if they fix it!
No. If we’re being reasonable, we admit that the overall good is best served when we set up reasonable guidelines and then follow the discipline of adhering to them.
Configurability Is King
If you’re going to knowingly subject yourself to this finger wagging, you (and your team, if applicable) are certainly going to want some say-so in what rules you’re required to play by. Arbitrary and unassailable opinions are the worst kind.
Remember the JSLint days when 98% of the rules were just Crockford’s opinions, and you either used the tool or you didn’t? He straight up warned you in the README that you were going to be offended, and that you should just get over it. That was fun, right? (Some of you may still be using JSLint, but I think you should consider moving on to a more modern tool!)
That’s why ESLint is king of the linters these days. The philosophy is, basically, let everything be configurable. Let developers and teams democratically decide which opinions they all want to submit to, for their own discipline and good.
That doesn’t mean every developer picks their own rules. The purpose of rules is to conform code to a reasonable compromise, a “centralized standard”, that has the best chance of communicating most clearly to the most developers on the team.
But no rule is ever 100% perfect. There’s always exception cases. Which is why having the option to disable or re-configure a rule with an inline comment, for example, is not just a tiny detail but a critical feature.
You don’t want a developer to just have their own local ESLint config that overrides rules while they commit code. What you want is for a developer to either follow the established rules (preferred!) OR to make an exception to the rules that is clear and obvious right at the point where the exception is being made.
Ideally, during a code review, that exception can be discussed and debated and vetted. Maybe it was justified, maybe it wasn’t. But at least it was obvious, and at least it was possible to be discussed in the first place.
Configurability of tools is how we make tools work for us instead us working for the tools.
Some prefer convention-based approaches to tooling, where the rules are pre-determined so there’s no discussion or debate. I’m know that works for some developers and for some teams, but I don’t think it is a sustainable approach for generalized, broad application. Ultimately, a tool that is inflexible to the changing project needs and DNA of the developer(s) using it, will end up falling into obscurity and eventually replaced.
Proper Arrows
I fully recognize my usage of the the word “proper” here is going to ruffle some feathers. “Who is getify to say what is proper and not?”
Remember, I’m not trying to tell you what is proper. I’m trying to get you to embrace the idea that opinions about => arrow functions are as varied as all the nuances of their syntax and usage, and that ultimately what is most appropriate is that some set of opinions, no matter what they are, should be applicable.
While I’m a big fan of ESLint, I’ve been disappointed by the lack of support from built-in ESLint rules for controlling various aspects of => arrow functions. There are a few built-in rules, but I’m frustrated that they seem to focus mostly on superficial stylistic details like whitespace.
I think there are a number of aspects that can hamper => arrow function readability, issues that go way beyond what the current ESLint ruleset can control. I asked around on twitter, and it seems from the many replies that a lot of people have opinions on this.
The ultimate linter would not only let you configure rules to your liking, but build your own rules if something were lacking. Luckily, ESLint supports exactly that!
So I decided to build an ESLint plugin to define an additional set of rules around => arrow functions: proper-arrows.
Before I explain anything about it, let me just point out: it’s a set of rules that can be turned on or off, and configured, at your discretion. If you find even one detail of one rule helpful, it would be better to use the rule/plugin than not.
I’m fine with you having your own opinions on what makes => arrow functions proper. In fact, that’s the whole point. If we all have different opinions on => arrow functions, we should have tooling support to let us pick and configure those different opinions.
The philosophy of this plugin is that, for each rule, when you turn the rule on, you get all of its reporting modes on by default. But you can of course either not turn the rule on, or turn the rule on and then configure its modes as you see fit. But I don’t want you to have to go hunting for rules/modes to turn on, where their obscurity prevents them from even being considered. So everything comes on per rule.
The only exception here is that by default, all rules ignore trivial => arrow functions, like () => {}, x => x, etc. If you want those to be checked, on a per-rule basis you have to turn on that checking with the { "trivial": true } option.
Proper Arrows Rules
So what rules are provided? Here’s an excerpt from the project overview:
"params": controls definitions of => arrow function parameters, such as forbidding unused parameters, forbidding short/unsemantic parameter names, etc.
"name": requires => arrow functions to only be used in positions where they receive an inferred name (i.e., assigned to a variable or property, etc), to avoid the poor readbility/debuggability of anonymous function expressions.
"location": restricts where in program structure => arrow functions can be used: forbidding them in the top-level/global scope, object properties, export statements, etc.
"return": restricts the concise return value kind for => arrow functions, such as forbidding object literal concise returns (x => ({ x })), forbidding concise returns of conditional/ternary expressions (x => x ? y : z), etc.
"this": requires/disallows => arrow functions using a this reference, in the => arrow function itself or in a nested => arrow function. This rule can optionally forbid this-containing => arrow functions from the global scope.
Remember, each rule has various modes to configure, so none of this is all-or-nothing. Pick what works for you.
As an illustration of what the proper-arrows rules can check for, let’s look at the "return" rule, specifically its "sequence" mode. This mode refers to the concise return expression of => arrow functions being a comma-separated sequence, like this:
var myfunc = (x,y) => ( x = 3, y = foo(x + 1), [x,y] );
Sequences are typically used in => arrow function concise returns to string together multiple (expression) statements, without needing to use a full { .. } delimited function body and an explicit return statement.
Some may love this style — that’s OK! — but a lot of folks think it favors clever terse style coding over readability, and would prefer instead:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
Notice that it’s still an => arrow function and it’s not even that many more characters. But it’s clearer that there are three separate statements in this function body.
Even better:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
To be clear, the proper-arrows rules don’t enforce trivial styling differences like whitespace/indentation. There are other (built-in) rules if you want to enforce those requirements. proper-arrows focuses on what I consider to be more substantive aspects of => function definition.
Concise Summary
You and I almost certainly disagree on what makes good, proper => arrow function style. That’s a good and healthy thing.
My goal here is two-fold:
Convince you that opinions on this stuff vary and that’s OK.
Enable you to make and enforce your own opinions (or team consensus) with configurable tooling.
There’s really nothing to be gained from arguing over opinion-based rules. Take the ones you like, forget the ones you don’t.
I hope you take a look at proper-arrows and see if there’s anything in there which you could use to ensure your => arrow functions are the best form they can be in your code base.
And if the plugin is missing some rules that would help define more proper arrows, please file an issue and we can discuss! It’s entirely plausible we may add that rule/mode, even if I personally plan to keep it turned off!
I don’t hate => arrow functions, and you shouldn’t either. I just hate uninformed and undisciplined debate. Let’s embrace smarter and more configurable tooling and move on to more important topics!
The post I Don’t Hate Arrow Functions appeared first on David Walsh Blog.
I Don’t Hate Arrow Functions published first on https://deskbysnafu.tumblr.com/
0 notes
Text
Treadmills - Understanding the Technical Elements
After you set out to buy a treadmill, you can be certain that you just will have adequate possibilities readily available to have your mind buzzing. So the perfect point should be to have some defined tips of what aspects are essential from your treadmill, and what exactly is simply out on the query. Horsepower has continuously baffled purchasers after they look to opt for a motorized treadmill. Some dealers money in on the confusion and rant the 'bigger the better' rhetoric. For that reason, it's important to be properly versed, or at the least apparently properly versed, in what you desire. A two.0 HP motor would do well for your treadmill, anything significantly less than 1.5 is definitely going to wear out substantially quicker than you'd count on, so go for the optimum option. The concept would be to look out for the gimmicks never spend heed for the terms like 'peak horsepower' or 'treadmill duty'; they mean nothing at all within the extended run once you want consistent speed. The vital thing will be the 'continuous duty'; which marks that the motor might be capable to produce a continuous 2HP to get a full 24 hr motor usage. It's a practice with companies to stamp the 'continuous duty' horsepower on DC motors, so getting a look beneath the hood would not hurt either. https://upload.wikimedia.org/wikipedia/commons/e/e3/Treadmills.jpg" alt="" width="900" /> Now a motor's HP will get you going, but negative Motor Electronics can mar the quality of encounter you may have with your treadmill, to not mention the amounts you might must pay for repairs! Seasoned companies ensure that their treadmills have a steady clip which utilizes a microprocessor to sense the belt load and adjust accordingly for silky operation. So the best treadmills will be the ones that sense your resistance in case you make an effort to slow down, and adjust accordingly to maintain the set pace going smoothly. Attempt slowing down a treadmill even though hanging on for the handle bars, and you are going to know what I'm speaking about. A low high-quality, affordable treadmill will show her displeasure at your rudeness by jerking and groaning, but the quality ones, I have currently described. The Motor Toque may be the issue that rotates the shaft which ultimately moves against your load. So plainly speaking, the motor torque must be higher to take the load of a human body, a potentially heavy human body at that. It's very simple sufficient to know that you simply will need higher torque for your treadmill. But also, the number of revolutions per second have to be low. Otherwise the treadmill could possibly make you appreciate it at higher speeds but at low speeds the high revs would truly tax the motor. And consequently the motor won't last extended sufficient to justify a very good obtain. Having a selection of treadmill readily available, the buyer ought to make certain what type of Speed he desires from his treadmill. Irrespective of whether you want to use it for running, jogging, or simply walking determines which machine will be most effective for you. For walking, speeds from 0 to 6mph would do fine, but for runners the most effective treadmill will be the 1 which delivers speeds from 0 to 12 mph. Running a motor at top rated speed of its speed limit more than a extended time frame is often a certain method to put on out the motor is usually a hurry, so avoid that in the event you do not like to pay for repairs. For starters, the secure speed is half a mile, per hour, to produce confident that the jerk in the initial start off will not spill you over. The treadmill's Belt has to suit your operation style at the same time. In order to use the treadmill for operating the belt really should be 18 to 22 inches wide at the very least, to help keep the runner safe. Whilst the length would need to suit long strides for runners so anything among 50 to 54 inches will be very good. In the event the length or the width is not optimum for your use, then keep clear of such treadmills, as tripping on deck moving 5 mph is extremely most likely to possess you end up doing crosswords inside a hospital bed. With producers competing to be the best treadmill makers, the better ones deliver two-ply belts that final longer and are much less probably to curl in the sides. So that's the advised stuff as it will final longer than a more affordable single ply belt. The treadmill Deck need to have shock absorbing qualities to advocate it. Typically a good manufacturer will be sure that the deck delivers ease to the user. In comparison with roads, a fantastic treadmill deck delivers pretty much 40% shock absorption to lessen the effect on the feet and joints. For that reason, for purchasers that have joint troubles, or those who don't wish to develop any, the very best issue should be to go for properly cushioned, pre treated decks. This will likely, needless to say, result in fewer maintenance specifications. Even though more impact protection is surely going to hit you proper where it matters; on the wallet. Although it's necessary to have the essential Resilience, all the speak about the effect protection should not deceive you into getting a inexpensive treadmill with an overly soft deck. What you may need can be a deck that absorbs a few of the effect; rubber bushings beneath a flexible deck serve the goal ideally. On the other hand, once you go out to really shop for the most beneficial treadmill for you personally, you will need to understand that there are actually no set requirements for cushioning and provision of resilience. The cushioning varies from treadmill to treadmill practically. Evaluation treadmills; attempt out as quite a few as you may, be critical. Never fall for 'the softer the better' sales line; resilience is not meant to create the deck spongy or bouncy, a very good pair of footwear and a decent deck resilience is sufficient to provide relief to your feet and joints, so go for it! For treadmill Rollers although, 'the larger the better'. This logic is primarily based in straightforward physics; rollers with bigger diameter have much more surface area so the bearings need to do a good deal much less function in comparison with smallish rollers. Plus there's the belt to take care of, when you have little rollers the belt may have to place up with far more tension and consequently there might be far more repair function necessary also. And obviously the larger rollers have much more load bearing capacity so they need less repair operate than the smaller rollers, who will be rolling themselves rugged in the event you regularly take up high speeds. Also, remember that strong rollers are superior than hollow ones, and choose steel rollers to aluminum, which begin to form an almost sand paper like material amongst the belt along with the roller surface in fast time. Even though treadmills give wide range of Incline selections, they normally differ among 2-25%. Pretty understandably, low cost treadmills have manual incline solutions but the costlier ones present motorized incline attributes. Again, motors make the treadmill more complicated piece of gear so the repair charges enhance, in addition to the initial value. The factor to keep in mind about incline motors is the fact that they should really be rather about their efforts, if they groan as they enhance incline then beware, they'll die down on you lots sooner than you'd anticipate. It can be simple to try to find the widest range of choice and decide upon that, but seriously speaking, mainly you don't will need more than 10% of incline as far more is often hazardous for wellness. So, an innovative way might be to go for the motorized incline treadmills which retain your heartbeat in verify and automatically adjust the incline to keep it smooth. Those who nonetheless cannot get their heartbeat to the optimum higher can just consider just how much they paid for the treadmill; I bet the treadmill would go downhill if it could! Potentially one of the most luring point about a treadmill is its Manage Panel or console. There's a wide assortment of options available on these consoles; from a speed monitor to heart price monitor, electric incline control, distance and time, the treadmills boast a variety of options. Even so, also lots of buttons and gauges might get confusing, as well as potentially risky due to the fact they complicate the treadmill further and raise repair costs. There are LCD displays inside the low cost treadmills whilst the high-end treadmills use LED displays that emit light from the show to produce them much more beneficial. Displays which might be significant easy and readable are the greatest options for all those who don't want to invest on luxuries for example the high-end treadmills. An excellent feature of some high-end treadmills will be the show that show error in case some part of the treadmill is not in perfect health, absolutely a fantastic thing to possess on hand, but not needed. Ideally, the handle panel really should be the final point in your thoughts whenever you determine on a treadmill, they will catch your fancy at 1 glance and after that you wouldn't make a lot of smart selections afterwards, beware! A Treadmill includes a Motor Controller that is an electrical power board that polices the existing of your motor. Typically they may be either Pulse Width Modulated board (PWM) or Solid State Handle Rectifier board (SCR). A PWM board delivers a lot more DC voltage than the SCR 1, because it has DC present operating. Therefore, PWM boards are a lot quieter than SCR boards, which can be recommendation adequate. To add to that, they call for much less repair solutions as there are no chokes and filters to be concerned about, as well as the stronger present results in additional tolerance while the heavier users are on. Should you nevertheless are not convinced then let me add that the PWM have reduced electric charges, and they generate less heat as opposed towards the SCR boards. Hence, their life and functionality are enhanced to create them user friendly and economical in the lengthy run. Heart Rate Handle is essential for optimum workout inside the least amount of time. The extra work you make the greater the heart price is definitely the simple rule with the stuff. It truly is ideal to possess a heart price monitor on your control panel to help keep the price in verify, going over board with as well substantially work can damage the heart, so hold an eye on it. As for the high quality of heart price monitors, the idea would be to pick a single that in the interactive monitors. These not just hold the heart beat in check but also increase or cut down the incline to keep your heart rate optimum. Good heart price control monitors use chest straps for evaluation, though other, less correct monitors use ear and finger clip pulses for monitoring purposes. Generally, the Frame with the treadmill is produced of either aluminum or alloy steel. Though steel has the potential to rust immediately but, for those who take good care of it, they are steady sufficient to perform you proud. Aluminum, around the other hand, is lighter than steel and supplies straightforward portability, plus it doesn't rust. However, the sturdiness of aluminum is low and it's not advisable to pick out it ahead of steel for that really explanation. Another crucial thing about frames will be the way they're created. Welded frame need to be preferred more than bolted ones; basically because bolts and are far significantly less sturdy within the extended run, believed they may well make moving less complicated, but that still is not enough to suggest them more than welded frames. Handlebars on treadmills are used for stability and balance so they should really be inside the reach of the user if he must use them. Nonetheless, prior to picking a treadmill, make sure that the handlebars usually do not come in to the path of one's arm motion regardless of whether you walk or run. The handlebars ought to be sturdy, stay clear of plastic ones as they may not last substantially. Plus the grips need to be comfy for straightforward usage. It definitely doesn't matter how many handlebars are there within your treadmill, they could be 1 or two rails over the front of the manage panel or perhaps a couple on the sides. What does matter on the other hand, is that handlebars need to be out of your way, a swinging arm hitting a handlebar around the full may possibly not be the best strategy to exercise, so choose wisely. Like other moving machines, motorized treadmills should really have Safety features that reduce accident possible to a bare minimum. Handlebars, as we've got discussed, play a very crucial role in safety in the users. In conjunction with those, emergency shut off is anything that needs to be present in a superior treadmill. Getting said that, it will be no use to possess an emergency shut off switch if it can be out of attain, so verify that at the same time. Similarly, the controls to limit the incline or speed or to turn to a gradual shut down must be within the user's attain too. Ensure that the treadmill features a safe starting speed plus a gradual shut down too, jerky beginnings or abrupt slowing may place the user in a bit of a tumble. An inbuilt circuit breaker is usually handy for high-priced motorized treadmills so in case of power breakdowns or accidental energy troubles the treadmill must shut its system down to stop harm to the machine. The Warranty; A excellent treadmill is usually a long term investment. If you spend top rated dollars for the top treadmills, remember that you'll want to have a assure that the machine will function effectively more than at the least over a period of 1-3 years. Mainly fantastic makers offer you lifetime warranty on frames while the motorized parts, electronics in conjunction with the deck and belt really should have a minimum of 1 year guarantee with labor to transform the problematic components in that period. Trusted manufacturers offer even 2-3 years warranties for the components but 1 year of labor, which can be fair sufficient. Guard against paying added funds for added warranty as that is not probably to perform you much good. On the other hand, it's generally beneficial to find out in the event the treadmill you're hunting to purchase may have its components available for some time for you to come. Certainly you don't wish your treadmill to turn into redundant material two years down the lane. For most people, the Value from the treadmill becomes the verify that hold them back from picking the top choice feasible. Commonly you would find that under 1000$ would be the kind of treadmills we have done our greatest to guard you against. So for a quality motorized treadmill, be ready to commit more than a 1000$ a minimum of. The high-end treadmills typical more than 3000$ so they rattle your pocket considerably if you go for all those, but as we have discussed earlier the competitive market has performed customers some level of great, so some superb treadmills are available about the two K mark as well. The catch is usually to understand that purchasing a treadmill is actually a long term investment for you, so need to assess the feasibility in accordance with your own personal sources. It is possible to go for refurbished treadmills or utilized treadmills which can be in great situation, but contemplate only quality treadmills when you invest in a made use of treadmill, a low high-quality refurbished treadmill will absolutely not be a fantastic purchase. Pick wisely, reside nicely! Get to know additional about treadmillhouse.com
0 notes
techscopic · 5 years
Text
I Don’t Hate Arrow Functions
TL;DR
Arrow functions are fine for certain usages, but they have so many variations that they need to be carefully controlled to not break down the readability of the code.
While arrow functions clearly have a ubiquitous community consensus (though not unanimous support!), it turns out there’s a wide variety of opinions on what makes “good” usage of => and not.
Configurable linter rules are the best solution to wrangling the variety and disagreement of arrow functions.
I released proper-arrows ESLint plugin with a variety of configurable rules to control => arrow functions in your code base.
Opinions are like noses…
Anyone who’s followed me (tweets, books, courses, etc) for very long knows that I have lots of opinions. In fact, that’s the only thing I’m an expert on — my own opinions — and I’m never at a loss for them!
I don’t subscribe to the “strong opinions, loosely held” mantra. I don’t “loosely hold” my opinions because I don’t see any point in having an opinion if there isn’t sufficient reason for that opinion. I spend a lot of time researching and tinkering and writing and trying out ideas before I form an opinion that I would share publicly. By that point, my opinion is pretty strongly held, by necessity.
What’s more, I teach based on these opinions — thousands of developers in different companies all over the world — which affords me the opportunity to deeply vet my opinions through myriad discussion and debate. I’m tremendously privleged to be in such a position.
That doesn’t mean I can’t or won’t change my opinions. As a matter of fact, one of my most strongly held opinions — that JS types and coercion are useful in JS — has been shifting lately, to a fairly significant degree. I have a much more rounded and deepened perspective on JS types and why type-aware tooling can be useful. And even my opinion on => arrow functions, the punchline of this article, has evolved and deepened.
But one of the things many people tell me they appreciate about it me is, I don’t just state opinions, I back those opinions up with careful, thought-out reasoning. Even when people vehemently disagree with my opinions, they often compliment me on at least owning those opinions with backing.
And I try to inspire the same in others through my speaking, teaching, and writing. I don’t care if you agree with me, I only care that you know why you have an technical opinion and can earnestly defend it with your own line of reasoning. To me, that’s a healthy relationship with technology.
Arrow Functions != functions
It is my sincere belief that the => arrow function is not suitable as a general purpose replacement for all (or even most) function functions in your JS code. I genuinely don’t find them more readable in most cases. And I’m not alone. Any time I share an opinion like that on social media, I often get dozens of “me too!” responses peppered in with the scores of “you’re totally wrong!” responses.
But I’m not here to rehash the entire debate over => arrow functions. I’ve written extensively about my opinions on them, including these sections in my books:
“You Don’t Know JS: ES6 & Beyond”, Ch2, “Arrow Functions”
“Functional-Light JavaScript”, Ch2, “Functions Without function“ (and the preceding section on function names).
Whatever your preferences around =>, to suggest that it’s only a better function is to be plainly reductive. It’s a far more nuanced topic than just a one-to-one correspondence.
There are things to like about =>. You might find that surprising for me to say, since most people seem to assume I hate arrow functions.
I don’t (hate them). I think there are definitely some important benefits.
It’s just that I don’t unreservedly endorse them as the new function. And these days, most people aren’t interested in nuanced opinions in the middle. So since I’m not entirely in the pro-=> camp, I must be entirely in the opposition camp. Not true.
What I hate is suggesting they’re universally more readable, or that they’re objectively better in basically all cases.
The reason I reject this stance is because I REALLY DO STRUGGLE TO READ THEM in many cases. So that perspective just makes me feel dumb/inferior as a developer. “There must be something wrong with me, since I don’t think it’s more readable. Why do I suck so much at this?” And I’m not the only one who’s impostor syndrome is seriously stoked by such absolutes.
And the cherry on top is when people tell you that the only reason you don’t understand or like => is because you haven’t learned them or used them enough. Oh, right, it’s my ignorance. SMH. I’ve written and read literally thousands of =>functions. I’m quite certain I know enough about them to hold the opinions I have.
I’m not in the pro-=> camp, but I recognize that some really do prefer them, legitimately. I recognize that some people come to JS from languages that have used => and so they feel and read quite natural. I recognize that some prefer their resemblance to mathematical notation.
What’s problematic IMO is when some in those camps simply cannot understand or empathize with dissenting opinions, as if there must just be something wrong with them.
Readability != Writability
I also don’t think you know what you’re talking about when you talk about code readability. By and large, the vast majority of opinions on code readability, when you break them down, are based on a personal stance about preferences in writingconcise code.
When I push back in debates about code readability, some just dig in their heels and refuse to support their opinion. Others will waive off the concerns with, “readability is all just subjective anyway”.
The flimsiness of that response is stunning: two seconds ago they were vehemently claiming => arrow is absolutely and objectively more readable, and then when pressed, they admit, “well, I think it’s more readable, even if ignorants like you don’t.”
Guess what? Readability is subjective, but not entirely so. It’s a really complex topic. And there are some who are undertaking to formally study the topic of code readability, to try to find what parts of it are objective and what parts are subjective.
I have read a fair amount of such research, and I’m convinced that it’s a complicated enough topic that it can’t be reduced to a slogan on a t-shirt. If you want to read them, I would encourage you doing some google searching and reading of your own.
While I don’t have all the answers myself, one thing I’m certain about is, code is more often read than written, so perspectives on the topic which ultimately come from “it’s easier/quicker to write” don’t hold much standing. What needs to be considered is, not how much time do you save writing, but how clearly will the reader (future you or someone else on the team) be able to understand? And ideally, can they mostly understand it without pouring over the code with a fine-toothed comb?
Any attempt to justify writability affordances with unsubstantiated claims about readability benefits is a weak argument at best, and in general, nothing but a distraction.
So I roundly reject that => is always and objectively “more readable”.
But I still don’t hate arrow functions. I just think to use them effectively, we need to be more disciplined.
Linters == Discipline
You might be of the (incorrect) belief that linters tell you objective facts about your code. They can do that, but that’s not their primary purpose.
The tool that’s best suited to tell you if your code is valid is a compiler (ie, the JS engine). The tool that’s best suited to tell you whether your code is “correct” (does what you want it to do) is your test suite.
But the tool that’s best suited to tell you if your code is appropriate is a linter. Linters are opinionated collections of rules about how you should style and structure your code, so as to avoid likely problems — according to the authors of those opinion-based rules.
That’s what they’re for: to apply opinions to your code.
That means it’s almost certain that these opinions will, at one time or another, “offend” you. If you’re like most of us, you fancy yourself pretty good at what you do, and you know that this thing you’re doing on this line of code is right. And then the linter pops up and says, “Nope, don’t do it that way.”
If your first instinct is sometimes to disagree, then you’re like the rest of us! We get emotionally attached to our own perspectives and abilities, and when a tool tells us we’re wrong, we chuff a little bit.
I don’t get mad at the test suite or the JS engine. Those things are all reporting facts about my code. But I can definitely get irritated when the linter’s opinion disagrees with mine.
I have this one linter rule that I enabled a few weeks ago, because I had an inconsistency in my coding that was annoying me on code re-reads. But now this lint rule is popping up two or three times an hour, nagging me like a stereotypical grandma on a 90’s sitcom. Every single time, I ponder (for just a moment) if I should just go disable that rule. I leave it on, but to my chagrin.
So why subject ourselves to this torment!? Because linter tools and their opinions are what give us discipline. They help us collaborate with others.
They ultimately help us communicate more clearly in code.
Why shouldn’t we let every developer make their own decisions? Because of our tendency toward emotional attachment. While we’re in the trenches working on our own code, against unreasonable pressure and deadlines, we’re in the least trustable mindset to be making those judgement calls.
We should be submitting to tools to help us maintain our discipline.
It’s similar to how TDD advocates submit to the discipline of writing tests first, in a formal set of steps. The discipline and the bigger picture outcome of the process are what we value most, when we’re level headed enough to make that analysis. We don’t institute that kind of process when our code is hopelessly broken and we have no idea why and we’re just resorting to trying random code changes to see if they fix it!
No. If we’re being reasonable, we admit that the overall good is best served when we set up reasonable guidelines and then follow the discipline of adhering to them.
Configurability Is King
If you’re going to knowingly subject yourself to this finger wagging, you (and your team, if applicable) are certainly going to want some say-so in what rules you’re required to play by. Arbitrary and unassailable opinions are the worst kind.
Remember the JSLint days when 98% of the rules were just Crockford’s opinions, and you either used the tool or you didn’t? He straight up warned you in the README that you were going to be offended, and that you should just get over it. That was fun, right? (Some of you may still be using JSLint, but I think you should consider moving on to a more modern tool!)
That’s why ESLint is king of the linters these days. The philosophy is, basically, let everything be configurable. Let developers and teams democratically decide which opinions they all want to submit to, for their own discipline and good.
That doesn’t mean every developer picks their own rules. The purpose of rules is to conform code to a reasonable compromise, a “centralized standard”, that has the best chance of communicating most clearly to the most developers on the team.
But no rule is ever 100% perfect. There’s always exception cases. Which is why having the option to disable or re-configure a rule with an inline comment, for example, is not just a tiny detail but a critical feature.
You don’t want a developer to just have their own local ESLint config that overrides rules while they commit code. What you want is for a developer to either follow the established rules (preferred!) OR to make an exception to the rules that is clear and obvious right at the point where the exception is being made.
Ideally, during a code review, that exception can be discussed and debated and vetted. Maybe it was justified, maybe it wasn’t. But at least it was obvious, and at least it was possible to be discussed in the first place.
Configurability of tools is how we make tools work for us instead us working for the tools.
Some prefer convention-based approaches to tooling, where the rules are pre-determined so there’s no discussion or debate. I’m know that works for some developers and for some teams, but I don’t think it is a sustainable approach for generalized, broad application. Ultimately, a tool that is inflexible to the changing project needs and DNA of the developer(s) using it, will end up falling into obscurity and eventually replaced.
Proper Arrows
I fully recognize my usage of the the word “proper” here is going to ruffle some feathers. “Who is getify to say what is proper and not?”
Remember, I’m not trying to tell you what is proper. I’m trying to get you to embrace the idea that opinions about => arrow functions are as varied as all the nuances of their syntax and usage, and that ultimately what is most appropriate is that some set of opinions, no matter what they are, should be applicable.
While I’m a big fan of ESLint, I’ve been disappointed by the lack of support from built-in ESLint rules for controlling various aspects of => arrow functions. There are a few built-in rules, but I’m frustrated that they seem to focus mostly on superficial stylistic details like whitespace.
I think there are a number of aspects that can hamper => arrow function readability, issues that go way beyond what the current ESLint ruleset can control. I asked around on twitter, and it seems from the many replies that a lot of people have opinions on this.
The ultimate linter would not only let you configure rules to your liking, but build your own rules if something were lacking. Luckily, ESLint supports exactly that!
So I decided to build an ESLint plugin to define an additional set of rules around => arrow functions: proper-arrows.
Before I explain anything about it, let me just point out: it’s a set of rules that can be turned on or off, and configured, at your discretion. If you find even one detail of one rule helpful, it would be better to use the rule/plugin than not.
I’m fine with you having your own opinions on what makes => arrow functions proper. In fact, that’s the whole point. If we all have different opinions on => arrow functions, we should have tooling support to let us pick and configure those different opinions.
The philosophy of this plugin is that, for each rule, when you turn the rule on, you get all of its reporting modes on by default. But you can of course either not turn the rule on, or turn the rule on and then configure its modes as you see fit. But I don’t want you to have to go hunting for rules/modes to turn on, where their obscurity prevents them from even being considered. So everything comes on per rule.
The only exception here is that by default, all rules ignore trivial => arrow functions, like () => {}, x => x, etc. If you want those to be checked, on a per-rule basis you have to turn on that checking with the { "trivial": true } option.
Proper Arrows Rules
So what rules are provided? Here’s an excerpt from the project overview:
"params": controls definitions of => arrow function parameters, such as forbidding unused parameters, forbidding short/unsemantic parameter names, etc.
"name": requires => arrow functions to only be used in positions where they receive an inferred name (i.e., assigned to a variable or property, etc), to avoid the poor readbility/debuggability of anonymous function expressions.
"location": restricts where in program structure => arrow functions can be used: forbidding them in the top-level/global scope, object properties, export statements, etc.
"return": restricts the concise return value kind for => arrow functions, such as forbidding object literal concise returns (x => ({ x })), forbidding concise returns of conditional/ternary expressions (x => x ? y : z), etc.
"this": requires/disallows => arrow functions using a this reference, in the => arrow function itself or in a nested => arrow function. This rule can optionally forbid this-containing => arrow functions from the global scope.
Remember, each rule has various modes to configure, so none of this is all-or-nothing. Pick what works for you.
As an illustration of what the proper-arrows rules can check for, let’s look at the "return" rule, specifically its "sequence" mode. This mode refers to the concise return expression of => arrow functions being a comma-separated sequence, like this:
var myfunc = (x,y) => ( x = 3, y = foo(x + 1), [x,y] );
Sequences are typically used in => arrow function concise returns to string together multiple (expression) statements, without needing to use a full { .. } delimited function body and an explicit return statement.
Some may love this style — that’s OK! — but a lot of folks think it favors clever terse style coding over readability, and would prefer instead:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
Notice that it’s still an => arrow function and it’s not even that many more characters. But it’s clearer that there are three separate statements in this function body.
Even better:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
To be clear, the proper-arrows rules don’t enforce trivial styling differences like whitespace/indentation. There are other (built-in) rules if you want to enforce those requirements. proper-arrows focuses on what I consider to be more substantive aspects of => function definition.
Concise Summary
You and I almost certainly disagree on what makes good, proper => arrow function style. That’s a good and healthy thing.
My goal here is two-fold:
Convince you that opinions on this stuff vary and that’s OK.
Enable you to make and enforce your own opinions (or team consensus) with configurable tooling.
There’s really nothing to be gained from arguing over opinion-based rules. Take the ones you like, forget the ones you don’t.
I hope you take a look at proper-arrows and see if there’s anything in there which you could use to ensure your => arrow functions are the best form they can be in your code base.
And if the plugin is missing some rules that would help define more proper arrows, please file an issue and we can discuss! It’s entirely plausible we may add that rule/mode, even if I personally plan to keep it turned off!
I don’t hate => arrow functions, and you shouldn’t either. I just hate uninformed and unenforced debate. Let’s embrace smarter and more configurable tooling and move on to more important topics!
The post I Don’t Hate Arrow Functions appeared first on David Walsh Blog.
I Don’t Hate Arrow Functions published first on https://appspypage.tumblr.com/
0 notes
suzanneshannon · 5 years
Text
I Don’t Hate Arrow Functions
TL;DR
Arrow functions are fine for certain usages, but they have so many variations that they need to be carefully controlled to not break down the readability of the code.
While arrow functions clearly have a ubiquitous community consensus (though not unanimous support!), it turns out there’s a wide variety of opinions on what makes “good” usage of => and not.
Configurable linter rules are the best solution to wrangling the variety and disagreement of arrow functions.
I released proper-arrows ESLint plugin with a variety of configurable rules to control => arrow functions in your code base.
Opinions are like noses…
Anyone who’s followed me (tweets, books, courses, etc) for very long knows that I have lots of opinions. In fact, that’s the only thing I’m an expert on — my own opinions — and I’m never at a loss for them!
I don’t subscribe to the “strong opinions, loosely held” mantra. I don’t “loosely hold” my opinions because I don’t see any point in having an opinion if there isn’t sufficient reason for that opinion. I spend a lot of time researching and tinkering and writing and trying out ideas before I form an opinion that I would share publicly. By that point, my opinion is pretty strongly held, by necessity.
What’s more, I teach based on these opinions — thousands of developers in different companies all over the world — which affords me the opportunity to deeply vet my opinions through myriad discussion and debate. I’m tremendously privleged to be in such a position.
That doesn’t mean I can’t or won’t change my opinions. As a matter of fact, one of my most strongly held opinions — that JS types and coercion are useful in JS — has been shifting lately, to a fairly significant degree. I have a much more rounded and deepened perspective on JS types and why type-aware tooling can be useful. And even my opinion on => arrow functions, the punchline of this article, has evolved and deepened.
But one of the things many people tell me they appreciate about it me is, I don’t just state opinions, I back those opinions up with careful, thought-out reasoning. Even when people vehemently disagree with my opinions, they often compliment me on at least owning those opinions with backing.
And I try to inspire the same in others through my speaking, teaching, and writing. I don’t care if you agree with me, I only care that you know why you have an technical opinion and can earnestly defend it with your own line of reasoning. To me, that’s a healthy relationship with technology.
Arrow Functions != functions
It is my sincere belief that the => arrow function is not suitable as a general purpose replacement for all (or even most) function functions in your JS code. I genuinely don’t find them more readable in most cases. And I’m not alone. Any time I share an opinion like that on social media, I often get dozens of “me too!” responses peppered in with the scores of “you’re totally wrong!” responses.
But I’m not here to rehash the entire debate over => arrow functions. I’ve written extensively about my opinions on them, including these sections in my books:
“You Don’t Know JS: ES6 & Beyond”, Ch2, “Arrow Functions”
“Functional-Light JavaScript”, Ch2, “Functions Without function“ (and the preceding section on function names).
Whatever your preferences around =>, to suggest that it’s only a better function is to be plainly reductive. It’s a far more nuanced topic than just a one-to-one correspondence.
There are things to like about =>. You might find that surprising for me to say, since most people seem to assume I hate arrow functions.
I don’t (hate them). I think there are definitely some important benefits.
It’s just that I don’t unreservedly endorse them as the new function. And these days, most people aren’t interested in nuanced opinions in the middle. So since I’m not entirely in the pro-=> camp, I must be entirely in the opposition camp. Not true.
What I hate is suggesting they’re universally more readable, or that they’re objectively better in basically all cases.
The reason I reject this stance is because I REALLY DO STRUGGLE TO READ THEM in many cases. So that perspective just makes me feel dumb/inferior as a developer. “There must be something wrong with me, since I don’t think it’s more readable. Why do I suck so much at this?” And I’m not the only one who’s impostor syndrome is seriously stoked by such absolutes.
And the cherry on top is when people tell you that the only reason you don’t understand or like => is because you haven’t learned them or used them enough. Oh, right, it’s my ignorance. SMH. I’ve written and read literally thousands of =>functions. I’m quite certain I know enough about them to hold the opinions I have.
I’m not in the pro-=> camp, but I recognize that some really do prefer them, legitimately. I recognize that some people come to JS from languages that have used => and so they feel and read quite natural. I recognize that some prefer their resemblance to mathematical notation.
What’s problematic IMO is when some in those camps simply cannot understand or empathize with dissenting opinions, as if there must just be something wrong with them.
Readability != Writability
I also don’t think you know what you’re talking about when you talk about code readability. By and large, the vast majority of opinions on code readability, when you break them down, are based on a personal stance about preferences in writingconcise code.
When I push back in debates about code readability, some just dig in their heels and refuse to support their opinion. Others will waive off the concerns with, “readability is all just subjective anyway”.
The flimsiness of that response is stunning: two seconds ago they were vehemently claiming => arrow is absolutely and objectively more readable, and then when pressed, they admit, “well, I think it’s more readable, even if ignorants like you don’t.”
Guess what? Readability is subjective, but not entirely so. It’s a really complex topic. And there are some who are undertaking to formally study the topic of code readability, to try to find what parts of it are objective and what parts are subjective.
I have read a fair amount of such research, and I’m convinced that it’s a complicated enough topic that it can’t be reduced to a slogan on a t-shirt. If you want to read them, I would encourage you doing some google searching and reading of your own.
While I don’t have all the answers myself, one thing I’m certain about is, code is more often read than written, so perspectives on the topic which ultimately come from “it’s easier/quicker to write” don’t hold much standing. What needs to be considered is, not how much time do you save writing, but how clearly will the reader (future you or someone else on the team) be able to understand? And ideally, can they mostly understand it without pouring over the code with a fine-toothed comb?
Any attempt to justify writability affordances with unsubstantiated claims about readability benefits is a weak argument at best, and in general, nothing but a distraction.
So I roundly reject that => is always and objectively “more readable”.
But I still don’t hate arrow functions. I just think to use them effectively, we need to be more disciplined.
Linters == Discipline
You might be of the (incorrect) belief that linters tell you objective facts about your code. They can do that, but that’s not their primary purpose.
The tool that’s best suited to tell you if your code is valid is a compiler (ie, the JS engine). The tool that’s best suited to tell you whether your code is “correct” (does what you want it to do) is your test suite.
But the tool that’s best suited to tell you if your code is appropriate is a linter. Linters are opinionated collections of rules about how you should style and structure your code, so as to avoid likely problems — according to the authors of those opinion-based rules.
That’s what they’re for: to apply opinions to your code.
That means it’s almost certain that these opinions will, at one time or another, “offend” you. If you’re like most of us, you fancy yourself pretty good at what you do, and you know that this thing you’re doing on this line of code is right. And then the linter pops up and says, “Nope, don’t do it that way.”
If your first instinct is sometimes to disagree, then you’re like the rest of us! We get emotionally attached to our own perspectives and abilities, and when a tool tells us we’re wrong, we chuff a little bit.
I don’t get mad at the test suite or the JS engine. Those things are all reporting facts about my code. But I can definitely get irritated when the linter’s opinion disagrees with mine.
I have this one linter rule that I enabled a few weeks ago, because I had an inconsistency in my coding that was annoying me on code re-reads. But now this lint rule is popping up two or three times an hour, nagging me like a stereotypical grandma on a 90’s sitcom. Every single time, I ponder (for just a moment) if I should just go disable that rule. I leave it on, but to my chagrin.
So why subject ourselves to this torment!? Because linter tools and their opinions are what give us discipline. They help us collaborate with others.
They ultimately help us communicate more clearly in code.
Why shouldn’t we let every developer make their own decisions? Because of our tendency toward emotional attachment. While we’re in the trenches working on our own code, against unreasonable pressure and deadlines, we’re in the least trustable mindset to be making those judgement calls.
We should be submitting to tools to help us maintain our discipline.
It’s similar to how TDD advocates submit to the discipline of writing tests first, in a formal set of steps. The discipline and the bigger picture outcome of the process are what we value most, when we’re level headed enough to make that analysis. We don’t institute that kind of process when our code is hopelessly broken and we have no idea why and we’re just resorting to trying random code changes to see if they fix it!
No. If we’re being reasonable, we admit that the overall good is best served when we set up reasonable guidelines and then follow the discipline of adhering to them.
Configurability Is King
If you’re going to knowingly subject yourself to this finger wagging, you (and your team, if applicable) are certainly going to want some say-so in what rules you’re required to play by. Arbitrary and unassailable opinions are the worst kind.
Remember the JSLint days when 98% of the rules were just Crockford’s opinions, and you either used the tool or you didn’t? He straight up warned you in the README that you were going to be offended, and that you should just get over it. That was fun, right? (Some of you may still be using JSLint, but I think you should consider moving on to a more modern tool!)
That’s why ESLint is king of the linters these days. The philosophy is, basically, let everything be configurable. Let developers and teams democratically decide which opinions they all want to submit to, for their own discipline and good.
That doesn’t mean every developer picks their own rules. The purpose of rules is to conform code to a reasonable compromise, a “centralized standard”, that has the best chance of communicating most clearly to the most developers on the team.
But no rule is ever 100% perfect. There’s always exception cases. Which is why having the option to disable or re-configure a rule with an inline comment, for example, is not just a tiny detail but a critical feature.
You don’t want a developer to just have their own local ESLint config that overrides rules while they commit code. What you want is for a developer to either follow the established rules (preferred!) OR to make an exception to the rules that is clear and obvious right at the point where the exception is being made.
Ideally, during a code review, that exception can be discussed and debated and vetted. Maybe it was justified, maybe it wasn’t. But at least it was obvious, and at least it was possible to be discussed in the first place.
Configurability of tools is how we make tools work for us instead us working for the tools.
Some prefer convention-based approaches to tooling, where the rules are pre-determined so there’s no discussion or debate. I’m know that works for some developers and for some teams, but I don’t think it is a sustainable approach for generalized, broad application. Ultimately, a tool that is inflexible to the changing project needs and DNA of the developer(s) using it, will end up falling into obscurity and eventually replaced.
Proper Arrows
I fully recognize my usage of the the word “proper” here is going to ruffle some feathers. “Who is getify to say what is proper and not?”
Remember, I’m not trying to tell you what is proper. I’m trying to get you to embrace the idea that opinions about => arrow functions are as varied as all the nuances of their syntax and usage, and that ultimately what is most appropriate is that some set of opinions, no matter what they are, should be applicable.
While I’m a big fan of ESLint, I’ve been disappointed by the lack of support from built-in ESLint rules for controlling various aspects of => arrow functions. There are a few built-in rules, but I’m frustrated that they seem to focus mostly on superficial stylistic details like whitespace.
I think there are a number of aspects that can hamper => arrow function readability, issues that go way beyond what the current ESLint ruleset can control. I asked around on twitter, and it seems from the many replies that a lot of people have opinions on this.
The ultimate linter would not only let you configure rules to your liking, but build your own rules if something were lacking. Luckily, ESLint supports exactly that!
So I decided to build an ESLint plugin to define an additional set of rules around => arrow functions: proper-arrows.
Before I explain anything about it, let me just point out: it’s a set of rules that can be turned on or off, and configured, at your discretion. If you find even one detail of one rule helpful, it would be better to use the rule/plugin than not.
I’m fine with you having your own opinions on what makes => arrow functions proper. In fact, that’s the whole point. If we all have different opinions on => arrow functions, we should have tooling support to let us pick and configure those different opinions.
The philosophy of this plugin is that, for each rule, when you turn the rule on, you get all of its reporting modes on by default. But you can of course either not turn the rule on, or turn the rule on and then configure its modes as you see fit. But I don’t want you to have to go hunting for rules/modes to turn on, where their obscurity prevents them from even being considered. So everything comes on per rule.
The only exception here is that by default, all rules ignore trivial => arrow functions, like () => {}, x => x, etc. If you want those to be checked, on a per-rule basis you have to turn on that checking with the { "trivial": true } option.
Proper Arrows Rules
So what rules are provided? Here’s an excerpt from the project overview:
"params": controls definitions of => arrow function parameters, such as forbidding unused parameters, forbidding short/unsemantic parameter names, etc.
"name": requires => arrow functions to only be used in positions where they receive an inferred name (i.e., assigned to a variable or property, etc), to avoid the poor readbility/debuggability of anonymous function expressions.
"location": restricts where in program structure => arrow functions can be used: forbidding them in the top-level/global scope, object properties, export statements, etc.
"return": restricts the concise return value kind for => arrow functions, such as forbidding object literal concise returns (x => ({ x })), forbidding concise returns of conditional/ternary expressions (x => x ? y : z), etc.
"this": requires/disallows => arrow functions using a this reference, in the => arrow function itself or in a nested => arrow function. This rule can optionally forbid this-containing => arrow functions from the global scope.
Remember, each rule has various modes to configure, so none of this is all-or-nothing. Pick what works for you.
As an illustration of what the proper-arrows rules can check for, let’s look at the "return" rule, specifically its "sequence" mode. This mode refers to the concise return expression of => arrow functions being a comma-separated sequence, like this:
var myfunc = (x,y) => ( x = 3, y = foo(x + 1), [x,y] );
Sequences are typically used in => arrow function concise returns to string together multiple (expression) statements, without needing to use a full { .. } delimited function body and an explicit return statement.
Some may love this style — that’s OK! — but a lot of folks think it favors clever terse style coding over readability, and would prefer instead:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
Notice that it’s still an => arrow function and it’s not even that many more characters. But it’s clearer that there are three separate statements in this function body.
Even better:
var fn2 = (x,y) => { x = 3; y = foo(x + 1); return [x,y]; };
To be clear, the proper-arrows rules don’t enforce trivial styling differences like whitespace/indentation. There are other (built-in) rules if you want to enforce those requirements. proper-arrows focuses on what I consider to be more substantive aspects of => function definition.
Concise Summary
You and I almost certainly disagree on what makes good, proper => arrow function style. That’s a good and healthy thing.
My goal here is two-fold:
Convince you that opinions on this stuff vary and that’s OK.
Enable you to make and enforce your own opinions (or team consensus) with configurable tooling.
There’s really nothing to be gained from arguing over opinion-based rules. Take the ones you like, forget the ones you don’t.
I hope you take a look at proper-arrows and see if there’s anything in there which you could use to ensure your => arrow functions are the best form they can be in your code base.
And if the plugin is missing some rules that would help define more proper arrows, please file an issue and we can discuss! It’s entirely plausible we may add that rule/mode, even if I personally plan to keep it turned off!
I don’t hate => arrow functions, and you shouldn’t either. I just hate uninformed and unenforced debate. Let’s embrace smarter and more configurable tooling and move on to more important topics!
The post I Don’t Hate Arrow Functions appeared first on David Walsh Blog.
I Don’t Hate Arrow Functions published first on https://deskbysnafu.tumblr.com/
0 notes