PDA

View Full Version : Moving Code Libraries to Github



nickswalker
11-30-2013, 05:31 AM
Scanning the libraries page, there's a tremendous wealth of useful code, but it's not in a format that's conducive to contribution. Is there any reason why PJRC doesn't dump the libraries into a bunch of (free) GitHub (http://github.com) repos?

PaulStoffregen
11-30-2013, 10:55 AM
Long-term, I believe it's likely things will move that way, or to something similar.

Most of the libraries are still maintained by their original authors. One concern is working with original authors and maintaining good relationships. I'm sure many of them wouldn't mind, and in fact some might be happy to see a big repository of all libraries. But it's also possible some could take this the wrong way. This is the sort of thing that needs to be done very carefully with good communication.

Another thing to keep in mind is the relatively newness of Github. Many libraries were started before anyone used it and a good number are still hosted on Google Code or other sites that were much more popular before Github started taking over.

Massimo (co-founder and widely recognised leader of Arduino) and Cristian (now the main technical lead for Arduino) have talked about doing something like this for all Arduino libraries, including integration with the IDE. Then again, I first heard this from Massimo in May of 2012, so it's not some new idea they're cramming to push out fast. Who knows when it will happen, if ever?

Still, it's likely I'll slowly migrate in this direction. Some of the libraries I do maintain, because they were abandoned by their original authors. Some are my original work. For those, I'll probably set up Github repositories, but on a case-by-case basis as I work on them. The reality of those older, very stable libraries is I tend to update them maybe one or twice a year. I've learned the hard way not to make hasty changes to old and stable code, even for things that seem extremely simple or even trivial. I prefer a slow and cautious approach.

I'm also currently pretty busy working on a couple new libraries, a couple new products, and some new features to be introduced for all existing Teensy 3.0 boards. All that is of course on top of the normal day-to-day operation of PJRC (thankfully Robin & Erin do a lot of that, but every day at least a couple hours of my time goes into business/operational stuff), and of course the daily communication and answering of tech questions. This message being just one....

My point is that I generally do see things moving in this direction, but it will be a slow and gradual change, not a sudden dump of all the code.