Saturday, April 29, 2017

4/29 Vacation

6am and no way I can keep sleeping. Jet lag and stress will do this to you. I'm feeling what I was feeling last monday- that I don't belong. That's a tough thing to get over,. especially at 430am on a night I could use some sleep. Same shit, different decade. This time, I don't have a distraction.

I don't know what to do.about Sora. I want to wait for him, but I'm starting to lose hope that he likes me and would be willing to put up with me. Do I want to suffer through years of this shitty job for a vague chance that this quiet guy is going to like me.back? That's obviously my concern. To him, there are lots of older white guys who are interested in him. To me, there's a shrinking pool of nice guys like him interested back. That sucks. I don't feel like I have much of a chance at happiness, and Sora is the one I'm currently waiting for.

I don't have the time to type everything out, but like other stress, when it rains in pours. Work is going to kill me. I have no leisure time. No Sora, no love. At least my health is pretty good and I have money. But I'm lonely and stressed. I need a way to get on top of my shit again and I'm going to feel a lot better.

And sleep. My head already fucking hurts.

Sunday, April 23, 2017

4/23 Storm before the Calm

It's funny when you have somewhat an expectation of things but they turn out completely different. That was my day today; a stupid "date" that ended up being almost a complete waste of time.

But time is nothing to really worry about. I have nothing but time for the next 4.5 months. I'm excited to go to Montana just to get my mind off of things for awhile. 10 days, two and a half in the sky, means that's plenty of time to stop thinking about missing Sora so much and what my life is really like without him.

This is a strange time for me - work is obviously completely blowing me away, but I feel like I have absolutely nothing else to latch onto. I would usually write these long things about how I need to program more, how I need to exercise more, how I need to study more, but I feel like the light has just drained out of my whole world. And it's not just Sora being gone that's doing it to me, I feel like I have absolutely nothing. Even if work was going well, even if Sora was here by my side, I feel totally empty. I don't know what it is, it's like everything I've tried so hard to get over these last few years of my life has been for absolutely nothing and I have no redeeming value remaining.

And deep down, I know that isn't true at all. I've come into my own for a lot of things, and obviously my Japanese has reached a point where I can just be (minus skype lol). But really, I don't know what I want to accomplish from here. The cartoon? Sounds fun. I have every possible thing I need to produce an amazing, funny, thought provoking piece about something. But I just have zero motivation to sit down and make it a reality. Same for a book, same for short stories. I'd rather sit here and pretend I'm happy to just masturbate to the same videos and pictures I have for the last decade.

Really, though, I don't feel like I'm just wasting away, either. I feel like it's something else. A stagnant something. Like I'm just going to let the rest of the world keep moving, and I'm going to sit here watching it progress while there's nothing I can do. I don't know what to do with myself, and I can't start anything huge now - i'm leaving the country in just a few day's time.

Saturday, April 22, 2017

4/20 Project Promise Puzzles

So i did it with my life. I finally realized what it means. It's all about Project Promise. Who i was, what i wanted to accomplish. To me, that was fun, a break from the absolutely torture and mundane shit that was 3rd and 4th grade.

and i'm an adult now, and i solve project promise puzzles for a living.

i live in japan (a project promise puzzle) and i program video games for a living (ppp). i have a boyfriend who doesn't speak english natively (ppp) but teaching him english is awesome. i have a sidekick named Koichi. he's a poodle. he wears a little banana cape. it's adorable.

but i just want everything to be this puzzle to solve. a riddle to crack, a tough nut to open. i also build things up to be way more interesting than they are. Build a high tower with glue and sticks and a rubberband ball. Ok, that's got some boundaries. Teach your boyfriend English: not quite the same level of it.

Anyway, i just ran up against a doozie of a project promise puzzle at my job, and i had to stop and talk it out in order to actually solve it. it involved many intricate moving pieces, lots of repeated information that had to be chopped up, copied, and manipulated in interesting ways, and attached to something that moves! so i'll know if it works or not immediately.


Thursday, April 20, 2017

4/20 the programming test

A lot of companies talk about adding things to their tests to get work done for them for free.

here's what i need written to get backslash to run.

---
not all of my job is actually building the thing. my job can't always be like project promise. And here is where it's really tough. here is an actual hard engineering problem. I need to solve it to sell my next game.

I'm going to send you a little scripting language, and a machine that can parse it into a data structure for you automatically.

it's an event system comprised of conditions and actions. the conditions aren't simple yes-no situations, they select a series of objects hierarchically so nested conditions trigger based on the parent's results. For any condition block, there can be a nested series of actions that can be taken on the objects that passed during the condition stage.

if all of the conditions yield true or at least one object is selected during this phase, after the actions are all run, the sub events run their conditions also on the remaining objects that were selected.

However, if a during one of these nested stages a new ,object is added to the list of selected object types, i need it, also, to be added the list of objects that the actions run on.

However, sometimes i'm going to do something in the actions that creates an object, or references a certain special object, and it will affect the next action.
for example, if one of the actions is to spawn an object, i need it to only affect the one that has things happen to it. holy shit , that sentence was a trainwreck.
---

god damn these electric typewriters are amazing

--

so the electric typewriter
made
anything that's ever existed or will be existed visible for free at any time.

any visual, audio, etc media is now completely free. It is. I can "illegally" download anything, like there are laws against donloading something unless you own a copy, whatever, but that's just a government ruling. they aren't actually stopping any of this like it was a law of nature. And yes, they bust some people sometime to scare the public when they want profits to change
(like literal lobbying)

So lobbying is scum

Lobbying has destroyed american government. because government should be about the people, not about the money behind things that happen. copyright is a perfect example. that there is inherent bump of money required for something is absurb. people want to make art all day long and still eat, i understand, but realize that's all you're doing. you aren't "an artist". You are an artist because you've dedicated your life to something. Yep, it's true. And that's why the world asks "does the world need artists" and other shit. I'm eating. I'm happy. I make enough money to be happy. I really really do, and this place where i live is going to be like heaven for awhile.

with my wolf companion that's somehow wearing a banana cape. Team Bananas. He's quite the character

4/19 One Day Off

Poor Sora, he had quite an adventure over the weekend.

Woah, this is just like an old school typewriter, but since it's in the "digital world" I think of it as some portal millions of whatever's away. But that's not it at all.

It's the fucking future again!!!


Woah, look at these things. Everybody owns one because it would be ridiculous not to. And smartphones, come on.

Oh, this is really special. It's like a typewriter that shows up all sorts of things.

So let's take a minute as to why old people don't quite understand "computers" the way that younger people do.

So, it's atypewriter. That's wha i remember using and that's one of the things it does. I mean, it looks like a typewriter?

So then everybody has phones, and there aren't even real buttons. but sure enough, it's a digital typewriter, too.

so it displays shit. But it also has the ability to send it to every oher computer lined up with it to display the same thing. This means that other people can form groups and put the information in an easily sharable place so that everybody else can read it.

Oh man, this is so scary. lol.

yea, so there are all of these sharable typewriters. And everybody has the ability to push and read anything on them? oh man, that's the scariest thing i've ever come across.

But i went way beyond that. The typewriter can play games. Oh, and just recently they took typewriter games where you have no fucking clue. 3D virtual worlds.

So from somebody that knows how a mechanical typewriter works, let's look at it from my perspecitive.


So imagine a mechanical typewriter.  You have the keys and the paper.
so what we wanted to do was create a machine that does the exact same thing as an actual typewriter but the ability to display what you type not on paper, but on a little screen. think about the underlying mechanics of that device are.

Oh, without moving parts that the person using it would really see. So the letters almost magically appear. ok, that's like generation 1.
So, there is a little machine that's connected to the keys. It is a bunch of wired circuits, so when somebody presses one of the buttons, it triggers some mechanism that moves little cursor ahead, as well as prints the last letter butten you pressod. And again, it's just like that mechanical typerwiter you had, but science got it to work as this electric device.

but mechanically, it's exactly the same. Like a typewriter with whiteout.

And, there's arrows that let you edit anywhwere on the page at any time.

e're not talking about a mouse or harddrive or anything else. just as much as i described and nothing more.

from there

i want the text to look really nice. Like, i want the screen to be so good that i can't see the dots in the letters anymore. I also want the ability to store like millions of pages text. Because you might be storing thousands of pages depending on how much you write, and you're not going to want to print it all, we are going to put some buttons that let you save what you're working on, clear the screen, or open up one of the pages you wrote before. but we won't let you put one sheet on top of another sheet, only one sheet gets shown at a time.



Ok, from there (that was actually backing up a bit)

well, if the thing the type, i could probably make it also draw in at least black and white on this screen. But, it's really expensive to actually be able to toch the screen, so i'm going to give you a little up/down/left/right arrow that can move around a letter an the screen, and save wherever you say it should.

eventually, we decided that sucked, so we invented the mouse, which is just the typewriter buttons being pressed to move a little arrow around. Ultimately, we went even beyond that to give you wifi mice, touchpads, touch panels, but that's really all it is.

ok, so we now have a mouse.
what if instead of words in part of the little device, there was a picture of a button. and then people wouldn't accidentally press the save/clear/load buttons with tehir fingers anymore. and they have to highlight it with the arrows and press an "activate" button

So advance upon advance, it's not some deep mystery. the typewriter can only do a few things, so we just use that to build up thinsg that loook like they are magic. buttons, scrollers, all of that just manipulates the pages of text to show you things a different way. games. getting the pictures of the words on the screen requires a constant little electric mechanism to send repeated commands in ways i can listen for, run through an equation, and feed commands back into it to display different things at different places on the screen. Back in the day, i could only change the color of one dot per cycle.

But it needs to do that fast enough so you can type at least 100wpm. It needs to update faster than once a second for sure!

so how fast? 100 times a second? 1000 times? i mean eventually, we have that up to 3.6 billions times. here's the reason why.

So everytime we get that signal to do an equation and feed it back into the typewriter, we can also do math equations, too. when you press the buttons on a calculator, you are just filling in the equation based on what information.

from here.

it needs to have a way to know what you've written and save it. so obviously if you have thousands of pages, you'll want a way to look through them at some point. they've been nice to give me some pages that the user can't see as well.

who am i explaining this to?

sora got cut off. oh no. what happened to my opinion of him? i love him, but he's different. he feels so far away. and i just want to see him and make sure everything is ok. he's so great. anyway i liked young pictures of sora. maybe i'll get more. the real guy is so beautiful i think i'll be ok :)

so what's the problem? everybody has a typewriter, remember? these things are soo convenient. not just text anymore, these things can display maps? these things can do crazy math.. these things can display some amazing games and do it in 3D. sick.

but that's the whole world. webpages are text that we can move and change the color of in predefined ways (that we also stored on a sheet) I can send sheets to people, they can send me sheets. it's automatic, invisible, everywhere. i'm being bombarded by thousands of pages upon pages every second.

here's where it gets interesting. Every computer has a number. if i hook my typewriter up to yours, we can send pages to each other. i mean, who knows. maybe we're working on a draft for a book, and we both want to read it at the same time? i'm a mathematician, and i created an equation i want somebody else to look at. ok, valid use. Or, i'm a teacher, and i want my students to send me their data. I mean i can also write on a card and read it if i need to.

anyway, we share data.

So each typewriter has a number. like a serial number. when i hook it into a special box, i can send pages only to one person that's also connected to the special box as long as i specify the number. the box will make sure the other typewriters don't get your message.

if i connect that box to another box just like it, all typewriters i'm connected to can send anything to anybody. eventually, everybody's on the outside of this huge circle of typewriters and everybody has a direct line of connection to any other typewriter in the whole world. as long as i know the number. You might think - yea, but how does this work now?

ebay.com? yahoo.com? when you want to visit one of those webpages, you send a page to the typewriter with serial number 8.8.8.8 or 8.8.8.4, it does an equation on the name to figure out a page, reads a page (in the next equation, then the next) eventually finds the number of another typewriter, and sends THAT typewriter a page that says (typewriter at 133.32.12.111 wanted you to send the page called "ebay.com"). That typewriter gets your message, sends it back. You then display it. they are alll connected.

news, maps. it's all just pages. and it's got a cute futuristic feel to it, and i think that's what makes it so scary to me.

everybody has a typewriter, and they are all connected all the time. You can't right now control what it sends and receives page-wise, or what equations it's running, because you didn't know it was doing those things all the time. It's always churn churn churning away because it's waiting for you to press one of the buttons to turn on or or click the mouse or press Q. and microsoft has engineered these typewriters so they are very powerful calculation devices. it's so easy to write equations and run them - and ultimately turn pages into instruction sheets that i can feed back into the thing to see the output.

my job is to write the pages, turn them around, and put them back in. I've written thousands of pages of instructions. my life's work has been writing every way to make a video game look like a video game for the last 10 years, and i'm a specialist in having two simulations sync up between to active real-time players on two different typewriters.

so here's a page, that's like 1000 letters across and 800 letters tall.
it is just a picture of something. it's super picasso. whatever.

so i also have another page, and it's some lines with equations with missing numbers

so i take out a fresh sheet, and i start writing.

Take THIS color from THIS location (that the artist told me about) and run it through THIS equation
and then take THIS color from THIS location and run it through THAT equation
and then take THIS color from THAT part and run it through THIS equation

now take the answers of all those and put them in THIS equation
and out put...
orange to

57
..
592

now go back up to the top and do it again!

but my sheets are much much longer, and instead of changing this picture, it says hey da vinci, you write it on a blank one and then display it. and for one of these equations, say if somebody is holding this button down, write THIS color HERE.

eventually, we figured out a way to ignore commands
so when we're done running an equation, instead of putting a color somewhere, it gave us the ability to say hey, the answer to the next equation will determine if you skip the next line.
then we also gave you a command that says "jump to any line on this page"

This gave us control flow.
if EQUATION(x, y, z)
GOTO LINE 6
EQUATION1()
EQUATION2()
EQUATION3()
Line6Equation()

then you have gotos and jumps, and you can do loops. it's ery entertaining to watch it jump around. so maybe math my way to make it draw more than one dot in one place in one color.

Shapes.

draw this picture, display it, erase it, run these equations, draw the picture, display it, erase it, run these quations... etc

now things are moving on their own
and we're just waiting for somebody to press the button churn churn churn

so anybody you've sent data to usually keeps a copy of what you sent them.
see what you need to open a bank account, then see who has that information.

ok, so hacking

i write these automated equation sheets for changing the pictures for fun.
There's also an equation that lets you take a page from memory and send it to somebody
and because i can loop, i can ask the typewriter very nicely to send every page it has to my typewriter (i know the number)
So all somebody has to do is run my sheet, and i have all of their data.

so how do you run a sheet on somebody's computer without them knowing?
usually, you have to say "yes, run this program", but your computer is always running stuff.

but not just one at a time. it's got like a little switching mechanism. so if it's running one sheet, it does equation1(), then it sees which sheet is next, then runs that sheet, runs one equation, flips, etc.

and this program is the operating system.

the operating system rotates what pages are being run, and allows you to put new pages into this rotation. this allows you to literally abstractly run a web browser as one page, play some solitare somewhere else, and then look at pictures or type a whole new page up seemingly at the same time.

but realistically, even the ones you aren't actively typing on, like this explorer in the background, is still being updated because you might click on it. the operating system handles it so the thing you're working on feels the fastest (by giving it more guaranteed time to do equations)

so some programs have the ability to put other programs into rotation. here's my goal.

1) have the user download my instruction sheet. they might want to. if they know what it does, they probably don't want me digging through every single page on their typewriter. there's like tax stuff on this thing.

2) have the user put the program into rotation

3) have it run long enough so every page is sent

1 is easy. You can put this instruction sheet in a ton of places. You can put this instruction sheet inside the instructions of a game, or a website, or anywhere, really. somebody could have written the instruction sheet's equations and numbers to do the mean deed and when you look at it on the typewriter as a page, it looks like a fish. anyway, it's not hard. how many pages do you just download and don't even look at?

2 is tricky, because Microsoft and all sorts of companies on the web know people want to write this program, so they make it hard for this program to execute. Same goes for programs that might erase really important pages, or erase instruction sheets that are necessary to make the typewriter even function. so if you try to execute something like this, microsoft will ask you "do you really want to allow this program to do this thing?" before you always click yes.

Since that's hard, maybe we'll go a back-door route. Maybe find a program that already has the permission to run these equations without trouble to start the page for me. I won't need the user's permission then (the "desktop" or the background lets you run these types of programs, but will warn you before you can hit yes... duh)
but there are other programs on here that will just send pages willy-nilly to people. you aren't constantly clicking a box that lets chrome send pages to 8.8.8.8. no way. so maybe i'm going to find some equations in their instruction sheet that if i put some funny numbers into it, it will jump to somewhere or read a color from somewhere i want it to, and eventually screw up so bad, i get it to read and execute my commands from a different sheet like an old record player would.

so that's hacking. i put an instruction shet somewhere on your computer where you either execute it yourself or put it in a place where another program you use picks it up and runs it. eventually, i have your tax returns.

well, you can do a couple things. you can encrypt your pages. essentially run the words on the page through an equation that gives you a page you can't understand. then you take that page, run it through a different equation, and it comes back exactly like you asked for. the "equations" each need two variables - your sheet, and a number. then that number becomes a key to unlock and lock your data. pretty handy.
if it was a 4-digit pin code, i can just write an instruction sheet to try all 10,000 combinations, and i'll look at each one until i find the one that's actually readable, and then i'll know your PIN too for the rest of the files. or, we make that number long - SUPER long. a number with hundreds of digits. I could "brute force" it but eventually they just make the number longer and i barely get through a few billion keys before i give up. passwords work the same way.

but then again, some of those keys are stored on your computer in places that are easy to get to. experts then lock those keys up with even more secure keys that maybe only the typewriter can read from, but even those keys can be read. security experts know how these keys are work, where they are stored, how they can be accessed, and how to make them even stronger so when computers get more powerful and even longer keys can be brute-forced, they will have the next difficult to crack technology ready to go.

wifi works this way

we're just radio-ing each other pages. what's stopping me from listening to your pages? they have been changed before sent, and both sides know the key using some really really fancy math.

Monday, April 17, 2017

4/17 The Archer and the Swordsman, take 2

I vividly remember the day I met the archer for the first time. He was wearing an expensive forest green cloak with a pattern I couldn't draw or describe. He could easily blend into a crowd of other archers if he wanted to, but I would soon learn that wasn't his goal at all. Instead of a bow, he was awkwardly holding a sword too large and too heavy for him, and I clearly remember him walking over to me, nearly dropping the sword against the table where I was seated, and then managed to sit down across from me with the same grace and elegance as if he was in the company of the queen.
"I want to be a swordfighter," he said. "Any way possible."
I was thrown back in surprise. Such a man looked like he had never fired an arrow let alone held a sword in combat. 
"I'll be moving across the seas to take training from the best swordsmen in the whole world in only a few short months. Until then, will you train me?"

Any reasonable swordsman wouldn't dare bother with something so arduous, but there was something about this archer that caught my interest. He walked with grace, always seeming aware of exactly what was around him.  This was no ordinary archer. 

So with no reluctance, I stood up and looked him square in his dark eyes, and agreed to be his trainer. With only a few short months until his journey to the other continent, he needed all the training he could get.



It was his knowledge of swords that first drew my attention, even if he could barely hold one. 


At last, the training was to begin. 

But, that was the point. I couldn't will the archer to be a swordsman anymore than someone could will a fish to swim on the land. 

Sunday, April 16, 2017

4/16 The Swordsman and the Archer, take 1

I was always a swordsman. I was born a swordsman, I will die a swordsman. My father brandished a sword just like his father, and that's how battles are fought here. Rather, that's how battles are won. I remember my first fight, as well as my first sword. And I could live the rest of my life as a happy swordsman if I chose to, and that's what would happen.

I've read stories about archers since I was a kid, but not until I met one in real life did I believe the stories might actually be true. Maybe before then, I assumed everybody in the whole world was a swordsman just like me, but when my eyes opened to other types of warriors, something changed deep inside me.

You see, right before I became old enough to fight battles alone, I realized I could just pick up the biggest sword and swing it as hard as I could, and I would win almost every time. The bigger the sword, the more powerful I felt. I didn't need grace, I didn't need precision. Now compare that to stories of people who don't even swing swords at all.

The archers are different than the swordsmen. They seemed much simpler, and much more sophisticated. I even went as far as taking an archery class near my home to learn what I could. I was obsessed - how could people so different fight battles without a sword? It was amazing.

I took years of training before I even picked up a bow, and more years before I shot my first arrow. I knew I was never going to be an archer, yet, each arrow I held made me question who I was as a swordsman. I had been fighting with only strength, no precision. I wanted to change as a warrior, to become a fighter who could do more than swing a sword.  So I decided to move to the land of the archers and take up training with them in their own land.

I guess I was most surprised by the country itself. The archers didn't just battle with precision, they lived their whole life that way. Everything was built around the same sophistication I had learned about back home.

Of course, I learned I could still fight battles with my sword there, but for the most part I awkwardly entered the battlefield with a huge bow and quiver strapped to my back, too. I met other swordsmen here learning how to be archers - some very talented, some not so much - but enough of them to witness them win battles.

But my biggest surprise was not from the swordsmen, it was from the archers. You'd be amazed at how many archers wanted to be swordsmen. Pictures of swordsmen on big signs in the town markets, training arenas on every street. I could get a job showing people how to just hold a sword if I wanted to. But, of course, I was dedicated to learn everything I could about archery, and even though I still practiced with my sword every day, I made sure to practice shooting arrows every day, too.

This continued for a long time. Of course, I look like a swordsman, most archers wouldn't even guess I knew how to hold a bow. But I was proud of where my archery training had gotten me. I could hit a target at 50 meters! It made me a better swordsman, too, as I was using my understanding of precision and timing to make better swings.  Maybe a few more years, and I can battle with arrows as good as with a sword.

Of course, that's not how life on the battlefield works.

One dark evening, I was going about my business, and a timid archer came up to me smiling and holding out a small dagger. He said he had just picked it up, but by the way he swung it around, I doubted it was his first knife. He looked at the giant blade strapped to my hip, looked me in the eyes, and asked me to help him become a swordsman.

Of course, it wasn't unusual for archers to want to be swordsmen, but this was the first person who had approached me who wasn't even holding a proper sword. I looked at him up and down at first; he may have lacked the skills, but he had the passion. His bow was long and slender, and his quiver was filled with hand-carved arrows of many different lengths.

After a few months, I had met the archer on a few occasions to help him hold bigger swords and help him with his swing. He always kept his bow neatly strapped to his back unless he absolutely had to shoot an arrow; I think I shot more arrows in battle than he did when we were together. One time I shot 30 arrows and only hit 3 targets; the same day he hit 5 targets clean through the center with one arrow.