<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<META NAME="DESCRIPTION" CONTENT="How to Contribute to NetBeans Adoption">
<link rel="stylesheet" type="text/css" href="../../netbeans.css" media="screen">
<title>Contributing Articles and Demos to the NetBeans Web Site</title>
</head>

<body>
<h1>Contributing Articles and Demos to the NetBeans Web Site</h1>
<p>Here are some things you can do:</p>
<ul>
  <li><b>Write a Tutorial</b> <br>
    We have a <a href="https://netbeans.org/files/documents/4/681/tutorial-template.html">template</a>
    you can use, and a <a href="http://wiki.netbeans.org/CommunityDocs">wish list of possible topics</a>. When
    you are done, send the tutorial to <a href="http://wiki.netbeans.org/CommunityDocs">Community Docs Team</a>. 
    Don't worry, if you don't want to write a whole tutorial,
    just send us a sample project and your list of steps and best practices that you discovered,
    and our writers will turn them into a tutorial, with your name on it as contributor.
    <p>
  </li>
  <li><b>Record a Screencast</b> <br>
    We have some <a href="../../kb/articles/CreateWinkDemo.html">guidelines
    for creating video demos</a> with free tools. You can make a video demo from
    any existing tutorial, or create a new video demo. Make the ZIP of the demo
    available somewhere (they are often too big to e-mail) and send us a link to
    <a href="../../about/contact_form.html?to=1">Webmaster</a>. We'll
    post it in the <a href="../../kb/docs/screencasts.html">Screencasts page</a>.
    <p>
  </li>
  <li><b>Blog About NetBeans</b> <br>
    If you have a blog that regularly talks about NetBeans IDE either
    in English or in another language, we'd love to list it on the
    <a href="http://www.planetnetbeans.org/">Planet NetBeans site</a>.
    <a href="http://planetnetbeans.org/add.html">See the instructions</a>,
    and send us the link to your blog feed!
    <p>
  </li>
  <li><b>Translate NetBeans</b> <br>
    Are you interested in efforts to localize web site content, or the IDE itself,
    in your native language? We would love your help! See the <a href="localise.html">Localization
    Quick Start page</a> for info. </li>
</ul>

</body>
</html>
