Tag Archives: Developers

A Faster, Better SourceForge – Release Update

Usually we blog about features you can interact with or maybe we spotlight a featured download. Today’s blog is a little different because I am going to be talking about features that you may not immediately notice. There is no new UI for it and it wasn’t glamourous work, but I can tell you that the pay off for SourceForge was huge.

Ming ODM

Here at SourceForge we use an open-source ODM (Object Document Mapper) called Ming. Ming sits on top of our mongo database and offers us the features you would find in an ORM (Object-Relational Mapper) on top of SQL. We get validation in both directions, relations, and the ability to interact with our documents as native python objects. This was working great, but performance was an issue, so during PyCon 2012 we decided to start our own mini need-for-speed campaign to get the performance of Ming where we needed it to be. The efforts at PyCon and the following weeks have resulted in our releasing SourceForge on top of a new version of Ming that is much, much faster.

Recommended Projects

Another feature we’ve recently added to the site is better project recommendations. We’ve partnered with a company that helped us compile a list of data and information about our projects using some machine learning algorithms. Using this data we are able to provide better and more relevant project recommendations. This not only helps our users who browse the site by enriching their experience, it also helps project owners by sending your project higher quality traffic from recommendations, resulting in visitors who are more likely to download, use, and love your project.

screen-shot-2012-04-05-at-103503-am

Finally, we have updated our sorting and filtering to include a properly weighted and ranked Popularity filter. For this we made some adjustments to our existing Wilson score math, using the lower bound of the … well I won’t go in to full details here, since you can read a very good write-up on sorting by rating on Evan Miller’s blog. Again, this provides a great benefit to both our download users and project owners, by ensuring you are getting the best rated project for your search terms and that your project is being ranked where it should be.

As always, we are working to make SourceForge the best website out there for open source project hosting. We continue to improve both our download and browsing experience as well as our project owner and developer experience. We encourage you to leave us feedback and always love reading suggestions and comments from our users. Our goal is to make SourceForge the best, and you help us do that every day.

Wayne Witzel III
SourceForge Engineering team.

Developer Tools – Commit Viewer

At SourceForge one of our goals is to make our developer experience the best out there. Now we all know this process doesn’t happen overnight, but each week, we continue on our quest to modernize our tools and make them more intuitive and feature rich.

This week is no different. Our newest member of the team Cory Johns was able to take some time during PyCon 2012 sprints (which if you didn’t know, we were there) to address an issue with the current commit viewer. In the old commit viewer you had to click on a link for each individual diff for each file in the commit, then back, then click, then back, then click … then get annoyed, then cry. That was my pattern, yours may differ slightly. So I created a ticket and Cory scooped it up instantly, it was as if he had known the same pain as me, it was quite touching.

So today we have released Cory’s first set of changes to the commit viewer, which, as you would expect, puts the commit, with information for all the files, on to a single, easy to read, highlighted page. I know, I know, you’re saying to yourself right now “Hey Wayne, umm, everyone has been doing that for a long time”. And I would say to you, you are right, and now we do too.

The real difference is how we came to do it. We opened a ticket, which any user can do. Requested the feature, and it was developed during the sprints at PyCon, open for everyone to see. Now those changes are available to all of our Allura users as well as anyone running their own instance of Allura. In fact you can even review the changes yourself right here.

New Commit Viewer

And you can see our next set of enhancment tickets for the commit viewer have already been ticketed here #3930 and here #3931. So please take the time to checkout our new commit viewer, we hope that you find these changes as helpful as we do in our daily development flow.

Wayne Witzel III
SourceForge Engineering team.

Developer counts – the stats

Last week’s interview about the Tiki Wiki project got me looking closer at the data, and I wanted to share a few of my findings with you.

First of all, here’s that graph again:

project_vs_developer_count_sourceforge_2012-03-08

That shows the distribution of projects vs how many developers are on a project. 268,554 projects have only one developer. Whether that represents projects that simply don’t have a very wide appeal, or if it is project admins holding on to the reins a little too tightly, that represents a lot of code that will be orphaned if just one person loses interest, has a change in their available free time, or, as is inevitable some day, dies.

At the other end of the spectrum, there are 21 projects that have more than 100 committers. Some of these are names you may have heard before, while others may come as a surprise.

Project Developer Count
Firebird 104
Gene Ontology 106
CARE2X php Integ Hospital Info System 107
IT Process Models Repository 109
Boost C++ Libraries 127
Inkscape 133
tagua 134
eStudy 136
Generic Model Organism Database Project 136
Mediaportal Plugins 140
ADempiere ERP Business Suite 141
VeniVidiWiki 144
jEdit 177
XOOPS Web Application Platform 183
GamesCrafters 204
Apertium: machine translation toolbox 230
The Plone Collective 248
Moodle 248
TinyOS 324
work-in-progress pkgsrc packages 365
Tiki Wiki CMS Groupware 500

But what these numbers mean is far from obvious. As was mentioned in the Tiki Wiki interview, although there are 500 committers, only 260 of them have actually committed anything.

And that VeniVidiWiki project looks decidedly fishy, with the project registered on 2004-05-24, the latest activity on 2004-06-25, but with 144 committers. What does that mean? It turns out that it was part of a University course, where all of the students in the course had to take part in an Open Source project, so they started one from scratch. When the course was over, the project was over, too.

I’m always a little skeptical about the use of numbers to prove much of anything about an Open Source project – who’s to say that 1000 commits are in any way better than 100 commits? The proof is in the code, the longevity of the project, the quality of the end product.

But the hypothesis that a large committer base leads to a sustainable project seems to work out in this particular statistical sample, with all but three of the project showing some activity in the last couple of months.

This is all, of course, very unscientific, and I hope, over the coming months, to have conversations with various of these projects, and investigate further what seems to work when it comes to deciding who gets commit rights and who doesn’t. But I thought you’d like to see some of the data I’m working with.

Open Source is Ready for Prime Time

Welcome to another edition of Take Five. In today’s edition I talk open source software development in today’s enterprise world with Clay Loveless, currently founder at Jexy and formerly of Mashery (where he was a co-founder).

Stephen Wellman (SW): Hello, Clay, welcome to Take Five, a new feature on the SourceForge blog where we discuss the pressing issues facing today’s IT professionals. It’s a pleasure to have with us. As someone who works with developers, how has the role of open source software development changed in today’s business world? Are larger businesses more amendable to open source now than they were a few years ago?

Clay Loveless (CL): Hi Stephen, thanks for having me on your blog!

It’s rare that I encounter customers at large or small companies who aren’t leveraging open source software in some significant way. Gone are the old days of programming languages driven by big companies, commercially licensed web servers, and in light of the NoSQL movement, there’s even less going on with commercially licensed databases than there used to be.

There’s still a desire among many to have a support contract with someone associated with an open source product. No one likes to find that their company is dependent upon an open source tool that no one understands but the guy who left the company last month… and typically the company will often discover that when that one piece breaks.

There’s hardly any reason for a new company to build on anything *but* open source, which is a big part of what’s driving this “lower barrier to entry than ever” theme that’s been floating around the startup entrepreneur and investment community for a couple years.

More established companies, however, will still gravitate toward the support contract and/or the commercial solution, simply to get an SLA that they can back their OWN SLA with. I don’t think that trend will continue, but the decline of that practice will be slow.

SW: What in your personal opinion, Clay, are the top three technology rends shaping today’s IT market?

CL: Mobile, commodity computing, and social media/customer support.

Mobile: I can hardly believe that just four years ago I was toting a Treo 650 and thinking it kicked serious a**. The rapid advancement of mobile technology is obviously something unlike anything we’ve ever seen, and we’ve barely begun seeing and understanding the ramifications of that growth. When entire regions leapfrog over technology evolution milestones we experienced in the US, there’s something that can’t be ignored going on. The real shaping of the IT market there lies with who’s paying attention to this trend, and who’s not. Those to don’t devote resources to mobile are those who aren’t going to be around too long.

Commodity computing: The REAL “cloud computing,” before marketing departments and windbags hijacked the term, was commodity computing. Infrastructure as a Service. It legitimized the whole burgeoning field of DevOps, where clever coders with sysadmin skills can conduct orchestras of computing resources all over the world from any Starbucks. When you step back from all the hype and look at what’s possible today with API-enabled computing resources, and it’s truly staggering. When I decided to build Mashery’s entire architecture around Amazon EC2 in 2006, people thought I was crazy. Now look at what’s possible. You’re crazy these days if you DON’T use commodity API-controlled infrastructure.

Social media/customer support: The increasing interconnectedness of geeks around the world is having a serious impact on the IT market. I wish I could see a show of hands of who’s still looking to InformationWeek (or similar print publications) for their IT news (A *weekly*? Seriously? And on paper?). Influencers have direct connection to the masses, as do the companies that want to reach those same folks. It’s possible now to see who *really* cares about their customers, and who’s just milking them. Just as with mobile, the tech companies who don’t realize that customer service is critically important in these transparent times aren’t long for this world.

SW: Is open source now more of a go-to for businesses looking to run commercially viable Web services and applications? Why do you think this is?

CL: Absolutely. After Yahoo, Facebook, and Twitter have demonstrated that you can certainly build a top 10 internet property on the back of open source — AND contribute *back* to open source, as they all have — it’s hard to argue that you really need commercial tools to make it big. The proof is right there, and now that it’s been proven day in and day out for so many years, it’s finally sinking in for people and becoming much more of a go-to option for businesses of any size.