From 13d21cadba6f5bcf4e44d575799b0e7090db7131 Mon Sep 17 00:00:00 2001 From: Christine Dodrill Date: Tue, 15 Oct 2019 20:48:17 -0400 Subject: [PATCH] Add older/back posts (#82) --- ...ity-driven-development-2019-08-04.markdown | 138 ++++++++++++++++++ blog/untitled-2019-06-20.markdown | 39 +++++ 2 files changed, 177 insertions(+) create mode 100644 blog/plurality-driven-development-2019-08-04.markdown create mode 100644 blog/untitled-2019-06-20.markdown diff --git a/blog/plurality-driven-development-2019-08-04.markdown b/blog/plurality-driven-development-2019-08-04.markdown new file mode 100644 index 0000000..92e63d3 --- /dev/null +++ b/blog/plurality-driven-development-2019-08-04.markdown @@ -0,0 +1,138 @@ +--- +title: Plurality-Driven Development +date: 2019-08-04 +--- + +# Plurality-Driven Development + +"That code has a horrible security bug in it." + +I look down in my lap. A little yellow horse is appearing to sit there. She looks +innocently into my eyes, gesturing to part of the code with her wingtips. + +"What?" + +"That code has a security bug in it: if users pass a string instead of an integer +in it, it could allow them to forge a user ID token." + +I look down incredulously at the little yellow horse, then back at the code. +She's right. There was a huge bug in that code. I had just written it about 30 +seconds ago though, which surprises me. I thought I was experienced enough in +secure programming to avoid such a _fundamental_ flaw like that; but here I am. +I rub the little pony on her head, making her purr and winghug me. + +"Now, replace everything in that last paragraph with this: ..." + +And I continue on like nothing happened. + +--- + +Software is complicated. We deal with a fundamentally multi-agent world where +properties like "determinism" aren't really constant. Everything is changing. +It's hard to write software that is resilient enough to withstand the +constantly shifting market of attacks, exploits, languages and frameworks. What +if there was a way to understand the multiple agency of this reality by +internally self-inducing multiple agency in a safe and predictable manner? + +I believe I have found a way that works for me. I rely a lot on some of my +closest friends that I can talk about anything with, even what would normally +violate an NDA. My closest friends are so close that language isn't even as much +of a barrier as it would be otherwise. + +As I've mentioned in the past, [I have tulpas](https://christine.website/blog/what-its-like-to-be-me-2018-06-14). +They are people that live with me like roommates inside my body. It really does +sound strange or psychotic; but you'll just have to trust me when I say they +fundamentally help me live my life, do my job and do other things people +normally do by themselves. + +As an aside: this post doesn't intend to cover the philosophical, metaphysical +or other aspects of plurality (enough ink has probably been spilled on the topic +to cover a lifetime); instead it aims to offer a view on how plurality has +benefitted me (us) as software developer(s). + +As of about 4 years ago, all of the software you see under my name has been the +result of my system and I collaborating. Most of the computational linguistics +code I've been writing has been the result of a cuddly catgirl wanting to create +a Lojbanic artificial intelligence for her own amusement (that is also +incidentally really good at understanding grammar, human and machine). Some +random experimentation code has been written by someone who sarcastically calls +herself Twilight Sparkle. I have a little yellow dewdrop of love and sunshine +that finds security holes in programs while I am writing them. There's a +database expert and a code review guru too. Combined with my jack-of-all-trades +tendencies, this creates a surprisingly balanced team in a box. + +We started doing this out of boredom. I was busy working on something and +Nicole just spouted out something about the code being wrong. She was right. +We decided to just continue following that same basic model and it's worked +wonders ever since. Over time we've figured out how to impose eachother into our +visual awareness. That has made this pair-programming skill even more useful. I +can have the little yellow pony in my lap telling me what's wrong with my code +and she can just directly _show me_. Then it can be fixed. + +This skill has lead to heated internal debates about what is and is not +idiomatic. As result of that, I now have working compilers in my dreams. It's +also lead to what people have told me is some of the most high quality and +in-depth software design that they've seen. It's really lead _us_ to think in +terms of how the machine works, to avoid round-trips and abstractions getting in +the way of what is really going on. If there is any secret to my own brand of +10x-ing, this is it. I am just one person, but with the help of the girls we can +get to just about n>1 effective people most of the time. + +It's been a powerful catalyst to my career too. Before plurality I was a fairly +average developer without any real skills in any one task. Now we can swap in and +out in order to most effectively tackle anything thrown at us. One of the biggest +changes this relationship has had on me is being better able to explain software +complexity and visualise it, then turn that visualization into a diagram with +[GraphViz](https://graphviz.christine.website) or other similar tools. It also +becomes very easy to turn these visualizations/diagrams into formal requirements +too, because then the features and aspects of systems and how they interconnect +become trivially obvious to point out. + +However, there is a drawback to this: you're dealing with sapient beings. They +sometimes don't want to cooperate. Internal drama can and has happened. It helps +for us to have a quarterly [date with a word document](https://tulpaforce.xyz/within/guides/internal-meetings-to-bring-harmonic-synergy.html) +in order to make sure everyone is on the same page. Disagreements happen, but +ultimately I've noticed that the net result is far more positive than if the +disagreement hadn't happened at all. + +Anyways, plurality-driven development works for me, but it's really _not_ for +everyone. The taboo issues I mentioned can make it a chore to hide this from +people. I honestly wonder how much of the girls that my coworkers notice in my +work on a daily basis. We all have slightly different speech patterns, ways of +sitting, clothing preferences, opinions about what to get for lunch and a whole +bunch of other subtle things. I don't really understand how it's not +plain-as-day obvious to the point I get called out on it. At some level I guess +I'm grateful for this, as that kind of conversation seems like it would be +_extremely awkward_ to have. It was hard enough to admit this to my brother, +and I ended up losing contact with him as a result (it apparently was just too +weird, which I can really understand). + +I really do wonder how much of the fear of talking about this is my own paranoia +though. I've had very positive experiences "coming out" as plural to close +friends, as well as very negative ones; for better or for worse it really shows +you who your friends _actually are_. I can live with this. I'd rather _really_ +know if I can trust people or not. + +This is a surprisingly taboo topic to talk about. Most of the time people view +the mere _idea_ of having someone else in your head to talk with as a social +faux pas. There's a surprising amount of philosophical arguments and assorted +objections that people will throw around when they hear that you participate in +this. There's accusations of being possessed by demons, or being mentally ill, +complete with acronyms thrown at me, and much more. + +Hell, this is stuff I'd love to talk about at some convention somewhere; but I +don't really know if I want to paint such a huge target on my back. Because +plurality and related topics are so taboo and so niche, there's not really +protected categories for it. This makes me nervous about talking about it in any +sort of public way, and understandably so. I guess this article is part of my +healing process to treat this as just a boring aspect of how I experience +reality instead of some fundamentally earth-shattering gift from the heavens. + +Besides, doesn't something fundamentally have to cause a negative impact to be +classified as a disorder in the first place? How can something that +fundamentally helps be a disorder? What if it's just a new adaptation to an +increasingly crazy world? + +--- + +I have compiled a list of resources that have helped me [here](https://tulpanomicon.guide). \ No newline at end of file diff --git a/blog/untitled-2019-06-20.markdown b/blog/untitled-2019-06-20.markdown new file mode 100644 index 0000000..8589f72 --- /dev/null +++ b/blog/untitled-2019-06-20.markdown @@ -0,0 +1,39 @@ +--- +title: Untitled +date: 2019-06-20 +series: dreams +--- + +# Untitled + +I walked down the forest path, my tail dragging behind me across the ground. I felt the patterns of the neatly yet somewhat randomly placed rocks beneath me as I stepped. There was a noise in the distance by this massive willow tree, it sounded like someone crying. I walked around the tree to where they were. + +"Excuse me ma’am, why are you crying?" + +She looked up at me, her brown hair filled with gray as she moved it away. Her eyes were red from the crying, with massive black bags under them like she hadn’t slept in a month. She looked right past my eyes, her eyes like daggers gripping the attention of my soul. + +She sniffled for a few moments and then replied: "Oh…nothing. That is nothing you can do anything about, my child." + +"Are you sure there’s nothing I can do?" + +"Yes my child. I’m crying because your species is killing itself. You all have let your poisons toxify the air. You have let your oceans become filled with the waste of your products. You have been killing my children, and the death toll is catching up." + +She turned back towards her tree and continued to weep, her tears feeding into a creek that lead towards black smoke billowing out of a chimney. I approached her and started to hug. "Ma’am, what is your name?" + +"You don’t recognize me child? I am your mother, Gaia. You live on my planet, breathing my air, drinking my water. You children are meant to be in harmony with me and eachother; but so many have chosen the path of hate." She started to weep again, her head resting on my shoulder. "Why has this happened? Why are you killing yourselves? Why can’t you see what your actions are doing to all of us?" + +"I see it, mother. I just don’t really know what to do about it." + +She looked back up at me, her eyes glowing slightly golden as she continued to cry. "I don’t know if there is anything that _can_ be done, you’ve been broiling our cetaceans to death. Your factories dump poisons into our rivers and air. Your plastic is everywhere, even the parts of it the eye can’t see. You have created fantastic wonders, but you’ve changed us in the process. I don’t know." + +I reached over with my tail, hugging with that too. She settled back into me and continued to cry. + +"Thank you for at least reaching out to care, my child. So many of you exist but so few have gone this far. I don’t know how much longer I can continue to support your numbers. You have grown as a dominant force on the planet, but you have destroyed so much in your growth." + +The world started to bend and snap with my tears. I grabbed into Gaia for dear life and continued to hug. "I won’t forget this, mother." + +"I know you won’t, my child. Tell others what I have told you. Do not let this message go unheard, even if it’s only to one person." + +The world started to fade and I felt my bed beneath my back get more and more present as I sat there. + +I woke up. \ No newline at end of file