Blog FOSS by Lê Trung Nghĩa

https://letrungnghia.mangvn.org

Wookie: một trường hợp điển hình theo tính bền vững

P { margin-bottom: 0.21cm; }A:link { }

Wookie: a case study in sustainability

By Sander van der Waal, Published: 15 March 2011, Reviewed: 12 March 2012

Theo: http://www.oss-watch.ac.uk/resources/cs-wookie

Bài được đưa lên Internet ngày: 12/03/2012

Lời người dịch: Một dự án nguồn mỏ có xuất xứ từ viện trường, không có nhiều đầu tư cấp vốn ban đầu vẫn có thể trở nên bền vững được, chính là ví dụ cụ thể của dự án Wookie. Về một khía cạnh quan trọng khác, mà nhiều người thiếu hiểu biết về nguồn mở ở Việt Nam thường cho rằng, phần mềm nguồn mở thì không quan tâm tới bản quyền. Điều đó hoàn toàn là sai. Trong trường hợp với Quỹ Phần mềm Apache: “Đó là, dự án cần chắc chắn rằng mã nguồn của nó được cấp phép lại phù hợp (nếu cần) theo giấy phép Apache License V2.0 và tất cả các thư viện bên ngoài được đưa vào mà dự án phụ thuộc vào có các giấy phép tương thích nhau. Hơn nữa, tất cả mọi người mà đã đóng góp mã được yêu cầu ký Thỏa thuận Giấy phép của Người đóng góp - CLA (Contributor Licence Agreement) để trao một giấy phép bản quyền cho ASF. Nếu họ không muốn ký tài liệu này thì mã nguồn của họ sẽ phải bị loại bỏ khỏi kho mã nguồn”. Trong trường hợp của các Quỹ và/hoặc Cộng đồng khác, nội dung của CLA có thể là giữ lại bản quyền của từng lập trình viên đóng góp mã cho dự án.

Apache Wookie (ươm trồng) là một ứng dụng web Java cho phép bạn tải lên và triển khai các widget cho các ứng dụng của bạn, dựa vào vài đặc tả widget của W3C. Vài giao diện lập trình ứng dụng - API (Application Programming Interface) cũng được Wookie hỗ trợ, như OpenSocial. Dự án đã khởi đầu như một dự án do EU tài trợ và Đại học Bolton quản lý, nhưng đã được đề xuất và được thừa nhận như là một dự án vườn ươm của Quỹ Phần mềm Apache - ASF (Apache Software Foundation) vào tháng 07/2009.

Lịch sử của dự án

Đại học Bolton đã bắt đầu dự án Wookie như một phần của dự án TENCompetence, do Liên minh châu Âu - EU tài trợ thông qua chương trình Khung số 6. Dự án TENCompetence đã chạy từ 2005-2009, và đã tập trung vào hỗ trợ sự phát triển suốt đời các khả năng của các cá nhân, các nhóm và tổ chức. Điều này đã từng đạt được bằng việc phát triển và khuyến khích hạ tầng kỹ thuật và tổ chức phù hợp nhất. Một yếu tố trung tâm của dự án là Nhà quản lý Năng lực Cá nhân (Personal Competence Manager), một cổng ứng dụng web cho phép mọi người phát hiện các khả năng mà họ muốn phát triển, và sau đó đăng ký cho các khóa học theo yêu cầu để phát triển năng lực đó. Wookie đã hình thành một yếu tố của cổng đó. Nó đã cho phép phát triển các widgets, đưa ra chức năng trong cổng và làm cho nó có khả năng tích hợp được chức năng này vào các ứng dụng khác, như Moodle và Wordpress.

Đội dự án đã nhận thức được rằng sử dụng một tiêu chuẩn mở, sắp tới có thể khuyến khích sử dụng phần mềm và có thể làm cho dễ dàng hơn để tích hợp với các hệ thống bên ngoài. Hơn nữa, một số thành viên của đội dự án tại Đại học Bolton từng cam kết rồi với W3C thông qua sự tham gia của họ với Trung tâm Công nghệ Giáo dục và Tiêu chuẩn Tương hợp - CETIS (Centre for Educational Technology and Interoperability Standards) của JISC (JISC CETIS). Nên họ đã quyết định triển khai tiêu chuẩn Widgets của W3C để Cấu hình và Đóng gói và tiêu chuẩn Widgets của W3C về Giao diện Widget. W3C định nghĩa các widgets như là: Các ứng dụng nhỏ web phía máy trạm cho việc hiển thị và cập nhật các dữ liệu ở xa, được đóng gói theo một cách thức cho phép một sự tải về và cài đặt duy nhất lên một máy trạm, điện thoại di động, hoặc thiết bị Internet di động. Đội dự án đã cộng tác sớm với các dự án khác từng triển khai tiêu chuẩn đó, như dự án IST PALETTE. Dự án Wookie đã hoạt động như một trong những triển khai tham chiếu ứng viên của các tiêu chuẩn widget của W3C. Qua thời gian, nó đã đạt được một trong những tỷ lệ thành công cao nhất trong các triển khai trong việc truyền bộ kiểm thử sự tuân thủ của đặc tả đó.

Tăng trưởng và phát triển

Đội dự án Wookie đã nhận thức được ở giai đoạn sớm rằng khả năng tiềm tàng của máy chủ widget sẽ rộng lớn hơn nhiều so với chỉ là cổng web mà theo đó họ từng phát triển ứng dụng. Kết quả là, họ đã xoay xở để giữ cho máy chủ widget là một ứng dụng chung, phân tán mà có thể dễ dàng được sử dụng lại bên ngoài ngữ cảnh của TENCompetence. Họ đã xem xét tính bền vững và sự phát triển liên tục của dự án và đã liên hệ với OSS Watch để có sự tư vấn về điều này. Ross Gardler của OSS Watch đã hiểu được rằng dự án có thể là phù hợp tốt cho Quỹ Phần mềm Apache, quỹ có lịch sử mạnh mẽ về các dự án đặt chỗ (hosting), hành động như những triển khai tham chiếu cho các tiêu chuẩn mở. Ở giai đoạn này, đã có rồi một vài sự quan tâm trong dự án từ bên ngoài đội cốt lõi, làm cho nó thậm chí còn quan trọng hơn để dịch chuyển dự án sang một ngôi nhà có khả năng bền vững.

Trong cộng tác với OSS Watch, đội dự án đã lên một kế hoạch cho việc tiếp tục sự án sau khi việc cấp vốn của EU sẽ kết thúc vào cuối năm 2009. Họ đã tìm được ngân sách cốt lõi để đảm bảo rằng một số thời gian của đội khởi xướng những người đề xuất (committers), bao gồm 3 người, có thể được đảm bảo. Họ đã ước tính rằng khoảng 0.2 FTE qua giai đoạn từ tháng 12/2009 tới 09/2010 có thể tạo thuận lợi cho một sự biến đổi trơn tru sang Quỹ Phần mềm Apache.

Cấu trúc của ASF là những dự án mới như vậy không thể trực tiếp trở thành một dự án được thừa nhận đầy đủ, hoặc dự án 'Mức Đỉnh', ngay từ khi bắt đầu. Thay vào đó, một dự án phải được đề xuất và chấp nhận trước hết trong Vườn ươm của quỹ. Các dự án chỉ có thể được đề xuất nếu chúng được một thành viên đang tồn tại của Quỹ đứng đầu. Một người đứng đầu về cơ bản là người hướng dẫn hàng đầu trong dự án. Có được một thành viên của ASF như một người đứng đầu sẽ đảm bảo rằng có một sự quan tâm trong dự án trong số các cộng đồng ASF đang tồn tại. Để tìm ra một người đứng đầu, thường người ta có thể đơn giản đi tới danh sách thư của Vườn ươm để đề xuất một cách không chính thức dự án của bạn và hỏi mọi người ai có quan tâm trong dự án đó. Trong thời gian ở vườn ươm, dự án cần chăm sóc tới sự thẩm định của nó. Đó là, dự án cần chắc chắn rằng mã nguồn của nó được cấp phép lại phù hợp (nếu cần) theo giấy phép Apache License V2.0 và tất cả các thư viện bên ngoài được đưa vào mà dự án phụ thuộc vào có các giấy phép tương thích nhau. Hơn nữa, tất cả mọi người mà đã đóng góp mã được yêu cầu ký Thỏa thuận Giấy phép của Người đóng góp - CLA (Contributor Licence Agreement) để trao một giấy phép bản quyền cho ASF. Nếu họ không muốn ký tài liệu này thì mã nguồn của họ sẽ phải bị loại bỏ khỏi kho mã nguồn.

Dự án Wookie từng được đề xuất tới cộng đồng Vườn ươm Apache vào tháng 07/2009, với Ross Gardler như là người lãnh đạo từ ASF. Nó đã có được một câu trả lời tích cực khắp nơi và đã được chấp nhận vào ngày 14/07/2009. 3 thành viên chính của đội dự án cũng đã trở thành những người đề xuất gốc của Apache Wookie (Vườn ươm), những người đã chăm sóc cho việc làm sạch vấn đề sở hữu trí tuệ (IP). Từng người trong số họ đã ký một Thỏa thuận Giấy phép của Người đóng góp Cá nhân - ICLA (Individual Contributor License Agreement) và đã tìm được các CLA và từ một ít những người đóng góp bên ngoài mà đã đóng góp mã cho kho mã nguồn. Một nhân viên ở Bolton từng làm việc trong dự án đã không muốn ký một CLA; mã nguồn của họ vì thế đã được loại bỏ khỏi kho mà không mất quá nhiều nỗ lực.

Việc chuyển dự án sang Vườn ươm Apache cũng có nghĩa là việc chuyển quả các danh sách thư và kho tài nguyên sang hạ tầng của Apache. Nhưng nó từng rõ ràng đáng lo lắng, vì khi là một phần của ASF thì đã giúp dự án lôi cuốn được nhiều sự chú ý hơn so với nếu khác đi chúng có lẽ có thể làm. Kết quả là, những người đóng góp mới bên ngoài đã tới cùng, đã có thêm 2 người đề xuất trở nên có liên quan trong dự án. Ví dụ, một lập trình viên từ Estonia đã bổ sung các kết nối trong vài ngôn ngữ lập trình, làm cho có khả năng tích hợp các widget của Wookie trong các ứng dụng được viết trong các ngôn ngữ khác như C#, Ruby hoặc Python. Một đóng góp rất quan trọng khác do Randy Watler thực hiện. Lập trình viên này đã từng không tích cực trogn danh sách thư các lập trình viên của Wookie trước đó. Nhưng anh ta đã tiến lên khi vấn đề đã được nêu ra rằng Hibernate, một trong những thành phần nằm bên dưới mà Wookie bị phụ thuộc vào, đã có một giấy phép từng không tương thích với Giấy phép Apache. Sự phụ thuộc này phải được loại bỏ, nó từng là một nhiệm vụ chính và đã có một bài học khó cho đội đang tồn tại. Randy đã có khả năng giải quyết nó nhanh hơn nhiều so với độ có thể có khả năng làm và đã thay thế sự phụ thuộc vào Hibernate bằng mã khác tương thích với Giấy phép Apache. Điều này từng là một bước quan trọng cho Wookie, vì nó từng là cần thiết để đảm bảo rằng tất cả mã là tương thích với Giấy phép Apache trước khi một phát hành có thể được thực hiện.

Cấu trúc dự án: tính bền vững

Sự chấp nhận dự án Wookie trong Vườn ươm Apache từn là một bước quan trọng về tính bền vững của dự án. Dự án lớn TENCompetence đã nhận được tổng cộng €8,796,000 trong việc cấp vốn công cộng. Vì sự phát triển phần mềm đã hình thành ra một phần đáng kể ngân sách đó, và tất cả mã đã được phát hành như nguồn mở, người ta có thể kỳ vọng rằng tính bền vững của phần mềm đó và sự phát triển liên tục các công cụ sau khi kết thúc việc cấp vốn ban đầu có thể đã được giải quyết. Tuy nhiên, những đòi hỏi khi đó về việc viết lách đã phát hiện ra rằng phần mềm đang không được phát triển tiếp. Thay vào đó, tất cả các thành phần phần mềm từng đã được phát triển như một phần của dự án này, đã được làm cho sẵn sàng trên SourceForge chỉ để tải về. Không có các hoạt động phát triển nào được diễn ra ở đó kể từ tháng 09/2010 và số lượng bản tải về đã và đang giảm nhanh chóng. Liệu Wookie có còn là một phần của kho phần mềm đó hay không, các cơ hội của đội Bolton lôi cuốn sự chú ý cho công việc của họ có thể từng rất mong manh.

Thay vào đó, bằng việc nhận thức được ích lợi của phần mềm và việc chọn các tiêu chuẩn đúng để triển khai, đội dự án đã tạo ra một cơ hội tuyệt vời để giữ lại phần mềm đó. Họ cũng đảm bảo rằng đầu tư tiền của công chúng là không bị phí phạm, mà thay vào đó sẽ giúp phát triển tiếp phần mềm và duy trì bền vững cộng đồng xung quanh nó.

Xây dựng cộng đồng

Scott Wilson từ Đại học Bolton và JISC CETIS đã từng là một nhân vật chủ chốt qua dự án. Ông liên hệ với nhóm làm việc của W3C về các tiêu chuẩn Widget, ông là một trong những lập trình viên tích cực nhất trong dự án Wookie và ông cũng làm việc sâu sát với quỹ OpenSocial, cố gắng làm hài hòa các tiêu chuẩn Widget của W3C với các tiêu chuẩn của OpenSocial.

CETIS cũng đã tổ chức một số hội thảo về widgets cho cộng đồng hàn lâm Anh, như WidgetBash 2011. Bản thân ASF cũng đã cung cấp sự hỗ trợ xây dựng cộng đồng chính, ví dụ, đã có các cuộc gặp gỡ có liên quan tới Wookie ở cả các Hội nghị ApacheCon năm 2009 và 2010 tại Mỹ. Điều này chính xác đã dẫn tới một dự án có liên quan trong Vườn ươm Apache, Apache Rave (Vườn ươm), mà sẽ đưa ra một máy của một cổng có sử dụng các widget và gadget.

Ross Gardler, trong vai trò của ông như là người quản lý dịch vụ của OSS Watch, cũng đã đóng một vai trò chủ chốt trong tính bền vững của Wookie. Ông đã lãnh đạo dự án và đã đưa ra sự cố vấn và chỉ dẫn trong quá trình chuyển dự án sang Quỹ Phần mềm Apache. Nhưng ông cũng đã giúp nhiều về phần kỹ thuật của dự án và đã cung cấp những đóng góp mã hữu dụng. Kết quả là, ông cugnx từng được bầu như một người đề xuất trong dự án. Dù Ross là một thành viên của Apache và là Phó Chủ tịch của Phát triển Cộng đồng trong Quỹ, Ross từ chối mạnh mẽ rằng là một thành viên của Apache không có gì phải làm với việc đưa một dự án vào Vườn ươm của Apache cả. Và ông đã đúng: bất kỳ ai cũng có thể mang một dự án tới ASF, miễn là phần mềm đó có giá trị đích thực. Bất kỳ ai cũng có thể tới danh sách thư Vườn ươm của Apache và làm cho mọi người nhận thức được về một dự án thú vị, miễn là sự quan tâm có thể được sinh ra giữa các thành viên đang tồn tại của Apache, thì một dự án có thể trở thành một phần của Quỹ này.

Cuối cùng, OSS Watch đã giúp tạo ra sự quan tâm trong dự án theo vài cách thức. Ví dụ, nó đã tổ chức một ngày huấn luyện nhằm vào các lập trình viên từng có quan tâm trong việc phát triển các widget. OSS Watch cũng đã giúp tạo ra sự quan tâm trong Wookie trong Dev8D 2010, một hội nghị các lập trình viên đã được dự án DevCSI của JISC tổ chức. Hai widget của Wookie từng được phát triển trong thời gian hội nghị đã giành được các phần thưởng trong cuộc thi của các lập trình viên.

Những phản ánh và tương lai

Dự án Wookie hóa ra là một thành công khổng lồ cho đội dự án tại Đại học Bolton. Như một kết quả của việc mang dự án tới ASF, mọi người ở Bolton đã trở nên được biết tới tốt hơn đối với cộng đồng rộng lớn hơn và sự tinh thông của họ trong việc xây dựng các widget và làm việc về các tiêu chuẩn đã trở thành một tài sản quý giá cho những đóng góp mới. Họ cũng đã xoay xở để đảm bảo việc cấp vốn cho các dự án mới trong Chương trình Khung số 7 của EU với tổng số tiền khoảng 700.000 euro trong giai đoạn 3 năm. Sự đầu tư dôi dư duy nhất mà phòng đó đã cần để làm là 0.2 FTE qua quá trình 10 tháng.

Về tương lai của Wookie, công việc cơ bản bây giờ đã được hoàn thành cho việc tạo ra một cộng đồng lành mạnh có thể sống được. Những đóng góp mới tiếp tục được bổ sung và tất cả những phụ thuộc vào các thư viện bên ngoài mà từng có các giấy phép không tương thích với Giấy phép Apache đã bị loại bỏ. Tại thời điểm viết bài này, dự án đang ở trong quá trình đưa ra phát hành đầu tiên của họ một cách sẵn sàng. Những người hướng dẫn dự án sẽ cần phải giải quyết điều này. Giống như là có một tương lai tươi sáng cho cả dự án Wookie và đội mà đã mang nó tới ASF.

Khi thành viên đội OSS Watch Sander van dẻ Waal đã trình bày về dự án Wookie tại hội nghị Apache năm 2010, một sự quan tâm được làm mới trong các dự án xung quanh các tiêu chuẩn web giống như những tiêu chuẩn được sử dụng trong Wookie đã trở thành rõ ràng. Phần lớn nhờ vào những nỗ lực của Ross Gardler của OpenDirective và Ate Douma của Hippo, điều này cuối cùng đã tạo ra sự khởi đầu của một dự án mới trong Vườn ươm của Apache, Rave, vào tháng 03/2011. Dự án đó đang triển khai một nền tảng cổng giàu tính năng dựa vào OpenSocial, mà cũng hỗ trợ các tiêu chuẩn widget của W3C.

Đây là một ví dụ rõ ràng về cách mà một dự án hàn lâm có thể trở thành một câu chuyện thành công về tính bền vững vượt ra khỏi việc cấp vốn ban đầu của nó, mà không có những đầu tư thương mại hoặc của viện trường một cách lớn đáng kể.

Apache Wookie (Incubating) is a Java web application that allows you to upload and deploy widgets for your applications, based on several W3C widget specifications. Several other APIs are also supported by Wookie, such as OpenSocial. The project started off as an EU-funded project run at the University of Bolton, but was proposed and accepted as an incubator project by the Apache Software Foundation (ASF) in July 2009.

Project history

The University of Bolton started the Wookie project as part of the TENCompetence project, funded by the European Uni-on via its Framework 6 programme. The TENCompetence project ran f-rom 2005 until 2009, and focussed on the support of life-long development of abilities of individuals, groups and organisations. This was to be achieved by developing and promoting the most suitable technical and organisational infrastructure. A central element of the project was the Personal Competence Manager, a portal web application that allowed people to discover competencies they would like to develop, and subsequently register for the courses that are required in order to develop this competency. Wookie formed an element of that portal. It allowed the deployment of widgets, providing functionality within the portal and making it possible to integrate this functionality into other applications, such as Moodle or Wordpress.

The project team realised that the use of an upcoming, open standard could encourage uptake of the software and could make it easier to integrate with external systems. Also, some members of the project team at the University of Bolton were already engaged with the W3C through their involvement with JISC CETIS (Centre for Educational Technology and Interoperability Standards). So they decided to implement the W3C Widgets standard for Configuration and Packaging and the W3C Widgets standard on The Widget Interface. W3C defines widgets as: Small client-side Web applications for displaying and updating remote data, that are packaged in a way to allow a single download and installation on a client machine, mobile phone, or mobile Internet device. The project team collaborated early on with other projects that implemented the standard, such as the IST PALETTE project1. The Wookie project operated as one of the candidate reference implementations of the W3C widget standards. Over time, it achieved one of the highest success rates among the implementations in passing the conformance test suite of the specification2.

Growth and development

The Wookie project team recognised at an early stage that the potential applicability of the widget server was much wider than just the web portal for which they were developing the application. As a result, they managed to keep the widget server a discrete, generic application that could easily be re-used outside of the TENCompetence context. They considered the sustainability and continuing development of the project and contacted OSS Watch for advice on this. Ross Gardler f-rom OSS Watch acknowledged that the project would be a good fit for the Apache Software Foundation, who have a strong history of hosting projects that act as reference implementations for open standards. At this stage, there was already some interest in the project f-rom outside the core team, which made it even more important to move the project to a sustainable home.

In collaboration with OSS Watch, the project team made a plan for continuing the project after the EU funding ran out at the end of 2009. They sought a core budget in order to ensure that some of the time of the initial team of committers, consisting of three people, would be guaranteed. They estimated that about 0.2 FTE over the period December 2009 to September 2010 would facilitate a smooth transition to the Apache Software Foundation.

The structure of the ASF is such that new projects cannot directly become a fully acknowledged, or ‘Top Level’ project, right f-rom the start. Instead, a project has to be proposed and accepted into the foundation’s Incubator first. Projects can only be proposed if they are championed by an existing member of the Foundation. A champion is basically the leading mentor on the project. Having an ASF member as a champion ensures that there is an interest in the project amongst the existing ASF community. In order to find a champion, one usually can simply go to the mailing list of the Incubator to informally propose your project and ask for people who are interested in the project. During its time in the incubator, the project needs to take care of its due diligence. That is, the project needs to make sure that its source code is properly relicensed (if necessary) to the Apache License V2.0 and that all included external libraries that the project depends on are compatibly licensed. Additionally, all people that have contributed code are required to sign a Contributor Licence Agreement (CLA) to grant a copyright licence to the ASF. If they do not wish to sign this document their code will have to be removed f-rom the codebase.

The Wookie project was proposed to the Apache Incubator community in July 2009, with Ross Gardler as the ASF champion. It got an overwhelmingly positive response and was accepted on 14 July 2009. The three main project team members were also the original committers of Apache Wookie (Incubating), who took care of the IP clearance. They each signed an Individual Contributor License Agreement (ICLA) and sought CLAs and f-rom a few external contributors that had contributed code to the code base. One Bolton employee who worked on the project did not want to sign a CLA; their code was therefore removed f-rom the repository, with not too much effort.

Moving the project to the Apache Incubator also meant moving over the mailing lists and source repository to Apache infrastructure. But it was definitely worth the trouble, because being a part of the ASF helped the project in attracting more attention than they otherwise would have been able to. As a result, new external contributors came along, which has resulted in two new committers becoming involved in the project. For example, a developer f-rom Estonia added connectors in several programming languages, making it possible to integrate Wookie widgets in applications written in other languages like C-sharp, Ruby or Python. Another very important contribution was made by Randy Watler. This developer had not been active on the Wookie developer mailing list before. But he stepped up when the issue was raised that Hibernate, one of the underlying components Wookie depended upon, had a licence that was incompatible with the Apache License. This dependency had to be removed, which was a major task that had a steep learning curve for the existing team. Randy was able to do it much faster than the team would have been able to and replaced the dependency on Hibernate with other code that was compatible with the Apache License. This was an important step for Wookie, because it was necessary to ensure that all the code is compatible with the Apache License before a release could be made.

Project structure: sustainability

The Wookie project’s acceptance into the Apache Incubator has been a significant step in the sustainability of the project. The large TENCompetence project received a total of €8,796,000 in public funding. Because software development formed a significant part of that budget, and all the code was to be released as open source, one would expect that the sustainability of that software and the continuing development of the tools after the end of the initial funding would have been addressed. However, enquiries at the time of writing has revealed that the software is not being developed further. Instead, all the software components, that have been developed as part of this project, have been made available on SourceForge for download only. No development activities have taken place there since September 2010 and the number of downloads has been decreasing steadily. Had Wookie remained part of that software stack, the chances of the Bolton team attracting attention to their work would have been very slim.

Instead, by recognising the usefulness of the software and choosing the right standards to implement, the project team cre-ated an excellent opportunity to preserve the software. They also made sure that the investment of public money is not wasted, but will instead help to further develop the software and sustain the community around it.

Community building

Scott Wilson f-rom Bolton University and JISC CETIS has been a key figure throughout the project. He liaises with the W3C working group for the Widget standards, he is one of the most active developers on the Wookie project and he also works closely with the OpenSocial foundation, trying to harmonise the W3C widget standards with the OpenSocial standards.

CETIS have also organised a number of workshops on widgets for the UK academic community, such as the 2011 WidgetBash. The ASF itself has also provided key community building support, for example, there have been Wookie related meetups at the both the 2009 and 2010 ApacheCon Conferences in the US. This has led directly to a related project in the Apache Incubator, Apache Rave (Incubating) which will provide a portal engine using widgets and gadgets.

Ross Gardler, in his role as service manager of OSS Watch, has also played a key role in the sustainability of Wookie. He championed the project and provided advice and guidance during the process of moving the project to the Apache Software Foundation. But he also helped out with the more technical side of the project and provided useful code contributions. As a result, he was also voted in as a committer on the project. Although Ross is an Apache member and Vice President of Community Development in the Foundation, Ross strongly denies that being an Apache member has anything to do with the getting a project into the Apache Incubator. And he is right: anyone can bring a project to the ASF, as long as the software is of genuine value. Anyone can go to the Apache Incubator mailing list and make people aware of an interesting project, and as long as interest can be generated among existing Apache members, a project can become part of the Foundation.

Finally, OSS Watch has helped to generate interest in the project in several ways. For example, it organised a training day aimed at developers who were interested in developing widgets. OSS Watch also helped generate interest in Wookie during the Dev8D 2010, a developers’ conference organised by JISC’s DevCSI project. Two Wookie widgets were developed during the conference that won prizes in developers’ challenges

Reflections and future

The Wookie project turned out to be a huge success for the project team at Bolton University. As a result of taking the project to the ASF, the people at Bolton became much better known to the wider community and their expertise in building widgets and working on standards became a valuable asset for new collaborations. They also managed to secure funding for new projects in the Framework 7 Programme of the EU for a total amount of about £700k over a period of three years. The only extra investment the department needed to make was the 0.2 FTE over the course of 10 months.

In terms of the future of Wookie, the groundwork has now been done for creating a viable community. New contributions are continually added and all dependencies to external libraries that had licences incompatible with the Apache License have been removed. At the time of writing, the project was in the process of making their first release available. Furthermore, the user base is growing but not all users are part of the project community. The mentors of the project will need to address this. It looks like there is a bright future for both the Wookie project and the team that brought it to the ASF.

When OSS Watch team member Sander van der Waal presented about the Wookie project at the Apache conference in 2010, a renewed interest in projects around web standards like the one used in Wookie was becoming apparent. Thanks largely to the efforts of Ross Gardler of OpenDirective and Ate Douma of Hippo, this eventually resulted in the start of a new Apache Incubator project, Rave, in March 2011. That project is implementing a rich portal platform based on OpenSocial, but also supports the W3C widget standards.

This is clearly an example of how an academic project can become a success story in terms of sustainability beyond its initial funding, without large institutional or commercial investments.

Dịch: Lê Trung Nghĩa

letrungnghia.foss@gmail.com