| |
Dear blog,
The failure of my blog still doesn't deter me from writing in it, at least not until I get a new one. Technically, I don't need a new one, I could just start posting private entries on this one. I'd feel better with a new one entirely.
I feel tired today. I've felt fairly tired all day, probably because my history class got out early. From there, I went to the library to wait for Justin. I was early, and I noticed the library had about a hundred volumes of books labeled "Short Story Criticism." I was incredibly excited, naturally, and ended up reading a lot of literary criticism on Herman Melville's Billy Bud, even though I have little actual interest in Melville or Billy Bud. Still, the criticism was extremely good, and an awesome read.
The massive collection of books makes me want to scan every page of every book and upload them to bittorent. Pirate them. It'd be a great service to humanity as a whole, but it'd take an extreme amount of time and dedication for something still fairly illegal. Still, I'd love a digital copy myself, at least. And if I had one, I couldn't possibly not upload it. It's simply the moral thing to do.
I'd love to have a copy of every one of those books. They were next to a whole collection of other criticism. I'm not sure what the other stuff was criticism of, but presumably novels. Though, I thought that Billy Bud might qualify. It doesn't because it's apparently technically a "novella." A term which I think has absolutely no meaning, because the work has apparently been categorized more accurately as a "short story."
Justin and I then hung out for a while. First we drove down to Sacramento, then back into Rocklin for some discussion on the creation of video games, and the finer points of American literature. That was followed by a pen and pencil RPG about zombies.
I've been playing too many video games lately, though my therapist doesn't say so. I desperately want to read more, and video games are taking away all my time for that. I feel like I've been overly lazy, relaxing for too long. My stomach feels almost sick from it. All I want to do right now is read, book after book. Literature, nothing bullshit. It's strange that I have this feeling now. I've been playing too many games recently, usually I just want to play more or something. Something. But now I feel like I couldn't care less about anything except reading. It's certainly a surprise reversal. I'm not sure what brought it on. It's a good change though, to say the least.
It was really great to see Justin, we talked about everything. We didn't party like I'd hoped. I was hoping we'd party since Justin just got his degree from Berkeley. But it was actually much more normal, which is probably better than partying too hard. I'd feel awful from drinking if we'd partied.
I'm going up and down tonight. I keep going from feeling really good to feeling really sick and bad. Everything is a little strange tonight. I'm tired and I feel weird. No reason for it, just started.
Chrissy and I haven't been spending as much time together recently as normal. I'm really starting to miss her, sometimes. There are always things we need to do. It's not a bad thing, I just miss her. This week has been particularly full. I'm very proud we've survived it, but it's meant a lot of time apart. I just miss her.
I've been worried about all the normal things with Chrissy, which is mostly why I talk about them so little. Am I a good enough boyfriend? Or a good enough person? Of course, I never feel like one. And I especially don't when I screw things up. I'm worried that I'm just not interesting enough, or fun enough and that I never talk enough. It's just this constant worry I have, I'm so used to worrying about those things that I just dismiss them. I dismiss them especially because Chrissy insists that she's so happy. I don't even understand what I do to make her happy. I'm glad that I do, but I suppose it's not understanding that makes me worry.
It's not for a lack of communication, Chrissy has told me over and over a lot about what she likes in me. I don't understand it all, though. I don't understand why she would possibly like any of the things she likes about me. They don't seem to me like things anyone would or should like. Or they seem normal. I just don't understand why she likes all these things about me. They don't seem like anything to me.
I've been overly preoccupied recently. I wish that I could properly explain to Chrissy. It's weird, in my head I have these quite articulate thoughts about all sorts of subjects. And then I try to say them, and nothing comes out right. Or only one word comes out. Or only one sentence. There are also things I think about that I can't discuss with Chrissy. Things like programming, actually probably only programming. I think about program designs and data structures that I can't possibly describe. Another good reason programming is bad for me.
I've also been preoccupied with trying to create a good book. I think about it constantly, every day. Everything I learn I try to apply to writing some great book. I'm never sure I can though, or that it'll ever be good enough. I feel like I'm slowly crawling toward something actually good. It's the movement forward I'm most excited about.
I keep turning over that Chemistry class in my head, too. What didn't I like about it? What did I hate about it? Why couldn't I finish it?
It was so terrible, absolutely terrible. Not the teacher, or the material. It was just so dry and boring. It seemed like the most boring thing I'd ever learned. All of it seemed dry and boring. It was a science like any other, like programming or computers or anything. I can't help feeling that at one time, I would have loved this class. Not now, something is completely different. Still, I'm going to try taking chemistry again in a while.
It's late now, I've got to sleep for class tomorrow. So I'm going to, though I still feel strange. - Mood:weird

| |
|
I suppose it went well, I got an eight nine on my midterm. Except that it was one point away from ninety, and the girl who sits next to me who didn't study nearly as hard got ninety. I'm not upset about it, I'm more relieved than anything. But it was slightly disappointing to see that I was one point away from an A.
Too much programming recently, but this new project is for a good cause. I started work on something new, very new and very simple. It's like a peer to peer Craigslist. First, I had to develop a network library that was as reliable as TCP over UDP, which is fairly involved. But I designed quite a nice system and implemented it in one night. The system uses one byte at the beginning of the packet to index the packet with a number between zero and two hundred fifty. This is used to organize the packets and see which are missing.
In UDP, packets can only be eight bytes long, and packets sent over UDP are not guaranteed to arrive at all, and they sure as hell aren't going to arrive in order. The index byte helps this, but it would be impossible to send something over two hundred fifty times seven bytes long without some sort of help.
The system sends out "super packets" in two hundred fifty packet blocks. It sends these out all at once, assuming that most of them won't arrive. It then waits for the receiver to send requests for packets it hasn't received. These packets are then resent, and the client again asks for any packets still missing. This continues until the client has an entire two hundred fifty packet big "super packet." At this point the client signals the server to send the next block of super packets.
The key with this is that the entire process is non-blocking. Both the client and server only have to check their incoming messages, send out any needed messages, and then return. There's no waiting for a packet to be finished like with TCP. Granted, packets may never be fully assembled if the connection is particularly bad, but I think over all this is a fairly nice system.
Justin and I are supposed to hang out today, but I've got a therapy appointment at six, now. Which sucks because five would have worked just fine. But no, it was changed to six, just today. I'm not sure what to do.
I'm growing tired of this blog. God knows who reads it aside from myself. I'm nervous to write about anything I really want to write about. This blog started as an experiment in honesty, and that experiment failed. People need their secrets, because despite whatever anyone wants to say about free speech or how people should be able to have their own opinions, people hate each other for things that they do themselves. And even for irrational things. People hate anyone radical, anyone who won't fit in.
People don't want to know secrets, they don't want to lead honest lives. They want to go around pretending that everyone is perfect, and damn anyone who says anything different. The only people hated in a society like that are honest. Anyone who admits how they lead their lives is hated, not because their lives are different, they not different. Honest people are hated because they admit all the terrible secrets in their lives.
I could talk about anything I wanted to on here, and eventually it could greatly harm me. Not because anyone else is any different, but because people want to hate and judge each other. People are inherently hypocritical, they see nothing wrong with hating someone for something they do themselves.
And most of all people are illogical. They believe that everyone should lead their lives a certain way. Be this patriotic, like this music, wear these cloths, don't talk about these subjects. And because people are illogical, even when there are terrible things wrong with this image of normal, they refuse to change it, or to even acknowledge that there is a problem in the first place.
We all live in a world like nineteen eighty four, none of us are free. The only thing we have is the ability to lead secret lives, to be private. But this doesn't extend very far anymore. Instead of imprisoning people for things we don't like, we reject them from society. Which is much better, but still absolutely awful. People have always feared anything that doesn't fit in, and will continue to do so indefinitely. So anyone with any real opinions is like a spy in enemy territory. We're all spies, trying to pursue our own goals, and trying to expose the spy next to us.
I might start a new blog soon, a private one. But I still feel bad about this one.
It is sad to say, but you will always get further by appearing to fit in. - Mood:weird

| |
|
I programmed again today. More work on Justin's engine, the menu system again. I successfully overhauled the entire old menu system and implemented what I consider to be the perfect new menu system. The new menu system is absolutely amazing. It's everything that I wanted it to be, my only problem has been with how to use it.
To use the menu system, I add items to it and call the function to open it. It returns the resulting selection, and I can do whatever I want with that information. The difficult part is putting two menus together. If I have one menu that leads to another menu, and I cancel out of the second menu, I might want to go back to the first. But this is impossible if I just add items, open the menu, and do something based on the result. It becomes impossible to go back to the first menu.
To solve this, I first tried turning the menu system into a basic state machine. I looped over a function which switched based on the value of a state variable. Thus, state zero is one menu, state one is another menu, etc. To change between menus, I change the state. The problem with this solution is that it creates a huge number of randomly assigned states. There is no reason for state five to be the item menu or the enemy menu, or any other menu.
To solve this, I could name the different states. But there aren't enough of them to justify that, and that would mean every time I added a new state, I'd have to name it something which is more work than it sounds like.
A quick solution I thought of would be to loop over my first implementation. This means that whenever a menu is exited, it would exit to a certain "root menu." This is viable because most menus don't need to return to their directly previous menu, they can return to a root menu. But this isn't very elegant or good.
Everything aside from these solutions is incredibly complicated and worse. Unless there's something I'm overlooking and there probably is.
I can't have a callback system, or an event based system, they're both much more complicated and harder to use than what I'm currently trying to do. I could do a traditional hierarchy based GUI, but again it's harder and more complicated than my current system.
It might just be best to name these states. That might be the best solution, I'm not sure yet. It doesn't feel right, it feels like there should be something much better. I considered for a while using a recursive function, too, but that would be incredibly confusing.
I wonder how SNES games did it. Then I remember, from all the code I've looked at. They hacked it in, probably using a variety of different systems all of which were worse than my current system. GUIs are usually hacked in, and bad.
I considered using some kind of GUI library, too. But that would certainly be much more complicated than my current system. And the problem isn't with my GUI system itself, the menu system is fine. The problem is with the correct way to use the menu system.
ZGCS didn't use a state machine, it just didn't allow you to return to previous menus. This was a much simpler and more straight forward solution.
The whole code for this project so far is nine hundred lines, editor and all. I'm really quite happy that it's so small, but as usual I'm sad that it isn't smaller.
I'm thinking about playing around with various graphics and networking libraries that are on source forge. I've been wanting to for some time, particularly I've wanted to play around with other people's graphical libraries. I've become so used to writing my own particle systems and so on that it might be really fun to use one I don't have to code. I don't want to do that until this engine for Justin is done, though. That's always how I feel, constantly wanting to work on something else, something new. It's because there isn't anything else fun to code in Justin's engine. Everything else is just work, slow work.
I feel strange. Not much has happened today. I wanted to get done a lot more than I did, which is disappointing but expected. I think I'm going to go play around with programming for a while. - Mood:tired

| |
|
|