All of the CS servers have been moved into the cloud.
Or... did they get moved into the Digital Ocean?
Everything seems to have gone smoothly. There was a mild hiccup in the transition, due to a blunder with a configuration file... but I must say, I'm quite pleased.
I was pretty anxious at first. Moving to the cloud felt like I was losing control of things, because the server wasn't sitting behind my chair, whirring away. Now I realize that whirring was more of a nuisance than anything, and my wife is very happy to be rid of the noise (the servers are still there, just powered down).
But I'm very happy now. I have just as much control now as I did before... more, in fact. There's a pricetag now, but I guess I was offsetting that before with time spent administering to the servers. And I really like not having to worry about the servers when we blow a breaker (which happens much less often now).
Anyway, the move is done. I still have some little things to take care of, but at least now I've got some experience with the Cloud. So, yay for experience, and stuff. I'm sure you're thrilled as well.
The major plan is to make TTORP available for anyone to use. There's a few things that need to be addressed first. So here's that list. Feel free to comment.
I'd like to find a way of advertising TTORP's existence. I have no monies. Thoughts appreciated.
TTORP (Table Top Online Role Playing) has been updated again (version 0.9).
NOTE: Screenshots will be forth-coming.
How Much Has Changed?
The last version that was active on CrazedSanity.com was 0.7.19. Now, according to Semantic Versioning, that isn't really a big change... except it is. Since it has not yet become "stable"--which happens at version 1.0--any "minor" version change (the second number, in our case it is now 0.9.4 instead of 0.7.19) is actually a big one. The code is undergoing a ton of changes.
The last version change did quite a bit. The codebase shrunk a lot: the libraries (the code behind the scenes) shrunk to 50% of their original size. The code became a lot easier to read and maintain, and there were quite a few fixes and updates that happened. There are probably new bugs, too... if you want to look at or report 'em, go check out the GitHub page.
Upgrades (The Highlights)
I hate to sound like a broken record (like a broken record... broken record... broken...) but I'd still very much appreciate some help.
Write up some documentation! There's a wiki for TTORP (a.k.a. "cs-battletrack") that can be filled with words and pictures! Just contact me so I can put them up, or create a GitHub account and do it yourself!
All help is much appreciated! So are financial contributions, FYI.
Here's a new screenshot for TTORP, now that it's had some updates and fixes. Click for the bigger image.
While you were bitching about not having enough time, I've been busy.
I hosted seven websites. Not for work, but for me. In my free time.
(yes, some of them are broken)
Did I mention that I also host them?
I've been writing code and sharing them with the world.
There are 22 repositories available on GitHub.com alone. There are actually several that are private on BitBucket.org as well. Some of them are conceptual, some are libraries. And at least three of those repositories have been around (not necessarily on GitHub) for over a decade.
I've been writing books.
Hundreds of pages. Thousands of hours of research, planning, and play-testing ideas to get it right. Hundreds of notes, scraps of paper, and drawings to map-out some pretty complex concepts to make sure it all works together.
I was reading something today from Nerd Fitness. I find them to be really motivating, even if some (okay, ALL) of the posts are pretty long.
Anyway, a couple of the points in there really struck a cord with me. Namely, there was something in there about how you should really work backwards: figure out what you want to do, and then figure out the steps to get there.
Sure, I've gone through this before. And I figured out what I wanted to do... but then, somewhere along the line, I got side-tracked. And for the past year, I've been running on that track, trying to find a way to... well, a way to make it fun. And I've been working really, really hard to make it fun. Maybe it's been more than a year.
What was the realization, you ask? I realized I don't want to write code for a living. It's just not how I want to spend the rest of my life.
Now, that doesn't mean I don't want to write code at all. No, no. I'd like to write the code that I want to write when I want to write it. If it happens to make money, that's fine, but I'm not going to go at it from that angle.
"Dude, I already told you that." Yes, there have been several people that have told me that I probably don't want to code for a living. Or that I shouldn't go at a code-based project looking for money, but I should go at it from the perspective of enjoyment. Whatever, that's fine, you told me so, get over it.
What do I want to do? Well, I really want to tell stories. I really, really, really love to tell stories. Running D&D games is fun, because I get to tell stories in ways that are interactive, and really gets the players involved in it. But I love writing/creating stories even more. So, to that end, I've decided that I'm going to concentrate on my main novel.
So this... "story" is something I just recently found. It's from way, way, WAY back in my high school days, I think. Should you manage to guess who wrote it, and for whom it was written, I will buy you a brand new gold watch (as long as you pay for it). I have intentionally left the slight grammar mistakes/typos for... historical value. Or something.
What do you call it when a certain man fills all his free time with thoughts of a certain woman? He longs to be with her when they are apart, and wish they could be together forever when she is near to him. Chaos fills his thoughts and emotions when they are apart, but that certain woman soothes the disorder with her presence, her aura, her laugh, her very breath.
What do you call it when a certain man sees a certain woman in the place of movie stars, of models, even in the place of strangers? He sees a beautiful woman on the street and is reminded of that certain woman. A model in exotic lingerie, a movie star in a beautiful dress, even a strange lady in pants and a shirt become that certain woman, and they are together again, if for but a moment in time.
What do you call it when a certain man longs for his relationship with a certain woman to grow into something more? He wonders if he is obsessed, but his fears are elated by the insight of his closest advisors. He wonders if it is nothing more than a simple crush, but knows that, if it is, it could be much more.
This certain man has been close to asking the hellish question that dwells in the bowels of his soul, but has instead been crushed by the news of another's relation with her. Everyone close to him knows the relationship is right for both of them, yet he fears a loss of trust if it should go awry. He knows he could be everything that certain woman needs, but wonders if she would ever give him the chance to prove it.
And as each new boyfriend pulls closer to the heart of that certain woman before inevitably breaking it, that certain man pulls farther and farther away. He feels that a wonderful chance has been set before him and is ruluctant to let it slip away, but that certain woman continuously gives him mixed signals. Maybe she is hiding her own feelings, and feels the same way for this man. But it seems she is pushing him away, and it seems the pushes are getting stronger and stronger with time. This man wonders how long he can hold onto her before he must let go...
He wonders if this is the right thing to do. He wants to ask her, but has too much to lose from a rejection. He knows, deep in his heart, that she will figure ou tthe riddle of this certain man's identity. The clues are there if she looks close enough. If her feeling are the same, her heart will be her guide to this certain man who awaits her approach at the end of the lighted tunnel of her dreams.
Time for another update. This one, however, is about a planned upgrade: System-Defined Skills.
Basically, this means that there will be a pre-defined list of skills to choose from, so it can be selected instead of having to type it in.
Why? Well, in future versions, maps and certain screens can have some actions defined, so the system will say, "If the player does X, then they must roll skill Y". And defining that skill is much easier when there's a definied set of skills, instead of trying to guess... guessing gets pretty messy if one player misspelled a skill.
Anyway, I'm still playing around with the idea. Here's a mockup of what the setup screen might look like:
Alright, TTORP (a.k.a. "cs-battletrack") has had enough changes that an update is in order. In working out some bugs, I've noticed some features that I'd forgotten about, and probably never told anybody else about.
UPGRADES (THE HIGHLIGHTS):
KNOWN ISSUES (not necessarily complete):
Would you like to help?
You don't need to be a programmer to help me. All you need is to have a little bit of time, have a computer (you can obviously check that one off the list), and be able to type and formulate coherent thoughts. Here's some of the things you can do:
Update May 20, 2013: I've updated the sheet so that class/cross-class skill checkboxes finally work. It actually uses an image instead of an actual form input. Yay!
Update September 02, 2013: The class/cross-class skill checkboxes apparently still don't work, under some conditions. Apparently once they're unchecked, they won't check again.
I've updated the TTORP (Table Top Online Role Playing) system on CrazedSanity.com. It's still buggy, but it should be at least a little more user-friendly... but apparently only a little.
For the most up-to-date information on the project, take a look at the project on GitHub (there's an issue tracker that is also helpful).
I've sorta fixed adding new records... sort of. There are now "Add" buttons for weapons, armor, gear, and feats/special abilities. Updates to the fields work as poorly as they did before--in other words, changing the field will leave it red and non-modifiable until the page is reloaded, even though the changes were actually saved.
Also, there's a bit of a glitch after adding records. If you attempt to modify a record after having added one, the page basically seems to not care... reloading the page fixes that (see previous bug).
It's a work in progress. Help would be very much appreciated, even just with testing changes and narrowing bugs ("I can't update the weapons after adding one... but it sort of works when I try after reloading the page").
Writing code is a difficult thing, sure. Or at least it can be. Reading some stuff on the 'web today gave me a little different perspective on things, especially where it comes to some of the things I'm working on.
The website was for Synergy, an application that allows sharing keyboard and mouse across different computers. The part that really caught my attention:
That's pretty much exactly how I feel about most of the applications I'm working on. Since I'm the only developer, it gets a bit frustrating that I don't have someone else to talk to about that cool thing I just implemented. Ugh.
(NOTE: This is an email I sent out at the end of last year, and I thought it was blog-worthy)
I'm just sending you this email to try to explain why I am the way I am, why I've said (or not said) stuff, and maybe some insight into my intentions. If you don't read it or never respond to it, I guess I just don't care. It is what it is. I'm even going to put little section titles so it's a little easier to read.
The title might be a little weird, but the purpose is to have a list of things that I absolutely can't live without. Generally this list would only come into play after I've reinstalled the OS on my laptop (happens at least once every few years, depending on how many problems I have with it).
This might help you (or others) to see new applications and such that you may not have otherwise thought about. Or maybe it will give you more insight into me. Or maybe... maybe it's just a list for me. Who knows.
NOTE: these things are primarily for Linux. I abandoned Windows over a decade ago, and haven't looked back, except for when it's required for work. I've never had a chance to work with a Mac, so I honestly don't care about them. Anyway, don't be surprised if these don't work on something other than Linux.
ON TO THE LIST, JEEVES! (todo: add relevant links)
... to feel like I'm really contributing to something noble, instead of just helping some other business to make more money.
... to know that the emails I spend hours composing are actually being read, not disregarded because it's too long.
... to feel challenged, not frustrated.
... to feel excited, not desperate.
... to feel appreciated, not used.
... to feel a sense of accomplishment when I come home at night.
... to know that my emails get read, not ignored because they're too long.
... to be able to get angry at something and be heard, not asked if I've taken my pills.
... to know that my working 40+ hours a week is appreciated, not just required.
... to not feel guilty about telling people that my wife is a homemaker.
... to feel accepted by my peers, not disregarded.
The other day, one of my co-workers walked up to me and had me login to a server. I pulled up the screen that asked for my username and password, where I promptly typed the username... and then stopped.
"What's wrong? Don't you remember your password?"
My simple reply: "I don't know my password."
So, if you're at like most people, you manage passwords in a few ways: your browser, and by using one (or maybe two) passwords. Not me.
I'm one of those people that has a lot of accounts on a lot of different systems. More accounts than most, easily close to or surpassing a hundred just for myself, and many of them must be changed on a fairly regular basis.
To cope with this, I use a password safe. It creates random passwords for me that I don't have to (necessarily) remember, and as a bonus helps me to keep track of where all my accounts are. Check out KeePass if you're interested (the article has a link to the application).
Ever struggled with the blame game? You know, when the boss comes in, freaking out about why something isn't done, or why it's taking so long?
Well, worry no more! With S.E.A.N., you've always got somebody to blame!
"Uh... Somebody will do it... Everybody will do it... Anybody can do it... Nobody did it."
Somebody, Everybody, Anybody, Nobody.
Thanks to Prophet for telling me about this one.
Recently, I had a chance to talk to a couple of very cool fellow geeks. We talked for a couple of hours, and during that time, I was asked what makes me who I am. I answered, but felt a bit disingenuous about it. I guess maybe I was a little scared that they might think I'm too much of a geek or something.
Basically, the part that I messed up on was trying to say that I programmed less than I actually do. Sure, I do a lot of gaming, and I might sketch something once in a while, and sometimes I get inspired to write in one of my unfinished novels, but my passion really resides in programming web applications.
So it got me thinking: what do I really want? Well, let me list the basics that really make me happy:
I love telling stories. I'm writing a couple of novels because I love telling stories. It's fun to write, but it's much more fulfilling just to be creatiive and to tell a story that nobody has ever heard (or a story they've heard but love to hear again).
My novels are cool to write, but I get a little too technical when writing. Sometimes I get caught-up in details, sometimes I try to focus on the big picture. And sometimes I get caught-up trying to write like I talk: I've told the whole story many times to many people, and they've all loved it... but it's just really tough to write something the same way I tell it.
Being Geeky (the "ooh, shiney")
I love finding something really cool. A pocket knife with a whistle, and a wicked-hot magnesium bar that can start a fire on anything with 3,000 degree sparks. A watch that hides an 8Gb USB drive. Four miniature tools that contain over 30 different tools in them. Ninja star push pins. The cool things that just make you (or at least me) go, "ooh, shiney!"
Doing Stuff I'm Good At
I like doing stuff that I'm good at. Creating something really cool and unique is an awesome feeling. Or sometimes it's just helping somebody else work on something, or advising someone about something that I've got expertise in. Especially when, in the end, I get that little bit of validation.
Making Something Others Will Use
I think it is a really great feeling to build something that other people use. I've built a lot of applications that others use for a lot of other companies through my day jobs (past and present). That's a great feeling, to know that what I've created is being used and helps somebody.
Putting It All Together
So... what does that all add up to? I had an answer... but I'm not sure anymore. I guess I'm still working on it... what do you think it adds up to?
What are you doing? Check my page at GitHub to see some of the code I'm working on.
(This awesome montage was created by Screenie; pretty nice if you've got Linux).
After having been fairly uncommunicative for over a month, I'm starting to get back into the swing of things. I've started attending my normal Tuesday evening meetings, and I've started giving a crap about Facebook and various other social networking stuff. And some of the things I've been reading and hearing about are a bit... irritating. So to avoid having another rage issue that might lead to further injuries (possibly involving others this time), I've decided to rant about it... get ready.
I don't like calling people. Not my mother, my friends, hell, I don't even like calling my wife. I rarely pick up the phone, and generally do so only if I think it is of importance or might be interesting. I don't like talking on the phone at all. The cell I had in Fargo many years ago maintained history of all my calls for more than a year, and it said my average call time was one minute and a handful of seconds: that included 45-minute calls with my wife (then just my girlfriend).
If I'm on a call for more than 30 seconds, I find myself looking for excuses to get off the phone. If you've ever been on the phone with me, you'll notice that I'm the one trying to end the conversation. If it can't be said in 30 seconds, it probably isn't that important or would be better served in face-to-face.
I didn't like getting asked to fix other people's computers before I my hand was broken, so what makes anyone think I'm going to rush into that now? I type so fast because I'm impatient, so having to type at a ridiculously slow rate only worsens the problem. And no, I'm not going to sit on the phone trying to explain how to get you through installing some software or driver or something, because I'm not given enough details about the problem, and nobody seems to be able to understand that when I say the word "space", that it means to press that long bar on your keyboard.
I don't give a shit if you think I'm not holding up my end of the bargain. I've stated what I can do, and what my time constraints are. Just because you don't understand them doesn't suddenly make them disappear or make me available.