🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Coding moods

Started by
15 comments, last by TheComet 6 years, 4 months ago

I've been off an on programming for the past 4 years now and have noticed trends in my code execution.  What I've noticed is that as I program more and more my brain burns out, but I burn out fast, If I program for 8 hours then there is a small chance I can do it all again the next day, or the day after. 
If I'm feeling hazy towards programming my efforts are usually sloppy and poorly thought out.
Once and awhile though I feel inspired to program and 'want' to program, usually on those days I do my best work and those days can be 16 hours long or more.  
I just couldn't imagine programming for a living, and then having a project of my own to program.  I don't think I could do it.
Now that all be said though, I find the inspiration for programming comes from the creative side of myself, the desire to create creative content.

I'd love to hear your ramblings on the matter.
 

Advertisement
1 hour ago, Awoken said:

I just couldn't imagine programming for a living, and then having a project of my own to program.  I don't think I could do it.
Now that all be said though, I find the inspiration for programming comes from the creative side of myself, the desire to create creative content.

Yeah my "side projects" suffer greatly when working full time. If I am doing any kind of hobby programming, it's usually very different from what I'm doing at work -- e.g.
* working on web systems full time, writing C++ multi-threading frameworks as a hobby.
* working on meticulous C++ engine code full time, writing a website in dirty PHP
But for the most part, yeah, my hobby projects have moved away from programming altogether...

And yeah, full-time coding can be too much. A standard workday in Australia is 7.6 hours, and if I sit down and code solidly for an entire day (with a few breaks, of course), I'll definitely burn out quickly. Making sure to tune-out when at home, eat well, sleep well, exercise every second day, etc, is mandatory to keep that up.

My hobby projects stagnate because they're too damn ambitious to get a completion-reward feedback loop started to motivate me.

At my full time job, I don't have motivational issues but when I somehow manage to work on hobby projects in my off time, thinking about them can distract me from my job.

It can be hard to balance making progress on two completely unrelated projects.

My opinion is that programming (like basically everything else) is _fun_ only when you face a problem that is just "a little" harder then your skills allow.

You don't have fun programming something that is too easy/annoying or something that is too hard, it's just not fun.

Furthermore, generally when you work full-time for the standard it-company, problems are very very easy, but they give you too much of them, and you're gone: all your energy goes into that crap, and when you arrive at home the problems that your personal project challenge you with become too hard, unless you're doing pacman or something similar.

 

There are many ways to attack the problem, but unfortunately none of them is _easy_:

-1) search for a job that challenges you with more interesting problems, this includes working for a game-company, doing research, ecc ecc.

-2) work less, for example contract a part-time job so that you're able to spend some more energy on your personal project.

-3) reduce the scope of your personal project until it becomes easy enough.

 

Of course 2 is the  most difficult to obtain, while 1 is the optimal. (doing what you like or something close to that full-time). 3 kinda sucks, because probably often you can't really judje how difficult a thing is for you, and more importantly if it will be fun.

I would say that unless you're already satisfied with your day job, avoid 3 and go for 1 or 2 (mixed with 3 eventually).

I'm currently in the same situation (except that my personal project challenges me with problems that are right for me, and I happily work on it since one year and a half (thanks to handmade hero basically, I learned game programming there ))

I'm 24 and I asked my boring company the part-time, but I'm not sure they will give it to me. If not I'll probably go with the number 1.

 

My 2 cents.

Leonardo

Just to add to my previous post though -- I don't think that most programmers do anywhere near 8 hours of work per day. In my own personal experience with burnout, it's possible to spend 8 hours at a desk and seem like you're working, but only get 1 hour of productive work done. I've also been in offices where that was the norm. I've been on projects at big top-50-stock-market-ranked corporations that have probably made less than 8 man-hours of actual progress per week across the whole team... So I wouldn't feel bad. Most full time commercial programmers aren't all that great :)

Full-time programmers probably spend more of their time in meetings, clicking on online time trackers and bug trackers, moving cards around on kanban boards,  "researching" on the web, and doing code reviews than they do actual writing code.

Stephen M. Webb
Professional Free Software Developer

41 minutes ago, Hodgman said:

I don't think that most programmers do anywhere near 8 hours of work per day. ...  it's possible to spend 8 hours at a desk and seem like you're working ... less than 8 man-hours of actual progress per week across the whole team... So I wouldn't feel bad.

I think I even read a document some years ago where they run a correlation (how, IDK) between the time of commits, bug founds, time to refactor and bugfixing. I think they observed something like 30% of software maintanance costs to be in the last hour of work. Perhaps there is some estabilished research about that?

 

Incidentally, I'm asking for a work-hour reduction at work.

Previously "Krohm"

I am full time working 8+ hours each day, writing desktop applications with C#/C++/Delphi in a boring environment. When i get home i most likely dont want to code anymore - i am pretty much burned out daily, even though the work i do is not that hard. But its very frustrating due to the fact that we use technology which are unstable like hell (DevExpress, Delphi, WPF, XAML)...

So when i get home i rather play games, listen to music, try to relax - but this mostly doesent work due to the fact that i have my kids jumping around me.

This has the result that my private projects suffer a lot, especially the game prototypes i work on will never get past any prototype stage.

I try to counter that by rarely leaving the office more early (to decrease my positive time balance) and code a little bit when i am fully alone. Sometimes this works well and i get very productive and sometimes i lose interest pretty fast and get distracted by other things.

I thinks the same way as Hodgman, it's really hard to program for 8 hours or more, and actually get all of it as progress. Being a beginner in this world of programming I noticed that I want to spend a lot of time doing it, because you want to get better everyday, but sometimes just making a little progress everyday would make more sense than actually counting the hours you spend sitting at your desk.

Of course there is the side of having a job, I don't work yet, but, sometimes I think about it, and when I start working I probably won't be coding at home because it's kinda exhaustive to do that at the job and home, which led me to think about why some people quit their jobs to give a chance to try to living by only creating the things they want (most of the cases here would probably be games).

I think it's unfair to compare the method you use to program a hobby project with the methods used in commercial products.

First off, in a professional setting there is always a specification that describes exactly what the product needs to be able to do. From this, the project is typically divided into small, manageable "work packets" which is integrated into a tracking system for managers to monitor progress. In other words, there is never a situation where you come to work and ask yourself "what should I do today" and similarly there should never be a situation where you go "lol I have no idea how long this feature will take to implement". The path to completion is not hazy, it's already layed out for you, it's just a matter of doing the work.

In contrast, I think most people's approach to hobby projects is a "do whatever tf you want" approach where you have little concerns about the scope, you have a very vague idea of what you actually want, you have no idea how long it will take, and you don't care whether what you're working on is a waste of time or not in respect to the rest of the project. In fact, you might not even know if what you're doing works or not. You do whatever is fun to you in that moment in time.

A result of this is often "feature creep", complete over-estimation of ones own abilities, and depression.

"I would try to find halo source code by bungie best fps engine ever created, u see why call of duty loses speed due to its detail." -- GettingNifty

This topic is closed to new replies.

Advertisement