<html>
<head>
	<title>NetBeans at JavaONE 2003</title>
	<link rel="stylesheet" type="text/css" href="https://netbeans.org/netbeans.css">
</head>

<body>
<h1>NetBeans at JavaONE 2003</h1>
This year's JavaONE will take place at the
Moscone Convention Center in San Francisco, California between June 10 and 13, 2003.  Come and join us there!

<p>Related links and events:</p>
<ul><li><a href="http://java.sun.com/javaone/">JavaOne 2003 home page</a> - Complete information</li>
<li><a href="http://servlet.java.sun.com/javaone/sf2003/techshow/codingchallenges/index.en.jsp">JavaOne Coding Challenge</a> - Code-Compete-Win!</li></ul></p>

<p>
Below you will find only BOFs and Sessions that have been confirmed with time and location.  Please watch here for updates as more information becomes available.
</p>
<hr>

<p><b>Building Performance Swing Applications BOF-1826</b></p>
<p>Date & Time:  Wednesday June 11, 9:30 PM - 10:20 PM
<br>Location:  Track Room 120 - Moscone Center
<br>Speaker:  Petr Nejedly and Trung Duc Tran of Sun Microsystems
<br>Description:  
<p>The JavaTM 2 Swing technology for building GUI applications has been criticized at times for poor performance. Often, performance issues in Swing applications pertain more to how the technology is being used, but these are entirely avoidable.</p>

<p>Join members of the NetBeans/SunTM Open Net Environment (Sun ONE) Studio performance team to discuss tips and tricks to building responsive, performant GUI applications in Java technology, and learn techniques used by that team over the last six months to improve the performance of the NetBeans IDE. </p>

<p><b>Grid Computing using Java Technology, Jini Network Technology, and Web Services TS-1759</b></p>
<p>Date & Time:  Wednesday June 11, 5:15 PM - 6:15 PM
<br>Location:  Moscone Center - Esplanade 306
<br>Speaker:  Steven Newhouse, Technical Director of London e-Science Centre
<br>Description:  
<p>Grid computing represents a new model of federating distributing computing, storage, networking, and data resources to meet the needs of an applied computing community. The early developers and adopters of this new paradigm were the high-performance scientific technical computing community that linked resources at remote supercomputing centers. The last year has seen the adoption of grid computing by a wider audience and its adoption into a commercial environment.</p>

<p>This session describes the work of the London e-Science Centre, based at Imperial College London (which is a Sun Centre of Excellence in e-Science and a regional e-Science centre within the United Kingdom's core research program), in developing Grid Middleware to support applied e-Scientists. The resulting middleware ICENI (Imperial College e-Science Networked Infrastructure) uses JavaTM technology and JiniTM network technology to represent the underlying Grid resources. These resources are exposed using Web services protocols that are compliant with the Open Grid Services Architecture to other users.</p>

<p></p>In this session, we discuss the implementation and deployment of this infrastructure into a mixed Solaris/Linux environment and its integration with Sun-related products (SunTM Open Net Environment (Sun ONE), Sun ONE Grid Engine software, and the NetBeansTM software application framework) to build a Computational Grid within Imperial College.</p>

<p><b>Writing Extensions for the NetBeans Software IDE BOF-2724</b></p>
<p>Date & Time:  Thursday June 12, 7:30 PM - 8:20 PM
<br>Location:  City - Argent Hotel
<br>Speaker:  Jesse of Sun Microsystems
<br>Description:  
<p>The extensibility of the NetBeans TM and Java technology software IDE makes it a popular choice for people wishing to integrate development tools into a complete GUI environment. It is open-source and has a rich set of extension APIs that make this possible. New tools and abilities can be added on the fly using prepackaged modules. The SunTM Open Net Environment (Sun ONE) Studio IDE, built on top of NetBeans software, uses the same APIs.</p>

<p>This session gives a technical overview of the features of NetBeans available to module developers. Topics discussed include file type recognition, structured tree views, menus and toolbars, window management, source code manipulation, and compilation and deployment of user applications. In addition, learn about the greatly improved "projects" infrastructure in NetBeans 4.0 software and other important new APIs. A brief demo shows a module being assembled and run.</p>

<p>You should be comfortable with basic JavaTM 2 Platform, Standard Edition (J2SETM) platform/Swing programming and with XML syntax. Experience using NetBeans software, SunTM Open Net Environment (Sun ONE) Studio, or another Java IDE is helpful in understanding user-interface concepts.</p> 






</body>
</html>
