Or maybe I never ran into the problem since all my hardware is cast offs. There is something completely satisfying about turning some free hardware into a robot, since the person or company who threw it away complained that it would not run the latest version of MS Word.
We need TCG or Frits to do We need TCG or Frits to do this, as well as their input on whether this is something feasible for this site or not. This was just testing the waters on if people would be interested in something like this.
I am going to play devil’s I am going to play devil’s advocate Why do we need this? If I post a robot I put my code on my robot page. when I make updates I document it in my robot page an dupload the new code/directions if PINs changed. Why do I need to keep all revisions of code uploaded in another place if I can upload them all on my robot page?
I’ve been a software engineer for over 20 years and I am a certified ISO9000 software auditor, and I agree with you on the benefits of SVC (Software Version Control). I personally keep zipped, dated, and logged copies of software I write, but I don’t keep it forever. However, we aren’t building a product where a customer might contact us and ask for the Version 3 software when we are at Version 5. Also, if your revision controlled library is targeted for a PicAxe controlled Hex walker, then the Arduino differential drive people have no use for it, and vice versa. Now that CtC has ventured into the world of ‘Processing’ there should be a dozen new robots in the next couple of weeks, all based on that ‘language’. And I don’t even want to start talking about how the version numbering system should be setup or how code reviews should be handled.
The typical questions on LMR are “How do I make a servo work on a PicAxe” or “How do I code a …”. I think the bigger question is what files would people like to see? I don’t think I have ever needed to do a diff on files or source code I have downloaded from CodeProject, CodeGuru, CSharpCorner, etc.
Let me say again, I agree with source control, but only when everyone is working on the same product and that one product will evolve over time. That just isn’t the case here. What we could use though is a “Software” tag under the Components section, with other sub-catagories under that.
There’s also a "Specific There’s also a “Specific System related” section of the Forums, for questions (typically coding questions) about specific devices. Think that might be workable into posting code bits?
You don’t need it, you can You don’t need it, you can continue however you want. I"ve found that I’ve done multiple edits of files and had named them different things which was pretty silly. With the rcs I am able to view all of the changes and see what I changed exactly, notes and code. I don’t have to worry about posting it on a forum page and worrying about missing a curly brace while doing a copy/paste. Or maybe missing something because I added a symbol/define value but only posted the function that I had created. Sure you could figure it out, but this is a better way of doing things and imo(this is the real thing, My opinoin) more efficient. I’m not trying to push this on anyone, thats why it’s “thoughs on the idea”. If people don’t find it useful, fine, if they think it should be done differently, fine. I just thought that with some people working on larger projects(global project) or with people wanting to create libraries and maybe work with others on similiar things, it might be good…
I use SVN/Trac to manage my software projects – the LMR site itself is maintained in an SVN repository on the server. So it isn’t out of the question to set up one or two more repositories for public (or semi-public) use, and make them and their Trac sites available to LMR members. The main problem is that I’m finding myself really busy these days and definitely wouldn’t have time to moderate the repositories, reviewing checkins etc. I’ll look into this.