#fs clone fails
Explore tagged Tumblr posts
Text
Fs_Clone Fails With "ERRORMSG: File instantiation failed"
@oracle @oracleebs @oracleerp #oracle #oracleapps #oracleapplication #oraclebs #oracleerp
Fs_clone fails with the following error: It has also been found that fs_clone fails when verifying ports: Cause: Running fs_clone fails with initiation failed. *******FATAL ERROR*******PROGRAM : (<DIR>/oracle/fs1/EBSapps/appl/ad/12.0.0/patch/115/bin/txkADOPPreparePhaseSynchronize.pl)TIME : Wed Jan 3 14:57:29 2018FUNCTION: main::instantiateFile [ Level 1 ]ERRORMSG: File instantiation…
View On WordPress
0 notes
Note
hiiiii min i'm bored can you ramble about philosophy
it’s been a very long day for me and i am very tired but fortunately for you that long day has been mostly comprised of Philosophy Lecture and Philosophy Research so in short yes i can ramble at you about philosophy
hello everybody. today, in order to get the facts on it straight in my mind so I don’t fail my upcoming test, i will explain the Raven Paradox.
The first thing you need to know what, generally speaking, philosophical paradoxes are. Basically, it’s when you build an argument by taking a bunch of statements that sound perfectly reasonable standing on their own, and proceed to take a conclusion that follows 100% rationally from all of those statements. But the conclusion just so happens to be completely absurd.
Got that? Okay, neat. Now we can get into the meat of the paradox (which was originally proposed by Carl Hempel in the 1940s, by the way, in case you feel like looking it up more). This paradox has two main premises (statements) and a conclusion, so this shouldn’t take toooooo long.
the first premise is known as Nicod’s Criterion, and is basically the idea that if you observe something occurring, such as watching sodium salt burning yellow, or seeing a white cat, you are providing support to the hypothesis ‘all sodium salt burns yellow’ or ‘all cats are white’. now, obviously this isn’t true, because... you know, all cats aren’t white. but that’s not really the point. we don’t actually think that all cats are white, but the fact that we’ve seen a white cat lends credence to the hypothesis that they are.
correspondingly, seeing a non-white cat undermines the idea that all cats are white, and is evidence against that theory.
so in fancy philosophical scientific terms, Nicod’s Criterion can be explained thusly:
Each observation (statement) of an F that is G confirms, or supports, the generalization ‘all Fs are Gs’; and
Each observation (statement) of an F that is not a G disconfirms, or undermines, this generalization
seems reasonable, right?
you may at this point be narrowing your eyes at me and going ‘okay yes this does make sense, but it seems so oddly basic and specific that there’s got to be something subtly wrong about it. you’re going to use this against us later on aren’t you’
now, would i do that to you
would i
...the second premise!! is known as Hempel’s Equivalence Condition!! (yes he named this after himself. i endeavor to be that confident in my theories one day) in fancy philosophy terms, this is basically it:
any observation statement that confirms/disconfirms a statement P equally confirms/disconfirms any logically equivalent statement Q
which is. hey. that’s hard to wrap your brain around, huh. let me try to break it down a bit
an observation statement is just an empirical observation about the world around you in statement form. ‘the sky is blue’ is an observation, ‘i got out of bed at 7AM this morning’ is also an observation. ‘patton is an unsympathetic character’ is not an observation statement, because it’s subjective and open to debate. ‘getting out of bed at 7AM this morning was a mistake and i’m an idiot for doing so’ is also not an observation statement but it is true and i’m very tired. i should’ve slept in
‘the sky is blue’ would confirm the statement/hypothesis ‘the sky is always blue’ (in the way that i described in the premise above. it doesn’t necessarily mean that it’s correct, it just adds support to the idea that it is.)
and finally, a logically equivalent statement to ‘the sky is always blue’ would be ‘it is not the case that the sky is not always blue’
you may be saying ‘but that’s the same statement, it’s just rephrased!’ to which i will answer, yes. yes it is. logically equivalent statements are pretty much that. they have to mean the same thing. ‘frogs are neat’ and ‘toads are neat’ are not logically equivalent, even though they may have the same kind of root cause - that’s not enough, they have to be pretty much essentially the same statement.
so basically, if you have an observation statement that confirms a hypothesis, then it’s going to also confirm a logically equivalent hypothesis. if i observe a white cat, it will confirm the two hypothesis ‘all cats are white’ and ‘it is not the case that all cats are not white’
okay! that’s our two main premises taken care of. we got past all that fun hard stuff, good job us! to summarize:
PREMISE ONE: Observations of Fs that are Gs confirm, while observations of Fs that are not Gs disconfirm, the generalization ‘all Fs are Gs’
PREMISE TWO: Any observation statement that confirms/disconfirms a statement P equally confirms/ disconfirms any logically equivalent statement.
(if i didn’t explain any of this well enough/you’re still confused, feel free to let me know and i’ll try to break it down better)
Now, onto the actual paradox.
let’s say that we’re investigating the hypothesis ‘all ravens are black’, for some reason. and let’s say that we find a black raven, and we observe it, and we get some support for our theory because, see Nicod’s Criterion, that’s how this works! Hell fucking yes!
but oh no, here comes the part that it took me a week to wrap my head around properly.
the thing is, the statement ‘all ravens are black’ is logically equivalent to the statement ‘all non-black things are non-ravens’. they’ve got equal truth values. if one’s got to be true, so does the other
here, i’ll do a shitty venn diagram.
so, idk if y’all did the whole venn diagram unit in math class, but basically, if you shade out an area on the venn diagram, it means that anything that’s shaded out can’t possibly exist. so, if i’m saying ‘all ravens are black’, that means that non-black ravens can’t exist. so i’d do this
ooh, i love those jpeg artifacts.
seems reasonable, right? i’m not saying that black things that aren’t ravens can’t exist, or black ravens can’t exist, or that anything else can’t exist. i’m just saying that ravens that are not black are not real, and therefore have been shaded out of my venn diagram universe.
if i took the og diagram and tried to apply the statement ‘all non-black things are non-ravens’ to it... i mean, i won’t even bother putting a new diagram up, because it’s the same one. non-black ravens don’t exist, so the only things left in the black circle are ravens + every other black thing to exist.
so yeah. that’s why those statements are logically equivalent. i sidetracked myself a bit there because i wanted to explain that bit properly since it didn’t make any sense to be initially. anyway. the root of the paradox.
so if any observation that confirms the statement ‘all ravens are black’ also confirms the statement ‘all non-black things are non-ravens’... that means that the reverse is true, and if a statement confirms that ‘all non-black things are non-ravens’, then it confirms that black ravens are the only sort of raven to exist.
which means that staring at a white shoe confirms it.
or a pink purse. or a rainbow scarf. or... i’m running out of random examples, which is weird because there are so many things that are not black that aren’t ravens. it’s ridiculous. it means i can investigate this hypothesis just by sitting in my room and staring at everything that’s not black and nodding sagely to myself and going ‘ah yes. my raven hypothesis. it’s all coming together’
or, to rephrase it in a tone more appropriate for this blog:
i am out here investigating the hypothesis ‘the only occupants of Thomas Sanders’s house are Thomas Sanders’. the logically equivalent corresponding statement is ‘anybody who does not live in Thomas Sanders’s house is not Thomas Sanders’.
i could investigating this by going to his house and checking through every room and nodding to myself as I confirm that Mr Sanders and all of his weird cosplay clones are indeed living there and arguing with each other. or I could just go into another house somewhere and look at all the non-Thomas-Sanders people living there and noting to myself that they are not in fact Thomas Sanders, and that would be pretty much the same amount of evidence for the theory.
there’s other layers and angles to this, including the whole thing with ‘well if i observe everything that is not black in the world ever and never see a raven, then i’ve proven the hypothesis, haven’t it?’ which i find really funny for various reasons, but good god this has gotten long. if you’re still here and you actually followed along with any of it, i applaud you.
i am tired. i should go have a shower. i also find this particular paradox really weirdly fascinating so i don’t actually regret rambling on for several pages about it!!
15 notes
·
View notes
Text
The Links as D&D Characters, Part 5: Shadow Link
Inspired by a question I saw on @hauntinghyrule ‘s blog. My character analysis and thoughts on what character class the boys would be if they were D&D characters, and why. Also! @atinybitweird has been drawing the boys D&D designs, and she’s doing really great! I’ll link to her posts on the individual analysis as well as reblog them here so look out for those : D
Green / Red / Blue / Vio / Vaati / FS Zelda
As a preface, there won’t be any doubles on classes except in the case of dual-classing, and in those cases the first class I talk about my justifications for will be the primary class (i.e. the class they would have chosen at level one). My choices will be based on the character theming and personalities, even though at a base level it would be easy to say “they’re all paladins, duh” because of the implied “holy knight chosen by the gods to eradicate evil” concept. For Shadow, there are plenty of shadowy-themed D&D subclasses to choose from. Kaenith mentioned Way of the Shadow Monk in his initial answer on his blog which is actually not a bad pick for him. However, I wouldn’t initially say that Monk is the class for Shadow, because he’s shown relying on magic much more than martial arts (like a Monk would) or even swordplay (like the other Links). He has a sword in the manga, but I think it’s mostly for show- a visual parallel to Link, who does use his sword to fight. This is just a small part of the big reason why I’ve chosen the particular classes and subclasses I have for Shadow, so lets look at the reason as a whole: Shadow’s origin, and how it ties well into the Sorcerer class.
The Four Swords manga and the Four Swords games don’t give us a lot of information about how Shadow Link was created (if he was born vs conjured like Dark Link) and also what exactly the Shadow Realm is. We never actually see the realm that Shadow came from (except for the Erune arc in the manga, and only a small town) so we have no idea if it is a true shadow version of Hyrule, like the Dark World/Lorule (if you believe they’re the same place) are. Furthermore we don’t see any evidence that there are others like Shadow Link, like we do with Lorule with Ravio being a parallel to Link and Hilda being a parallel to Princess Zelda. There’s nothing pointing to the idea that Shadow was born and raised the way a normal kid would be, and so the most logical conclusion canon-wise is that he was literally conjured from Link’s shadow. Magic would be weaved into every fiber of Shadow’s being, and we see this evidenced in the manga because he wields it naturally and easily against the Links. Sorcerers in D&D can be born as well as made, but the key thing that separates the magic sorcerers use from the magic used by wizards, bards, druids, clerics, and warlocks is that a sorcerers magic is innate, often carried through a bloodline or via transforming from the latent energy of a place. In this case, Shadow was literally made with the arcane magic he controls. Xanathar’s Guide to Everything introduced a Sorcerous Origin called Shadow Magic where the arcane magic is sourced from the Shadowfell (i.e. Shadow Realm for authenticity to Zelda), either through being exposed to and transformed by the energy of the place or from being descended from a denizen; neither of these situations are applicable to Shadow BUT I think being created from the source magic should and does count. The majority of Sorcerer abilities come from their Sorcerous Origin, but there are two features that all sorcerers regardless of origin gain that I think fit Shadow based on his story in the manga. Font of Magic and Metamagic can be linked to the Dark Mirror being Shadow’s source of life and magical power because of the abilities that Shadow is able to display while being linked to it. Font of Magic gives Shadow access to Sorcery Points, which he can spend to create new spell slots, or sacrifice spell slots to gain more sorcery points which effectively translates to giving himself more power to wield in battle. Metamagic lets him twist the magic of his spells to suit his own needs, using sorcery points to do so. It can let him double the range of spells, double the spells’ duration, potentially do more damage on a hit and target more than one opponent with a ranged spell that normally only targets one creature. I’m choosing to translate this as him getting a boost in power and flexibility that he normally wouldn’t have without the power of the Dark Mirror (though depending on your interpretation of post-manga shenanigans he could have these abilities anyway because of whatever method brought him back allowed him to have them). Back to Shadow Magic though. Thematically it makes the most sense: Shadow Link is created from shadow magic and thus is a Shadow Magic Sorcerer. But the abilities here are what we want to look at to see if it really fits. At 1st level, Shadow Magic gives Shadow a darkvision range of 120 feet, and the Strength of the Grave ability means he can charm his way out of death. That’s not entirely accurate- the actual text says he can take a Charisma saving throw and attempt to equal or exceed a target number equal to 5 + [amount of damage taken], and drop to 1 hit point instead of 0 if he succeeds. I think this makes sense- if he’s a shadow, he’d be able to slip out of battle or narrowly avoid life-threatening attacks just by the art of deception; this isn’t necessarily supported by the Sorcerer class itself, but if you mix the game canon into the manga canon, Shadow can technically clone himself and use those copies to his advantage. At 3rd level, he learns the Darkness spell without it counting against the amount of spells he knows, and he can cast it with either sorcery points or a spell slot (he can see through the effected area of the spell if he casts it using sorcery points). At 6th level, he can spend sorcery points to summon a shadow creature that effectively acts like an attack dog, which he can sic on a creature within 120 feet of him. Shadow is shown leading an army of monsters in the manga, so the Hound of Ill Omen feature actually lends itself well to that image- maybe one of the creatures he used to attack Hyrule Castle was his magically summoned shadow hound. It isn’t that far-fetched of an assumption to make. Shadow Walk lets him teleport through darkness and dim light up to a distance of 120 feet, which is an ability he already portrays in the manga and in the games. The only Shadow Magic ability he doesn’t get to benefit from is Umbral Form, and that’s because I want to call a parallel to Link that I think is fitting for Shadow’s role as his foil in the story. Shadow is not a copy of Link- I don’t want anyone to get confused by what I’m saying. However, he is still Link’s shadow, the reflection of everything Link could have become if he wasn’t the hero, didn’t grow up with all the people around him who loved him and supported him. Shadow’s main motivation in the story is loneliness and the desire to be recognized, but who is going to recognize him if he doesn’t make himself recognizable? I talked at length in my analysis of Green’s class about how Paladins take oaths that serve as pillars for their conduct and core beliefs as paladins, but what happens if you don’t have any of those beliefs or you did have them but chose to cast them away? In the Dungeon Master’s Guide, it describes a class option for Paladins called the Oathbreaker: essentially a paladin who has abandoned or broke their sacred oaths. Shadow probably never had any oaths to begin with, but he wanted to be recognized the way Link was, and so I think he chose to take the mantle of Paladin without really understanding what makes Link (Green) a true Paladin. He has to take at least 3 levels in Paladin to subclass as Oathbreaker, and that unlocks light and medium armor, shields and all weapons for him to use in combat. It also unlocks spells like Hellish Rebuke, Inflict Wounds, and if he takes up to 5th level in Paladin, the Crown of Madness spell. He still gets all of the normal Paladin abilities, but his Channel Divinity options are kind of the opposite of Green’s: He can control undead creatures with it, or use Dreadful Aspect to create an aura of fear around himself with a radius of up to 30 feet. Depending on how you look at the option of Shadow being redeemable, there is an option for Oathbreaker Paladins to “atone” for their evil actions as an Oathbreaker. They lose the Oathbreaker features and gain the features of a Sacred Oath, and I can’t think of a more fitting tribute to his character journey than him becoming an Oath of Vengeance Paladin from the Player’s Handbook. It lets him fill a different niche of paladin than Green does, and takes his character into account in regards to the Tenets of Vengeance: Fight the Greater Evil (Faced with a choice of fighting my sworn foes or combating a lesser evil, I choose the greater evil). No Mercy for the Wicked (Ordinary foes might win my mercy, but my sworn enemies do not.) By Any Means Necessary (My qualms can’t get in the way of exterminating my foes) Restitution (If my foes wreak ruin on the world, it is because I failed to stop them. I must help those harmed by their misdeeds) Taking Oath of Vengeance in this way would replace Hellish Rebuke, Inflict Wounds and Crown of Madness with Bane, Hunter’s Mark, Hold Person and Misty Step, and the Channel Divinity features include Abjure Enemy (inflicting fear on a targeted creature) and Vow of Enmity (basically pointing at an enemy and saying “I choose you” and then he gets to attack them with advantage for a minute [10 rounds of combat]). In conclusion, Shadow ends up as a dual-classed Shadow Magic Sorcerer/Oathbreaker Paladin (later changing to Oath of Vengeance Paladin to account for character growth).
#I like the fact that paladin has the option to go apeshit and evil#and likewise change from evil and apeshit to following some sort of moral code#none of the other classes have that distinction#i mean i GUESS you could change your wizard school if you thought that Divination wasn't working for you but you'd like to try Illusion b/c#that's basically the equivalent of changing your major#but you couldn't do that with sorcerer#i think it would only work if you and your dm really hashed out WHY said character would make such a huge choice to switch patrons or gods#or fighter types or whatever else#but with paladin there are actual rules#sorry im gay for dungeons and dragons#four swords#shadow link#character analysis#dungeons and dragons
32 notes
·
View notes
Note
If you have ideas already for what each Hero would test Link on, you can ignore this. But one lesson could be to not be afraid to cut loose and go all out from time to time. As for the teacher, either TP Link (Wolf form and ferocity) or Child Time Link (Fierce Deity Mask.) could teach it. Keep up the great work!
Thank you! As for the tests I didn’t really think of each of Link’s past lives teaching him anything specific but it does make sense that they would. o3o
Hmmm... Actually I’m not entirely sure what each of Link’s lifetimes could teach him specifically but before I figure that out, lemme hash out all the lifetimes he’ll actually encounter in the trials:
-Goddess’ Champion (SS): The first lifetime Link ever had; a difficult fight but not the most difficult opponent in the Trials, the second to last “boss fight”. Probably the most straight-forward fight in the Trials.
-Hero of Time (OoT and MM): Probably the most difficult opponent in the Trials due to his use of the Masks and the Ocarina. Switches often between the body of a child and an adult but would probably stop in the teens at the end of the battle
-Hero of the Twilight (TP): Would fully utilize his wolf and human forms and will encourage Link to do the same. Wears Midna’s helmet as his own and is the only incarnation who seems to have a deeper grasp on magic aside from the Hero of Time.
-Champion of Wind and Sea (WW, PO): One of the few of the Trials to be shown as a child, I’d imagine his fight to be centered around ship warfare and the ability to stop time for brief periods
-Hero of the Sword (MC, FS,): Second incarnation to be depicted as a child, has the ability to make upwards to 4 clones of himself and animating his bird-like hat to be a weapon in its own unique way.
-Captain of Hyrule (HW): Not too sure if I’m gonna add this one, but I’m thinking about it. Of all the incarnations he’s the only one to lead an army into battle and utilizes that in his battle.
-Champion on Hyrule (BotW): The final incarnation of the Trial and the last lifetime Link had before he was born again in the current timeline. I’d imagine his fight is unique in that it doesn’t actually start with one: he has a long chat with his future self about the fear of failing... and actually having that fear being realized. If there is a fight to be had, it’ll be one that’s impossible to beat at first: Link would be beaten and defeated a few times, only to have to start all over again. But eventually the hopelessness gives way to a reminder that he isn’t as alone as he thinks and that it isn’t just him who’s fighting for the world: he has his friends and allies to back him every step of the way.
----------
A work in progress but yhuh, there ya have it! Now that I’ve gotten some idea of who the incarnations will be I think I have a few ideas of what the main Trial they represent would be. O:
#au#the legend of zelda#loz#legend of zelda#loz:nm#legend of zelda: a new mythos#headcanon#nintendo headcanon
57 notes
·
View notes
Text
2017
I haven't made a big long personal post in a good while, but I wanted to have my thoughts on this year written down somewhere, at least. Apologies if you’re on mobile, it’s massive.
Overall.....god, I don't know. What a strange year. A lot of it feels blurry, to be honest. Obviously, politically, globally, just fucking terrible. Everyone talked about not getting numb to it, but really that's where I am. I still see things and I still get angry, but it's not like the beginning of this year. Back then I was really wanting to get active and try to bring about some sort of change, but I really quickly realized it's not really for me. I mean, there's a reason I want to work in social work - obviously, I want to help people. But I want to do it on that one-on-one, intimate basis. Which makes sense, considering what inspired my interest in the career was how often I caught myself doing it with friends. But trying to influence widescale change, protesting, educating, planning action, it's just not for me. I don't have the energy. It's why I've phased out just about all politics from my social media. I want to, tbh I need to, be able to come here for fun and to laugh. I know there's terrible stuff in the world, and in a few years I'll be able to do something about it - but that something is helping others make it through hard times. I don't think I can handle trying to stop the hard times outright. But we'll see. Working with policy is still a thought.
Speaking of school, god, I graduated. What the fuck? And only two semesters late, not even a whole year. Still class of '17 like I was supposed to be. Getting kicked out of the Social Work program was definitely a tough blow. Especially considering I could've prevented a lot of it if I'd just worked on my mental health earlier, or at least been on top of getting mental health drops and whatnot. But as it is, I just couldn't overcome my mental illness enough to finish. I passed two of four classes last fall, one of which was my third time taking it, and the other two were Fs and that was that. No idea what to do, I took spring off. Spent a lot of time watching Star Wars: The Clone Wars.....Gilmore Girls.....The X-Files........ not a lot of time working on myself. But it at least gave me the time to see a doctor and get a prescription, and this time it actually works. Also found out I'm bipolar which....makes sense. Hard not to feel like I wasted that semester, but if I'd tried to take classes I would've just failed anyway. I did what I had to do to reset and come back strong, and I have to keep telling myself that.
And I guess I did come back strong. Honestly, summer was great. I got I think all As and Bs? I showed up to my one in-person class every week, which was definitely a change for me. And online classes were actually pretty great. I'm really fortunate to have gotten them because with dysphoria there's no way I was going to feel okay enough with my appearance to show up five days a week to classes. Sociology turned out to be not so bad an alternative to Social Work after all. It's kinda dry and less practical, but it's definitely got some interesting stuff in there and I found enjoyment in it. And honestly I think my setting was a huge influence too. I got so much sunlight in my room where I was living, the town was empty and it felt so great, and I even got to genuinely enjoy coming home to my roommates sometimes now that I was medicated. Really disappointed that last one didn't come sooner, for what that's worth. I always loved the idea of having a nice apartment with friends and a pet and I barely got to appreciate it while I was there. But in any case, summer was good. I did good.
Fall...........not so much. Had to convince a teacher not to penalize me for being there just about literally never. Even got her to give me an extension on an exam because of my mental health. You can get pretty far if you get into detail tbh. Overall, not terrible though. I passed everything, at least. Even if I did lose a whole letter grade in my Research Methods class because my fucking last assignment failed to upload and I didn't realize it until final grades were out. But I guess I'm proud that I finished. I stopped taking my meds pretty quickly as self-harm or probably an attempt at self-sabotage because I was terrified of graduating but I knew it had to come at some point and so I finally did it, for better or worse. Had a hell of a lot of breakdowns along the way......some fights......was difficult being surrounded by people who were happy for me when the whole afair was a miserable one in my eyes. Still is. I try not to think about it. On one hand, it's kind of cool that I actually have a real genuine degree now. But also, all the talk of graduate school which I never applied to. Was too stressed with the semester at hand already. And frankly I don't know if I want to go still, which I can't imagine having to tell my parents. And if I do go, no idea how I'm gonna afford it. My parents helped with undergrad but now I get to figure it out for myself, which doesn't make it too attractive anyway. And worse, since I'm out of school until at least fall when I can get into the Master's of Social Work program (hopefully.......if not at FSU then at least maybe at UCF) I gotta figure out a job, and that's even more fucking terrifying. Also, still off my meds.
Jumping off my meds, there's my transition which has been....??? I saw a dermatologist about my hair loss (under the assumption that I'm just a man who misses his hair or whatever) and was using rogaine and some vitamin supplement or something for a while. It seemed to be working. Stopped the rogaine eventually just cause I really hate the oily feeling of it on my head and the way it makes my hair all greasy-looking, and stopped the pill when I stopped the rest of my meds. Which sucks. Wild that I could just stop considering how many breakdowns I had earlier this year when I would get out of the shower and could see with my hair wet and slicked back how bad my bald spots were looking. It's still distressing to me, but hopefully I'll get back to a routine. Other than that, I got turned on to a trans endocrinologist in Orlando I'm gonna try to go see. If I'm lucky, she might have a solution for my needs. At the very least, it'll be good to see someone who understands the experience and who I can be open with about wanting my penis without them being like wow.......so you're not trans, cool, no meds under any circumstance bye.
And then......there's my parents still not getting anything right. It's been a year and a half. Not a single time have I been gendered correctly or called by the correct name. My mom even went and pulled her dumbass move of telling me how much she doesn't like my name. That's lovely. Yet two of my aunts are trying really hard, and it means a lot. One texted me to know if it was still okay to call me by the nickname she used to have for me. And when a trans person was shot and killed she texted me just to say that she loves me and accepts who I am. It was sweet, especially considering a few years ago she did not at all have a lovely reaction to her son being gay. But she's a (former) cop so I don't care that much. But my other aunt, at her Christmas party she greeted me with "there's my girl" and has been trying hard to use my name whenever she can, since I came out earlier this year. It's nice. Although meanwhile, the political climate's put me back into the closet in the rest of my life. I wasn't out in my classes, I've barely painted my nails which has always been a really subtle way to affirm my gender, I've dressed masculinely basically always. Sucks a lot.
Celebrated two years with Lola. Don't know what much to say about it. I think I've realized more clearly as time goes on that I'm just.....very laidback about relationships? Which is almost for sure informed by how all-out I went on my first one and how that blew up. But it's just kinda an attitude of like, yeah this is nice. I like the consistency. It feels good to love someone. But I don't do too much to express it outright and I don't feel enamored like other couples I see. Which sometimes makes me feel like I'm not a good partner in general, or especially not for Lola since they do really enjoy those direct expressions of love. Had a good few breakdowns about it. Realized I went from, with my first relationship, wanting my partner to fix me, to now wanting to be able to fix my partner. And I beat myself up for not being able to. Lots of feelings of not being good enough. Still can't shake them. But, it's a good thing overall. I'm glad to have been with them for so long. Maybe next year I'll overcome that feeling that I should just break up with them for their good because I'm a bad partner.
What else....... found a really cool trans girl's music back early this year. Kicked up a big desire to make my own music that lasted for a while. I wrote a few songs' lyrics but I think I got overwhelmed with other things as well as being embarrassed by my own art tbh and that all died down. Found another cool trans girl a week or so ago and it's kinda back. I just would love to express myself through music, it feels more right than drawing ever did. And I want to be able to mean something to other trans girls the way these two do to me. Them being out here being successful artists and being such cool people puts a lot of confidence in me. Tried drawing again a bit too, for that matter. I think, really really slowly, I'm coming to find enjoyment in it again.
Think I came to be pretty certain in self-diagnosing as autistic. Had been toying with the thought last year and started thinking really seriously in summer and after letting it simmer for some time I think I'm comfortable. It feels really good to be able to have that label, it feels validating. I can actually attribute some of my "weird" personality traits and behaviors to something. Probably especially nice because I know so many autistic people who've really shaped a positive view of it. It's something I can be happy to call myself.
Lost my cousin. That was rough. Drank himself to death because his mental health was so bad. And his piece of shit fucking ex and his piece of shit kid tenant both enabled it. My mom texted me to ask what I was up to - she never texts me, always calls me even though I hate it. I knew something was up. Checked Facebook, saw my other mom checked in at the hospital cause she compulsively checks in everywhere. So I knew. Was hard to feel sad, to tell the truth. He was living such a terrible life, suffering so much.....couldn't help but feel he was better off. But god, my mom didn't take it well. Especially being saddled with handling all the legal stuff. Ended up diagnosed with depression earlier this month. It's a lot. He was around her age. I think with all their parents gone and now their generation's losing its first members, my parents are having a hard time of it. I am too, to tell the truth. The thought of losing them is terrifying.
Hmm.....had my life changed by a video game......who would've thought. Night in the Woods was something I've been looking forward to for years. The supplemental games that'd come out in that time really felt right up my alley, in terms of tone and emotional content. And the game totally delivered. Its content didn't necessarily directly connect to the specific ways it affected me, but it definitely did. Like Mae leaving college, Bea blowing up on her about it, that wasn't really framed as trying to say to stay in college, but it did get me to stop and really thinking about what I was giving up if I left like I was considering. Just generally the focus on mental health, on finding meaning in the world, finding that something to hold onto at the end of everything. Mae's whole speech in the hole. It got me thinking about myself, my health, my life, it gave me a framework to examine my life in a way that genuinely had a profound effect on it. I literally don't think I would've graduated if not for this game. It helped keep me alive. It means so, so, so much to me. Unlike any work of art ever has.
Also played some other video games, to swing to a totally different tone than the last paragraph. Namely, the entirety of Metal Gear. It was a really fun adventure that took the entirety of the summer playing them back to back, but I had a great time. One of the best series I've experiences and I loved finally getting to see what all the fuss was about. It was everything I hoped for and then some. Suprisingly a big highlight of the year.
Another highlight, got to see Diet Cig in concert. Told Lola when it was announced that no matter what happened that day I was going to that concert and wouldn't you know it, they just go and get invited to an award ceremony that night. Still went to the concert! I got to chat with the band and mentioned that and they were like....oh! oh no! But Lola was cool with it, they knew how much I love that band and they came over after the ceremony anyway. Stood right up in the front, sang my heart out, got a signed poster, it was a really incredible night.
Good year for video games. Breath of the Wild, Sonic Mania, Night in the Woods, Samus Returns. Got a Switch for Christmas so I can add Mario Odyssey and Mario Kart 8 to the list too now. Not to mention the Switch itself. I'm still so enamored with the concept. It's a genuis piece of technology. Good year for music too. Nice number of artists I really like put out new stuff and it was all great.
Surely there's more to say but it's all I've got coming to mind.
I really love New Year's Eve. It's my favorite holiday. There's something really special to me about an entire holiday just to celebrate another lap around the Sun. It's the kind of thing you'd see in one of those posts about aliens who are fascinated with silly human concepts. This is one of those concepts. It's really kind of a meaningless event, but it's cute that we made it mean something. And I guess I like being able to segment time in a sort of concrete way. Taking the time to reflect is nice. Reflection is important and I don't think I do it as much anymore as I used to, but this time's a find opportunity. And tomorrow, I get to put it all behind me.
Resolutions......I'm not big on because I never keep them. Last year was work out so I can get rid of my fat cause if I don't have fat, testosterone can't keep putting it in masculine places i.e. my belly. Also strong just cause I'm extremely week, like it's a regular inconvenience. Guess I'm gonna try that one again. Want to get things moving with my transition too. Even if I see this endo and she says there's nothing she can give me that will meet my desires, at least I'll have tried and then I can figure out where to go from there. Number one resolution though is to devote time to developing skills. I don't want to keep spending all of my time playing video games and watching TV. I want to relearn the guitar, I want to get back in practice with the keyboard, I want to learn the harmonica. I want to practice my singing and improve it. Learn to record music and write songs. Maybe try by the end of the year to make at least one, even if it's a cover. I started using Duolingo to relearn Italian, and I want to keep practicing that because it's just fun to know another language and it feels good to have that skill. Maybe I'll try drawing more. Playing video games and watching TV, it all feels too passive. Even though technically I'm working on skills when I play TF2 or Overwatch. But I want to focus on others more.
All in all, a rough year. Weird year. It was hard to get through for sure. Somehow, amazingly, still not the worst year of my life. Which.....was a title getting passed down to every new year before. So maybe that's why it feels so odd. Hopefully the start of a trend though. It's certainly been a ride, 2017. Here's to a better, happier, healthier 2018.
4 notes
·
View notes
Text
As I said it’s a fusion crossover between Homestuck and Star Wars. It’s around the clone wars era, but warning! I haven’t actually seen the clone wars yet. Hopefully when I’m less swamped with work. So this is gonna be fun.
So to get them out of the way, first of all, the Alternian empire originates in the next galaxy over from the Star Wars galaxy. I promise the trolls ARE involved in this mess, but for now we’re gonna put a pin in ... all that. As of the clone wars era the two galaxies have not interacted in any significant ways. Beyond that it’s... tbd.
So let’s talk about the kids. In Homestuck canon, the kids are clones. In Star Wars canon, as far as I can tell, there’s some Thing about Force sensitives not being clone-able. One of the thoughts that started this was like... how’d they find that out? How’d they figure out that you can’t clone Force sensitives? Like, theyd have to have done experiments right? Someone had to have tested it.
So the Timeline of What’s Relevant (not the story) starts out something like 20 or so years before the clone wars. The Kaminoans have just tried and failed a few dozen times to clone Force sensitives (hereafter shortened to FS), and they say fuck it we got other things to do and move on to other projects. A human intern is like hey wait no this is important but no one on Kamino cares she’s just some intern. Her last name is Lalonde.
Lalonde really wants to do this research. So she hires a mercenary (last name Strider) to fuck shit up and distract from her stealing all the info about the FS cloning project, and the two of them get the hell out of dodge. (Kamino covers this up. Has there ever been a security breach prospective client? Oh certainly not. We’re perfectly secure.) Now Lalonde needs funding so she and Strider go find an rich business woman (last name Egbert) to provide financial support. Last ingredient is a location. They need somewhere really out of the way with as close as possible climate conditions to Kamino. Don’t wanna introduce uncontrolled variables y’know? And who better to find a place like that than an explorer (last name Harley).
Happy 4-13 y’all. I’ve decided to do something this year. I’ve got so many AUs and fic ideas bouncing around in my brain, and rarely do they get recorded, let alone made accessible to anyone other than me. I started working on this idea ‘round a week ago and I figured what the hell, it’s 413, I may as well make the record here where y’all can see it rather than in the notes app on my ipad.
welcome one and all to a homestuck star wars crossover I’m tentatively calling “Forcestuck”. Better name pending.
5 notes
·
View notes
Text
Supernatural/Star Wars Crossover AU:
Dean is a force sensitive. His mother is killed by a yellow-eyed Sith when she tries to stop that Sith from corrupting Sam. John’s force powers awaken in that stressful situation and he starts to train himself, Dean and Sam as they search for ways to find and kill the Sith who killed Mary. They meet a few other force-sensitives along the way. John ends up killed by the Sith, and Sam starts using his emotions with his force powers while Dean tries to keep them both in the light.
An important thing at this point is they’ve been dealing with people who are force-sensitive, but too weak in it for the Jedi to care about. (excepting of course the Sith, they’re actually powerful but nobody believes they still exist)
When the yellow-eyed Sith cuts off Sam’s hand and leaves him to die, Dean tries to fight him, and starts to lose. But then he gives in to his hate, and wins. He has fallen to the dark side, but his brother is safe, and the Sith who killed their parents is dead.
They meet another FS named Ruby, and she seems pretty strong. Sam likes her but Dean doesn’t trust her- she’s got too much of the dark side in her. And she’s dragging Sam down with her. Their friend Bobby, some crazy old hermit who fixes up old ships at his junkyard on the outer rim, agrees that she’s dangerous.
But she says she knows a way to bring Dean back to the light, and so Sam keeps her around.
Dean disappears. He’s kidnapped by another Sith. Lilith. Sam doesn’t see him for months, and Ruby brings Sam closer to the dark side.
The Clone Wars break out.
Dean is saved. A Jedi named Castiel attacks Lilith’s ship, and frees Dean. He sees that Dean is fallen, but not yet a Sith, and helps bring him back to the light side. He has to go back to the war, and so leaves Dean to make his own way back to Bobby’s, who then leads him to Sam. Sam is grey. Very grey, but not fallen, and still training with Ruby.
Castiel shows up with some news. Lilith is following a trail of information to the location of Lucifer, an ancient Sith from the Old Republic that has been frozen in carbonite for ages. Cas needs Sam and Dean to help him stop Lilith, and Ruby offers some information on her abilities.
Cas and Dean end up on a side mission when Sam and Ruby catch up with Lilith at a Sith temple. Ruby, who has been fostering attachment between herself and Sam, sacrifices herself by getting cut down by Lilith so Sam gets angry and falls to the dark side while fighting Lilith. He kills her, but his fall in the temple breaks the seal that was keeping Lucifer in carbonite.
Lucifer tries to get Sam as his apprentice, to be trained as a Sith, and a Jedi named Michael tries to get Dean as his apprentice because of some damn fool prophecy about two brothers fighting and bringing balance to the force.
Also Dean and Sam are starting to get stupid powerful in the force, but all of their friends are being killed off in the Clone Wars by Sith and Jedi alike. The Sith only believe in the strong, and the Jedi don’t want to risk non-Jedi force users falling to the dark. The only Jedi that stands by Dean and Sam is Cas, and the other Jedi start to doubt in him for it. They also make ‘friends’ with a Sith apprentice named Crowley, who assists them on occasion- for a price.
Sam agrees to be Lucifer’s apprentice and tricks Lucifer and Michael into getting frozen into carbonite with him.
Dean and Cas start looking for ways to free Sam, but get separated.
Sam shows up. He doesn’t remember anything about the past while, but is acting weird.
Cas and Crowley found a way to release just him from the carbonite, but the release has messed with his head a little, and his force powers are out of control and start bursting out unexpectedly. Cas and Crowley also get the location of a bunch of Old Republic weapons that Lucifer had told Sam about before freezing.
Castiel betrays Crowley and takes them for himself, but jokes on him because they’re posessed by the spirits of some really powerful old Sith Lords and he releases some really bad mojo into the universe, and also wipes his own memory in the process.
As Sam and Dean run around trying to contain the Sith spirits, Sam’s force powers are still on the fritz, and they keep looking for Cas, who is the only Jedi trained in mind-healing who would help them. When they do find him he of course has no memories of even being a Jedi, but agrees to try and help. He takes Sam’s crazy into himself, shifting the force-problems in the process but healing Sam. He also regains his memories, but disjointedly
They run into a FS named Kevin who has force-visions on how to trap the Sith spirits and they, along with a slicer named Charlie, manage to trap the spirits in this weird place called Mortis. Problem is, Dean and Cas are stuck as well- though Cas is sane again.
Dean gets out. Sam gets a dog. Cas gets out but the Jedi order catch him and use Revan’s Cure to make him spy on the Winchesters.
Kevin finds a way to seal the dark side of the force, and Sam starts going through the trials to do so. A Sith named Abaddon shows up and starts killing, and Sam and Dean meet their grandfather Henry, a former Jedi apprentice who has been chasing Abaddon for years. He dies protecting the brothers but shows them an ancient Jedi temple they can use as a hideout.
Castiel finds an ancient Jedi holocron there and breaks his Jedi ‘Cure’ and goes on the run from the Jedi when they order him to kill Dean.
Sam and Dean capture Crowley and bring him back to the light with help from Kevin, but fail in sealing away the dark side.
Then the Republic and Jedi Order fall, under Order 66.
#supernatural#spn#spn au#star wars#star wars au#i couldn't not okay#I don't want this someone else take it#I've got too many other things to write
1 note
·
View note
Link
Go's growing adoption as a programming language to create high-performance networked and concurrent systems has been fueling developer interest in its use as a scripting language. While Go is not currently ready out of the box to be used as a replacement for bash or python, this can be done with a little effort.
As Codelang's Elton Minetto explained, Go has quite some appeal to be used as a scripting language, including its power and simplicity, support for goroutines, and more. Google software engineer Eyal Posener adds more reasons to adopt Go as a scripting language, such as the availability of a rich set of libraries and the language terseness, which makes maintenance easier. On a slightly different note, Go contributor and former Googler David Crawshaw highlights the convenience of using Go for scripting tasks for all programmers spending most of their time writing more complex programs in Go:
Basically, I write Go all the time. I occasionally write bash, perl, or python. Occasionally enough, that those languages fall out of my head.
So, being able to use the same language for day-to-day tasks and less frequent scripting task would greatly improve efficiency. Speaking of efficiency, Go is also a strongly typed language, notes Cloudflare engineer Ignat Korchagin, which can help to make Go scripts more reliable and less prone to runtime failure due to such trivial errors as typos.
Codenation used Go to create scripts to automate repetitive tasks, both as part of their development workflow as well as within their CI/CD pipeline. At Codenation, Go scripts are executed by means of go run, a default tool in Go toolchain that compiles and run a Go program in one step. Actually, go run is no interpreter, writes Posener:
[...] bash and python are interpreters - they execute the script while they read it. On the other hand, when you type go run, Go compiles the Go program, and then runs it. The fact that the Go compile time is so short, makes it look like it was interpreted.
To make Go scripts well-behaved citizens among shell scripts, Codenation engineers use a number of useful Go packages, including:
github.com/fatih/color to colorize Go output.
github.com/schollz/progressbar to create progress bars for lengthy operations.
github.com/jimlawless/whereami to capture information the filename, line number, function, etc. where it is used. This is useful to improve error messages.
github.com/spf13/cobra to make it easier to create complex scripts with input processing, options, and related documentation.
While using go run to run Go program from the command line works well for Codenation, it is far from a perfect solution, writes Crawshaw. In particular, Go lacks support for a read-eval-print loop and cannot be easily integrated with the shebang, which enables executing a script as if ti were a binary program. Additionally, Go error handling is more appropriate for larger programs than it is for shorter scripts. For all of those reasons, he started working on Neugram, a project aiming to create a Go clone solving all of the above limitations. Sadly, Neugram appears now abandoned, possibly due to the complexity of replicating all the fine bits of Go syntax.
A similar approach to Neugram is taken by gomacro, a Go interpreter that also supports Lisp-like macros as a way to both generate code as well as implement some form of generics.
gomacro is an almost complete Go interpreter, implemented in pure Go. It offers both an interactive REPL and a scripting mode, and does not require a Go toolchain at runtime (except in one very specific case: import of a 3rd party package at runtime).
Besides being well suited for scripting, gomacro also aims to enable to use Go as an intermediate language to express detailed specification to be translated into standard Go, as well as to provide a Go source code debugger.
While gomacro provides the most flexibility to use Go for scripting, it is unfortunately no standard Go, which raises a whole set of concerns. Posener carries through a detailed analysis of the possibilities to use standard Go as a scripting language, including a workaround for the missing shebang. However, each approach falls short in some way or another.
As it seems, there is no perfect solution, and I don’t see why we shouldn’t have one. It seems like the easiest, and least problematic way to run Go scripts is by using the go run command. [...] This is why I think there is still work do be done in this area of the language. I don’t see any harm in changing the language to ignore the shebang line.
For Linux systems, though, there might be an advanced trick which makes it possible to run Go scripts from the command line with full shebang support. This approach, illustrated by Korchagin, relies on shebang support being part of the Linux kernel and on the possibility to extend supported binary formats from the Linux userspace. To make a long story short, Korgachin suggests to register a new binary format in the following way:
$ echo ':golang:E::go::/usr/local/bin/gorun:OC' | sudo tee /proc/sys/fs/binfmt_misc/register :golang:E::go::/usr/local/bin/gorun:OC
This makes it possible to set the executable bit of a fully standard .go program such as:
package main import ( "fmt" "os" ) func main() { s := "world" if len(os.Args) > 1 { s = os.Args[1] } fmt.Printf("Hello, %v!", s) fmt.Println("") if s == "fail" { os.Exit(30) } }
and execute it with:
$ chmod u+x helloscript.go $ ./helloscript.go Hello, world! $ ./helloscript.go gopher Hello, gopher! $ ./helloscript.go fail Hello, fail! $ echo $? 30
While this approach will give you no REPL, the shebang commodity could be enough for your use case. Korgachin's article is full of insights and detailed information about how binary formats work on the Linux kernel, so you better not miss it if you interested in this topic.
0 notes
Text
Some more d20 X-Com
Spectre
Species Traits
Construct Traits (Ex): Spectres have all traits common to constructs.
Darkvision: A Spectre's built-in systems grant it Darkvision out to a range of 60ft
Bonus Feats: Spectres receive Advanced Firearms Proficiency, Far Shot, Personal Firearms Proficiency and Point Blank Shot as bonus feats
Skills: Spectres receive a +8 species bonus to Hide, Jump, Listen, Move Silently and Spot checks.
Uncanny Dodge (Ex): When attack or effect forces a Reflex save, a Spectre suffers only half damage on a failed save or no damage on a successful save. Additionally a Spectre can not be flanked or caught Flat-footed.
Horror (Su): Once every 1d4 rounds a Spectre may make a Ranged touch attack against a single target within 30ft as a Full round Action. If the attack succeeds, the target suffers 3d4 points of energy damage and must pass a Will Save (5+Damage dealt+Spectre's Charisma Modifier) or suffer the effects of a Fear spell (Caster level 7th) for 1d4 rounds. A successful Horror attack heals 3d4 points of damage to the Spectre (a Spectre can not exceed its max health in this manner)
Vanish (Su): 3 times per day a Spectre can cast Invisibility on itself as a 7th level mage.
Shadowbind (Su): Once every 1d4 rounds, a Spectre can make a special slam attack against a single target within 160ft as a Full round action. If the attack succeeds, the target must make a DC 25 Will save or fall unconscious. This creates a “shadow clone” of the victim. A Shadow clone is statistically identical to a Replacement (d20Modern RPG pg 255-256), the Shadow clone has an unbreakable allegiance to the Spectre that created it and possesses cloned copies of the original's weapons/gear. The death/destruction of a Shadow clone will automatically revive the original. Destroying a Spectre will also destroy any shadow clones it has created. A Shadow clone and all of its gear will dissolve into nothing upon the clone's death. A Spectre can maintain a number of Shadow clones equal to its Charisma modifier (minimum 1)
Spectre CR4. Medium Construct HD:2d10+10. HP21. Mas---. Init:+3. Spd 40ft. Defense:18, Touch13, FF18(+3dex, +5Nat). Bab+1. Grapl+2. Atk:+2melee(1d6+1 Slam) or +5ranged (3d10 RI; 80ft Plasma Rifle). Full Atk:+2melee (Slam see Shadowbind) or +5ranged (3d10 RI; 120ft Plasma Rifle, single shot or Auto-fire) or +4ranged touch (3d4 plus Will save, Horror). FS:5ftx5ft. R:5ft. SQ: Construct traits, Uncanny dodge, Horror, Vanish, Shadowbind. AL: Ethereals. Sv Frt+0, Ref+3,Wil+1. AP: N/A. Rep+0. Str13, Dex16,Con---, Int10, Wis13, Cha16.
Skills: Hide+11, Jump+9, Listen+9, Move Silently+11, Spot+9
Feats: Advanced Firearms Proficiency, Far Shot, Personal Firearms Proficiency, Point Blank Shot
Possessions: Mastercraft Plasma Rifle w/1d4+1 power cells.
Advancement: 3-6HD (Medium)
0 notes
Text
Learning AWS Lambda Can Help Automate Your Build Pipeline
How to create an AWS Lambda serverless function that automatically invokes Webpack and bundles JavaScript
Webpack is a module bundler for modern JavaScript applications
AWS Lambda, and the serverless ecosystem in general, are changing the way we create and think about software in the cloud.
With serverless, we don’t have to fret over our infrastructure — we can just focus on coding our service. And while Serverless isn’t perfect for all occasions, there is a diverse set of circumstances in which its use becomes both quite handy and very powerful.
Consider the advantages of applying serverless to automate a build pipeline. What if you could use serverless to eliminate reliance on tools like Jenkins or Bamboo? Instead of relying on an automation server, what if you could leverage the power of cloud services to use Jenkins as a launcher that invokes multiple AWS Lambda functions, in parallel or in sequence?
Last night, I explored the possibilities while working on a spike to automate the generation of a Javascript bundle using Webpack. Using AWS Lambda, I invested some time to create a serverless function that invokes Webpack and bundles JavaScript.
I started with a simple example that contains lodash and some ES6 code using this example provided in Webpack’s docs:
import _ from ‘lodash’;
function component () {
var element = document.createElement(‘div’);
element.innerHTML = _.join([‘Hello’,’webpack’], ‘ ‘);
return element;
}
document.body.appendChild(component());
The goal was to bundle this ES6 code and its library into a unique Javascript file that can be used inside an application or website — mimicking a build pipeline. In my example, I use Webpack since that’s what is used at work — but you can choose any executable to invoke from you AWS Lambda function.
AWS Lambda to the Rescue
If you use a cloud-based automation pipeline and don’t have DevOps resources on your team or at your company, you should spend some time learning AWS Lambda — it could help out with these kind of activities.
Lambda is a stateless docker container that is maintained by AWS that allows you to spend more time writing the business logic of your activity and less time thinking about infrastructure.
Too good to be true? No. But AWS Lambda does have some limitations:
Limitations as of March 2017.— current service limitations are available in the Lambda documentation.
Building the AWS Lambda Function
So how can we use AWS Lambda serverless functions to bundle our Javascript project with Webpack?
First things first: I created a git repository where you can find a Javascript project to use inside an AWS Lambda function. This way, you won’t need to create a custom project, and you can focus more on the AWS side.
Here are few tips to save you some time:
Lambda functions can save temporary files inside the /tmp/ folder — bear in mind that you are running your code inside a Docker container!. If you try to save somewhere else, you will receive an error.
With AWS Lambda, you can run executables or node CLI tools like NPM or Webpack by uploading them into your Lambda environment and referring to them with relative path.
AWS Lambda will not run for more than 300 seconds. Therefore, if you have a complex operation, you should split it into different chained Lambda functions that are triggered in sequence. — which should help you in debugging your operations, too.
In the project I set up the webpack config file in this way:
var path = require('path');
module.exports = {
entry: './app/index.js',
output: {
filename: 'bundle.js',
path: path.resolve('/tmp/')
}
};
As you can see, I’m saving my bundle in the tmp folder because it’s the only one with write permissions. Remember the capacity limit of 512MB for that folder.
Then, I created an index.js file where I describe my Lambda function:
var spawn = require('child_process').spawn;
var fs = require('fs');
exports.handler = (event, context, callback) => {
var wp = spawn('./node_modules/.bin/webpack', ['--config', 'webpack.config.js']);
wp.stdout.on('data', function(data){
console.log('stdout: ' + data);
});
wp.stderr.on('data', function(err){
context.fail("writeFile failed: " + err);
});
wp.on('close', (code) => {
fs.readFile('/tmp/bundle.js', 'utf8', function (err, data) {
if (err) context.fail("read file failed: " + err);
context.succeed(data);
});
});
};
I’m using Node for this very simple code. You could also use Python or Java which are also supported by AWS Lambda at the moment — pick your favorite.
I import the spawn method in order to run Webpack. Once it has finished, I read the content inside the Javascript bundle file created by Webpack in the tmp folder, and I return it via the context.succeed method.
Context is an object, always available inside a Lambda function, that will allow you to interact with Lambda to retrieve some useful information or, in this case, to define when the function succeed or failed.
We are now ready to upload the application into the Lambda function. In order to do that, you will need to zip your project files — just the files and not the parent folder — and upload then to AWS.
If you didn’t install the project dependencies after cloning the repository, you should do it before uploading it to AWS.
Select and compress only the files inside your project not the parent folder
Inside your AWS console, after selecting Lambda service, you should be able to create a new function — just please pick an AWS Region where Lambda is available!
Choose your favorite language,in my case Node 4.3, and define the basic information like “function name”, “description”, and so on. Then, instead of writing the Lambda function code inside the editor provided by AWS, open the dropdown and select Upload a ZIP file.
Select upload a ZIP file
Next, set up the handler, role, and advanced settings as follows:
it’s important set at least 30 seconds as Timeout period
The important part here is setting up the Docker container where the Lambda will run with enough memory size and with a decent timeout. Because we are running an executable, we don’t want to block the execution due to a Lambda timeout.
If, for any reason, you need to increase the 300 seconds soft limit set by default, you will need to contact Amazon and ask to increase it.
Another important thing to remember is when the Lambda is not active for a certain amount of time (it’s estimated to 5 mins), the container used by your code will be re-used for other Lambda functions.
If your function times-out, it will be recreated when you trigger your function again. But if the Lambda function runs several times in few mins (warm Lambda), you will have better performance because the container will already be available and ready to execute a new activity again.
If you want to live test the function I created, you can trigger it from this link. To test your own Lambda function, click the “test” button and you should see output similar to this:
Output produced by Lambda function that is the content inside the Javascript bundle created by Webpack
Where To Go From Here
The example described is very basic, but it’s useful to consider how these ideas could be expanded:
AWS Lambda functions accept arguments passed when we trigger them, therefore you could potentially upload your project files in S3 and trigger the Lambda function directly after the upload. In fact, Lambda can be triggered by several AWS services, like S3, DynamoDB, SNS, and so on.
In order to expose the Lambda externally, you will need to connect it via API Gateway, another tool provided by AWS. In the example I shared above, I configured the API Gateway to trigger my Lambda function when someone is calling a specific URL.
The fastest way, and my personal recommendation, to work with AWS Lambda is via a CLI tool like Serverless Framework — you won’t need to manually configure the API Gateway and your Lambda environment because Serverless Framework will provide boilerplate to work with. On top of that, it will allow you to test your Lambda functions locally — without uploading them every time on AWS. There are many other CLI tools available, but at the moment Serverless Framework is the most complete and documented, backed by a large user community.
Recently, Amazon added the possibility to set environment variables for Lambda functions. Therefore, if your project requires them, you will be able to easily configure them via the AWS console or inside Serverless framework configuration file.
If you don’t want to upload a CLI tool with the node_modules folder, you can create an executable with all static dependencies and upload that file inside the ZIP file. For Node, I found a tool that works pretty well with Webpack and NPM: EncloseJS.
Remember to not abuse the power of the serverless ecosystem. Rather, try to understand the pros and the cons before starting to use it. Remember, in some cases it’s definitely not the right choice.
An important consideration re: the combination API Gateway + Lambda is that it could work with HTTP2 protocol out of the box, and you can use Cloudfront to cache your responses (also if they are dynamic) with just few configurations to set in the API Gateway console.
With Lambda, you only pay for what you use. Therefore, if you use it for cron services, automation pipelines, triggering database backup operations or similar, you could end up savings quite a few dollars compared to an EC2 instance.
Learning AWS Lambda Can Help Automate Your Build Pipeline was originally published in A Cloud Guru on Medium, where people are continuing the conversation by highlighting and responding to this story.
from A Cloud Guru - Medium http://ift.tt/2obeyNA
0 notes