
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>NetBeans Weekly Newsletter, Issue # 339</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<meta name="keywords" content="NetBeans, IDE, Platform, free, open source, developer" >
</head>
<body>
<style>
body {
		margin:5px 15px 5px 15px;
		font-size: 11px;
		font-family: Verdana, "Verdana CE",  Arial, "Arial CE", "Lucida Grande CE", lucida, "Helvetica CE", sans-serif;
		background-color:#e3eaf1;
		text-align:center;
}
				
#letter {width:533px;margin-left:auto;margin-right:auto;}
#head {background-image:url("http://services.netbeans.org/appl2/shared_images/head.png");width:533px;height:70px;background-repeat:none;}
#issue-date {padding-top:50px;text-align:center; color:white;}
#footer {background-image:url("http://services.netbeans.org/appl2/shared_images/footer.png"); width:533px;height:28px;background-repeat:none;}
#footer-text {padding-top:5px;color:#6a6b6d;text-align:center;}
#content {border-right:3px solid #747d9e;border-left:3px solid #747d9e; background-color:white; text-align:left; color:#6a6b6d; padding:13px 20px 13px 13px; }
#letter h1 {font-size: 14px; font-weight:normal; margin:3px 0px 5px 0px; padding:0px;color: #EE6B00; border-bottom:1px solid silver;}
#letter h2 {color:#2C3C79;font-size: 13px; font-weight:normal;margin:0px 0px 2px 0px;padding:0px; border:0px;}
#letter p {padding: 0px;margin:0px; text-align:justify;}
#letter a:link, a:visited { color: #045491; font-weight : normal; text-decoration: none;}
#letter a:link:hover, a:visited:hover  { color: #045491; font-normal : bold; text-decoration : underline;}
.item {margin-left:8px; margin-bottom:9px;}
.bold {font-weight:bold;}
#letter a.orange {color: #EE6B00;}
.align-right {text-align:right;}     
.align-center {text-align:center;}  
.edited {margin:15px -20px 0px -13px;padding-top:8px;text-align:center;}
.edge-top {background-color: #f0f7ff;padding:7px 12px 7px 7px;margin-bottom:10px; border:1px solid #747d9e;}
</style>

				
<div id="letter">
	<div id="head">
		<div id="issue-date" class="bold">
				Issue # 339 - Apr 28, 2008
		</div>
	</div>
	<div id="content">
	
				<h1>Project News</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1851">NetBeans IDE 6.1 Now Available!</a></h2>
						<p style="margin-left:8px;">
						NetBeans.org is proud to announce the availability of NetBeans IDE 6.1! NetBeans 6.1 supports a wide range of open source scripting technologies and offers improved performance. This release extends language support beyond Java technology by providing a rich set of features for C/C++, JavaScript and the Ruby language, including Ruby on Rails.<br><br>
Specific release highlights include:<br>
<ul>
<li>Advance JavaScript Editing Support
<li>Improved Performance (Up to 40% faster startup)
<li>Built in Spring Framework Support
<li>Integrated Support for RESTful Web Service Support
<li>New MySQL Support in Database Explorer
<li>Significant Ruby/JRuby Support Enhancements
</ul>
Learn more about the NetBeans IDE 6.1 release:<br><br>
NetBeans IDE 6.1 <a href="https://netbeans.org/community/releases/61/index.html">Release Page</a><br>
NetBeans IDE 6.1 <a href="https://netbeans.org/kb/index.html">Tutorials and Documentation</a><br>
NetBeans IDE 6.1 <a href="https://netbeans.org/features/index.html">Features List</a>
<br><br>
As always, we welcome and encourage your feedback on our <a href="https://netbeans.org/community/lists/top.html">mailing lists</a> and on your <a href="http://planetnetbeans.org/">blogs</a>. Discover why NetBeans 6.1 is the only IDE you need: <a href="../../../downloads/index.html">Download</a> it today!</p>
					</div>
				<h1>Calendar</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1847">Register for NetBeans Day, Attend JavaOne Free!</a></h2>
						<p style="margin-left:8px;"><img src='http://services.netbeans.org/appl2/show_image.php?id=1013&column=image&table=story&type=image/jpeg&db=xnetbeans&db_type=pear&id_col=story_id' 
		height='73' width='110' alt='image' style='float:left; margin-right:5px;margin-bottom:5px;'/>
						One week left to register for NetBeans Day at Community. Still undecided? Here's an incentive: <b>Register for NetBeans Day and get free access to the JavaOne Pavilion and General Sessions on Tuesday, May 6!</b> There's only one way to take advantage of this great two-fer: reserve your spot for NetBeans Day on Monday, May 5th! And remember, registered students attend JavaOne FREE.</p><br style="clear:both;"/>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1850">Must-See JavaOne Sessions - Swing Applications & NetBeans Platform</a></h2>
						<p style="margin-left:8px;">
						Discover the power and range of the NetBeans Platform at the JavaOne Conference. Browse our list of must-see sessions and BOFs that cover Swing Desktop application and NetBeans Platform development.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1853">Get More Out of NetBeans at NetBeans Day Partner Showcases</a></h2>
						<p style="margin-left:8px;">
						Curious about what else you can do with the NetBeans IDE? At NetBeans Day meet some of the innovative companies building cool plugins to extend the IDE's functionality. Our partner companies will present exciting demos of their tools. Scheduled partners include <a href="http://www.elixirtech.com/NetBeans/">Elixir Technology</a>, <a href="http://www.softwarefx.com/sfxJavaProducts/javaDeveloper/">Software FX</a>, <a href="http://dotfx.com/">Dot FX</a>, <a href="http://www.soapui.org/netbeans/">Eviware</a> and more. Visit NetBeans.org daily for previews of what to expect from participating partners on May 5th.</p>
					</div>
				<h1>Community</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1848">Adam Bien\'s Project Greenfire Wins JAX Innovation Award</a></h2>
						<p style="margin-left:8px;">
						Java EE expert and NetBeans Dream Team member Adam Bien is a JAX award winner! Project GreenFire, his application for energy-efficient control of heating systems, won the 4th prize and the audience award. Congratulations, Adam! <br><br><i>Attending JavaOne and want to learn more about this unique project? Then check out Adam's <a href="http://www.adam-bien.com/roller/abien/entry/addtional_session_greenfire_bof_at">BOF session</a> in which he'll discuss GreenFire and JavaEE extensively.</i></p>
					</div>
				<h1>Training</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1846">NetBeans, Java, AppleScript and iTunes - Part 1</a></h2>
						<p style="margin-left:8px;"><img src='http://services.netbeans.org/appl2/show_image.php?id=1007&column=image&table=story&type=image/jpeg&db=xnetbeans&db_type=pear&id_col=story_id' 
		height='33' width='110' alt='image' style='float:left; margin-right:5px;margin-bottom:5px;'/>
						Interested in controlling iTunes using Java? In this first screencast of a two-part series, Mac Developer Tips blogger John Muchow demonstrates the basics of getting NetBeans, Java and AppleScript to talk among themselves.</p><br style="clear:both;"/>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1843">Mozilla Application Add-on Development in NetBeans</a></h2>
						<p style="margin-left:8px;">
						A nicely illustrative tutorial with steps for easily setting up the NetBeans IDE to create add-ons for Firefox and a variety of other Mozilla products.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1841">Building a Tree From Database Data</a></h2>
						<p style="margin-left:8px;">
						Using the NetBeans IDE 6.1, learn to dynamically build a tree structure from data in a database.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1844">NBTV: Getting Started with NetBeans Mobility for Nokia Devices</a></h2>
						<p style="margin-left:8px;"><img src='http://services.netbeans.org/appl2/show_image.php?id=962&column=image&table=story&type=image/jpeg&db=xnetbeans&db_type=pear&id_col=story_id' 
		height='33' width='110' alt='image' style='float:left; margin-right:5px;margin-bottom:5px;'/>
						This screencast provides developers with a guide to creating mobile Java™ applications for Nokia devices using NetBeans 6.0 Mobility. After showing how to download and install all the relevant tools, the demo illustrates how to create, edit, package, and deploy a simple Java application.</p><br style="clear:both;"/>
					</div>
				<h1>Blogs</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1845">Creating Language Tools in the NetBeans IDE</a></h2>
						<p style="margin-left:8px;">
						In this <a href="http://netbeans.dzone.com/">NetBeans Zone</a> entry, Jordi Cardona describes in detail how to create tooling support for new languages in the NetBeans IDE. 
<br><br><i>Check out NetBeans Zone for more helpful articles and tutorials from NetBeans experts and avid users like Cardona!</i></p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1842">Drag & Drop with Rails</a></h2>
						<p style="margin-left:8px;">
						The ability to drag and drop has been a staple of desktop applications for years. With the advent of Ajax, the ability to drag and drop has now found its way to web applications. In this blog entry, Brian Leonard uses the NetBeans IDE's Ruby support to spice up the blogging application he's been building with the ability to drag comments to the trash.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1852">Using NetBeans 6.1 to Build iPhone Mode Add-on & YouTube Viewer Add-on for Firefox Projects</a></h2>
						<p style="margin-left:8px;">
						Sandip Chitale hacks away at Firefox to create a simple iPhone mode add-on and a YouTube viewer add-on using a free form Web Project of the NetBeans 6.1 IDE.</p>
					</div>
	<div class="edited">
	This issue was brought to you by: Tinuola Awopetu<br/>If you do not want to receive this newsletter, you can <a href="https://netbeans.org/community/lists/top.html">unsubscribe here</a>
	</div>
	<div class="edited">
        Available languages<br>
        <a href="https://netbeans.org/community/news/newsletter/index.html">English</a> | <a href="https://netbeans.org/community/news/newsletter/index_pt_BR.html">Brazilian Portuguese</a> | <a href="https://netbeans.org/community/news/newsletter/index_zh_CN.html">Chinese - simplified</a>
        </div>
	</div>
	<div id="footer">
		<div id="footer-text">
				This newsletter is accessible also at  <a href="https://netbeans.org/community/news/newsletter/2008-04-28.html">www.netbeans.org</a>, 
				<a href="https://netbeans.org/community/news/newsletter/archive.html">newsletter archive</a>
		</div>
	</div>

</body>
</html>