Alcides Fonseca

40.197958, -8.408312

Posts tagged as Opensource

The Github Momentum

History

Long time ago there was this website called SourceForge that hosted the majority of opensource projects. It would offer a unix shell account, hosting and CVS (and later on, SVN) repos and CDN powered downloads. Today a lot of Unix and Windows utilities live there.

Google got big and in 2006 they launched their own OpenSource Hosting with a SVN repository, wiki, issue tracking and downloads. Plain simple, à lá Google.

Then a couple of ruby hackers started a side-project called Github that offered repository hosting for projects that used the Git Version Control System. But it wasn’t a regular hosting like SourceForge, GoogleProjects, or even BitBucket or Launchpad [1], it uses the Web2.0 success model:

Simple to use

If you have used Github, you have seen that the web interface is really simple. Basecamp-like simple. The only thing that is limiting this factor it git itself that is not as straightforward to use as SVN or even Mercurial. But they even did some tutorials and provide some help about git itself, which works pretty well and is making some great opensource projects migrate to their service.

Social network

This is a small difference to the regular services. In Github you can follow2 developers, or simply some project. It has an activity stream (think facebook) where you can be up to date with commits, forks, pushes related to the projects you care.

Freemium

It is free for opensource projects, but they run a business. If you want your company to use their features for your projects, you can buy one of their plans. I find they a bit expensive, specially the lower ones for small teams, but it’s not by chance that they won the Best Bootstrapped Startup Crunchie.

Github Rocks!

I love the decentralization of git and now more than ever I love the offline commits. So bad I migrated everything I had in SVN and I am hosting everything as a git repository in my external hard-drive, VPS and the important ones in Github.

I have tried to use simple git repositories in my VPS and even using Redmine to browse but the experience sucks comparing to Github where you can see the various branches, commits and even get some stats.

There are some nifty features like being able to host your webpage as a github repo, or the per-project wiki that’s very useful for storing the documentation of your opensource project. There is a small different against google’s project wiki: it isn’t available in the repository, which I find weird for these guys that even have snippets in repositories. You can also edit a file and commit right there in the browser, which I use sometimes for quick fixes in my website. But my favorite feature is the commit comments which Gaspar use for code reviewing.

What I most miss is an issue tracker. Google has this, and while Github doesn’t include one, it allows you to integrate with 3rd party services like lighthouseapp. Be there is always hope.

The Catch

As I said before, I love the fact that Github works with the opensource community. They even blog about cool projects they host. There is a general concern about a commercial company hosting most of the opensource projects around (being Google, Github, any of them). I agree that would be safer to have non-profit entities, like the FSF and a non-freetard one, to do this service. However I find the advantages of having an innovative company working on this service enough to have the risk of having most of the opensource projects in the future.

1 The later two are a step ahead of the former and more close to Github.

2 Or stalk…

Microsoft starting to really embrace OpenSource

After some steps to embrace the OpenSource model, specially thanks to IronRuby and IronPython projects, the day has come.

Microsoft is shipping OpenSource tools as part of one of their products: jQuery will be part in ASP.NET MVC and Visual Studio, with Intellisense support!

This is great news not because of jQuery itself (nevertheless, my congratulations to John Resig’s team), but because Microsoft is selling a product together with OpenSource code. This has been battled with a lot of effort by the IronPython and Ruby teams. For instance, IronPython is OpenSource, but cannot accept contributions from the community (in source code, bug reports are welcome). And until today, I thought they were doing the same approach with the JS toolkit for ASP.NET.

There’s this project Gimme ECMAScript (or Javascript if you prefer) library designed to make working with “everyone’s favorite scripting language” fun again!_ It is OpenSource, but since it was made by Microsoft:

Due to some licensing restrictions, code contributions from the community will not be accepted, however the Gimme source code is completely free and open to all who wish to view it and learn from it.

I’m glad Scottgu decided not to go with Gimme but with jQuery. (nothing against Gimme, but the community around jQuery is so much wider) This is the real step that tell us that Microsoft is really changing!

Now I can touch ASP.NET again

So after my first real project in ASP.NET 2.0, I’ve never touched ASP.NET again. It’s simply ugly. And coding for the web in a language like C#, or Java is really a PITA. I just want my logic explained, and it’s one of the reasons for Ruby on Rails success.

But today Microsoft has made a small step that may make me experiment some stuff in their web technology again:

This afternoon we released a refresh of our DLR/IronPython support for ASP.NET, now called “ASP.NET Dynamic Language Support”, on our CodePlex site.

This means I will be able to do MVC web applications in Python (or Ruby). This is their response to the RoR success. Of course I like Django the most and I may even use it in the MS stack. This because the Microsoft teams for the IronRuby and IronPython are working to get Rails and Django working in their platforms, which is a really cool thing coming from the company that we all know well.