Every five minutes, it appears, I click on a number between 1 and 9 to describe my current stress level, and it pushes that data to an ELK stack which let’s me see how I’ve felt:
I thought of this yesterday while working on the playground I’m building for my kids. I was applying finish to the playground’s wood and I got really antsy and wanted to stop while I was thinking about all the work I had to do. I thought maybe I would just keep going and see how I felt in a few minutes and compare the results, and after about five minutes that feeling had subsided and I felt fine about the work I was doing. I then thought wow what if I had stopped then? So, to apply this to my current gamedev project, I made this application to monitor my overall stress level. Zero and ten are asymptotes. You always have some level of stress and ten would mean stress to the point of quitting life. I would hopefully just quit was I doing long before that happened.
I truly believe I’ve established this axiom regarding productivity: it’s a balance between my own physical/emotional/mental limits and my ambitions. Work too hard, you’ll end up too stressed which greatly impacts your health, but work too little and you’ll regret not doing anything impactful. Now, I’m working on applying this to my life. Lately I’ve been ill, but not to the point of constant bed rest, I just feel down and out with a minor cough and sinus congestion. I meant to bring my cold stuff with me today but I forgot if that tells you anything about how bad this cold is. I need to get back on the wagon.
I have fallen behind on my exercise regimen and the results are noticeable. I had a pretty hard fall playing basketball which hurt my leg and hand so I wasn’t able to work out or simply needed a break and then I got sick. Now I feel like I’m completely done and won’t be able to get back into the routine I had previously. I’m going to run later today I think to get back into the habit. I don’t have my ball with me but I can at least run and use the weights at the gym. If I don’t exercise I won’t be able to deal with the stress level I’m at right now. I’ve never been this busy before.
Same plan today I guess. I’ll keep making these updates until I feel comfortable with what I’m doing. I’m going to get my day job stuff done and work on CC hopefully around 3 or 4pm this afternoon. I refactored the CarCodeProgram class yesterday so it’s much cleaner and easier to work with. Still working on being able to move instructions by dragging them around. I also had the idea of being able to full-screen the editor in case the screen is too small to make a very specific change. Hopefully I can get the drag and drop reordering working. I’d like to be able to have the CarCodeProgram class reorder the list when the array itself changes but that’s all dependent on the same code (I would still use the code I’m writing now although things would be organized a bit differently), but it would make things easier if I start adding new instructions later on. Also, I should use actual icon images and not font awesome for the instruction icons… anyway, that’s for later. My next update won’t be until Monday unless I have time over the weekend to work which is doubtful.
Yeah, um, balance… well, what does that mean? I’m thinking that first, I have to setup a basic schedule/plan each day, but then I’ve got to make sure there’s some down time in there. Seems simple enough to me. So, start out with some basic reading and surfing until say 10, then day job until say 4, and then work on CC. Actually, I need to check emails first. That always has to be done first thing so that nothing sits there while I’m just doing whatever.
I’ll check in tomorrow and see how that went? I’m working on the code editor in CC adding in some usability features like dragging instructions to reorder them. If the editor isn’t easy to use and intuitive (I think that means it’s easy to understand) no one will bother with the game. I need to get this right or it won’t have a chance at being successful.
Right now, you can drag instructions to delete them but that’s it. I need to refactor it a bit to make it easier to program on too.
I’m ending my experiment today. After two months I can see that taking the, “when I feel like it,” approach yields nothing. I worked on some projects maybe twice and very little was done. Mostly I just played games when I should have been working on something.
I’m not going to pretend I haven’t gone the other way either. I’ve ran this same experiment far more times than I would like to admit, and the results are the same. I feel this tremendous amount of motivation, work very hard for a few days, and then get so stressed out I end up sick or seriously depressed.
I have enough evidence to conclude my experiments. I have to find the grey area here between these two polar opposites. If I don’t schedule time to work and have a plan describing what I need to do, nothing will get done, and if I try to do everything at once I won’t be able work at all. That’s it, I’m going forward with my findings so no more binary work ethic.
I’m thinking that I’ll have some time, maybe 30 minutes to an hour, later in the day to work on Car Coder sometime after 3pm. I still don’t like that name.
EDIT: I just wanted to make a note about the release date. If I keep working on the project regularly I’ll finish it, but I can’t work with hard deadlines right now. If I was working on this full time maybe I could do that, or have a better estimate. Honestly, I don’t think this project will be ready by the end of the year, but I should know when it will be done by then because I’ll be able to track my progress/productivity as long as I keep making updates here. If I keep breaking down the work involved and work regularly I should be fine.
That’s what I’ve heard at least. If you wait until you feel like doing something, then you’ll never do anything. In my experience, I have certainly felt like doing things, but the feeling never lasts long enough for me to actually get ‘er done. Typically, I feel really interested or engaged with a project ending in betrayal later with nihilistic feelings of hopelessness. I’m starting to realize that this back and forth has had a big impact on my overall sense of self-worth. I feel cheated, but then I can only blame myself, right? Nah, I’m too creative to rule out demonic influence. However, I need to make sure I see the difference between this conflict and simple apathy because answering a serious question that’s been holding me back most of my life is not indifference or lack of action, but rather it is an achievement on its own.
Continuing my experiment, I’m considering the keep it small approach, where you only do things that are easy or simple enough to get done in a short amount of time, but none of the ideas I come up with interest me. I do whatever I think is fun or interesting and when the nice feelings go away I stop. So far, I have some assembly code that prints a string to the console (pcjs), and I believe I worked some on Questr which needs a new name now that I have found another game with the same moniker. I’m feeling the familiar burnt out feeling I was talking about earlier.. ugh. I am both dreading and looking forward to the last three months of my experiment when I’ll change my strategy to ruthless discipline.
I’m working on an older project now that I got excited about after taking up my new “follow the fun” approach to game development. It’s a tile based HTML5 game where I’m attempting to create procedurally generated quests that are actually interesting. Some games already do this, but I wanted to see if I could create something where the quests were nuanced enough to make the game fun. To be honest, it’s an ambitious project that I’ll probably not be able to finish because I a) won’t have enough time or b) the AI won’t be feasible to do in the browser. I may end up having to make a backend for this one (in go cuz I do go now.)
I’ll try to post what I’ve done so far (which isn’t much) but for now here’s a screen showing the opening:
There’s two basic strategies I can think of for personal project development:
Heavy disciplined, all free time goeth the way of the hobby
If it isn’t fun, stop and do something that is fun.
Which is better? Which is more rewarding? Which is more fulfilling? Well, I guess I have to try each and see. That’s what I should do I think. Knowing this will be it’s own reward, right? So, the question now is, how long should I do each for?
Let’s look at some different durations. Some are obviously wrong, like an hour, or a year. So.. somewhere between those? Yeah I think we can keep going. One day? No. One week? Still a little too short. Nine months? Seems like too long. Six months? Still seems too long but it is in the feasible range. So, between one week and six months? What’s in the middle? Three months. After three months, would another month matter? I really don’t think so. If I am not able to come to a conclusion after three months then I probably won’t be able to at all. One month can go by fairly quickly in terms of actual time spent on a hobby project. So, three months seems like a fair amount of time to know what’s good and bad about the above two methods.
I feel like taking the disciplined approach will yield a better end result, but I really won’t enjoy myself, and the reverse will be fun, but I won’t have anything to show after the three months. I’ll probably end up with about 20 unfinished projects.
I’ll do the fun part first, because the way my life is right now I think I need it. The rules are as such: I only work when I want, and I only work on things that are interesting. The goal is to let my interest in a project serve as the motivation to work. When I don’t feel like working I’ll do something else, or nothing at all. However, I will always document what I do. I’ll keep that discipline. Three months from today ends on November 29, 2018. I’ll write posts every 30 days as well just to track my progress and do a basic check in about my overall happiness/stress level (that’s in addition to posts when I actually work.) I already have something I want to work on so I’ll probably write a post about that as well. Maybe tomorrow.. heh.