This is the mail archive of the xconq7@sources.redhat.com mailing list for the Xconq project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Managing "Designers disgust". RE: cheating


From: Jakob Ilves [mailto:illvilja@yahoo.com]
> Brandon Van Every wrote:
> >
> > I had 9 months' worth.  Then I broke.  At least the code I wrote is
> > solid - overengineered really.  It'll be there for me when
> I resume a
> > year from now.  But man, what a lousy way to handle one's morale.
>
> Um, I don't consider your case to be viable for a "designers
> disgust" discussion.  You've not run
> into this on as a hobbyist programmer.  You've run into
> issues out on the disgusting battlefield
> known as "commercial game programming" and that's a
> completely different story.  You did not take
> the risk of just getting a morale break or getting tired of
> your project.  You took a major
> economical risk in an environment full of competitors and
> scavengers and bumped in a wall!

It's not that different a story.  I am a lone wolf indie game designer,
with serious commercial intent.  I've put my money where my mouth is,
and I've lost a lot of money.  The difference is just frame of attention
span.  Maybe my 9 months is like some hobbyist's 3 months or something.
I am not sure.  The question is, how much time do you spend before
deciding something is beyond a PITA?

> I know people making (or trying to make) a living as artists,
> by making comics, by programming
> games, by making music etc.  All that kind of creative stuff
> which is fun as a hobby but which I
> think is a mere nightmare as a life.

I wouldn't call it that.  I'd call it a difficult learning curve not for
the weak of stomach.  Eventually I think certain types of people figure
out how to swim through it, be productive, and be happy.  But it takes
aggressive process improvement and self-growth.  Otherwise you do not
make it, you never learn how to produce.

> Imagine never knowing if the
> next months rent can be paid or not
> (yeah, income can be SCARCE).

I am not imagining.  When you go through these "pounding heart"
scenarios often enough, you eventually realize that for someone who was
so imminently doomed so many months ago, you're still very much alive.
If anything, there's a danger in completely losing your fear of material
consequences.

> I'm impressed by you people
> (yes, you are included Brandon) because
> of the economical risk you CONSCIUSLY expose yourselves to.
> As long as I've got my two kids to
> think of, I would never do such a thing.

You could probably take more risk than you allow yourself to think
about, though.  Something scaled appropriately to your situation.  Most
people do not face their fears of self-editing and self-censorship.  It
is worth facing them, because when you do, you discover that they go
away.

The time I was actually the most fearful was when I was best funded,
right at the beginning!  Because I didn't know anything.  I was $20K in
the positive and I didn't know how far the money would go.  If I had the
wisdom of hindsight, I would have done a whole lot of crazy, fun things
because really I was safe as can be and didn't know it.

> I just want to make it very clear that I never intended to
> compare the "designers disgust" of a
> hobbyist with the economical disasters professional artists,
> comic drawers, game programmers etc
> risk to experience.

Well, I've probably run into what you're talking about anyways though.
It certainly rings true enough.

> > to sit down and be an Architect / Disciplinarian.
>
> Argh.  Why do I always end up with such tasks, why do I
> always want to do complex things?  Or
> maybe I'm too stupid to even manage "shovel tasks" without
> architecture and discipline :-q.

Probably because you haven't lost $60K+ over it.  There are no
consequences for you, so you never learn.  Once you get burned, you
realize that the goal of indie game development is to create something
simple, get a website going, and start creating a revenue stream.
*Then* deal with the magnum opus, *later*.  Indeed, I want every project
I work on to incrementally contribute a piece to the ultimate puzzle of
Ocean Mars.  I'm not giving up on hugely complicated works, but I know I
do have to incrementally build components for them.  Ship many small
products to provide the infrastructure for 1 big product.

> I know.  I really enjoy being a pathological perfectionist.

I did that for 11 years as a 3D graphics optimization jock.  Finally,
after losing enough money, I learned about missing the forest for the
sake of the trees.  Nowadays I know that if I'm working on ASM code, I
have lost track of the goal.

> Bad news is that time never permits,
> I constantly have to do trade offs.

So one of the tradeoffs is to use higher level garbage collected
languages, such as Python.  And forget about / shaft people who tell you
there's some kidn of virtue in performing a lot of low level manual
labor.  To hell with them!  You aren't a better person for RTFM all the
day long about someone's stupid picky API or codebase.

> Why use C anno 2003 for an open source project?  That's an
> intresting question.  A few reasons
> might make it a reasonable choice:
>
> Quick answer: performance

Game programmers usually think they need tons of control and tons of
performance, and on current computers, all that buys them is a sheer
waste of time.  For instance, consider Xconq.  I think Stan said it's
taking 98% of its time in the Tk pig layer?  There's nothing you could
possibly do to the C kernel to improve its performance, it's not the
bottleneck.

> and portability between platforms
> (C has been around for three decades
> so it's solid in that respect).

Lots of programming languages are portable to the degree necessary for
application purposes.  It's nothing special about C.

> Also, there are apperently
> some developers (including good ones
> writing good products) that don't consider OO to be that much
> valuable.  (Don't ask me how they
> come to that conclusion, I am a OO fan).

I write them off as old farts who like what they know and don't want to
change.  Maybe they have a better argument than that, but I know what
the tangible productivity values of OO are, as does the vast majority of
the computer industry by this late date.  Most people cannot take
"What's wrong with C??" guys seriously.  We might agree that C++ ain't
no treat, but C++ is not the only OO out there.

> More elaborate answer:
>
> * Performance.  By profiling a highlevel program in Python,
> Perl or Tcl and realizing a small
> chunk is doing 99% of the CPU usage, you can speed up things
> considerably by writing that chunk in
> C instead.

But that's different.  That's using C as glorified portable ASM for 1
teeny tiny routine.  Not your main project development.  C and ASM will
always have their place.  It's just that that place keeps getting
smaller and smaller and smaller.  I don't see that C has relevance to
application development anymore, it's only the province of OS kernels
and device drivers.  *Really* low level stuff.

> * Stringent portability demands.

Not true of a game, or even most apps.  Sounds again like a rather low
level issue.


Cheers,                         www.indiegamedesign.com
Brandon Van Every               Seattle, WA

"Desperation is the motherfucker of Invention." - Robert Prestridge


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]