4 Dec 2008, 1:45 pm
Jason Adams has a blog post titled 10 Reasons to Use Git for Research. Know anyone working in an academic settings? They may want to check it out.
Academic settings impose different constraints on code base management. The goal is usually less about code quality and more about exploring possibilities. Academic code is often quite shitty, hacked together by some grad student(s), with dozens of false starts and changes in requirements. Trying to recreate previous experiments is often very difficult unless the grad student made previsions for such rollbacks. And if they have, it’s probably done in a way that seemed logical to the grad student at the time but is a nightmare for someone new to the project. There are ways to avoid this, by placing more of an emphasis on software engineering, but sometimes projects are so small or short-lived that it doesn’t seem feasible to trouble with that at first. And if you don’t even have a clear picture of where you are heading, it might not even be possible (though you are probably doomed to many problems in that case).
To help combat these issues, I will contend that every academic software project *must* use version control. Git makes that easy and here’s why.
4 Dec 2008, 8:18 am
(BTW I wear a medium…)
3 Dec 2008, 3:14 am
Why do I love GitHub? There are many reasons, even forgetting that they now employ me… One of the coolest ones, however, is the community. There are lots of hosting solutions for all sorts of SCMs, but what I love about GitHub is the awesome community that is out there collaborating and discovering each others projects.
Case in point – yesterday I put up a little website where I list out the reasons many people choose Git over other SCMs, and I put the source for the website itself on GitHub, and linked to it in the footer of the website. Within hours, Alexandre Girard forked that source and translated it into French (Pourquoi Git est Meilleur Que X). I spent about 5 minutes and reconfigured the website to respond to a ‘fr’ subdomain, and so I have a French version of my website at fr.whygitisbetterthanx.com. Within an hour or so, another French speaker, John Mettraux, whom I have likewise never met, forked that project and corrected some of the grammar and whatnot, which I also added, merged in and pushed out in literally seconds (thanks github gem!)
Then, I wake up this morning and find that Fabio Akita (whom I have met over a nice Chinese meal in SF a week or so ago) of Akita on Rails fame, had translated the site into Portuguese (pt_BR – Por que Git é Melhor que X), which again, after about a minute of work on my part, now has become pt.whygitisbetterthanx.com.
I am deploying from the ‘fr’, ‘pt’ and ‘de’ branches of my repository, if you want to help or add your own translation. I find this really amazing, and I want to thank everybody that has contributed to this and to everyone else who shares that sense of community and takes a few minutes to fork and improve every once in a while, just to help. We are doing what we can to make that process of collaborating as quick and painless as possible.
(btw guys, if you tell me how to say ‘where “X” is one of’ in your language, I’ll re-do that little graphic at the top there)
Update: Spanish now, too : es.whygitisbetterthanx.com.
2 Dec 2008, 11:04 am
We were having such a good time watching people sign up today, we figured we should just keep the fun going and extend the sale until Sunday.
Also, there was some confusion about upgrading your existing free account to a paid account. We had originally written the code to apply the discount only for new signups, but that was totally unfair, so the sale now works with free accounts as well. If you go to your account page, you can switch to a paid plan without entering a credit card.
Sign up the entire family!
Update: If you already upgraded before we rolled out the updated code and received a receipt, just ignore it.
2 Dec 2008, 10:40 am
Thinking about moving to Git? Want to bring the rest of your team up to speed? GitHub now offers customized Git Training.
Visit the training page for more information.
2 Dec 2008, 1:47 am
As we all know, Git is the best SCM system out there. However, some people have decided that we in the GitHub community may be misled by hype or the beckoning call of the sweet, sweet taste of the kool-aid. In response to those people, I have put together a short apologia,
a succinct explanation of why so many have rationally chosen Git over all the other SCM choices out there. It outlines what I feel are the most important and compelling reasons most people switch to Git. If you find yourself in a flame war with someone from another SCM camp and they accuse you of simple fanboy-ism, feel free to slap this url on them:
I will continue to work on this (in particular, I want to put up a short screencast demonstrating the power of local branching that will blow peoples minds that have never realized what that really means…), but if anyone has anything to add, I encourage you to fork and improve, and I’ll pull it on in. The source for the site is here:
Let me know what you think!
1 Dec 2008, 4:38 pm
If you’ve been waiting to see what the fuss was about, today is the day to join GitHub.
We’re offering a free month on all of the paid plans if you sign up today. There’s no credit card required until January 1st, 2009, and you’re welcome to cancel or downgrade to a free account any time before the month is up.
1 Dec 2008, 11:42 am
Welcome to the sixth edition of Rebase! (guaranteed 100% tryptophan free)
(GitHub users definitely love their football and turkey. Check out the huge drop on 11/27!)
webarchiver is a tiny Objective-C project that allows the creation of Safari .webarchive files, which is a convenient way of storing all of a website’s files: css, js, images along with HTML. This is way easier than looking up all of the files for a site manually, and it’s a command line tool so you won’t need to open your browser to do it. Not really portable though, but it’s fast and easy on OSX. More information here.
jss is simple: CSS3 support in any browser that already supports jQuery. Sounds awesome to me! Comes with plenty of tests, a ridiculously simple API, and even caching. Check this out if you want to live on the edge of CSS design.
suprdate is a kickass DSL for working with dates in Ruby. Makes traversal and iteration of dates really easy, and suprisingly has an infinite loop built into it. Who says you can’t model the end of time in code? Can also filter dates, make ranges, and much more. If you need to do anything complicated with long spans dates in Ruby, I’d check suprdate first.
Pieter de Bie (pieter) is the brains behind GitX, a gui app for browsing your git repositories on OSX. GitX is definitely way easier on the eyes and mind if you need a break from the command line. This alone qualifies him as a hardcore forker in my book. Lately he’s also been hacking on Safari plugins. This is definitely one to watch if you’re into OSX/Cocoa/Objective-C development.
Antonin Hildebrand (woid) is up to some really neat things here on GitHub that deserved to be checked out even if you’re not a Pythonista. Probably the most useful is firepython, which allows for console logging of your Python app, be it Django or what have you, through Firebug. And it looks pretty slick too. Another upcoming creation of his is drydrop, which uses git and Google App Engine to deploy static HTML sites without needing to know Python.
Neuros Technology (neuros) is a shining example of a company that has really embraced the open source community and transparency in the development process. They offer a set-top box that can organize, archive, and play nearly any video content online, and the code that runs it is completely open (and here on GitHub!). Oh yeah, they also have occasional bounties for features if you’re looking to earn some money on open-source hacking.
That’s it for this week! Next time I’m going to attempt to figure out the trends for the month of November, to see which weeks were the most active and get a better gist of the site activity overall.
30 Nov 2008, 4:53 am
At the beginning of this month, I gave a talk at RubyConf in Florida about using Git in Ruby applications. It basically goes over some of the strengths of using Git as a filesystem and proposes some example applications you could write using Git as your data backend instead of a normal filesystem or simple database.
It assumes a little bit of Git knowledge, but the idea was to show a slightly different way of thinking about Git itself. The major downside here is that Confreaks seems to have synced the slides about 7 seconds ahead of the video, which means you get a nice preview of what’s to come. However, at the times I flip through slides quickly, the sync problem makes it a bit difficult to follow. Oh well. Let me know if you find it useful. If you want it higher res, Confreaks has the video up here.
(btw, since I’ve gotten this a few times now – the ‘tree’ command is a pretty common Linux command that prints out a directory structure nicely)
28 Nov 2008, 2:50 pm
You’ll no longer see a flood of commit events in your dashboard. Instead? Push events.
Commit events will still appear on your profile and in all your RSS feeds for now. We will be removing commit events from RSS feeds in three weeks, on December 18th. We’ll post more about the new format soon.
Update Pushes with single commits now show the commit. We also fixed the wycats bug.