Ideas for Intern Projects
Product Design (aka PPD)
-
- Visual design projects
- Sidebar checkbox and sharing status treatments
- Click-in-place widgets in the summary table
- Calendar palettes and Event lozenge visual treatments
- Mini-cal visual treatments
- Reply, reply-all, Forward in the Body of an email
- Icons for the entire Kind hierarchy (ie. Photos, Contacts, etc)
- Product specs
- Reorganizing the menus
- Context menus
- Basic keyboard navigation
- Unified Activity Monitor
- Sandbox in the Sidebar
- Usability
- Help develop user surveys and conduct user interviews
- Test prototypes and visual design proposals
- Prototype projects
- Calendar month view + navigation to switch between views
- Contacts palette
- Rule builder / Attribute browser
- Alternate 3-pane layouts (for small screens) - Could also be a visual design project
- Sphere trays in the sidebar - Could also be a visual design project
Chandler
Kick offs (1-2 weeks)
Small projects taken by interns to get used to Chandler code and tools
Small Projects (1-2 months)
- Improve Contact management
- Improve Printing
- Labeling and tagging
- User defined attributes
- Mailing items to collections
- X-Mail Tags interop (see this design list thread)
- Implement iMip/iTip
- Item versioning
- GUI rule builder for mail filters, creating rule-based collections
- Creating, editing and displaying threads/clusters of items
- Improve Command Line Interface for Chandler
- Improve Chandler test (record/play)
- Better scripting capabilities: define set of primitives to make scripting easier
- Parcel to archive full web pages (proposed by Forrest Aldrich on the user list).
Medium Projects (2-3 months)
- Advanced search
- Graphical views of data
- GUI Builder for forms based parcels
- Improved Instrumentation and reporting
- HTML rendering and editing for email
- Natural language understanding
- XUL prototype
- Operating System specific Locale Set lookup (use native API's wrapped in swig to retrieve the OS Locale Set and any custom date / time / currency / number formating set by the user)
Big Projects (3-4 months or more)
Cosmo
Small Projects (1-2 months)
- JMX management - statistics reporting and lifecycle control for Cosmo components
- pluggable authn/authz - an infrastructure for providing authentication and authorization functions via third party components or APIs (eg RDBMS, LDAP, Shibboleth, OpenID?)
- Alarm notification system for Chandler/Cosmo ecosystem. Development of a server side notification framework and plugins for different types of notification.
Medium Projects (2-3 months)
- Comet event notification for Cosmo UI - Create a system whereby the Cosmo UI can be notified of events via the Comet protocol
- Uses Firefox 3 offline support or Dojo offline support to implement disconnected mode usage
Big Projects (3-4 months or more)
- Accessibility - Working on the problems with screen readers and keyboard navigation that come with heavy AJAX usage in a Web application.
- Client side error handling - development of a JavaScript (JSON-RPC) framework for sending client side errors and exceptions back to the server to be emitted in our server logs.
- Usability - Overall usability (e.g., the well known 'Back button problem' with AJAX apps).
- Skinning of the Cosmo UI - pluggable skinning.
- mini-Cosmo: Cosmo UI components that live outside of scooby but could be embedded to show scooby data (i.e. list of events in my blog)
- Semantic Data API/Framework - triggering URLs for event descriptions based on patterns in text (i.e. phone numbers, addresses, etc.)
- JMX extensions for Cosmo UI
- Realtime remote access vs. periodic syncing - Once local storage for Web apps becomes easier, apps will have to decide where the data is coming from -- local vs. server, and how to manage shared data when some of it is stored locally.
Windmill
Big Projects
- Test recorder (Javascript) -- An event recorder for easier test creation
- Test editing and suite editing UI (Javascript) -- A js UI that can organize and edit windmill tests and run them in the in-browser interface
- Performance metric modeling and storage (Python) -- Storing and rich analysis of performance info from Windmill, should contain easy graphing
Smaller Projects
- Div id and DOM visual overlays -- Draw a transparent layer over the entire current page and draw colored translucent identifier blocks on top of ids, and clicks on those identifiers should add text into the current test edit window
More ideas to be filed
- OS integration for Chandler (ie. Chandler sidebar lives as a persistent "tab" you can pull open on your desktop, Chandler app areas can be plopped into the Dock, etc)