
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>NetBeans Weekly Newsletter, Issue # 2</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">
				Edição # 2 - Mar 11, 2008
		</div>
	</div>
	<div id="content">
	
				<h1>Novidades do projeto</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1653">NetBeans IDE 6.1 Beta já está disponível!</a></h2>
						<p style="margin-left:8px;">
						A versão beta 6.1 do NetBeans está repleta de novas características e melhorias, como o suporte a JavaScript, Framework Spring e MySQL; até 40% mais rápido na carga, menos memória utilizada e mais. Ainda trouxemos de volta velhos atrativos – Suporte a Java Beans e gerador JSF CRUD! <a href="https://netbeans.org/community/releases/61/">Veja mais detalhes sobre estas e outras características</a>.

A versão final do NetBeans 6.1 está planejada para maio ou junho de 2008. Como sempre, nós agradecemos e encorajamos seu feedback em nossas <a href="https://netbeans.org/community/lists/top.html">listas</a> e em seus <a href="http://www.planetnetbeans.org/">blogs</a>!</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1652">NetBeans ganha o segundo Jolt!</a></h2>
						<p style="margin-left:8px;">
						Pelo segundo ano consecutivo o NetBeans levou para casa o "Best Development Environment" da Premiação Jolt 2008. O IDE também foi o vencedor do "Productivity Award" em duas categorias: desenvolvimento Web e desenvolvimento Móvel (com Sun Java Wireless Toolkit 2.5.2). O prêmio Jolt prestigia os produtos mais inovadores, criadores de tendências e vanguardistas da indústria de software. Parece uma descrição sob medida para o NetBeans!</p>
					</div>
				<h1>Treinamento</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1650">Criando seu primeiro plugin no NetBeans</a></h2>
						<p style="margin-left:8px;">
						A arquitetura modular do NetBeans o faz simples para criação de plugins. Descubra como em três passos bem fáceis disponibilizados pelo embaixador Sun Campus, Silveira Neto.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1654">Usando a IDE NetBeans com Solaris Web Stack</a></h2>
						<p style="margin-left:8px;">
						SXDE 1/08 vem acompanhado do NetBeans. Este tutorial mostra como usar o NetBeans para criar aplicações web no Solaris usando componentes Web Stack acoplados no sistema operacional.</p>
					</div>
				<h1>Artigos</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1655">NetBeans: Novo melhor amigo dos desenvolvedores Ruby</a></h2>
						<p style="margin-left:8px;">
						O último capítulo de Roman Strobl constituído por três artigos na InfoQ.com discute várias extensões que você pode instalar para tornar o desenvolvimento Ruby mais fácil e divertido.</p>
					</div>
				<h1>Comunidade</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1647">A versão em português da newsletter do NetBeans é anunciada na newsletter em inglês</a></h2>
						<p style="margin-left:8px;">
						A versão em português da newsletter do NetBeans é anunciada na newsletter em inglês. Mais um ponto para a comunidade NetBeans em português na disseminação de informação e dicas sobre o mundo NetBeans e Java.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1646">NekoBean - A comunidade japonesa de NetBeans ganha um mascote</a></h2>
						<p style="margin-left:8px;">
						Ele é azul, quadrado e fofo como um bean. Conheça "NekoBean", o novo mascote da comunidade japonesa de NetBeans. Neko significa gato em japonês. 
Seu grupo tem um logo legal para compartilhar? Deixe-nos saber mais sobre ele. 
Aliás, comunidade brasileira e portuguesa, temos algum logo? Alguma idéia?</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1651">NetBeans Podcast - Episódio nº 41</a></h2>
						<p style="margin-left:8px;">
						Roman e Gregg discutem as últimas notícias do mundo NetBeans: A melhora dramática ao suporte ao JavaScript, vários novos livros sobre NetBeans, os últimos patches, o suporte ao ClearCase, e muito mais!</p>
					</div>
				<h1>Blogs</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1649">Aquele atalho de teclado esta em uso?</a></h2>
						<p style="margin-left:8px;">
						Procurando uma forma de descobrir se um determinado atalho de teclado está atribuído a uma ação no NetBeans? Gregg Sporar tem uma dica para você no seu blog.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=1648">Uma correção - Abrindo um projeto Visual Web no NetBeans 6.1 Beta</a></h2>
						<p style="margin-left:8px;">
						Se você se deparou com um problema importando projetos NetBeans 6.0 Visual Web no 6.1 Beta então Winston Prakash tem a solução. Ele explica porque isto pode acontecer. Ou seja, mata a cobra e mostra o pau!</p>
					</div>
	<div class="edited">
	Esta edição foi enviada para você por : Jefferson Prestes<br/>Se você não deseja receber este boletim, <a href="https://netbeans.org/community/lists/top.html">remova sua inscrição aqui</a>
	</div>
	</div>
	<div id="footer">
		<div id="footer-text">
				Este boletim também é acessível em   <a href="https://netbeans.org/community/news/newsletter/2008-03-11_pt_BR.html">www.netbeans.org</a>, 
				<a href="https://netbeans.org/community/news/newsletter/archive_pt_BR.html">arquivo de boletins</a>
		</div>
	</div>

</body>
</html>