<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="favicon.ico">

    <title>Community</title>

    <!-- Bootstrap core CSS -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <!-- Bootstrap theme -->

    <!-- Custom styles for this template -->
    <link href="css/theme.css" rel="stylesheet">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
  </head>

  <div class="container theme-showcase" role="main">
          <div class="masthead">
        <p class="lead">
           <a href="index.html">
             <img src="img/asterixdb_tm.png" style="height:75px; width:auto; vertical-align:bottom; margin-top:10px;"/>
           </a>
        </p>
      </div>

      <nav class="navbar navbar-default">
        <div class="container">
          <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="index.html">Overview</a>
          </div>
          <div class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li><a href="download.html">Download</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Documentation<span class="caret"></span></a>
                <ul class="dropdown-menu" role="menu">
                  <li class="dropdown-header">Stable release</li>
                  <li><a href="docs/0.8.8-incubating/index.html">Documentation for 0.8.8-incubating<i class="fa fa-external-link fa-sm"></i></a></li>
                  <li class="divider"></li>
                  <li class="dropdown-header">Snapshot release</li>
                  <li><a href="https://ci.apache.org/projects/asterixdb/index.html">Documentation for 0.8.8-SNAPSHOT  <i class="fa fa-external-link fa-sm"></i></a></li>
                </ul>
              </li>
              <li><a href="about.html">About</a></li>
              <li><a href="community.html">Community</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Contributing <span class="caret"></span></a>
                <ul class="dropdown-menu" role="menu">
                  <li class="dropdown-header">For New Contributors</li>
                  <li><a href="dev-setup.html">Development Setup</a></li>
                  <li class="divider"></li>
                  <li class="dropdown-header">For Committers</li>
                  <li><a href="pushing.html">Pushing changes</a></li>
                  <li><a href="site.html">Editing this site</a></li>
                </ul>
              </li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"
                   style="padding-right: 30px">
                  <img src="img/feather.png" style="height:20px"/>Apache Software Foundation<span class="caret"/>
                </a>
                <ul class="dropdown-menu dropdown-menu-right" role="menu">
                  <li><a href="http://www.apache.org/"><b>ASF Homepage</b></a></li>
                  <li><a href="http://www.apache.org/licenses/">License</a></li>
                  <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
                  <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
                  <li><a href="http://www.apache.org/security/">Security</a></li>
                </ul>
              </li>
            </ul>
          </div><!--/.nav-collapse -->
        </div>
      </nav>


    <div class="row">
<div class="col-md-10 col-centered">
<h2>Community</h2>
<p>Apache AsterixDB™ (incubating) strives to support an open and transparent development process.
Here are the various places where you can find discussions relating to the day to day development of AsterixDB and related projects, as well as answers to any AsterixDB-related questions.</p>

<ul id="markdown-toc">
  <li><a href="#mailing-lists" id="markdown-toc-mailing-lists">Mailing Lists</a></li>
  <li><a href="#irc" id="markdown-toc-irc">IRC</a></li>
  <li><a href="#asterixdb-team" id="markdown-toc-asterixdb-team">AsterixDB Team</a></li>
</ul>

<h3 id="mailing-lists">Mailing Lists</h3>
<p>Most AsterixDB and Hyracks related discussion takes place on these mailing lists. To subscribe, send a blank email to the subscription address.</p>

<table class="table table-striped table-bordered">
  <thead>
    <tr>
      <th>Name</th>
      <th>Address</th>
      <th>Subscribe Address</th>
      <th>Archives</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>dev</td>
      <td>dev@asterixdb.incubator.apache.org</td>
      <td>dev-subscribe@asterixdb.incubator.apache.org</td>
      <td><a href="https://mail-archives.apache.org/mod_mbox/incubator-asterixdb-dev/">link</a></td>
    </tr>
    <tr>
      <td>users</td>
      <td>users@asterixdb.incubator.apache.org</td>
      <td>users-subscribe@asterixdb.incubator.apache.org</td>
      <td><a href="https://mail-archives.apache.org/mod_mbox/incubator-asterixdb-users/">link</a></td>
    </tr>
    <tr>
      <td>commits</td>
      <td>commits@asterixdb.incubator.apache.org</td>
      <td>commits-subscribe@asterixdb.incubator.apache.org</td>
      <td><a href="https://mail-archives.apache.org/mod_mbox/incubator-asterixdb-commits/">link</a></td>
    </tr>
    <tr>
      <td>notifications</td>
      <td>notifications@asterixdb.incubator.apache.org</td>
      <td>notifications-subscribe@asterixdb.incubator.apache.org</td>
      <td><a href="https://mail-archives.apache.org/mod_mbox/incubator-asterixdb-notifications/">link</a></td>
    </tr>
  </tbody>
</table>

<h3 id="irc">IRC</h3>

<p>Some of the developers hang out in #asterixdb on irc.freenode.net. Feel free to drop by with any questions.</p>

<h3 id="asterixdb-team">AsterixDB Team</h3>

<hr />

<h4 id="committers">Committers</h4>

<table class="table table-striped">
  <thead>
    <tr>
      <th> </th>
      <th>Name</th>
      <th>Organization</th>
      <th>Apache ID</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><img src="img/team/abdullah_alamoudi.jpg" width="100" height="100" /></td>
      <td>Abdullah Alamoudi</td>
      <td>Couchbase</td>
      <td>amoudi</td>
    </tr>
    <tr>
      <td><img src="img/team/anonymous.jpg" width="100" height="100" /></td>
      <td>Cameron Samak</td>
      <td>UC Irvine</td>
      <td>csamak</td>
    </tr>
    <tr>
      <td><img src="img/team/chen_li.jpg" width="100" height="100" /></td>
      <td>Chen Li</td>
      <td>UC Irvine</td>
      <td>chenli</td>
    </tr>
    <tr>
      <td><img src="img/team/chris_hillery.jpg" width="100" height="100" /></td>
      <td>Chris Hillery</td>
      <td>Couchbase</td>
      <td>ceej</td>
    </tr>
    <tr>
      <td><img src="img/team/heri_ramampiaro.jpg" width="100" height="100" /></td>
      <td>Heri Ramampiaro</td>
      <td>NTNU Trondheim</td>
      <td>heri</td>
    </tr>
    <tr>
      <td><img src="img/team/ian_maxon.jpg" width="100" height="100" /></td>
      <td>Ian Maxon</td>
      <td>UC Irvine</td>
      <td>imaxon</td>
    </tr>
    <tr>
      <td><img src="img/team/ildar_absalyamov.jpg" width="100" height="100" /></td>
      <td>Ildar Absalyamov</td>
      <td>UC Riverside</td>
      <td>ildar</td>
    </tr>
    <tr>
      <td><img src="img/team/inci_cetindil.jpg" width="100" height="100" /></td>
      <td>Inci Cetindil</td>
      <td>UC Irvine</td>
      <td>icetindil</td>
    </tr>
    <tr>
      <td><img src="img/team/jianfeng_jia.jpg" width="100" height="100" /></td>
      <td>Jianfeng Jia</td>
      <td>UC Irvine</td>
      <td>jianfeng</td>
    </tr>
    <tr>
      <td><img src="img/team/keren_ouaknine.jpg" width="100" height="100" /></td>
      <td>Keren Ouaknine</td>
      <td>Hebrew University</td>
      <td>kereno</td>
    </tr>
    <tr>
      <td><img src="img/team/anonymous.jpg" width="100" height="100" /></td>
      <td>Markus Dreseler</td>
      <td>HPI</td>
      <td>mrks</td>
    </tr>
    <tr>
      <td><img src="img/team/michael_carey.jpg" width="100" height="100" /></td>
      <td>Michael Carey</td>
      <td>UC Irvine</td>
      <td>dtabass</td>
    </tr>
    <tr>
      <td><img src="img/team/murtadha_hubail.jpg" width="100" height="100" /></td>
      <td>Murtadha Hubail</td>
      <td>UC Irvine</td>
      <td>mhubail</td>
    </tr>
    <tr>
      <td><img src="img/team/pouria_pirzadeh.jpg" width="100" height="100" /></td>
      <td>Pouria Pirzadeh</td>
      <td>UC Irvine</td>
      <td>pouria</td>
    </tr>
    <tr>
      <td><img src="img/team/anonymous.jpg" width="100" height="100" /></td>
      <td>Preston Carman</td>
      <td>UC Riverside</td>
      <td>prestonc</td>
    </tr>
    <tr>
      <td><img src="img/team/raman_grover.jpg" width="100" height="100" /></td>
      <td>Raman Grover</td>
      <td>Microsoft Research</td>
      <td>raman</td>
    </tr>
    <tr>
      <td><img src="img/team/sattam_alsubaiee.png" width="100" height="100" /></td>
      <td>Sattam Alsubaiee</td>
      <td>KACST Saudi Arabia</td>
      <td>salsubaiee</td>
    </tr>
    <tr>
      <td><img src="img/team/steven_jacobs.jpg" width="100" height="100" /></td>
      <td>Steven Jacobs</td>
      <td>UC Riverside</td>
      <td>sjaco002</td>
    </tr>
    <tr>
      <td><img src="img/team/taewoo_kim.jpg" width="100" height="100" /></td>
      <td>Taewoo Kim</td>
      <td>UC Irvine</td>
      <td>wangsaeu</td>
    </tr>
    <tr>
      <td><img src="img/team/till_westmann.jpg" width="100" height="100" /></td>
      <td>Till Westmann</td>
      <td>Couchbase</td>
      <td>tillw</td>
    </tr>
    <tr>
      <td><img src="img/team/vassilis_tsotras.jpg" width="100" height="100" /></td>
      <td>Vassilis Tsotras</td>
      <td>UC Riverside</td>
      <td>tsotras</td>
    </tr>
    <tr>
      <td><img src="img/team/vinayak_borkar.jpg" width="100" height="100" /></td>
      <td>Vinayak Borkar</td>
      <td>X15 Software</td>
      <td>vborkar</td>
    </tr>
    <tr>
      <td><img src="img/team/yingyi_bu.jpg" width="100" height="100" /></td>
      <td>Yingyi Bu</td>
      <td>Couchbase</td>
      <td>buyingyi</td>
    </tr>
    <tr>
      <td><img src="img/team/young_seok_kim.jpg" width="100" height="100" /></td>
      <td>Young-Seok Kim</td>
      <td>UC Irvine</td>
      <td>kisskys</td>
    </tr>
    <tr>
      <td><img src="img/team/zachary_heilbron.jpg" width="100" height="100" /></td>
      <td>Zach Heilbron</td>
      <td>X15 Software</td>
      <td>zheilbron</td>
    </tr>
  </tbody>
</table>

<hr />

<h4 id="contributors">Contributors</h4>

<table class="table table-striped">
  <thead>
    <tr>
      <th> </th>
      <th>Name</th>
      <th>Organization</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><img src="img/team/eugenia_gabrielova.jpg" width="100" height="100" /></td>
      <td>Eugenia Gabrielova</td>
      <td>UC Irvine</td>
    </tr>
    <tr>
      <td><img src="img/team/michael_blow.jpg" width="100" height="100" /></td>
      <td>Michael Blow</td>
      <td>Couchbase</td>
    </tr>
  </tbody>
</table>

</div>
</div>


    <hr/>

    <footer>
      <div class="row">
        <div class="col-md-9 col-centered">
          <div class="col-md-9 text-left">
            <p>Apache AsterixDB is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored
              by the Apache Incubator.
              Incubation is required of all newly accepted projects until a further review indicates that the
              infrastructure, communications, and decision making process have stabilized in a manner consistent with
              other successful ASF projects.
              While incubation status is not necessarily a reflection of the completeness or stability of the code, it
              does indicate that the project has yet to be fully endorsed by the ASF.</p>
          </div>
          <div class="col-md-3 text-right">
            <img src="img/egg-logo.png" style="height:auto; width:200px; vertical-align:bottom;"/>
          </div>
      </div>
      </div>
      <div class="row">
        <div class="col-md-9 col-centered text-center">
          <p/>
          <p>&copy; Copyright 2016 The Apache Software foundation. All Rights Reserved. </p>
          <p>Apache AsterixDB, the Apache AsterixDB logo, Apache, and the Apache feather logo are trademarks of the
            Apache Software Foundation</p>
        </div>
      </div>
    </footer>
  </div> <!-- /container -->

    <!-- Bootstrap core JavaScript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
  </body>
</html>
