<!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="https://asterixdb.incubator.apache.org/favicon.ico">

    <title>Community</title>

    <!-- Bootstrap core CSS -->
    <link href="https://asterixdb.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
    <!-- Bootstrap theme -->

    <!-- Custom styles for this template -->
    <link href="https://asterixdb.incubator.apache.org/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="https://asterixdb.incubator.apache.org/index.html"><img src="https://asterixdb.incubator.apache.org/img/asterixdb.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="https://asterixdb.incubator.apache.org/index.html">Overview</a>
          </div>
          <div class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
              <li><a href="https://asterixdb.incubator.apache.org/download.html">Download</a></li>
              <li><a href="http://asterixdb.ics.uci.edu/documentation/index.html">Documentation  <i class="fa fa-external-link fa-sm"></i></a></li>
              <li><a href="https://asterixdb.incubator.apache.org/about.html">About</a></li>
              <li><a href="https://asterixdb.incubator.apache.org/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="https://asterixdb.incubator.apache.org/dev-setup.html">Development Setup</a></li>
                  <li class="divider"></li>
                  <li class="dropdown-header">For Committers</li>
                  <li><a href="https://asterixdb.incubator.apache.org/pushing.html">Pushing changes</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 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>
  </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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//img/team/till_westmann.jpg" width="100" height="100" /></td>
      <td>Till Westmann</td>
      <td>Oracle Labs</td>
      <td>tillw</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//img/team/yingyi_bu.jpg" width="100" height="100" /></td>
      <td>Yingyi Bu</td>
      <td>UC Irvine</td>
      <td>yingyib</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//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="https://asterixdb.incubator.apache.org//img/team/anonymous.jpg" width="100" height="100" /></td>
      <td>Preson Carman</td>
      <td>UC Riverside</td>
      <td>prestonc</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//img/team/abdullah_alamoudi.jpg" width="100" height="100" /></td>
      <td>Abdullah Alamoudi</td>
      <td>Saudi Aramco</td>
      <td>amoudi</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//img/team/zachary_heilbron.jpg" width="100" height="100" /></td>
      <td>Zach Heilbron</td>
      <td>X15 Software</td>
      <td>zheilbron</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//img/team/anonymous.jpg" width="100" height="100" /></td>
      <td>Markus Dreseler</td>
      <td>HPI</td>
      <td>mrks</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//img/team/keren_ouaknine.jpg" width="100" height="100" /></td>
      <td>Keren Ouaknine</td>
      <td>Hebrew University</td>
      <td>kereno</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="https://asterixdb.incubator.apache.org//img/team/chris_hillery.jpg" width="100" height="100" /></td>
      <td>Chris Hillery</td>
      <td>Couchbase</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//img/team/eugenia_gabrielova.jpg" width="100" height="100" /></td>
      <td>Eugenia Gabrielova</td>
      <td>UC Irvine</td>
    </tr>
    <tr>
      <td><img src="https://asterixdb.incubator.apache.org//img/team/heri_ramampiaro.jpg" width="100" height="100" /></td>
      <td>Heri Ramampiaro</td>
      <td>NTNU Trondheim</td>
    </tr>
  </tbody>
</table>

</div>
</div>


   <hr />

   <footer>
        <div class="row">
        <div class="col-md-6 col-md-offset-3  text-center">
        <p>&copy; Copyright 2015 The Apache Software foundation. All Rights Reserved. </p>
        <p>Apache AsterixDB, Apache, and the Apache feather logo are trademarks of the Apache Software Foundation</p>
        </div>
        <div class="col-md-1 text-right">
        <img src="https://asterixdb.incubator.apache.org/img/egg-logo.png" style="height:auto; width:200px; vertical-align:bottom;"/>
        </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="https://asterixdb.incubator.apache.org/js/bootstrap.min.js"></script>
  </body>
</html>
