The song (always 17 by Harry Chapin) says "truly" a bunch of times like "truly she's the only hope we've seen"... Her name is Julie, and her mom didn't find out she heard the lyrics wrong until Julie was in high school.
I've been a programmer at Bioware Edmonton for 8 years. I love my job and always have.
I have not experienced crunch on any scale that would make me discourage anyone from joining the industry (maybe a couple weeks at a time a couple times a year). It is well known at this point that extended crunch reduces productivity to the point of being useless.
One thing I would highly recommend against in any position is putting in extra hours to complete your work faster, appear more productive, and move up the promotion ladder faster. That is a great way to burn yourself out.
I work as a graphics and animation programmer in the games industry, and I found that in university the required math courses focus mostly on calculus, (for my cs degree I had 3 required calculus courses, 1 required linear algebra course and 1 required logic course), which maybe isn't the best focus for many people.
Calculus still does come in handy in quite a few games related places like lighting equations and physics simulation, however, for the most part other areas of math apply much more directly to my every day work. Which is to say, math is used in my every day work, but maybe not the parts that are most frequently taught.
Understanding geometry and linear algebra techniques used for modifying, blending, and interpreting spatial information (transforms, positions, directions) is a requirement for any game programmer, but little of it is taught in basic university math courses.
Even in my first linear algebra course (which I looked forward to because I was trying to learn matrix math on my own), most of the time was spent on solving systems of linear equations, least squares etc, with very little time spent on geometric transformation... and I don't think any course I ever took covered quaternions at all, which is the most difficult to grasp, and useful math construct for storing 3d orientation.
Anyway, yes of course you need to learn math! Learn whatever math they will teach you, it will help make it easier when you have to learn the really useful stuff yourself.
They should learn from Edmonton. http://www.edmonton.ca/for_residents/garbage_recycling/edmonton-composting-facility.aspx Everything gets composted here... without me sorting it.. for the past decade.
this one, when you visually select a peice of C code and type {, it adds new lines before and after with { and } on them, and indents the code inside. very useful for enclosing existing code in an if.
vmap { <Esc> '<ko{<Esc> '>o}<Esc>:'<,'> normal ==
My other useful trick, is to diff the file against source control and highlight changed code, then ]c and [c jump forward and backward to sections of code that have been changed.
This one is extremely useful as I am often adding a few things here and there to very large files. It updates the diff as you type too.
function P4diff()
silent execute '!p4 print -o %.p4rev %\#have'
diffsplit %.p4rev
hide
set nofoldenable
set foldcolumn=0 endfunction
map <C-P><C-D>:call P4diff()
gf will open the filename under the cursor. i like it to be in a new tab, so i have: map gf <C-W>gf
and i have a couple to open the.h or.c file corresponding to the current file
map gh:tabf %:t:r.h<cr> map gc:tabf %:t:r.c<cr>
ps i wish i had that crazy vi firefox plugin so i could quickly replace all my <s with <
The song (always 17 by Harry Chapin) says "truly" a bunch of times like "truly she's the only hope we've seen"... Her name is Julie, and her mom didn't find out she heard the lyrics wrong until Julie was in high school.
I've been a programmer at Bioware Edmonton for 8 years. I love my job and always have.
I have not experienced crunch on any scale that would make me discourage anyone from joining the industry (maybe a couple weeks at a time a couple times a year). It is well known at this point that extended crunch reduces productivity to the point of being useless.
One thing I would highly recommend against in any position is putting in extra hours to complete your work faster, appear more productive, and move up the promotion ladder faster. That is a great way to burn yourself out.
I work as a graphics and animation programmer in the games industry, and I found that in university the required math courses focus mostly on calculus, (for my cs degree I had 3 required calculus courses, 1 required linear algebra course and 1 required logic course), which maybe isn't the best focus for many people.
Calculus still does come in handy in quite a few games related places like lighting equations and physics simulation, however, for the most part other areas of math apply much more directly to my every day work. Which is to say, math is used in my every day work, but maybe not the parts that are most frequently taught.
Understanding geometry and linear algebra techniques used for modifying, blending, and interpreting spatial information (transforms, positions, directions) is a requirement for any game programmer, but little of it is taught in basic university math courses.
Even in my first linear algebra course (which I looked forward to because I was trying to learn matrix math on my own), most of the time was spent on solving systems of linear equations, least squares etc, with very little time spent on geometric transformation... and I don't think any course I ever took covered quaternions at all, which is the most difficult to grasp, and useful math construct for storing 3d orientation.
Anyway, yes of course you need to learn math! Learn whatever math they will teach you, it will help make it easier when you have to learn the really useful stuff yourself.
They should learn from Edmonton.
http://www.edmonton.ca/for_residents/garbage_recycling/edmonton-composting-facility.aspx
Everything gets composted here... without me sorting it.. for the past decade.
i have a few useful things in my vimrc
this one, when you visually select a peice of C code and type {, it adds new lines before and after with { and } on them, and indents the code inside. very useful for enclosing existing code in an if.
vmap { <Esc> '<ko{<Esc> '>o}<Esc> :'<,'> normal ==
My other useful trick, is to diff the file against source control and highlight changed code, then ]c and [c jump forward and backward to sections of code that have been changed.
This one is extremely useful as I am often adding a few things here and there to very large files. It updates the diff as you type too.
function P4diff()
silent execute '!p4 print -o %.p4rev %\#have'
diffsplit %.p4rev
hide
set nofoldenable
set foldcolumn=0
endfunction
map <C-P><C-D> :call P4diff()
gf will open the filename under the cursor.
i like it to be in a new tab, so i have:
map gf <C-W>gf
and i have a couple to open the .h or .c file corresponding to the current file
map gh :tabf %:t:r.h<cr> :tabf %:t:r.c<cr>
map gc
ps i wish i had that crazy vi firefox plugin so i could quickly replace all my <s with <