tags:

views:

206

answers:

5

Hello everybody,

I am currently working on some 3D animations using WPF. I have been working on this project for around 60 to 70 hours (I cannot use any external libraries, so I had to do with WPF-included features) and all I have accomplished so far is:

  • Setting up WPF forms
  • Draw triangles, squares and cubes
  • Move around in the viewport using WASD and animations
  • Turn the camera's looking direction

I have never worked with WPF or 3D stuff before, but still I feel that I am extremely slow. As I am the only one working on my project, I cannot ask my coworkers, whether they think that I am slow. Also, most tasks take a long time to implement, I encounter weird bugs that take me a long time to solve, etc... I know that this is a tough question, but I am kind of frustrated with my slow progress... Any advice?

A: 

Well, you're learning, so you shouldn't expect to be extremely fast. ;)

However, I will be honest and say 60-70 hours does seem like a lot of time.

I suggest you just continue to practice and try out samples. Practice makes perfect.

edit: Oh, I'm sorry, I overlooked the part where you said you have no 3D experience. Learning 3D programming can be a lot to swallow at first. My first 3D programming course took a lot to grasp. But like I said earlier, just practice. Use your frusteration to push you further. :)

townsean
How much practice, exactly, is required for "perfect" code?
TreDubZedd
@TreDubZedd- There is no set time. Define perfect- the more code you write, the better code you'll write. It's what you'll settle for.
DMan
Well...that was more of just a figure of speech >__> But i'd say many many hours (er..*cough* well days, maybe even years) of practice would get a person to almost perfect. :3
townsean
See the discussion of the "10,000 hour rule" in Malcolm Gladwell's *Outliers*.
Robert Rossney
Wow...that's very interesting. So if I spent 4 hours a day practicing coding for 6 years, I would be amazing. ;)
townsean
A: 

Compare your progress to your schedule\timeline for completion. What all has to be done, and when? Is it due next week and it has to be an AAA quality MMO? If so, you're going too slow. If you have three years to complete it, you're probably on task.

If you don't have a schedule, you're going to have a lot of problems down the road. Make a schedule based on your best information you have.

glowcoder
A: 

If you set yourself milestones that are far apart, your progress will seem slow, even if you are the fastest programmer in the world. Set yourself goals that are not so spaced apart and you will feel like you are accomplishing something.

I find unit testing is great for getting regular feedback that progress is being made.

I would hesitate to derive any conclusions about your performance from just one project, especially if it is in an unfamiliar domain.

mdma
A: 

Any problem you spend time in overcoming will be solved many orders of magnitude faster the second time round. Therefore, in order to become faster at solving problems, you have to solve more problems. There is no short-cut. Or alternatively, that is the short-cut. There are slower ways to learn, like getting someone else to solve the tough problems for you.

cjrh
+2  A: 

The sooner you accept that you are slow the better you will become. Back when I thought I was a cowboy I could rarely complete projects on my own.

ChaosPandion