Skip navigation.
Arch2Arch Tab BEA.com

CodeShare and the New BEA Code Community

by Andreas Angelides
12/06/2004

Abstract

BEA is proud to announce CodeShare, a collaborative project workspace for developers that will replace our current Code Library. CodeShare is the first of many new features that are being introduced on dev2dev over the next few months. This document explains the philosophy behind the new CodeShare, what you can expect from the system, a listing of projects that are currently available in the CodeShare system, and how to use it to create and host your own projects.

Introduction

Over the next few months you will notice many changes to the dev2dev site as a result of BEA's partnership with O'Reilly Media and CollabNet. O'Reilly will help manage the content for the site. Initially, this will consist of soliciting and editing articles. CollabNet is providing a hosted set of tools and leadership in hosting both projects and code on the site. Over the next few months you will see the following:

  • A revamped CodeShare environment that integrates tools for knowledge management, communication, and project administration to create a bidirectional collaborative workspace so that participants can share source code and best practices.

  • The ability for dev2dev members to create or contribute to open source projects hosted in CodeShare that focus on using and extending BEA technologies.

  • A more functional environment to contribute, enhance, and share code samples related to BEA technologies, therefore increasing their overall value to their organizations.

  • Enhanced technical content and communication tools to embrace Java technology and streamline the use of BEA technology.

  • Interactive communication tools like blogs, wikis, forums, and other tools to create opportunities for developers to connect with each other and locate like-minded dev2dev members for participating in development projects.

CodeShare will be the central resource for developer community interaction and a central repository for keeping up to date on BEA's open source activities.

What You Can Do with CodeShare

Whether you are interested in leading a project, joining a project, or just lurking, you will find a wide range of tools that support development and communication. CodeShare divides the workspace into a number of projects and surrounds these projects with facilities that will help you expand and maintain each project. The following items illustrate the modules that CodeShare provides each of its projects:

  • Web project workspace and membership: Every project contains a set of customizable Web pages that project owners use to communicate with their members. Project owners also have at their disposal a very granular permission mechanism to ensure that they have a well functioning community. All projects are public by default and project home pages can be seen by anonymous users, but in order to access all project resources, you need to request membership from the project owner.

  • Project announcements: Project owners use this module to announce milestones, articles, press releases, and other announcements that relate to the specific information about a project. Announcements are arranged by date, are archived, and can be viewed in RSS format.

  • Mailing lists: To join a mailing list, go to the community or project and click "subscribe to."

  • Threaded discussion forums: To participate in a forum, go to the community or project you are interested in and select the forum you want by clicking the "Discussion Forums" link in the left navigation menu.

  • Issue tracking system: This is an integrated issue tracking system, which is a generalized tool for tracking many different kinds of activities in collaborative development projects. You can use this module to have project members report bugs and suggest enhancements or tasks within your project. If you would like to report any CodeShare bugs or enhancements, follow these simple guidelines to log your issue in the CodeShare Issue Tracker module.

  • Source control system (Subversion): Any projects in CodeShare can use the Software Configuration Management (SCM) tool for storing source code. SCM relies on Subversion, an open source version control tool designed to be an enhanced successor to CVS, for source code management. Most CVS users can start using Subversion without difficulty. If you are new to Subversion, it is easy to learn through hands-on experience. Use our online help guide to get started.

  • A document and file sharing repository: This module will be used to store smaller code samples that are not likely to be modified and allows project members to share their code, documentation, and other files with others. These can be binary or other file format uploads, URLs, and HTML pages. Files included in this area are not part of the project's version control repository.

More information on how to use these modules is available in CodeShare's context sensitive online help.

Connecting with the CodeShare community

CodeShare's home page contains a plethora of information that can get you started. Your dev2dev login gives you access to CodeShare. Although you can access all public project information within CodeShare without logging in to dev2dev, active participation (checking code in, creating issue tickets, adding files, posting into a discussion forum) requires a login.

The CodeShare community category is the virtual home of CodeShare community-wide discussions, debates, and other member interaction. Discussion forums are places where you can talk to other CodeShare community members, community leaders, and your community manager. A number of different forums are currently available for you to join:

  • Community Discussion--Have a general thought about this site, the community, or BEA products and technology? Post your comments here.
  • Wish List--Are there any features you would like to see added to CodeShare? Share them with the community and its manager.
  • Governance--Give us your suggestions about how you want this community to work. What processes would you like to see and how do you want to be represented in the management, administration, and decision making of this community?
  • How Do I?--Trying to figure something out? This is a great place to ask. Look here first and ask questions so we can capture frequently asked questions and answers.
  • New Projects--Post in this forum to announce your project, request help for your project, and find out about new projects added to CodeShare.
  • New CodeShare User--Tell us about yourself in this forum and subscribe to the forum to meet and interact with new community members.

If you would like to report a problem or issue on CodeShare's infrastructure software and you have verified through the discussion forums that the problem you are experiencing has not been reported (by querying the Issue Tracker and forums), log your issue or enhancement in the community's Issue Tracker. Send me an e-mail if you are unsure of who to contact or if you want to give me general feedback.

All BEA and community-contributed code samples are represented as public projects, which means you can see all content in their project workspace, but if you want to actively participate in a project, you need to join the project by requesting membership from its project owner. If you just want to monitor the activity in a project, you can watch it. Follow these links to get a list of projects and categories (project groups).

Types of Projects within CodeShare

CodeShare is a place where developers interested in BEA products and technologies come to discuss issues and share code, techniques, and best practices. We welcome projects that are useful to other BEA dev2dev members including:

  • Open source projects for extending the capabilities of BEA products and technologies
  • Tools and utilities that can help developers and implementation consultants install, deploy, monitor, and administer BEA products and technologies
  • Projects that illustrate how BEA technologies are used to achieve system integration
  • Projects that showcase the use of J2EE components and illustrate best-practice design patterns and client development

Projects with a loose association to BEA products and technologies may be approved but will receive lower priority. Unrelated projects are not well suited for CodeShare.

If you have a great idea about a control, tool, utility, or other project that will benefit other BEA developers and you want to collaborate with other dev2dev members to build it, we have the infrastructure you need to accomplish your goal. CodeShare's Starting a New CodeShare Project page will guide you through this process and will help you get started quickly. Approval of all new projects is conditional to meeting CodeShare's Project Approval Minimum Requirements. You can then review our project request form guidelines to familiarize yourself with the questions you will be asked and proceed by filling out the project request form. I will review your request and contact you (so remember to give me your preferred contact information).

How to Start a New Project

Starting a new project is easy. Here is a summary of the steps you need to follow:

  1. Register to become a dev2dev member.
  2. Review the Project Approval Requirements and project request form guidelines.
  3. Log in to dev2dev and complete the Project Request form.

Soon after you complete those steps the Community Manager will review your request and contact you.

Projects Being Launched and How to Get Involved

The following list of projects have already been migrated from the old Code Library to CodeShare. Within the next few months we will move all code samples to CodeShare and at the same time host all relevant open source projects you will be suggesting. If you are an existing Code Library user, you can still access the old Code Library to find code samples that have not been migrated.

A number of community-contributed projects have also been migrated to CodeShare:

Console Marker

Reading the console log can sometimes be difficult since you don't know whether an exception thrown is yours or not. This sample jsp file takes away some of the guesswork and helps you identify log files as your own.

Eclipse Plugin

This plug-in extends Eclipse SDK (2.x and higher, including 3.x and final release) to manage a WebLogic 6.1/7.0/8.1 instance. It includes the following features:

  • Starting and stopping WebLogic Server 6.1, 7.0, or 8.1
  • Debugging a J2EE application with JDT
  • Selecting a WebLogic domain
  • Configuring startup arguments for WebLogic Server

JMS Destination

The sample code illustrates how to use JMX to create and delete JMS topics.

JMX Monitor

This example was created to show how to create a custom MBean to monitor a custom J2EE component. In the example, a class called LegacyPool is created, which simulates connectivity to a fictitious back-end system. Users can request and return connections.

MBean Instrumentation

This utility provides an easy way to instrument MBeans in WebLogic Server 8.1. This tool might be useful for engineers involved in performance tuning, where simple stat tools are continuously used.

Web Benchmark

This code can be used to do HTTP stress testing. It provides a resource for stress testing a Web site, Web page, or other Internet facility hit by multiple clients.

WL Stat

This tool produces "vmstat-like" output of the same information that appears in the Performance/Monitoring tab of the WebLogic Server console (heap usage, execute queue length, execute request rate). It can also collect other data useful for tuning EJB cache sizes and can be configured to work either with or without MBeans.

Conclusion

CodeShare is the first of many changes we have planned for dev2dev. The richness of the offerings will grow as more projects are added. Take advantage of this new facility to build and manage your own community projects, and feel free to contact us if you have any questions.

Andreas Angelides is responsible for planning, managing and developing the CodeShare community. Andreas is employed by CollabNet, which hosts CodeShare.


Return to the dev2dev.

Article Tools

Email E-mail
Print Print
Blog Blog

Related Technologies

Bookmark Article

del.icio.us del.icio.us
Digg Digg
DZone DZone
Furl Furl
Reddit Reddit