flat assembler
Message board for the users of flat assembler.

Index > High Level Languages > Team Optimizations

Author
Thread Post new topic Reply to topic
kohlrak



Joined: 21 Jul 2006
Posts: 1421
Location: Uncle Sam's Pad
kohlrak
Some of you might feel that this is for the heap, but since this is about optimizations (though not direct code involved) i posted it here. If any of the mods feel that this should be in the heap instead, by all means, please move it.

Anyway, i'd like to take a whole new look at optimizing code in the work place. I have a few methods of going about optimizing code that is made in a programming team. This is alot more difficult since team projects are split up into completely different algorithams using the same problem. Perhaps we could sit and debate which we feel would be "the best" or "most efficient" way of dealing with making the best code in a team situation, assuming that money will also be involved to hire each member of the team.

I've always saw that the typical programmer situation was that there was a lead programmer (usually the one in charge of the whole project and dosn't do much actual coding alone) that hired sub-programmers and assumed that they alone could optimize their code. I have theorized that there might be a way to impliment an algoritham for the structure of the programming team as well, to maybe make a more efficient method than this.

My first algoritham is to hire 1 optimization programmer for every so many programmers (10 for example) and each programmer at the end of the day would present their code and their algoritham (while coding and just drop it off into, maybe, a folder for him) to this programmer, and the next day he would evaluate their code based on the algoritham and that specialized programmer would either work nightshifts or 1 day behind everyone else.

My second algoritham is a little more complex (and expensive). We would have 2 lead programmers, before the project starts, who would debate over what sections (or functions) should be used to handle the problem. Once this is sorted out, they would hire pairs of programmers to handle the sections based on how they see fit. In situations where they have more than 1 section handed to each programmer, they could have teams of sub-lead (if you'll excuse the paradox) programmers who'll be in co-charge of each section (paradoxally [if that's a word] with the next group of people, the sub-sub programmers). You would then have sub-sub programmers who will switch between each person for each section of code, that way there is "fresh eyes" looking over each others' code. This should prevent people from getting used to each others' code and algortham's so much that they start seeing the same answers and always agree with each other. And since some sectons will be smaller than others, those who finish early would be required to assist the ones with larger sections.

Can anyone come up with more algorithams and/or perhaps debating between these three? Perhaps after this thread dies (assuming that it will come alive) we could come up with a fasm project later that will test the method by making a game or something.
Post 04 Jan 2007, 05:57
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
Quote:
My first algoritham is to hire 1 optimization programmer for every so many programmers (10 for example) and each programmer at the end of the day would present their code and their algoritham (while coding and just drop it off into, maybe, a folder for him) to this programmer, and the next day he would evaluate their code based on the algoritham and that specialized programmer would either work nightshifts or 1 day behind everyone else.

bad. this would take:
- 2 times the money for wage
- less time worked (the explaination takes long)
- and mainly, majority of code doesn't need to be optimized
Post 04 Jan 2007, 07:05
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
kohlrak



Joined: 21 Jul 2006
Posts: 1421
Location: Uncle Sam's Pad
kohlrak
I didn't get attatched to algoritham 1, either. I posted it anyway, incase it could help be a basis for a better algoritham. Maybe some one could come up with an answer for those problems.
Post 04 Jan 2007, 07:25
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
are you gonna be team manager? Wink
Post 04 Jan 2007, 07:30
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
kohlrak



Joined: 21 Jul 2006
Posts: 1421
Location: Uncle Sam's Pad
kohlrak
Maybe some day, or perhaps i could help some one set up their own team. Plus, this is an interesting topic which could benefit other people who want to setup their own team. I'm considering on setting up a volunteer team for making my project kim cross platform after a few years of it's release (the wait is for personal resons).
Post 04 Jan 2007, 07:51
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger Reply with quote
vid
Verbosity in development


Joined: 05 Sep 2003
Posts: 7105
Location: Slovakia
vid
you are gonna have really hard time finding volunteers. In fact, if you don't have tremedous work done yourself, you will probably find no one
Post 04 Jan 2007, 08:34
View user's profile Send private message Visit poster's website AIM Address MSN Messenger ICQ Number Reply with quote
f0dder



Joined: 19 Feb 2004
Posts: 3170
Location: Denmark
f0dder
#1 is bad - it's better to do 'code reviews' every so often, that way you don't waste a developer "just" doing optimizations that might not even be necessary. A code review has the benefit that you sit down with the programmer that originally wrote the code, and there's mutual feedback.

In real-world situations, you don't optimize until there's a bottleneck anyway Smile (there's pre-planning of course, which can be seen as an optimization, but that's a different issue).

#2 seems like administrative hell and pretty wasteful.
Post 04 Jan 2007, 11:35
View user's profile Send private message Visit poster's website Reply with quote
kohlrak



Joined: 21 Jul 2006
Posts: 1421
Location: Uncle Sam's Pad
kohlrak
Quote:
you are gonna have really hard time finding volunteers. In fact, if you don't have tremedous work done yourself, you will probably find no one


If it flies the way i want to, it might even have voulunteers before i even ask for them. Anyway, the only real voulunteer work would actually be porting the code, since project kim is quite simple, but the actual work is done to make a standardized something. It's actually an instant messaging project, which i hope to export symbols and some documentation (on the code not the format so no one takes this project and claim it as their own which would cause some problems with keeping on the aim of standardization) so people could impliment it in their own games or other applications. It'll also have a sub-mode of binary data transfer, so it reduces the need for reading on winsocks for that as well. It's basically supposed to simplify winsocks more than it already is so people don't have to go out of their way to figure out the NBO and such.

Quote:
In real-world situations, you don't optimize until there's a bottleneck anyway (there's pre-planning of course, which can be seen as an optimization, but that's a different issue).


From what i've seen, chances are that most of the code in any project will be need in (or for a thread in) a loop. I considere that bottleneckish enough.

Quote:
#2 seems like administrative hell


How do you figure?
Post 04 Jan 2007, 12:25
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger Reply with quote
BXM



Joined: 03 Nov 2005
Posts: 26
Location: mars
BXM
Quote:
My first algoritham is to hire 1 optimization programmer for every so many programmers (10 for example)

The optimazation programmer is YOU. The lead programmer. We will talk further about it when you have 30 programmers :)

Quote:
My second algoritham is a little more complex (and expensive). We would have 2 lead programmers, before the project starts, who would debate over what sections (or functions) should be used to handle the problem. Once this is sorted out,...

Time wasted at blah-blah. The boss takes his decisions, others follow and there's
no debate. If he wants to stay more than one day.
Post 07 Jan 2007, 09:11
View user's profile Send private message Reply with quote
maxhrk



Joined: 04 Mar 2006
Posts: 4
maxhrk
yeah.. be george washington, and you got yourself an army of optimizator. Smile
Post 05 Mar 2007, 20:14
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on YouTube, Twitter.

Website powered by rwasa.