Sunday, January 27, 2008

Random blah

7 days left. To finish with the army I mean. This is good news!

There are no bad news. Just a little frustration. One part of myself wants to be active in the scene but another side of me understands it's a little vain especially if I take it too seriously. Well, even if I didn't try to bother much I was disappointed by my unability to finish a twister 256b effect for the CPC (In fact it's an easy effect, but the noise in the netcafe, the long time since I last coded assembly for Z80 and some other psychological aftereffects forced me to quit).

Actually what I am afraid when I start to code something, expecting the usual negative outcome, is that I may loose several hours on a vain democoding project with no end result, also becoming frustrated for the rest of the day while I could also use these hours for relaxing, playing some game, writting this blog or anything. But here is the other side too: Being afraid of a failed productivity I prefer to abandon democoding and instead play some game or surf in the net. For the latter I am sure I will enjoy it more than a failed coding trial for the day, though if the coding suceeds then it's more deserving as a final product of creativity than computer entertainment. I think here is the sharp edge of the story, the two sides of a coin, should I relax and do something else that is less important that creating something, or should I try creating something which although if it doesn't succeed then it would be better I wouldn't have started it at first. But I can't just take either because I want to feel creative but I don't want to be frustrated and loose the rest of the day in something that doesn't sees the light at the end.

Of course if I was coding something else then I would have unreleased code that would be reused. But here, a tiny code intro is code I have to throw away. Maybe the experience of it is what remains. And the experience of thinking about productivity again, these thoughts.

Another bad thing is that each time I am frustrated for yet another time, I start to be afraid ever more of setting a new demoscene project. I mean,. it's like I get more allergic to the appeal of demo competitions, deadlines and the scene or even computers in general. And lately I had many frustrations at least in the 8bit side like for example the Primary Star 2007 invitation I last coded for the C64 but after making bigger plans it ended into something very simple and lame and I didn't spent like 3 days for it but maybe a month (which translates into something like 25 days of lameness and dissatisfaction and only the last days coding something in a haste. Hell, I was also planning a special twister for that one :P). I really plan to code a decent C64 demo with newschool effects but I know it won't be easy anymore. So, I may drive away from the thought of making something on the C64 for a period.

Of course, being in the army does mean that I couldn't get hold of a computer near me to code something. Though, it's not an excuse because there were smaller or bigger periods when I was not inside the army camp but at home (even a 6 months period) though I couldn't kick my ass to be productive (nor do the jokes and challenges sets by others I guess :P) and got even more frustrated. However, this does not happen when I code C projects on the PC or the Gamepark, maybe because it's much easier to code in a compiler than assembler and you can even throw good random stuff on the screen even when I am lazy or unable to concentrate. Today I would gladly praise higher level languages and modern compilers when in the past I was an assembler fan :)

In the army, I also produced 3 hours demo (This one in 3 hours on a PC inside the army camp! Almost half the time spent to not finish a single CPC twister :P) and later during my free 6 months period the Re-re-recycle GP2X demo (even though this one was ugly but fun to make without much frustrations), also Flowz (Vain 1kb code). The C projects were much more fun to code even if still vain (Why release a mediocre demo done in a hurry? Heh,. why release a demo at all??? I think I am loosing it..)

And so, this concludes that I think I am loosing it but maybe I do and maybe I don't :P

I still have plans for 2008, though another plan is that I change the priorities between my demoscene hobby and other activities in my life, so that I don't get sucked(focused) by something that dissatisfy my at the end as usual while forgetting the rest. Just a change of focus. It's not easy but if I see that democoding sucks my life without making me happy, I will change side. This will be hard because one part of myself will still dream of creating something good in the demoscene, I will dwelve further into the new plan though.

It was supposed to be fun. What have I done?


Någon said...

I think you should not give up creating demos just because of the difficulties. I bet most other people on the scene have similar problems, but you only see WHAT they achieve, not HOW ;)

It's a good idea to concentrate on something else or just relax: playing games, etc. But at the same time try to work on your demos exactly an hour a day. No more no less. If you don't manage to do anything, don't bother, don't strain yourself to finish it this particular day - it's not a matter of life and death. This way your expectations will be low and each success much more rewarding.

As for me, now I am fighting myself to follow the guidelines I stated in response to your previous blog post. It's hard, but I know it's possible. The biggest obstacle is apparent lack of progress - at first you accomplish even less than when you were just wasting your time. This pushes me to stretch the time I spend on a single task, try too hard and then give up and go back to surfing the net ;) This of course does not help me make any progress and I keep running in a vicous circle.

Most important thing is to get into the habit of diving the work into pieces, allocating some time for each one and strictly enforcing the time bounds. This is easy when you manage to finish your work within the chosen time frame and very hard when you don't.

I must get used to making little but steady progress instead of making large hops and then sinking down.

I must admit that I always liked high level languages more than C or assembler, though I expected the same performance from them which was wrong. Thoughout the time I have learnt that it is better to trade some performance for readability so that the code is easier to write and understand. Unless, of course, you are writing a demo on Z80 and every little bit counts ;)

The lack of modularity and encapsulation in low-level languages leads to such a high number of intiricate details that you have to track without help of the compiler which could find errors/warnings that working on any bigger project is at least slow if not impossible for me. This bothers me so much that I usually write more documentation and comments than code and this slows writing to a crawl.

At the same time things like RTTI in C++ or Reflection in Java seem almost preverse to me ;) Encoding information about classes in a binary file and using it at runtime is a big, wrong shortcut at the expense of performance and elegance of the source code. It voids all reasonable expectations as to what particular piece of code can do. That's what templates and polymorphism were invented for.

For me the perfect language is Eiffel. Great object model, without trade-offs, strict enforcement of rules, emphasis on good programming practices, design by contract. And at the same time it provides excellent performance (it uses C as intermediate language).

What a pity that Eiffel is not more widespread.

Grim/Arkos said...

what Någon said!

And keep in mind that you're just a mere mortal! You can not succeed at everything you do on the first try or simply at all! You're not god! You WILL HAVE TO FAIL to know what you can do and what you can't. That's life.

So take it easy, have a beer and HAVE FUN!
See ya on a CTM644 next time! :)

Optimus said...

Maybe I was exaggerating that day. But I was overwhelmed by negative emotions for sure. Though why be dissapointed for one single day? Only the fact that I wrote z80, I should be content with that but I wanted the results because I didn't have a second day to finish it. Anyways, I am indifferent these days but I still mean that I wish to avoid being overwhelmed by the demoscene or my expectations to be productive in general. And I may not want to abandon real life plans after the army so I will try to change my priorities or habbits for some period. But most probably I will wish to be back soon.

I may retry the twister but after I finish with the army and be free at home :P

eye said...


I suggest you get a "Demoscene Passivist T-Shirt", like the one i have. One day you'll be tired of wearing it and... then... well, then you take it off. :DDDDD


voXfReaX said...

ok! maybe some time passed from your posting but I have to print a comment... Man, the thing with you is that you get a pessimistic mood each time you do not succeed... I, personally have this also but I never quit...By completing something that at the beggining was like an impossible mission, makes you really happy and also so proud. But i believe that you must think some code failures as experience. Afterall, you can not know everything. You have try and if you fail, you will learn. It's the only fucking way... All had failures in life, the thing is to learn from mistakes and make something useful from them... (maybe bigger mistakes?? :P)
Try to think clearer man... If coding somehow fills your needs for creativity, then continue...
If not, quit it...
At least, you will find your peace!
Now, stop crying out loud and go coding :) I know you want michael :):):)

Locations of visitors to this page