Subversion is not dead

Git is on the rise right now, especially in the Open Source Software development circles.  Some even went as far as predict the death of Subversion.  As much as I appreciate git (here is a link for you, if you don’t) and what it is doing for the Open Source Software, I have to agree with Brandon Savage:

Corporate America needs a centralized version control system. Subversion still offers this: Subversion centralizes the repository and simply checks out a working copy (versus Git, which gives you a complete repository). Corporate America still needs to have cannonical version numbers, and the ability to see the progress of a product over time as a single line – not a bunch of branches and independent repositories.

And this is true not only for the corporate America.

On Open Source

An excellent comment in regards to Open Source and SugarCRM.  Not one, but two awesome quotes.  One:

In my eyes (and those of the open source community), the “high value” stuff is the stuff you can improve, and the “low value” stuff is the stuff you cannot.

and two:

I should also correct John Mark’s perception that slashdot is the be-all, end-all center of gravity for open source development. The beauty of the open source model is precisely that there can be many centers that collectively interoperate. Thus, Red Hat and Fedora, as two separate centers, both draw strength and network effects from the centers that are GNOME and Mozilla and Python and of course, Project GNU. None of these projects needs to “own” the others in order to create true value within its own center. Red Hat chose a path of letting 1000 flowers bloom, and that strategic decision allowed both a richer field (for the community) and a greater harvest (for Red Hat). SugarCRM can be successful without creating a monopoly of open source development. But it can also fail if it divorces itself from the open source values that make it one of the best alternatives to other proprietary solutions today.

On the beauty of the Free Software culture

This short post is an absolute must read.  Quote:

Still, there’s a qualitative difference between letting people download your own work from your own site, and watching other people try to profit from it. But it is precisely this difference that strikes at the heart of the Free Software/Free Culture ethos. Part of choosing a Free license for your own work is accepting that people may use it in ways you disapprove of. There are no “field of use” restrictions, and there are no “commercial use” restrictions either. In fact, those are two of the fundamental tenets of the “Free” in Free Software. If “others profiting from my work” is something you seek to avoid, then Free Software is not for you. Opt for a Creative Commons “Non-Commercial” license, or a “personal use only” freeware license, or a traditional End User License Agreement. Free Software doesn’t have “end users.” That’s kind of the point.

Via Matt.

Knowing Open Source community pitfalls

I came across this excellent blog post – “Recognizing and Avoiding Common Open Source Community Pitfalls“.  It’s very related to the short speech I gave recently over at 3rd Ubuntu / Fedora release party.  My angle was on how much good participating in an Open Source project could do to a college student.  I was talking more about how much practical stuff one could learn from existing projects – their tools, approaches, etc.

The blog post talks about roughly the same, but from a different perspective.  It’s more for those who are starting a new project, rather then joining the existing one.  There are plenty of ‘myths’ that go around about how is it is to do Open Source and how everyone can do it, and that all you need to succeed is to start.  That’s not so true, of course.  There is plenty of stuff to be learned and lots of work to be done.  If you are about to start your project or started one recently or just thinking about it, read the article.  It’s has roughly a paragraph about each of the following:

  1. Built it and they will come.
  2. Your community will help you build HARD DIFFICULT FEATURE X.
  3. Directional fallacies.
  4. Contributions are free.
  5. Profit models.
  6. Folks can understand your code.
  7. Documentation updates.
  8. Everyone using App X will give back freely and without your asking.
  9. Contributors are like coworkers.
  10. Resources grow on trees.
  11. Cross distribution support is easy.
  12. Users help users and it’s ok to just be a developer.
  13. Cross-project collaboration is easy.

Fixing RT3 on Fedora 10

We upgraded our development server to Fedora 10 over the weekend.  Among other things, it runs RT3 – excellent support, issue management, and bug tracking tool.  Once the upgrade was over, we ended up with a semi-working setup of RT3.  The emails were going through just fine, but the web interface was giving out a blank screen with no content or errors or warnings.

Googled a bit, but that didn’t help a lot.   Went through server logs and found an out of memory shout from Storable.pm:

2325:Callback called exit at 
../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/thaw.al) 
line 415.

Googled for that, but it turned out that quite a few people have the problem with this module running out of memory.  And not only in RT3.

So I left it where it was and had some good night sleep.  And it helped.  In the morning, englightment came in, and I tried reloading the page with cookies and cache cleaned.  It worked.  And then it didn’t work again.  Cleaning cookies was helping for a couple of page views.  So I dived back into the RT_Config.pm file to see my options.  There it was.

=item C<$WebSessionClass>
C<$WebSessionClass> is the class you wish to use for managing Sessions.
It defaults to use your SQL database, but if you are using MySQL 3.x and
plans to use non-ascii Queue names, uncomment and add this line to
F<RT_SiteConfig.pm> will prevent session corruption.
=cut
# Set($WebSessionClass , 'Apache::Session::File');

Once I enabled Apache::Session::File, the problem went away.  We are now back to work, enjoying the new web 2.0 round corners interface, pastel colors, and more.