<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta http-equiv="content-script-type" content="text/javascript">
<meta http-equiv="content-style-type" content="text/css">
<link rel="stylesheet" type="text/css" href="style.css">
<title>ProGuard Feedback</title>
</head>
<body>

<script type="text/javascript" language="JavaScript">
<!--
if (window.self==window.top)
  document.write('<a class="largebutton" target="_top" href="index.html#feedback.html">ProGuard index</a> <a class="largebutton" target="_top" href="http://www.saikoa.com/dexguard">DexGuard</a> <a class="largebutton" target="_top" href="http://www.saikoa.com/">Saikoa</a> <a class="largebutton" target="other" href="http://sourceforge.net/projects/proguard/">Sourceforge</a>')
//-->
</script>
<noscript>
<a class="largebutton" target="_top"  href="index.html#feedback.html">ProGuard index</a>
<a class="largebutton" target="_top"  href="http://www.saikoa.com/dexguard">DexGuard</a>
<a class="largebutton" target="_top"  href="http://www.saikoa.com/">Saikoa</a>
<a class="largebutton" target="other" href="http://sourceforge.net/projects/proguard/">Sourceforge</a>
</noscript>

<h2>Feedback</h2>

By now, I've invested an enormous amount of time in <b>ProGuard</b>. You can
help by providing feedback! If you have problems, bugs, bug fixes, ideas,
encouragements, etc., please let me know:
<p>
<ul class="spacious">
<li>Through
    <a href="http://www.saikoa.com/proguard/support" target="_top">Saikoa</a>,
    we provide professional support for ProGuard. If you find ProGuard useful
    and you would like to have some professional backing, this is the place to
    go.</li>

<li>The <a href="https://sourceforge.net/projects/proguard/forums/forum/182456"
    target="other">help forum</a> (at SourceForge)
    and <a href="http://stackoverflow.com/questions/tagged/proguard"
    target="other">Stack Overflow</a> are common places to ask questions about
    any problems you might have configuring and running ProGuard. At this
    time, I can generally only assist other open source projects though. If
    you're working on commercial software, please consider our professional
    support above.</li>

<li>The <a href="https://sourceforge.net/projects/proguard/forums/forum/182455"
    target="other">open discussion forum</a> (at SourceForge) offers a place
    to share your thoughts and discuss new ideas.</li>

<li>The <a href="http://sourceforge.net/p/proguard/bugs/" target="other">bug
    tracking page</a> (at SourceForge) allows you to submit and consult bug
    reports. Please make sure the reports are complete and concise. If I can't
    reproduce the problem, I most likely can't fix it either.</li>

<li>The <a href="http://sourceforge.net/p/proguard/feature-requests/"
    target="other">feature request page</a> (at SourceForge) allows you to
    submit and consult feature requests. I generally have my own road map in
    mind, but this is the place express your interest in new and existing
    ideas.</li>

<li>The <a href="https://sourceforge.net/projects/proguard/files/"
    target="other">download section</a> at SourceForge and the <a
    href="http://software.freecode.com/projects/proguard"
    target="other">project page</a> at Freecode (Freshmeat) offer the
    possibility to subscribe to the announcements of new releases. They are
    the most efficient way to stay abreast of the latest developments.</li>

<li>For anything that doesn't fall in the above categories, you can mail me
    directly at

<script type="text/javascript" language="JavaScript">
<!--
document.write("<a href=\"ma");
document.write("ilto:");
document.write("lafortune");
document.write("&#64;");
document.write("users.sourceforge.net\">");
document.write("lafortune");
document.write("&#64;");
document.write("users.sourceforge.net");
document.write("<\/a>");
document.write(" <em>or<\/em> at ");
document.write("<a href=\"ma");
document.write("ilto:");
document.write("eric");
document.write("&#64;");
document.write("graphics.cornell.edu\">");
document.write("eric");
document.write("&#64;");
document.write("graphics.cornell.edu");
document.write("<\/a>");
//-->
</script>
<noscript>
&lt;&nbsp;lafortune&nbsp;&#64;&nbsp;users&nbsp;.&nbsp;sourceforge&nbsp;.&nbsp;net&nbsp;&gt;
<em>or</em> at
&lt;&nbsp;eric&nbsp;&#64;&nbsp;graphics&nbsp;.&nbsp;cornell&nbsp;.&nbsp;edu&nbsp;&gt; (please remove the spaces)
</noscript>
.</li>
</ul>
<p>
I can't promise a swift answer, or any answer at all, for that matter, but it's
always great to see constructive comments.
<p>

<b>ProGuard</b> isn't a typical open source project, in the sense that I am
<em>not</em> looking for code contributions. Developing on my own allows me to
do things my way, without the overhead and compromises associated with larger
projects.

<hr />
<address>
Copyright &copy; 2002-2014
<a target="other" href="http://www.lafortune.eu/">Eric Lafortune</a> @ <a target="top" href="http://www.saikoa.com/">Saikoa</a>.
</address>

</body>
</html>
