camelCase
The Case of the Mysterious Camel.
- Reaction score
- 362
Hey, I've mentioned this before but I'll do it again; I'm on an internship now and the experience is.. different.. I haven't worked on a team before; much less, with other programmers.
My team is made up of only interns with many mentors for us to turn to, should we seek help; there are a total of 7 teams of interns. However, most of the mentors have been away for their own conferences and businesses for a while now..
So, I'm turning to this forum for advise.
I work with one other programmer on my team and we have trouble communicating properly. He's an awesome dude and all but when it comes to work, that is when we start butting heads.
So, I think the problem is that we can't convey how the classes go together (because we, ourselves, don't clearly know, either; warning sign) at times and, at others, we just have opposing views on how a certain thing *should* be done; he also likes to just hack code together and call it "done" and it's not for a throwaway prototype, either!
After butting heads, he usually gives in; this might seem pretty good but it worries me =/ I'm pretty sure he's cursing me in his sleep right now.
Also, he knows a lot of math and algorithms (I like learning about them from him) but he sucks at coding; he, like, knows the theory and stuff but he hasn't been applying the stuff he knows, I guess. I don't want to sound conceited at all but that's just my personal opinion.
I guess I'd just like to know how you guys avoid conflicts among programmers and convey ideas so that all the programmers know what the final product will be and what happens when two programmers have very different views on something.
------------------
Note: You don't have to read the bottom part.
I guess "telling" it won't help and I should "show".
Recently, we realized that Unity's GUI is reallllllyyyy buggy on Android tablets and that we had to do some touchscreen stuff that Unity didn't support.
So, we had some discussion and agreed that he'd handle it (he knows more math & algorithms). Then, we discussed this "TouchScreenManager" class' methods and what messages it'd send (onTouchBegin(), onTouch() and onTouchEnd()).
After an hour or so, he said he was done and I looked at the result; he had the touch screen manager send only onTouchBegin() messages. He said that the other two were handled by the two other classes he created: Draggable & Button.
So, basically, we can only have these touch methods get called and stuff only if a game object has the draggable or button script; so not generic. He and I got into a very heated argument.
My view was that this TouchScreenManager class should handle sending messages to whatever game objects it hits with the ray cast. Why? Because that's its job, I can't think of any other way to word it. It detects when an object is touched and when the touch has ended; nothing else should do it. That way, only one ray cast is made every update for detecting object touches.
His way required one ray cast PER object EACH update to check if it is still being touched.
His view was that my way would make dragging and clicking difficult to detect because there would be an overload of information; you would know precisely when an object is touched (or not) when you might not want to treat it as so.
I tried to tell him that it doesn't matter to the TouchScreenManager; if an object is touched and wants to behave like it isn't, that is purely game-logic and has nothing to do with a generic TouchScreenManager. The more information the TouchScreenManager gives, the better, because we can work with more information and ignore the ones we don't want easily. It's harder to work with less information and hacking more code together to get more information.
He nodded his head but has yet to listen to me; I guess this is one of those times where he doesn't give in; his stupid TouchScreenManager still relies on two other classes to work =.=
I'm just ignoring this fact for now.. Until he breaks the game, sigh.
But it's so difficult.. knowing that I really have to rely on one other component to work when it isn't necessary at all.
------------
I feel like this has become a rant thread rather than a help-me thread =/
(I really do want advise, though; this shouldn't have to continue much longer)
My team is made up of only interns with many mentors for us to turn to, should we seek help; there are a total of 7 teams of interns. However, most of the mentors have been away for their own conferences and businesses for a while now..
So, I'm turning to this forum for advise.
I work with one other programmer on my team and we have trouble communicating properly. He's an awesome dude and all but when it comes to work, that is when we start butting heads.
So, I think the problem is that we can't convey how the classes go together (because we, ourselves, don't clearly know, either; warning sign) at times and, at others, we just have opposing views on how a certain thing *should* be done; he also likes to just hack code together and call it "done" and it's not for a throwaway prototype, either!
After butting heads, he usually gives in; this might seem pretty good but it worries me =/ I'm pretty sure he's cursing me in his sleep right now.
Also, he knows a lot of math and algorithms (I like learning about them from him) but he sucks at coding; he, like, knows the theory and stuff but he hasn't been applying the stuff he knows, I guess. I don't want to sound conceited at all but that's just my personal opinion.
I guess I'd just like to know how you guys avoid conflicts among programmers and convey ideas so that all the programmers know what the final product will be and what happens when two programmers have very different views on something.
------------------
Note: You don't have to read the bottom part.
I guess "telling" it won't help and I should "show".
Recently, we realized that Unity's GUI is reallllllyyyy buggy on Android tablets and that we had to do some touchscreen stuff that Unity didn't support.
So, we had some discussion and agreed that he'd handle it (he knows more math & algorithms). Then, we discussed this "TouchScreenManager" class' methods and what messages it'd send (onTouchBegin(), onTouch() and onTouchEnd()).
After an hour or so, he said he was done and I looked at the result; he had the touch screen manager send only onTouchBegin() messages. He said that the other two were handled by the two other classes he created: Draggable & Button.
So, basically, we can only have these touch methods get called and stuff only if a game object has the draggable or button script; so not generic. He and I got into a very heated argument.
My view was that this TouchScreenManager class should handle sending messages to whatever game objects it hits with the ray cast. Why? Because that's its job, I can't think of any other way to word it. It detects when an object is touched and when the touch has ended; nothing else should do it. That way, only one ray cast is made every update for detecting object touches.
His way required one ray cast PER object EACH update to check if it is still being touched.
His view was that my way would make dragging and clicking difficult to detect because there would be an overload of information; you would know precisely when an object is touched (or not) when you might not want to treat it as so.
I tried to tell him that it doesn't matter to the TouchScreenManager; if an object is touched and wants to behave like it isn't, that is purely game-logic and has nothing to do with a generic TouchScreenManager. The more information the TouchScreenManager gives, the better, because we can work with more information and ignore the ones we don't want easily. It's harder to work with less information and hacking more code together to get more information.
He nodded his head but has yet to listen to me; I guess this is one of those times where he doesn't give in; his stupid TouchScreenManager still relies on two other classes to work =.=
I'm just ignoring this fact for now.. Until he breaks the game, sigh.
But it's so difficult.. knowing that I really have to rely on one other component to work when it isn't necessary at all.
------------
I feel like this has become a rant thread rather than a help-me thread =/
(I really do want advise, though; this shouldn't have to continue much longer)