Spring developer crisis
Moderator: Moderators
Spring developer crisis
I was looking at the Spring commit history and was saddened to see we are down to our last 4 active developers (jK, rt, zerver and abma). Of those 2 seem to be working at cross-purposes (different multithreading implementations). I believe Spring is facing a very real developer shortage and I was wondering what could be done to stem this and bring in new blood.
It's my opinion that GSoC has never worked, we've tried it twice and nothing seems to happen. Are there other ways we can try to bring in new blood? Other avenues to advertise (like moddb)?
Do we have a reason for the loss of existing developers and failure to get new ones? Are we just too hostile as a community or is it simply the glory days of RTS fading? Is our codebase too complex, too much legacy code, too many CREGs and #IFDEFS? Has anyone tried to get more involved and felt blocked by some issue? Is our documentation sufficient? Have we run out of interesting tasks?
It's my opinion that GSoC has never worked, we've tried it twice and nothing seems to happen. Are there other ways we can try to bring in new blood? Other avenues to advertise (like moddb)?
Do we have a reason for the loss of existing developers and failure to get new ones? Are we just too hostile as a community or is it simply the glory days of RTS fading? Is our codebase too complex, too much legacy code, too many CREGs and #IFDEFS? Has anyone tried to get more involved and felt blocked by some issue? Is our documentation sufficient? Have we run out of interesting tasks?
Re: Spring developer crisis
I would say that the place to start is with personal contacts and previous resources; not all Spring developers have lapsed due to disinterest, and their circumstances may have changed. Who knows what might reignite the spark? I agree that GSoC has not worked, and perhaps the efforts put into GSoC have strained our small development base and contributed to the long-term decline.
It is worth seeing who among lobby and game developers is interested in working closer with the engine, as numerous people in both groups have either the knowledge or the potential. I remember Evil4Zerggin as one instance, although he is long gone.
I don't know about the failure to launch rate. For a long time our documentation was daunting - I exposed Spring to a large pool of candidates - but that may have changed. I doubt we've run out of interesting tasks, but I would say hostility and complexity have both been consistent pain points.
Just as a side thought, perhaps the loss of engine and AI developers are directly related.
It is worth seeing who among lobby and game developers is interested in working closer with the engine, as numerous people in both groups have either the knowledge or the potential. I remember Evil4Zerggin as one instance, although he is long gone.
I don't know about the failure to launch rate. For a long time our documentation was daunting - I exposed Spring to a large pool of candidates - but that may have changed. I doubt we've run out of interesting tasks, but I would say hostility and complexity have both been consistent pain points.
Just as a side thought, perhaps the loss of engine and AI developers are directly related.
Re: Spring developer crisis
A discussion like this could actually be a positive step, because it raises the topic, and thus raises awareness. If we laid out what is being worked on and what current developers feel could use work, that could provide interested parties with the hook necessary to get involved. Mentorship is another option, although I would not advocate it given the current status. Even if people are good at management and delegation, that doesn't mean they enjoy it, and long term development needs to come from passion or obsession. Passion is, in my opinion, healthier.
Re: Spring developer crisis
You actively discourage people. The most standard response to "could i add this to the engine" suggestions is "Lua it" and the Moddev lynchmob reaching for forks and torches.
I for once tryied to lua a physic simulation for a rope together once, and phailed (lua-physix eat fps for breakfast also wrong approach).
http://nehe.gamedev.net/tutorial/rope_physics/17006/
Back then I would have luved to try that for spring, but guess what the reply is.
"Not engine, lua a shader together." very well then.
Also its not fun reading into any engine, and getting it to compile can be difficult. I mean, it took some time till i got the cube2 engine to work, and that thing was suppossed to compile out of the box.
Now im busy with the cube engine. Busy with a robot project. Busy with my "lua-it" jw.
In my opinion the lack of dev is the price you pay for modcode and enginecode division. Changing that would mean a change of policy.
For example allowing for engineparts crafted for specific mods that ship along and can be deactivated thus ignored by others. Let the flames begin!
I for once tryied to lua a physic simulation for a rope together once, and phailed (lua-physix eat fps for breakfast also wrong approach).
http://nehe.gamedev.net/tutorial/rope_physics/17006/
Back then I would have luved to try that for spring, but guess what the reply is.
"Not engine, lua a shader together." very well then.
Also its not fun reading into any engine, and getting it to compile can be difficult. I mean, it took some time till i got the cube2 engine to work, and that thing was suppossed to compile out of the box.
Now im busy with the cube engine. Busy with a robot project. Busy with my "lua-it" jw.
In my opinion the lack of dev is the price you pay for modcode and enginecode division. Changing that would mean a change of policy.
For example allowing for engineparts crafted for specific mods that ship along and can be deactivated thus ignored by others. Let the flames begin!
Re: Spring developer crisis
AFAIK jK and zerver are about the only people left here with sufficient knowledge of the engine internals to manage the graphics stack, lua integration, sim synchronisation, network code and model code and that worries me a LOT more than wether AI devs can be arsed learning lua.
Last edited by SpliFF on 19 Apr 2013, 14:52, edited 2 times in total.
Re: Spring developer crisis
How did jK and zerver get into spring?
Re: Spring developer crisis
As part of an insidious plan i've been hatching, i've talked with guys from some indie rts projects, and there's this layout:Is our codebase too complex, too much legacy code, too many CREGs and #IFDEFS?
1 project decided to try using the 0ad engine instead of spring, because spring is ugly. lol.
3 projects decided to make their own engines (and thus likely fail) rather than work on spring - mostly due to requirements of spring-specific knowledge to work without touching engine, and compllicated doce when working in-engine.
A couple guys i've persuaded that uplifting spring might be a worthy goal with huge benefits, then ran away.
The numbers are obviously statistically insignificant, but i believe they point in a direction.
I think it's a motivation thing. What do you want to do with Spring that is worth the hassle of hacking the engine? What can you want? There must be ready answers to those questions if you want to recruit engine devs.
And those two are waging a war.AFAIK jK and zerver are about the only people left here with sufficient knowledge of the engine internals
That's called forking. It's already supported. Especially if you count multiengine lobbies in.For example allowing for engineparts crafted for specific mods that ship along and can be deactivated thus ignored by others. Let the flames begin!
(those might need some extra steroids to work with different *branches*, but are very close irregardlessfully)
Re: Spring developer crisis
I think one of the problems is that lack of GUI helper tools. Yes there are some but they are painful to use, and break every few engine upgrades.
I was an AI developer, and would still like to be apart from the obvious annoying bug that prevents my AI from working correctly.
I have also built mod editing tools, and a modinfo like web system (which both I never released).
I also know pathing algorithms and would happily work on developing Spring's one further, but my limited knowledge of C/C++ prevents that.
Primarily, if the bug, thats is years old, was fixed, I would continue working on my AI. Which could of course lead onto further development of other parts of spring.
Also I did even ask how I could help fixing the bug, and all I received was no response until I probed it again and got told "Do it yourself is the best option"
I was an AI developer, and would still like to be apart from the obvious annoying bug that prevents my AI from working correctly.
I have also built mod editing tools, and a modinfo like web system (which both I never released).
I also know pathing algorithms and would happily work on developing Spring's one further, but my limited knowledge of C/C++ prevents that.
Primarily, if the bug, thats is years old, was fixed, I would continue working on my AI. Which could of course lead onto further development of other parts of spring.
Also I did even ask how I could help fixing the bug, and all I received was no response until I probed it again and got told "Do it yourself is the best option"
- FireStorm_
- Posts: 666
- Joined: 19 Aug 2009, 16:09
Re: Spring developer crisis
bigger
Maybe hang a nicer clean version of something like this on some bulletin boards. For instance on boards in and around faculties (especially Computer Science ) at the technical university in my town.
Wouldn't be a problem for me to raise some Spring awareness over there, though I wouldn't really know what to say if anyone wonders what exactly was expected of a Spring engine dev.
Re: Spring developer crisis
I'll post some bias, can i?what exactly was expected of a Spring engine dev.
To be a Spring engine dev, you need about the same quality as you need to be a Sprigng content dev, or in fact, a player.
You must be a die-hard one-man-army hack-tank.
That's a different issue called "why Spring doesn't have any real animator people": because people who really do 3d art are artists, not coders.lack of GUI helper tools
Re: Spring developer crisis
i would hang that up in my uni too! but it would need an AI-Dev part aswell.
@SpliFF, AI dev talk is not at all off-topic here. as Petha noted, AI devs are a good source for engine devs. they work closer together wiht the engine then game devs. they use similar/the same languages. thye do much more abstract work, and use the same way of thinking/need very similar education and techniques as engine devs. they are much more likely to be passionate about writing abstract code (like in the engine) then game devs.
before the move from SVN to git, there are.. like 40 or so spring devs. simply cause everyone that ever wanted to create a commit, was giving access. when moving to git, it was reduced to.. i think 7. these were the most active ones at that time. since then, auswaschbar, imbaczek, tobi and me left, and abma came.
i already explained in an other thread, why i think no new devs come. one main reason is the uglyness of the general engine design (OO wise), and the inflexibility/unwillingness (in my eyes) of the current devs to change this. it is not possible to work on one part of the engine in a nice way, because of that.
an other big reason is the current bad state of the AI Interface(s), which is mostly my fault.
and as mentioned, of course, the not so nice treatment of new devs, that could potentially be engine devs.
(off-topic)
@Petha
i fail at doing it myself (and i tried to explain why). then you want me to tell you what to do, even though you fail at C/C++ (as you say yourself), and know less specifics about the Java AI Interface.
... i don't know how to make it clearer then that... you are expecting santa to give you a ferrari, cause your parents can't afford to buy one for you.
@SpliFF, AI dev talk is not at all off-topic here. as Petha noted, AI devs are a good source for engine devs. they work closer together wiht the engine then game devs. they use similar/the same languages. thye do much more abstract work, and use the same way of thinking/need very similar education and techniques as engine devs. they are much more likely to be passionate about writing abstract code (like in the engine) then game devs.
before the move from SVN to git, there are.. like 40 or so spring devs. simply cause everyone that ever wanted to create a commit, was giving access. when moving to git, it was reduced to.. i think 7. these were the most active ones at that time. since then, auswaschbar, imbaczek, tobi and me left, and abma came.
i already explained in an other thread, why i think no new devs come. one main reason is the uglyness of the general engine design (OO wise), and the inflexibility/unwillingness (in my eyes) of the current devs to change this. it is not possible to work on one part of the engine in a nice way, because of that.
an other big reason is the current bad state of the AI Interface(s), which is mostly my fault.
and as mentioned, of course, the not so nice treatment of new devs, that could potentially be engine devs.
(off-topic)
@Petha
i fail at doing it myself (and i tried to explain why). then you want me to tell you what to do, even though you fail at C/C++ (as you say yourself), and know less specifics about the Java AI Interface.
... i don't know how to make it clearer then that... you are expecting santa to give you a ferrari, cause your parents can't afford to buy one for you.
- FireStorm_
- Posts: 666
- Joined: 19 Aug 2009, 16:09
Re: Spring developer crisis
I'll get to work on a better/more-serious one then.hoijui wrote:i would hang that up in my uni too! but it would need an AI-Dev part aswell.
-
- Posts: 843
- Joined: 13 Aug 2007, 13:19
Re: Spring developer crisis
Awesome stuff.FireStorm_ wrote:I'll get to work on a better/more-serious one then.hoijui wrote:i would hang that up in my uni too! but it would need an AI-Dev part aswell.
For promotion on uni's it probably couldnt hurt to mention that you can use Spring for assignments.
Re: Spring developer crisis
Just for you:For promotion on uni's it probably couldnt hurt to mention that you can use Spring for assignments.
- Attachments
-
- assign.png
- (76 KiB) Downloaded 15 times
-
- Posts: 843
- Joined: 13 Aug 2007, 13:19
Re: Spring developer crisis
Ah yea ;p didn't want to put it fullscreen at workAnarchid wrote:Just for you:For promotion on uni's it probably couldnt hurt to mention that you can use Spring for assignments.
- Tim Blokdijk
- Posts: 1242
- Joined: 29 May 2005, 11:18
Re: Spring developer crisis
I think we need a little more money. Having a developer do 2-3 months of full time work a year on Spring would help things along.
Another point is that Spring as it stands today is more or less "done". There’s not much low hanging fruit to take on that will have a big impact on the project.
Maybe we can reboot the project by doing a Spring 2.0. Possibly adopt the Torque3D engine.. my attempt to make the Planetary Annihilation engine open source failed to get traction with Uber. Maybe Chris Taylor would be more willing to try it? He would love to do a TA reboot.
Another point is that Spring as it stands today is more or less "done". There’s not much low hanging fruit to take on that will have a big impact on the project.
Maybe we can reboot the project by doing a Spring 2.0. Possibly adopt the Torque3D engine.. my attempt to make the Planetary Annihilation engine open source failed to get traction with Uber. Maybe Chris Taylor would be more willing to try it? He would love to do a TA reboot.
Re: Spring developer crisis
@Tim: Raising money seems like a good suggestion given we live in the golden age of Kickstarter reboots. Most are commercial projects but I see no reason why an open-source community couldn't try something like this (actually someone told me there is a site for open-source pledges). Most original TA players are in their 30's now so cash is probably more available than free developer time if we could convince people their pledges would go to the things that matter most (like stability, unit counts, good AI and pathfinding). Maybe even Atari could be convinced to get involved since the publicity is probably more valuable than the TA IP at this point.
Re: Spring developer crisis
Very very few people will pay (it's actually donate) for a public good, if that same thing can be payed by someone else and they could use it without paying anything.
A Spring kickstarter would make sense if you would push for a commercial non-free game using Spring (it's possible if you limit art redistribution), and then use say 10-50% of the funding to improve Spring as well.
I disagree that Spring is done. There are a lot of major things (which require major work, I know) lacking that we could do (in the engine):
full 3D maps,
games with multiple maps (worlds and freespace, similar to planetary annihilation),
animation,
support for fluid dynamics,
huge (infinite maps & worlds), either by procedural generation of dynamic loading
And a lot more medium level features which one can find at the wiki's GSOC page.
A Spring kickstarter would make sense if you would push for a commercial non-free game using Spring (it's possible if you limit art redistribution), and then use say 10-50% of the funding to improve Spring as well.
I disagree that Spring is done. There are a lot of major things (which require major work, I know) lacking that we could do (in the engine):
full 3D maps,
games with multiple maps (worlds and freespace, similar to planetary annihilation),
animation,
support for fluid dynamics,
huge (infinite maps & worlds), either by procedural generation of dynamic loading
And a lot more medium level features which one can find at the wiki's GSOC page.
Re: Spring developer crisis
Regarding the picture, you need lobby devs, tool devs and as someone mentioned AI devs. And probably a bit more:
Layer 0 = engine
Layer 1 = games, lobby, tools, AI
Layer 2 = (game/map specific) lobby, tools, AI
Layer 3 = map/mission (art creators)
Layer 4 = Bug reporters, testers, PR (social web & local)
Layer 5 = Players
Layer 0 = engine
Layer 1 = games, lobby, tools, AI
Layer 2 = (game/map specific) lobby, tools, AI
Layer 3 = map/mission (art creators)
Layer 4 = Bug reporters, testers, PR (social web & local)
Layer 5 = Players
Re: Spring developer crisis
There are cases and there are cases. I've heard the argument that "a kickstarter campaign must be about pre-ordering games". I've also seen it fail hilariously and be disproven by evidence.A Spring kickstarter would make sense if you would push for a commercial non-free game using Spring
The stimulus can be partially replaced by things such as fringe benefits to no exclusion, like, you know, hats, homages, and ability to influence the process.
Additionally, a spring project - having already working engine - can aim for a much lower target cost compared to a large bunch of what's on KS.