I considered creating a startup. But I don’t think there is a realistic market for such a thing. That’s not to say that it isn’t useful, but I don’t see any viable way to market it.
Open source is fine, but creating an open source project is not the same as giving away an algorithm for someone else to use in their own project. If I get around to building a proof of concept, it can go on Github where the originator of the system can be verified and credit can be given. If someone wants to dedicate their spare time on this project, and only this project, and if we work well together, then we can get it done even faster.
Regarding the requirement for experienced developers. I’ve been in the industry for 15 years, and have interviewed a lot of candidates for jobs and worked with all shapes and sizes of developers. You just don’t get ahead in ambitious projects by having your core team consist of people that you have to babysit. I spend most of my day job lately cleaning up bad code left over from a developer whom my former boss allowed free reign on the project. Five bad developers can be worse than one good one, often even producing a net negative utility.
A core team of relatively experienced developers should co-found an ambitious open source project. If it’s a simpler project, you only need one person with plenty of spare time. Once a good team cohesion is established, with the members having a good understanding of the goals of the project and the code base, then the volunteer developers can start contributing, and those contributions can be integrated into the repository in a sane and supervised manner. Having a swarm of newbie developers as “the team”, on the other hand, brings all sorts of problems that you don’t want.
I would rather wait until it can be done right than risk doing it wrong and not having a second chance.
Isn’t the choice here between having it done wrongly and not having it done at all? I’m not sure which one is worse. All your points are valid, no doubt, but how often do you see successful projects that started from pretty code as opposed to projects that started with awful code that barely works but proves the underlying idea enough for investment in cleaning the code base up?
On the other hand I’m not a developer, I’m a sysadmin and therefore my PoV may not be relevant
Are you building a proof of concept on your own already, or are you hoping to find someone to start the project together?
Where on Earth do you imagine finding such a person? Such people don’t grow on trees (unfortunately)! And what’s your plan for persuading them to focus on your project?
How many of those projects have had a budget of 0?
Where do you imagine experienced developers with plenty of spare time to exist?
I don’t want to sound negative, but you have pretty high demands. Your ideas and algorithms are certainly good, but even if you had the best idea in the world, you would have trouble finding people to work on it, unless you make doing that very attractive.
So, what I’m going to say is to be realistic and start with what you have: You and some very imperfect supporters, if any. This will then make you mad and then you create your project on your own just to demonstrate to me that it can be done easily just with a single person.
These are some good points, and every project is different with a set of different circumstances, and a different set of cards being dealt to whomever is aiming to start the projects. So there certainly isn’t a one size fits all approach. This is just what I find works best for me. Maybe there is a middle ground that addresses the problems presented by both sides.
You’re right that it’s pretty damn hard to find the types of people I mention, that’s why I say you only really need one or maybe two such people of that type. Though if you’re already an industry developer, chances are you have other friends that also are in the same position and therefore you’re more likely to find help from them. Even then, it is hard to find people that have the spare time. Releasing the project on Github allows you to passively wait until interested parties around the globe find it via searching, and that gets you much better odds than word of mouth.
I think the best thing to do would be for me to start a project, get what I can done, and then release some code on Github. What I definitely do not want to do is just post an algorithm everywhere. I’m not worried about an idea being stolen, since if I cared enough about that, I would actually be trying to make money with it.
I’m more concerned about someone attempting to use the algorithm in its partially unfinished state, and then lacking the technical background to make the appropriate modifications to the algorithm as needed. It would be effectively a waste of their time. That is why I feel I need to be involved with any project that uses the algorithm, and the best way to ensure that is if I wait until I have the time to develop the project before releasing any data of any sort.
I’m not sure if I understand you right here. Cases:
You release an unfinished state of your algorithm and get involved into projects that try to use it. You help them to adapt the algorithm to their needs.
You release a finished version of your algorithm. Wouldn’t your involvement in projects that use it be optional in this case? Or would your algorithm need complicated adjustments even when it’s “completely finished”?
I know it’s been awhile, but would you have any interest in seeing the algorithm? I’ve had a renewed interest in the topic. I’m no longer attached to the algorithm, but rather I’m now interested in developing or using software to simulate economic models in general.
Sure. I’d like to see that algorthm. It’s not very likely that I’ll use it for anything, but I may consider incorporating it into Quantified Prestige or some other system.