GitHub can fix everything
The title is a little facetious but I do think Github collaberation is not being taken advantage of in the ColdFusion community. Sure some CFML-ers like Mark Mandel, Luis Majano, and Marc Esher are using github. ColdFusion projects like ValidateThis, FW1, and MuraCMS are on it. ColdFusion Koans is even taking advantage of github pages (being able to host a site on github). All this said, github is much more than hosting projects and sample code.
The Wired article, The Meta-Story: How Wired Published Its GitHub Story on GitHub, describes how Wired published a story using github. It mentions Github is being used to oversee stuff outside of code like Senate bills, text files, and books. Pro Git is a great example of publishing a book on github.
People "can mess around with it, and then offer the changes back". Training material is perfect for github also. I have CFML in 100 minutes on github. It is pretty cool a couple weeks ago bcswartz added a Switch, Case, & Default section. I did change the sections to a wiki from markdown files.
Back to my original point, the CFML community doesn't seem from my perspective to be taking full advantage of Github collaberation and I hope this changes.




Posted under: 


Here here to GitHub's awesomeness. Since hosting CfStatic there I've been really impressed by how it opens up open source code - people started submitting changes and fixes without any effort and/or red tape, much the point right?
I do see more and more CF stuff on there though. Great to see.
There seem to be a million and one CF Docs sites these days, but a GitHub one where everyone could contribute would be pretty cool...
Thanks Dominic for the comment. I think you hit it on the head with your comment about easiness / less "red tap".
CFML seems to be dropping on the Github language popularity which is sad. I see CoffeeScript jump into the top 10 https://github.com/languages
I like Github as much as the next guy, but I think it's also worth mentioning that Github is not _always_ the best way for folks to contribute to an OS project. Documentation is a great example. I can't tell you how many times I've seen folks told that if they want to contribute a doc fix they have to fork/edit/commit/pull request. THat is _incredibly_ daunting for someone who may be an excellent writer but with poor tech skills. Hell, I know I won't bother myself. I wish Github had more ways for folks to contribute w/o necessarily having to follow the complete process.
I'm sure I'll be in the minority for this view. ;)
I think The GitHub is the cat's naughty bits, and nothing out there makes it easier for developers to contribute to OSS projects (I agree with Ray that the process can be a bit daunting for some folks, though)
But, I do not think it is the correct medium for everything. Just because you can use The GitHub for something, doesn't mean you should, nor does it mean its the best solution. Writing a book on The GitHub is like someone hacking an XBox to run Linux on it - kind of cool (for geeks), but not very useful.
Honestly, I have a difficult time agreeing that The GitHub is the best solution for anything other than being a repository (and an awesome one at that) for code and supporting documentation for OSS.
A nice thing about edits like documentation, is if the person is not familiar with git but familiar with a browser, they can do the in-browser editing without leaving the site. Negative is they would still have to send a pull request. I don't know how they would keep "their stuff" updated. It might be possible all in-browser but I haven't looked into is.
@Scott It also makes for a great version controlled database for a static site... (most likely a technical blog, but not necessarily)... i.e. http://fusion.dominicwatson.co.uk/2011/09/source-code-now-on-github.html
@Ray agreed, it could be a hurdle and all OS projects that are keen on contributions should make it easy and clear as to how people can contribute.
So, in a GitHub project you might have: "Fork and pull away to your hearts content, or, if you aren't comfortable using Git, you can contact us with your change requests at... or create an issue in the issue tracker here..."
Scott Chacon might argue on the usefulness of using github for a book, Pro Git. As smart as he is, I doubt he translated the book into German, Chinese, French, Japanese and Dutch. Or partial translations in Arabic, Czech, Spanish, Indonesian, Italian, Macedonian, Polish, Thai and Russian. It most likely all done via contributions.
I haven't played with it but I see people are using Github for blogs too. http://jekyllbootstrap.com/ That is pretty cool if people could fix typos my blog entries relatively easy.
'Version controlled database for a static website'? What does that even mean?
All the HTML pages are stored in The GitHub? I can see that being a good idea for the blog's owner, but fail to see how that would benefit anyone else. I cannot see me (or anyone, really) ever wanting or needing to fork someone's collection of blog posts stored as static HTML files.
Yup, it's good for the blog owner (i.e. me). While people may not wish to contribute changes to someone's blog, people new to static blogging can fork your repo and base there own blog from there (wiping out all the posts obviously).
My meaning was that the repository replaces the traditional role of the database in a CMS.
I kinda veered in my comments. I'd love the comment thread to focus on ColdFusion taking advantage of collaboration on github besides projects and sample code.
OS ColdFusion literature publishing service... powered by GitHub?
That would be something. Think of the whole CF Community being able to help with the WACK books.
Mike - Just because a geek (and I proudly include myself in that category) thinks something is 'cool' does not mean its 'useful'.
I just went to look at ProGit and I have to say, as cool as it is that so many people came together to 'write' that book, its a royal pain in the ass to actually 'read' and or navigate. I loathe reading long text on my computer screen (and I know I am not alone in that). So, unless there is some obvious way I am missing to download the 'book' as a file that can be rendered by my Kindle, I doubt I would ever read it.
So, cool? Absolutely!
Useful? I do not think so.
I am also a bit leery of doing 'everything' on GitHub. The whole 'all your eggs in one basket' thing, ya' know?
@Scott I think the idea is that you must compile it as source into an eBook right? We could build a site using CF that aggregated tech books (which could be written in GitHub, and others not), and did the eBook compilation for you...
I think 'documentation' is a great idea for GitHub.
Something like the WACK books or other training materials? I am not too sure about. As I said, I hate reading long text on my computer screen. So trying to read the contents of something the size of the WACK would be a chore.
I will admit that putting code samples/snippets for training materials in The GitHub is a great idea, I just do not agree that putting the training materials themselves on The GitHub is a good idea.
Changing markdown into electronic formats can be done pretty easily and probably automated with a build process using pandoc or some other tool. People can grab the electronic formats (PDF, mobi, or ePub) of pro git on the side nav: http://git-scm.com/book
But I am not a fan of electronic books ( another topic for discussion later :-) )
It would be great if someone could correct me / offer some insight on the following:
We use SVN, and we semi-adore it because of how great Tortoise is. Tortoise combined with Win Merge make version control smooth, easy, and fun for us.
Git, in my limited exposure to it, seems like another version control option, one that's pretty popular nowadays ( not sure which is more popular ). GitHub is simply an open, hosted Git repo service that people can explore in a browser ( semi-similar to what VisualSVN Server lets you do yourself ), with a few other features.
Is there a compelling argument for teams that don't do all that much with version control except collaborate to switch? Is there a killer tool like Tortoise for Git?
Any insight is much appreciated, thanks.
Yeah, defo shouldn't be hard to achieve. I was thinking that it would be great to have a single place to go for ColdFusion literature and to be able to contribute too. And there are plenty of us who *do* enjoy reading on an eReader ;)
I'll start a GitHub project asap...!
@David - I would say either Git or SVN is a great choice. Use whatever works for your group. I prefer git after using svn for several years. I think SVN has fixed some of the annoyances that made me switch.
Github also adds "forking" which isn't really a git term.
There is a Tortoise for Git. I wouldn't say killer but I use it.
I'd love to see CF docs ANYWHERE that we (the people) could easily edit/correct/update them.
Does the gitHub 'wiki' require push/pull or can you simply edit something?
Jim
Thanks Mike.
@Jim both I believe. A wiki can be made public but also, a wiki is just another Git repo that can be checked out.
@Jim - The CFML in 100 mins wiki on github is open to all but I am sure i could add a process to review and approve changes.
I remember Adobe mentioned to post comments to the live docs for correction/updates and they were going to release new docs but a closed documentation process there is the red tape. It would have been sweet if they would have ported to the docs to github for anyone to help but still Adobe having the final say. I think all their docs are released in Common Creatives anyways so it is a natural fit.
ColdFusion is the #39 most popular language on GitHub
Not sure if that's actually good or bad
And I am not sure if my more ColdFusion collaboration via github other than applications and sample code would improve that number
Maybe a ColdFusion Resource / White paper blog via github anyone can contribute to. Someone through up a whitepaper or article and let people fix typos, make it more accurate, and even keeping it up to date.
Can Github fix the spam problem on this thread?