Zenoss is applying to participate as a mentoring organization in the Google Summer of Code 2010. Community Manager Matt Ray (mray@zenoss.com) is the primary contact for students and depending on the project one or more Zenoss developers will be tasked as mentors as well.
Ideas
With a project like Zenoss, there are a wide variety of ways that a student could contribute and make a big impact. While Zenoss is written in Python, there are a number of projects that could be done with limited development experience. Below are a list of ideas contributed by Zenoss developers and users, feel free to add more of your own suggestions.
- SNMP OID Tool - some devices incorrectly map their elements to non-standard OIDs. Users usually fix this with custom modelers to map the device to the object model. This process could be done graphically to list OIDs from the device MIBs and then allow users to override and remap them, and add additional performance graphs as well. The custom modeler could then be exported as part of a new ZenPack. This makes it even easier for new devices to be supported by Zenoss and for users to share these with each other. A developer would need some Javascript and HTML understanding in addition to intermediate SNMP understanding and Python skills.
- Internationalization and Localization - With the Zenoss release right before the GSoC starts, Zenoss will have partial internationalization support, but no localizations available. The goal for this project would be to provide a localization ZenPack that provides an example of adding language support to Zenoss. The developer would also be expected to patch Zenoss where applicable and document what is not yet localizable. Since Zenoss has been deployed in over 170 countries, this would be a very high profile project. A developer would need intermediate Zope and Python experience, but not necessarily speak a second language.
- Automated ZenPack Test Suite - ZenPacks are the extension mechanism for Zenoss, delivered as Python .eggs. There are well over 150 community-contributed ZenPacks, but there is no process for testing them beyond basic installation when they are first contributed. There needs to be a framework for building, installing and testing all the ZenPacks checked into http://zenpacks.zenoss.org into a test system. This could be used to find broken ZenPacks with alpha and beta releases and give developers early warning to fix their ZenPacks before they impact users. Ideally there would be hooks for running automated UI test tools as well. A developer would need strong scripting skills.
- Zenoss Appliance - Zenoss currently provides a VMware image based on rPath Linux. Because the userspace on this Linux is different from most other Linuxes, users run into trouble when trying to extend Zenoss on this platform. Ideally a new VMware appliance could be provided based on CentOS for maximum compatibility, but it would still need to be stripped down (perhaps a tool like ThinCrust could be used). Since there is already a sizable install base of rPath-based appliances, documentation for migrating from the previous appliance to the new appliance would be required for the project.