There are two things I'd like to know, and please all coders great and small.
1. What kind of programming challenge do you envisage being feasible for a possible Sumea programming challenge?
2. How many hours of work should each programming challenge consist of approximately, and what kind of investment of time can u put in?
Personally, I'm not sure I could spend more than a few hours a week on any programming challenge, and to code anything substantial takes more than a few hours, so I think some form of challenge every month or maybe bimonthly would be good from *my* point of view.
However, if other people have more time to invest in this, and want more frequent challenges opinions would be nice.
As far as what the actual challenge should be, I think it would be good if it wasn't in anyway "interactive" in terms of the final product. I'd also like to see each challenge build upon contents of the previous challenge, and also maybe steal a bit of help from the artistic challenges?
no Strik3r there is no entry required, i should have said how many people are still going to participate in the contest.
And i agree its gonna take some time to complete the contest thats why there's 2 months to do it in, also because most coders are busy with their own projects.
I plan on doing something for the contest, im not sure how long its gonna be before i post anything cause i havent even started yet, due to other projects im working on. But i'm going to start work on something soon i hope.
Well I hope that everyone participates and enters, I think a good competion should get the ball rolling and maybe go on further into other competions.
However I will see what I can do in regards an entry, Though i think i will not be able to get one together. My workload is above average already and steadily increasing.
I have some nice reference material for water simlations I'll see if i cant, pull something together ;> anyway.
Keep up the good work guys. I'll see what I can do in regards to a water simulation.
0xBaaDf00d,
-----------------------------
Blood Sweat and Code.
Here's mine so far:
http://members.optusnet.com.au/redwyre/files/water001.jpg
http://members.optusnet.com.au/redwyre/files/water002.jpg
http://members.optusnet.com.au/redwyre/files/water101.jpg
Edited and updated ;)
I really don't want to start a ruckus, but having ~21000 lines of code to back up your competition entry is entirely the reason I wanted people to hand up *everything*. That way we wouldn't have a competition that is about how much work has been done outside the competition arena - and more about coding efficiency in a specific time frame.
I hope that people don't degenerate this into a flame war, I'm just commenting.
geez, I'm not using it all, and I can rip the bits out that I need. Having generailised modular code that can be easily reused is a Good Thing(tm). I don't see why you are all making such a fuss.
Re-writing the same thing over and over again is stupid. I have the code, it's my work, it's already been debuged, it's easy to use, and I like it.
Wasn't the focus of this comp on the water code?
*sigh*
Fuck this, I'm going to rant, even though I was going to save this for after the deadline. This isn't directed at redwyre, although his comments are partially inspirational, it is written in the second perspective, just don't take it personally, I'm just not wanky enough to write everything in the third.
(rant)
Coding competitions have deadlines and *time frames* for a reason, because if we really wanted to see the fruits of your life's labour we'd play a game you'd made or been involved in, or something like that. If we want to see an even competition reflecting a coder's ability, then we'd restrict the amount of stuff that you are allowed to use from ***outside the competition arena***.
Secondly, how do you think this approach affects those budding coders who havne't spent a long period of time working on backup code that never gets used outside of their personal projects? Are you going to use alot of your modularised code in the workplace? Most likely only a very tiny percentage of it...
Thirdly - the water code for sure is part of it - but when making a "demo" format as we have chosen to do, it requires that presentation be involved - if you have a 21000 line headstart then that's definitely a big advantage because there will be many parts of your "presentation" that are already sorted out.
If it really *was* just the water code we were interested in, then there wouldn't be any graphical output at all. Obviously not only does the algorithm for water matter, and on top of that, the implementation - but if it looks effing pants - then what's the point of the algorithm/implementation? Of course the presentation is VITAL...and you haven't directly said that it isn't vital, but I feel that by using a huge chunk of code, you are giving yourself a huge advantage over others in terms of persentation and focus of your coding efforts.
I'm all for people having their own code, and using it for personal projects/internet collaborations, but this is a *coding competition* - and I personally believe that your life's work "base code" should not be used where other people might be disadvantaged - and that it would reflect your real coding skill if you put it up against other internet projects based on a similar time frame....repeat *not a coding competition* - coding "skill" is different in my mind to sustained coding "effort".
If you are willing to hand up all the code that you use (ie cutting out the bits that aren't) then go right ahead. I've said it before, secular/selfish attitudes don't help coding. If you've got some good code/algorithms - write a damn paper about them - make them public - attach your name to them so people *can* copy and use your good code - and the coding fraternity can prosper from your ingenuity.
The bits of code that you are "proud" of in your base code are the ones that you need people to see most. But also, you have to realise, if you use the bits you are most proud of, then then at least some of the good parts of your competition entry were developed outside the competition arena, which is a pitfall of any competition.
If of course you are insecure about things like that - then what good are you to the rest of the world outside your own perspective?
The idea behind a coding competition for me is not only a public display of coding goodness, but an excellent platform to promote ideas/algorithms and also a forum for generating better coding/coders. Even if some of the code used is from outside the topic area and dilutes the judging process, at least it gets shared and promoted.
(/rant)
That's all for now...I think I'm still just a bit residually bitter about this competition format - I never should've pushed for one in the first place :) It's not a bad format, but the flaws are obvious to me. If you want to get personal about this, fine, I'm just stating flaws in the competition format which was decided upon by a *majority* and I'm just attempting to educate the majority - even if you all probably disagree. Maybe I'll just have to win the competition to get some positive reaction from people around here :P
Don't just retort - dissect my points and come up with an argument, I've spent time arguing these points so don't disregard that effort with pissweak "opinions" with no thought-out logical argument to back them up.
-Cheers.
I pretty much agree to what you've said ther Maitrek, coding competitions, like all other competitions should only allow entries that have been started and completed between teh start and end dates of the competition. Heck, the ACM programming contest only allows people a few hours to code the solutions to as many questions as they can figure out. Plus all the competitions on flipcode make people code all their own code for the contest between the contest dates, although they can use a select group of libraries to use also.
I mean maybe if someone wanted to release their code in a library format - precompiled, with headers - and they themselves use the library in that format then it should be alright.
This is a contest, it is not life, we all play on a level playing field.
I can't see how that was aimed at anyone but me ;)
Here is my rebuttal (Numbers relate to parargraph number in the rant):
1) Ok, I can see your reasoning here, but the last sentence confuses me. Are you saying that's what we should be doing?
2) Personally, I hope I would be either writing modular generic engine code or using it in game code.
3) I have a 21000 line headstart if I use 21000 lines of my code.
4) You're being a little pedantic here ;) In my engine, I have thang::Grid that I use for height-maps. I am using this class in my water code, because it handles the vertex and index buffer, normal generation, and renders the data (All I have to do is lock the vertex buffer and update the verts). This stuff is rather simple, if I was to start from scratch, the code would probably be exactly the same. Can you honestly tell me you are going to write everything completely from scratch? I doubt it, most people will just copy&paste the code from something else they have done.
5) I don't really see how reusing code it is putting people at a dissadvantage. Someone like Yann (water lecture) could enter this competition and write the whole thing from scratch with very little to no effort, so we would all be diadvantage.
6) I'm thinking I'll do either a) cut up the bits that I use and hack them together in the water demo and release that, or b) release the engine publically and just release the code for the water demo with my entry. I'd rather do a). Which do you think is more appropriate?
7) Most of the bit's I'm proud of are being used :) After looking at the code for thang::Grid, well... I'm not proud of what's there, so I will probably re-write it.
8) I am not here to serve the world... I am here to make game and get paid ;)
9) Code from a competition will most likely be hacked together and horible. Not really that great for sharing.
About this competition format, I find it rather "chilled out". Which means you aren't presured into doing it like everyone else. Perhaps we should just see how it turns out before we start beating it up?
For some reason, I feel very chilled out myself, so all I can say is "chill out man" ;) Let's just have fun and see how it turns out. If it doesn't work out very well then we can start again from scratch. Sound good?
(One thing about using my engine is that I always end up re-writing and fixing the bits I use.)
Also, totally unrelated, listen to [url="http://members.optusnet.com.au/redwyre/files/NINJAZ.S3M"]NINJAZ.S3M[/url]. (You will need Winamp2 or Winamp3 + module plugin)
Dear redwyre : It's aimed at the concept of people with plenty of framework...do you have any f***ing idea how long it takes to replace "you" with "people who have large amounts of framework"....just to keep you happy, I've written this one in such a way that uses impersonal perspective, because *obviously* I'm just saying stuff like "this isn't aimed at redwyre" for no reason (believe me I don't really like repeating myself on these boards, it's how they get so cluttered). However more of the points in this post are actually aimed at your rebuttal - so take the *sentences* referring to you more personally, the other parts of the rebuttal/paragraph are more generalised.
1. I am saying that we should be restricting content used from outside the competition.
2. Redwyre's completely missed my point - modularised code is definitely still not a big thing, carrying modularised code between workplaces is not as common as people want it to be, and carrying on modularised code that 'people who have large amounts of framework' have created in their time between jobs is most likely only going to be used occasionally. My point here really is that budding coders who have just come out of Uni, or whatever, and have plenty of coding practise and good knowledge are going to be put on the back foot because they would have a heck of alot of catching up to do in this competition arena, rather than just a "little bit" of catching up - I'm saying this competition environment is poorely set up for those who haven't yet produced a large windows based 3d renderer. I'm not saying it's futile to write modularised code, this isn't my main point at all....it's just a side note that it's not as popular as people would like it to be....arguing this point really is outside of the debate.
3 - Redwyre's rebuttal here is pedantic (to use his term) :P If he really wants me to be specific, which I'm guessing I'll have to be, then here goes. 'People who have large amounts of framework' have a 21000 line resource which they can pick and choose from - what if they had a zero line resource? Would they enter this competition, or would they sit out on this one and maybe write up some demo framework to enter the next one?
4 - Once again, I'm trying to point out the weakness of this format for allowing new coders to "not look pants". Newbies will have to write out all the code to create their demo framework within the same time frame that 'people who have large amounts of framework' have - if 'people who have large amounts of framework' were to work equally as hard as newbies would have to, 'people who have large amounts of framework' could focus on a different side of it all....they *could* focus on the water algorithm completely and also the graphical presentation etc etc, whereas new coders would be focussing on completely other things. It means that there is a discontinuity in the time spent on various parts of the code between those with framework and those without. This is why I wanted to push a common framework to begin with, but people fucking hated the idea.
5 - Redwyre's point here is not a particularly strong point if he's trying to prove that using code from outside the competition is permissable anyway here goes a counter-argument (as an American would say)...At least (Yann) would've written the code in the timeframe of the competition - this is my main concern. Sure he may have an advantage in that this is an area of speciality for him, but still, disregarding the subject format, it's not like he has an overall advantage given any subject matter - as someone who has alot of framework does. If he did enter the competition, and hand up his code so that other people can aspire to his level of entry once it's all said and done, then that's fine, even if he is a lecturer. He's sharing his knowledge everyday, I sincerely doubt he'd have a problem putting it out there in a public arena.
6 - If redwyre is willing to hand up all the code used in the competition entry then that's fine. I'm saying to people in general, don't get possessive about code. As far as my beliefs go, the algorithm/implementation/idea has always been there since the dawn of time, just waiting to be dug up by somebody. The sooner these things get passed around the community, the better. I just have an archaic view of the programming ethos.Redwyre happens to disagree mainly because it's advantageous for his perception of himself to believe so.
7 - Redwyre's really just confirming what I said, I realise it's a weakness in a competition.
8 - Redwyre view here is not worth bothering arguing with, there's a billion and one programmers out there with that attitude, and it's not like I can change that.
9 - Redwyre is speculating - not even close to a real point. There could be some very good code created in this competition, there could also be shit.
quote:About this competition format, I find it rather "chilled out". Which means you aren't presured into doing it like everyone else. Perhaps we should just see how it turns out before we start beating it up?
For some reason, I feel very chilled out myself, so all I can say is "chill out man" ;) Let's just have fun and see how it turns out. If it doesn't work out very well then we can start again from scratch. Sound good?
What do you think I meant when I said "even though I was going to save this for after the deadline." I realise it's not the time to bitch, but people want something to do around here anyway :P
*chill out Maitrek*
I don't know how much bandwidth I've wasted watching you piss and moan about this. You'd probably have ~21000 lines of code done by now if you wrote code instead of whinging. It seems to me that redwyre is the only one that has actually done something. Why not have some fun with the challenge and make a funky water simulation with what you've got instead of crying about the technicalities of the "competition". The prize at the end is a water simulation for your portfolio... you win anyway. Shut up and do some work.
Scott.
GooberMan: Exactly, I've written the basic type code so many times that it's not funny, and I assume that you've done it more times than me.
I mean what do you really need for a water demo...
Linked List Class?
Array Class?
Don't need a string class,
will need something to open up a window in, and there are countless tutorials out there with source code that you could use, or at least take notes from.
Sure I know that last post was bitchy, but a shit stirring response is hardly productive...yes I'm entering the competition FYI and yes I will enjoy it - despite my gripes with the format. To say that I'm wasting my time bitching is unfair. I'm a uni student, I have a part time job that I dedicate 20 hours a week to, I have tae kwon do training which I take seriously, I do rally car preparation for my brother as well, and I tutor a year 12 student in maths - there is not alot of time and energy left after all that to do coding, despite my best intentions.
I don't come on here to pointlessly bitch. I honestly believe that what I say on these posts is relevant and to an extent also useful, and that although I admit I'm overly pushy, I believe the points I make are worth considering carefully. I'm not saying this competition is pointless - or not fun - simply that I think that these things are worth thinking over before the next one.
Internet forums are about discussing ideas, and it's hard to avoid personal arguments/debates in the process, sifting through the personal crap and getting to what is important in each post is tricky. I'm not perfect - I realise that - but making personal attacks when you are probably not that familiar with me is unjustified....
Lastly, I don't entirely mean to be a bastard by saying this, but if you don't like reading my long-winded posts - then don't feel that you have to.
Daemin: You've probably done it more times than me, but yeah there's not alot you need...
Linked List/Array class - STL has them for you, and even a string class if you need one
Window - Simply a matter of filling two structures, registering a window class and creating a window from it
D3D/OGL - Quick and easy to get up and running
Vertex grid - don't need a fancy heightfield as it's all going to be dynamic anyway
And that's about all you need to get a start.
Ok, I had better release something (I've been a little busy myself)
*Edit: The bitch crashes in release, so yer.
Goto the site to download: http://members.optusnet.com.au/redwyre/projects/waterdemo.html
The engine has it's own site: http://thang.netunify.com
I'll try and document all the interesting bits, if you have any inquiries, feel free to email me.
woohoo! looks like you win redwyre.
lol maybe we need some sort of incentive to actually submit something to the next competition (if there will
be a next one, following the great success of this one). maybe a special start next to your name indicating
you've won a programmer challenge before... hmmm...
do we actually have to enter somewhere ? I thought we just did it then submitted when complete.. i may or may not enter depending on how much time i have to work on it, and whether or not i actually do something worth entering :P