<!-- id is the same as the file name without the extension
     type is one of "committer" or "add-in-provider" -->
<boardmember id="wagenknecht" type="add-in-provider">

	<name>Gunnar Wagenknecht</name>
	<title>PMTS, Salesforce</title>
	<image>wagenknecht.jpg</image>
	<email>gunnar@wagenknecht.org</email>

	<eclipse_affiliation><![CDATA[
		<a href="http://www.eclipse.org/technology/">Technology</a> PMC Lead<br/>
		<a href="http://www.eclipse.org/rt/">RT</a> PMC member<br/>
		Chair of the Architecture Council<br/>
		<a href="http://planeteclipse.org/planet/">Planet Eclipse</a> Creator<br/>
		Committer, contributor and mentor to many projects<br/>
		Program Committee of numerous Eclipse conferences
		]]>
	</eclipse_affiliation>

	<vision><![CDATA[
<p>
What is Eclipse? While the Eclipse brand is still very attached to the well known and very successful Eclipse IDE, Eclipse is also a community of many, many individual open source projects. What does it take to bring such a tremendous amount of diverse projects together being part of a fantastic open source community? The Eclipse Foundation!
</p><p>
As a sustaining member representative, I'd like to see the Eclipse Foundation continuing on its success story, building communities around open source projects, helping companies understand and execute in an open source context, providing solutions to any concern around open source software development. One critical building block for these activities is solid funding. Therefore I'd like to see the Eclipse Foundation continuing its effort of exploring new topic areas, attracting projects and growing the list of sustaining members.
</p><p>
One possible improvement that I'd like to push for is improving the flexibility of project infrastructure options. Today there is GitHub (code and issues) and Git and Bugzilla (both hosted at eclipse.org). Ideally, projects should be able to use any available service that makes them feel comfortable. The Eclipse Foundation tools around IP compliance, project management and business continuity should continue to evolve and enhance providing integration options for the top popular platforms.
</p><p>
I had the pleasure of serving on the board before, engage with board members in discussions and work on priorities. As your representative, I will listen and represent your needs on the board. Please allow me doing that!
</p><p>
Thank you!
</p>
		]]>
	</vision>

	<bio> <![CDATA[
Technology enthusiast, traveler, open source believer and dad. Addicted 2 DIY. More at <a href="http://guw.io/">guw.io</a>.
	]]> </bio>

	<affiliation> <![CDATA[
	Salesforce
	]]>
	</affiliation>

</boardmember>
