The guy who leads the Objective Programming classes/labs told us that we have to make a game or an app to pass this semester.

I was so hyped, I've instantly started reading up on creating a 2D engine in C++ (which I don't like as much as C# but that was his conditions).

..as soon as I've created base for the engine, he said that the first version has to be console based.. so I'm like - okay, how do I show my 2D _graphical_ engine in a console?
So I came up with showing basic vector maths like movement towards a bearing angle and whatnot.

..now I've been pointed out that we are supposed to make a documentation, except it's supposed to contain info on ALL libraries and ALL classes our project will have.. which is insane, how can one predict what he'll need to accomplish the task? You can only know the half of the things you'll need, unless the project is way too simple.

I'm just plain annoyed, because this whole 'wow, I can showoff my mad skills' turned into 'wow, I have to do shit the tedious way and I'm already crying that I've picked a 2D engine and not a simpleton game like crosses and circles.

  • 2
    Use Doxygen. :)
  • 2
    @sinisas Not that kind of documentation.
    He wants us to make a PDF listing all things we'll use and all classes we'll make, as if I'm able to know before I get the project done...
  • 0
    While the console requisite might be a bit stupid (you can always try to talk him out of it) I have to agree with your teacher in the documentation thing.

    Being able to plan what you will do during development beforehand is a very useful skill to have and can save you a lot of headaches in complex projects, and even if your plan doesn't survive contact with reality, you'll be able to see what you went wrong and what things you were unable to predict, which is also useful)

    Just an example, imagine you are working on a large project and need an API which will be developed by another team according to your requisites. Ideally, you'd have to tell them exactly what you need from the very beginning.
    If you ask for more than that, you will make them waste their time, and if you ask for less an have to wait to try it before realizing, you can potentially waste your time while you wait for the other team to implement the new specification.
  • 1
    @Dethon I've already worked in the field, professionally.

    The thing is, he says that we can only use the things that we list in our first documentation.

    If we use anything else or don't use the things we've listed, it's "Rest in Peace" to our project
  • 1
    Well, that's somewhere between overoptimistic and stupid... I don't think I've been in any project where the initial design survived until release with no modifications whatsoever :/
  • 1
    @Dethon Hence my reaction.
Add Comment