<!DOCTYPE html>
<!--[if IEMobile 7]><html class="no-js iem7"  lang="en" dir="ltr"><![endif]-->
<!--[if lte IE 6]><html class="no-js lt-ie9 lt-ie8 lt-ie7"  lang="en" dir="ltr"><![endif]-->
<!--[if (IE 7)&(!IEMobile)]><html class="no-js lt-ie9 lt-ie8"  lang="en" dir="ltr"><![endif]-->
<!--[if IE 8]><html class="no-js lt-ie9"  lang="en" dir="ltr"><![endif]-->
<!--[if (gte IE 9)|(gt IEMobile 7)]><!--><html class="no-js"  lang="en" dir="ltr" prefix="og: http://ogp.me/ns# article: http://ogp.me/ns/article# book: http://ogp.me/ns/book# profile: http://ogp.me/ns/profile# video: http://ogp.me/ns/video# product: http://ogp.me/ns/product# content: http://purl.org/rss/1.0/modules/content/ dc: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ rdfs: http://www.w3.org/2000/01/rdf-schema# sioc: http://rdfs.org/sioc/ns# sioct: http://rdfs.org/sioc/types# skos: http://www.w3.org/2004/02/skos/core# xsd: http://www.w3.org/2001/XMLSchema# schema: http://schema.org/"><!--<![endif]-->

<head>
  <!-- Adobe Digital Data integration -->
  <script type="text/javascript">
    var digitalData = {};
  </script>
    <script id="adobe_dtm" src="https://www.redhat.com/dtm.js" type="text/javascript"></script>
  <meta charset="utf-8" />
<meta name="p:domain_verify" content="c710e7cb1605eaca49566a225083a38d"/>
<link href="https://opensource.com/rss.xml" rel="alternate" type="application/rss+xml" title="Opensource.com RSS" />
<link rel="shortcut icon" href="https://opensource.com/sites/all/themes/opensource/favicon.ico" type="image/vnd.microsoft.icon" />
<meta name="generator" content="Drupal 7 (http://drupal.org)" />
<link rel="canonical" href="https://opensource.com" />
<link rel="shortlink" href="https://opensource.com" />
<meta property="og:site_name" content="Opensource.com" />
<meta property="og:type" content="article" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:site" content="@opensourceway" />
  <title>Opensource.com | Opensource.com</title>

      <meta name="MobileOptimized" content="width">
    <meta name="HandheldFriendly" content="true">
    <meta name="viewport" content="width=device-width">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta http-equiv="cleartype" content="on">

  <link type="text/css" rel="stylesheet" href="https://opensource.com/sites/default/files/css/css_lQaZfjVpwP_oGNqdtWCSpJT1EMqXdMiU84ekLLxQnc4.css" media="all" />
<link type="text/css" rel="stylesheet" href="https://opensource.com/sites/default/files/css/css_ntCz7udh66prM85dlibL5cSl16uR5mFkmPYLsA2b56k.css" media="all" />
<link type="text/css" rel="stylesheet" href="https://opensource.com/sites/default/files/css/css_vamxBRmWk2Q7fxdiL4tDdJ_YjZN5fmFXzhYuV4x6kIk.css" media="all" />
<link type="text/css" rel="stylesheet" href="https://opensource.com/sites/default/files/css/css_YipwoV_9R3DZaMFN2kyNRHdADhKu9atYGFSMCgF9sz8.css" media="all" />
<link type="text/css" rel="stylesheet" href="https://opensource.com/sites/default/files/css/css_CaUXvNij6cZNNKQthTHfSgoHa_yrdaEXo1WaSE5InAQ.css" media="all" />
<link type="text/css" rel="stylesheet" href="https://opensource.com/sites/default/files/css/css_PxsPpITToy8ZnO0bJDA1TEC6bbFpGTfSWr2ZP8LuFYo.css" media="all" />
  <script src="/sites/all/themes/opensource/js/use-typekit.js"></script>
  <script>try{Typekit.load({ async: true });}catch(e){}</script>
  <script src="https://opensource.com/sites/default/files/js/js_0RyHJ63yYLuaWsodCPCgSD8dcTIA0dqcDf8-7c2XdBw.js"></script>
<script src="https://opensource.com/sites/default/files/js/js_0B9w3FmBC4dB46ArnNiWpuKKh9FEXbzIubufGFBBUYk.js"></script>
<script src="https://opensource.com/sites/default/files/js/js_tBWHhFjU_NjWsmd07Hrx5ScmFu-4-PJD_GwzNMH3UwA.js"></script>
<script src="https://opensource.com/sites/default/files/js/js_a8uYq-zZn_81aJBWIUMIJOu_oyNXrl5GSojXe356u4Y.js"></script>
<script>(function(i,s,o,g,r,a,m){i["GoogleAnalyticsObject"]=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,"script","https://www.google-analytics.com/analytics.js","ga");ga("create", "UA-33294138-1", {"cookieDomain":".opensource.com"});ga("send", "pageview");</script>
<script src="https://opensource.com/sites/default/files/js/js_Y5KxsM7WgrbjbeAxQDkat_bDkLZZRd6znfIcbhCE2w8.js"></script>
<script src="https://opensource.com/sites/default/files/js/js_KbByFnBctcQt9juhHXNabaQDr4mJAc1OExQYJ-HcyXk.js"></script>
<script>jQuery.extend(Drupal.settings, {"basePath":"\/","pathPrefix":"","ajaxPageState":{"theme":"opensource","theme_token":"q-UwMTKEfbIqYDTQktYeUXhk-0eba4kAAUYfAqKt-5o","jquery_version":"1.7","js":{"profiles\/panopoly\/modules\/panopoly\/panopoly_widgets\/panopoly-widgets.js":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_widgets\/panopoly-widgets-spotlight.js":1,"0":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/jquery\/1.7\/jquery.min.js":1,"misc\/jquery-extend-3.4.0.js":1,"misc\/jquery.once.js":1,"misc\/drupal.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.core.min.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.widget.min.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.tabs.min.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/ui\/ui\/minified\/jquery.ui.accordion.min.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/ui\/external\/jquery.cookie.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/replace\/misc\/jquery.form.min.js":1,"misc\/ajax.js":1,"profiles\/panopoly\/modules\/contrib\/jquery_update\/js\/jquery_update.js":1,"sites\/all\/modules\/contrib\/comment_notify\/comment_notify.js":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_images\/panopoly-images.js":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_admin\/panopoly-admin.js":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_magic\/panopoly-magic.js":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_theme\/js\/panopoly-accordion.js":1,"profiles\/panopoly\/modules\/contrib\/caption_filter\/js\/caption-filter.js":1,"sites\/all\/modules\/contrib\/loginlogout\/loginlogout.js":1,"profiles\/panopoly\/libraries\/jquery.imagesloaded\/jquery.imagesloaded.min.js":1,"sites\/all\/modules\/contrib\/views_load_more\/views_load_more.js":1,"profiles\/panopoly\/modules\/contrib\/views\/js\/base.js":1,"misc\/progress.js":1,"profiles\/panopoly\/modules\/contrib\/views\/js\/ajax_view.js":1,"sites\/all\/libraries\/waypoints\/lib\/noframework.waypoints.min.js":1,"sites\/all\/themes\/opensource\/js\/os_waypoints.js":1,"sites\/all\/modules\/contrib\/google_analytics\/googleanalytics.js":1,"1":1,"sites\/all\/libraries\/superfish\/jquery.hoverIntent.minified.js":1,"sites\/all\/libraries\/superfish\/sftouchscreen.js":1,"sites\/all\/libraries\/superfish\/supposition.js":1,"sites\/all\/libraries\/superfish\/superfish.js":1,"sites\/all\/libraries\/superfish\/supersubs.js":1,"sites\/all\/modules\/contrib\/superfish\/superfish.js":1,"sites\/all\/themes\/opensource\/js\/script.js":1,"sites\/all\/themes\/opensource\/js\/cookie-banner.js":1},"css":{"modules\/system\/system.base.css":1,"modules\/system\/system.menus.css":1,"modules\/system\/system.messages.css":1,"modules\/system\/system.theme.css":1,"misc\/ui\/jquery.ui.theme.css":1,"misc\/ui\/jquery.ui.accordion.css":1,"sites\/all\/modules\/contrib\/comment_notify\/comment_notify.css":1,"sites\/all\/modules\/contrib\/calendar\/css\/calendar_multiday.css":1,"modules\/comment\/comment.css":1,"profiles\/panopoly\/modules\/contrib\/date\/date_api\/date.css":1,"profiles\/panopoly\/modules\/contrib\/date\/date_popup\/themes\/datepicker.1.7.css":1,"modules\/field\/theme\/field.css":1,"sites\/all\/modules\/contrib\/logintoboggan\/logintoboggan.css":1,"modules\/node\/node.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_admin\/panopoly-admin.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_admin\/panopoly-admin-navbar.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_core\/css\/panopoly-dropbutton.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_magic\/css\/panopoly-magic.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_magic\/css\/panopoly-modal.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_theme\/css\/panopoly-featured.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_theme\/css\/panopoly-accordian.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_theme\/css\/panopoly-layouts.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_widgets\/panopoly-widgets.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_widgets\/panopoly-widgets-spotlight.css":1,"modules\/poll\/poll.css":1,"profiles\/panopoly\/modules\/contrib\/radix_layouts\/radix_layouts.css":1,"modules\/search\/search.css":1,"modules\/user\/user.css":1,"sites\/all\/modules\/contrib\/workflow\/workflow_admin_ui\/workflow_admin_ui.css":1,"profiles\/panopoly\/modules\/contrib\/views\/css\/views.css":1,"profiles\/panopoly\/modules\/contrib\/caption_filter\/caption-filter.css":1,"sites\/all\/modules\/contrib\/ckeditor\/css\/ckeditor.css":1,"profiles\/panopoly\/modules\/contrib\/media\/modules\/media_wysiwyg\/css\/media_wysiwyg.base.css":1,"profiles\/panopoly\/modules\/contrib\/ctools\/css\/ctools.css":1,"public:\/\/geshi\/geshifilter-languages.css":1,"sites\/all\/modules\/contrib\/geshifilter\/geshifilter.css":1,"sites\/all\/modules\/features\/os_common_components\/css\/os_common_components.css":1,"profiles\/panopoly\/modules\/contrib\/panels\/css\/panels.css":1,"sites\/all\/modules\/contrib\/rate\/rate.css":1,"sites\/all\/modules\/features\/os_common_components\/plugins\/layouts\/teaser_wide\/teaser-wide.css":1,"sites\/all\/libraries\/superfish\/css\/superfish.css":1,"sites\/all\/themes\/opensource\/system.menus.css":1,"sites\/all\/themes\/opensource\/system.messages.css":1,"sites\/all\/themes\/opensource\/system.theme.css":1,"sites\/all\/themes\/opensource\/panels.css":1,"sites\/all\/themes\/opensource\/css\/styles.css":1,"sites\/all\/themes\/opensource\/css\/geshifilter.css":1,"sites\/all\/themes\/opensource\/fonts\/css\/fontello.css":1,"sites\/all\/themes\/opensource\/css\/cookie-banner.css":1,"sites\/all\/themes\/opensource\/calendar_multiday.css":1,"sites\/all\/themes\/opensource\/date_views.css":1,"sites\/all\/themes\/opensource\/quicktabs.css":1,"profiles\/panopoly\/modules\/panopoly\/panopoly_images\/panopoly-images.css":1}},"loginlogout":{"urls":{"\/user\/login":"\/user\/login?destination=node\/31931","\/user":"\/user?destination=node\/31931"}},"CToolsModal":{"modalSize":{"type":"scale","width":".9","height":".9","addWidth":0,"addHeight":0,"contentRight":25,"contentBottom":75},"modalOptions":{"opacity":".55","background-color":"#FFF"},"animationSpeed":"fast","modalTheme":"CToolsModalDialog","throbberTheme":"CToolsModalThrobber"},"panopoly_magic":{"pane_add_preview_mode":"automatic"},"views":{"ajax_path":"\/views\/ajax","ajaxViews":{"views_dom_id:f9e104fdfe9c1c19d2b65092457d1185":{"view_name":"homepage_articles","view_display_id":"panel_pane_recent","view_args":"","view_path":"node\/31931","view_base_path":null,"view_dom_id":"f9e104fdfe9c1c19d2b65092457d1185","pager_element":0}}},"urlIsAjaxTrusted":{"\/views\/ajax":true,"\/":true},"googleanalytics":{"trackOutbound":1,"trackMailto":1,"trackDownload":1,"trackDownloadExtensions":"7z|aac|arc|arj|asf|asx|avi|bin|csv|doc(x|m)?|dot(x|m)?|exe|flv|gif|gz|gzip|hqx|jar|jpe?g|js|mp(2|3|4|e?g)|mov(ie)?|msi|msp|pdf|phps|png|ppt(x|m)?|pot(x|m)?|pps(x|m)?|ppam|sld(x|m)?|thmx|qtm?|ra(m|r)?|sea|sit|tar|tgz|torrent|txt|wav|wma|wmv|wpd|xls(x|m|b)?|xlt(x|m)|xlam|xml|z|zip","trackDomainMode":1},"superfish":{"1":{"id":"1","sf":{"delay":"0","animation":{"opacity":"show","height":"show"},"speed":"\u0027fast\u0027","autoArrows":false,"dropShadows":false,"disableHI":false},"plugins":{"touchscreen":{"mode":"window_width","breakpoint":1070},"supposition":true,"bgiframe":false,"supersubs":{"minWidth":"12","maxWidth":"27","extraWidth":1}}}}});</script>
      <!--[if lt IE 9]>
    <script src="/sites/all/themes/zen/js/html5-respond.js"></script>
    <![endif]-->
  </head>
<body class="html front not-logged-in no-sidebars page-node page-node- page-node-31931 node-type-homepage region-content page-panels" >
      <p id="skip-link">
      <a href="#main-menu" class="element-invisible element-focusable">Jump to navigation</a>
    </p>
      
<header class="header" id="header" role="banner">

    
    <div class="header-banner">
      <div class="header-banner__inner">
                  <div class="header__name-and-slogan" id="name-and-slogan">
                          <div class="header__site-name" id="site-name">
                <a href="/" title="Home" class="header__site-link" rel="home"><img alt="Opensource.com" src="/sites/all/themes/opensource/logo.svg" onerror="this.src='/sites/all/themes/opensource/logo.png';this.onerror=null;" /></a>
                <a href="https://www.redhat.com/en?intcmp=701600000011l7VAAQ" title="Home" class="header__sponsor-link" rel="home"><img alt="RedHat" src="/sites/all/themes/opensource/images/redhat-logo.svg" onerror="this.src='/sites/all/themes/opensource/images/redhat-logo.png';this.onerror=null;"/></a>
              </div>
            
                      </div>
                <nav class="desktop-user-links">
            <div class="header__region region region-header">
    <div id="block-menu-block-1" class="block block-menu-block first last odd" role="navigation">

      
  <div class="menu-block-wrapper menu-block-1 menu-name-user-menu parent-mlid-0 menu-level-1">
  <ul class="menu"><li class="menu__item is-leaf first leaf menu-mlid-195"><a href="/user/login" class="menu__link">Log in</a></li>
<li class="menu__item is-leaf last leaf menu-mlid-1179"><a href="/user/register" title="Sign Up" class="menu__link">Sign Up</a></li>
</ul></div>

</div>
  </div>
        </nav>
      </div>
    </div>

    <div class="sf-nav">
      <div class="sf-nav__inner">
          <div class="js-mobile-header-buttons region region-navigation-top">
    <div id="block-os-solr-search-form" class="block block-os-solr-search first odd">

      
  <form action="/" method="post" id="os-search-block-form" accept-charset="UTF-8"><div><div class="container-inline">
      <h2 class="element-invisible">Search form</h2>
    <div class="form-item form-type-textfield form-item-search">
  <label class="element-invisible" for="edit-search">Search </label>
 <input title="Enter the terms you wish to search for." placeholder="Search opensource.com" type="text" id="edit-search" name="search" value="" size="15" maxlength="128" class="form-text" />
</div>
<div class="form-actions form-wrapper" id="edit-actions"><input type="submit" id="edit-submit" name="op" value="GO" class="form-submit" /></div><input type="hidden" name="form_build_id" value="form-8CFNreI-1tNgV9C56mUG7-MBXVCG-fj1C5VGFsxi-r8" />
<input type="hidden" name="form_id" value="os_search_block_form" />
</div>
</div></form>
</div>
<div id="block-superfish-1" class="block block-superfish even">

        <h2 class="block__title block-title">Main menu</h2>
    
  <ul id="superfish-1" class="menu sf-menu sf-main-menu sf-horizontal sf-style-default sf-total-items-5 sf-parent-items-5 sf-single-items-0"><li id="menu-1906-1" class="active-trail first odd sf-item-1 sf-depth-1 sf-total-children-10 sf-parent-children-4 sf-single-children-6 menuparent"><a href="/" title="" class="sf-depth-1 menuparent active">Articles</a><ul><li id="menu-12341-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="/tags/containers" title="" class="sf-depth-2">Containers</a></li><li id="menu-12416-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/tags/devops" title="" class="sf-depth-2">DevOps</a></li><li id="menu-12346-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/tags/gaming" title="" class="sf-depth-2">Gaming</a></li><li id="menu-17776-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="/tags/government" title="" class="sf-depth-2">Government</a></li><li id="menu-12351-1" class="middle odd sf-item-5 sf-depth-2 sf-total-children-3 sf-parent-children-0 sf-single-children-3 menuparent"><a href="/tags/hardware" title="" class="sf-depth-2 menuparent">Hardware</a><ul><li id="menu-12376-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/tags/3d-printing" title="" class="sf-depth-3">3D printing</a></li><li id="menu-12386-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/tags/arduino" title="" class="sf-depth-3">Arduino</a></li><li id="menu-12381-1" class="last odd sf-item-3 sf-depth-3 sf-no-children"><a href="/tags/raspberry-pi" title="" class="sf-depth-3">Raspberry Pi</a></li></ul></li><li id="menu-1946-1" class="middle even sf-item-6 sf-depth-2 sf-total-children-2 sf-parent-children-0 sf-single-children-2 menuparent"><a href="/tags/law" title="" class="sf-depth-2 menuparent">Law</a><ul><li id="menu-12391-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/tags/licensing" title="" class="sf-depth-3">Licensing</a></li><li id="menu-12396-1" class="last even sf-item-2 sf-depth-3 sf-no-children"><a href="/tags/patents" title="" class="sf-depth-3">Patents</a></li></ul></li><li id="menu-12356-1" class="middle odd sf-item-7 sf-depth-2 sf-total-children-1 sf-parent-children-0 sf-single-children-1 menuparent"><a href="/tags/linux" title="" class="sf-depth-2 menuparent">Linux</a><ul><li id="menu-19831-1" class="firstandlast odd sf-item-1 sf-depth-3 sf-no-children"><a href="/tags/command-line" title="" class="sf-depth-3">Command line</a></li></ul></li><li id="menu-12361-1" class="middle even sf-item-8 sf-depth-2 sf-no-children"><a href="/tags/openstack" title="" class="sf-depth-2">OpenStack</a></li><li id="menu-12366-1" class="middle odd sf-item-9 sf-depth-2 sf-total-children-3 sf-parent-children-0 sf-single-children-3 menuparent"><a href="/tags/programming" title="" class="sf-depth-2 menuparent">Programming</a><ul><li id="menu-17771-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/tags/go" title="" class="sf-depth-3">Go</a></li><li id="menu-12411-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/tags/javascript" title="" class="sf-depth-3">JavaScript</a></li><li id="menu-12406-1" class="last odd sf-item-3 sf-depth-3 sf-no-children"><a href="/tags/python" title="" class="sf-depth-3">Python</a></li></ul></li><li id="menu-12371-1" class="last even sf-item-10 sf-depth-2 sf-no-children"><a href="/tags/sysadmin" title="" class="sf-depth-2">SysAdmin</a></li></ul></li><li id="menu-1921-1" class="middle even sf-item-2 sf-depth-1 sf-total-children-6 sf-parent-children-3 sf-single-children-3 menuparent"><a href="/resources" title="" class="sf-depth-1 menuparent">Resources</a><ul><li id="menu-19841-1" class="first odd sf-item-1 sf-depth-2 sf-total-children-1 sf-parent-children-0 sf-single-children-1 menuparent"><a href="/resources/what-open-source" title="" class="sf-depth-2 menuparent">What is open source?</a><ul><li id="menu-1991-1" class="firstandlast odd sf-item-1 sf-depth-3 sf-no-children"><a href="/open-source-way" class="sf-depth-3">The open source way</a></li></ul></li><li id="menu-2016-1" class="middle even sf-item-2 sf-depth-2 sf-no-children"><a href="/resources/projects-and-applications" title="" class="sf-depth-2">Projects and applications</a></li><li id="menu-2021-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/resources/organizations" title="" class="sf-depth-2">Organizations</a></li><li id="menu-5556-1" class="middle even sf-item-4 sf-depth-2 sf-total-children-14 sf-parent-children-1 sf-single-children-13 menuparent"><a href="/resources/cloud" title="" class="sf-depth-2 menuparent">Cloud technology</a><ul><li id="menu-27201-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/resources/what-ansible" title="" class="sf-depth-3">Ansible</a></li><li id="menu-5576-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/resources/big-data" title="" class="sf-depth-3">Big data</a></li><li id="menu-19861-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/resources/data-science" title="" class="sf-depth-3">Data science</a></li><li id="menu-5566-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/resources/what-docker" title="" class="sf-depth-3">Docker</a></li><li id="menu-19926-1" class="middle odd sf-item-5 sf-depth-3 sf-no-children"><a href="/resources/what-is-git" title="" class="sf-depth-3">Git</a></li><li id="menu-5591-1" class="middle even sf-item-6 sf-depth-3 sf-no-children"><a href="/resources/internet-of-things" title="" class="sf-depth-3">Internet of things</a></li><li id="menu-19921-1" class="middle odd sf-item-7 sf-depth-3 sf-no-children"><a href="/resources/java" title="" class="sf-depth-3">Java</a></li><li id="menu-5596-1" class="middle even sf-item-8 sf-depth-3 sf-no-children"><a href="/resources/what-is-kubernetes" title="" class="sf-depth-3">Kubernetes</a></li><li id="menu-5571-1" class="middle odd sf-item-9 sf-depth-3 sf-no-children"><a href="/resources/what-are-linux-containers" title="" class="sf-depth-3">Linux containers</a></li><li id="menu-5586-1" class="middle even sf-item-10 sf-depth-3 sf-no-children"><a href="/resources/what-are-microservices" title="" class="sf-depth-3">Microservices</a></li><li id="menu-5561-1" class="middle odd sf-item-11 sf-depth-3 sf-no-children"><a href="/resources/what-is-openstack" title="" class="sf-depth-3">OpenStack</a></li><li id="menu-19836-1" class="middle even sf-item-12 sf-depth-3 sf-total-children-4 sf-parent-children-0 sf-single-children-4 menuparent"><a href="/resources/python" title="" class="sf-depth-3 menuparent">Python</a><ul><li id="menu-19866-1" class="first odd sf-item-1 sf-depth-4 sf-no-children"><a href="/resources/python/gui-frameworks" title="" class="sf-depth-4">Python GUI frameworks</a></li><li id="menu-19871-1" class="middle even sf-item-2 sf-depth-4 sf-no-children"><a href="/resources/python/ides" title="" class="sf-depth-4">Python IDEs</a></li><li id="menu-19881-1" class="middle odd sf-item-3 sf-depth-4 sf-no-children"><a href="/resources/python/template-libraries" title="" class="sf-depth-4">Python template libraries</a></li><li id="menu-19876-1" class="last even sf-item-4 sf-depth-4 sf-no-children"><a href="/resources/python/web-scraper-crawler" title="" class="sf-depth-4">Python web scrapers</a></li></ul></li><li id="menu-5581-1" class="middle odd sf-item-13 sf-depth-3 sf-no-children"><a href="/resources/what-is-software-defined-networking" title="" class="sf-depth-3">Software defined networking</a></li><li id="menu-12601-1" class="last even sf-item-14 sf-depth-3 sf-no-children"><a href="/resources/virtualization" title="" class="sf-depth-3">Virtualization</a></li></ul></li><li id="menu-2036-1" class="middle odd sf-item-5 sf-depth-2 sf-total-children-11 sf-parent-children-0 sf-single-children-11 menuparent"><a href="/alternatives" title="" class="sf-depth-2 menuparent">Open source alternatives</a><ul><li id="menu-4646-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/alternatives/adobe-acrobat" class="sf-depth-3">Alternatives to Acrobat</a></li><li id="menu-4656-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/alternatives/autocad" class="sf-depth-3">Alternatives to AutoCAD</a></li><li id="menu-4636-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/alternatives/dreamweaver" class="sf-depth-3">Alternatives to Dreamweaver</a></li><li id="menu-5506-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/alternatives/gmail" class="sf-depth-3">Alternatives to Gmail</a></li><li id="menu-5551-1" class="middle odd sf-item-5 sf-depth-3 sf-no-children"><a href="/alternatives/matlab" class="sf-depth-3">Alternatives to MATLAB</a></li><li id="menu-5501-1" class="middle even sf-item-6 sf-depth-3 sf-no-children"><a href="/alternatives/minecraft" class="sf-depth-3">Alternatives to Minecraft</a></li><li id="menu-4651-1" class="middle odd sf-item-7 sf-depth-3 sf-no-children"><a href="/alternatives/picasa" class="sf-depth-3">Alternatives to Picasa</a></li><li id="menu-4661-1" class="middle even sf-item-8 sf-depth-3 sf-no-children"><a href="/alternatives/microsoft-publisher" class="sf-depth-3">Alternatives to Publisher</a></li><li id="menu-5511-1" class="middle odd sf-item-9 sf-depth-3 sf-no-children"><a href="/alternatives/slack" class="sf-depth-3">Alternatives to Slack</a></li><li id="menu-4641-1" class="middle even sf-item-10 sf-depth-3 sf-no-children"><a href="/alternatives/trello" class="sf-depth-3">Alternatives to Trello</a></li><li id="menu-5546-1" class="last odd sf-item-11 sf-depth-3 sf-no-children"><a href="/alternatives" title="" class="sf-depth-3">More...</a></li></ul></li><li id="menu-19886-1" class="last even sf-item-6 sf-depth-2 sf-no-children"><a href="/resources/linux" title="" class="sf-depth-2">Linux</a></li></ul></li><li id="menu-19666-1" class="middle odd sf-item-3 sf-depth-1 sf-total-children-6 sf-parent-children-6 sf-single-children-0 menuparent"><a href="/downloads/cheat-sheets" title="" class="sf-depth-1 menuparent">Downloads</a><ul><li id="menu-19406-1" class="first odd sf-item-1 sf-depth-2 sf-total-children-22 sf-parent-children-0 sf-single-children-22 menuparent"><a href="/downloads/cheat-sheets" title="" class="sf-depth-2 menuparent">Cheat sheets</a><ul><li id="menu-19651-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/downloads/cheat-sheet-awk-features" class="sf-depth-3">AWK cheat sheet</a></li><li id="menu-27241-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/downloads/bash-cheat-sheet" class="sf-depth-3">Bash cheat sheet</a></li><li id="menu-18641-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/downloads/blender-hotkey-cheat-sheet" class="sf-depth-3">Blender cheat sheet</a></li><li id="menu-18856-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/downloads/freedos-commands-cheat-sheet" class="sf-depth-3">FreeDOS cheat sheet</a></li><li id="menu-19721-1" class="middle odd sf-item-5 sf-depth-3 sf-no-children"><a href="/content/cheat-sheet-gimp" class="sf-depth-3">GIMP cheat sheet</a></li><li id="menu-19696-1" class="middle even sf-item-6 sf-depth-3 sf-no-children"><a href="/downloads/cheat-sheet-gnome-3" class="sf-depth-3">GNOME cheat sheet</a></li><li id="menu-18661-1" class="middle odd sf-item-7 sf-depth-3 sf-no-children"><a href="/downloads/groff-macros-cheat-sheet" class="sf-depth-3">Groff macros cheat sheet</a></li><li id="menu-19731-1" class="middle even sf-item-8 sf-depth-3 sf-no-children"><a href="/downloads/go-cheat-sheet" class="sf-depth-3">Go cheat sheet</a></li><li id="menu-19716-1" class="middle odd sf-item-9 sf-depth-3 sf-no-children"><a href="/downloads/cheat-sheet-i3-window-manager-keybinding" class="sf-depth-3">i3 window manager cheat sheet</a></li><li id="menu-19781-1" class="middle even sf-item-10 sf-depth-3 sf-no-children"><a href="/downloads/inkscape-cheat-sheet" class="sf-depth-3">Inkscape Cheat Sheet</a></li><li id="menu-16886-1" class="middle odd sf-item-11 sf-depth-3 sf-no-children"><a href="/irc-cheat-sheet" class="sf-depth-3">IRC cheat sheet</a></li><li id="menu-27271-1" class="middle even sf-item-12 sf-depth-3 sf-no-children"><a href="/downloads/java-cheat-sheet" class="sf-depth-3">Java cheat sheet</a></li><li id="menu-27246-1" class="middle odd sf-item-13 sf-depth-3 sf-no-children"><a href="/downloads/linux-common-commands-cheat-sheet" class="sf-depth-3">Linux common commands cheat sheet</a></li><li id="menu-27216-1" class="middle even sf-item-14 sf-depth-3 sf-no-children"><a href="/downloads/linux-permissions-cheat-sheet" class="sf-depth-3">Linux user permissions cheat sheet</a></li><li id="menu-27256-1" class="middle odd sf-item-15 sf-depth-3 sf-no-children"><a href="/downloads/microservices-cheat-sheet" class="sf-depth-3">Microservices cheat sheet</a></li><li id="menu-19301-1" class="middle even sf-item-16 sf-depth-3 sf-no-children"><a href="/downloads/cheat-sheet-networking" class="sf-depth-3">Networking cheat sheet</a></li><li id="menu-18636-1" class="middle odd sf-item-17 sf-depth-3 sf-no-children"><a href="/downloads/pandoc-cheat-sheet" class="sf-depth-3">Pandoc cheat sheet</a></li><li id="menu-27261-1" class="middle even sf-item-18 sf-depth-3 sf-no-children"><a href="/downloads/pip-cheat-sheet" class="sf-depth-3">pip cheat sheet</a></li><li id="menu-19711-1" class="middle odd sf-item-19 sf-depth-3 sf-no-children"><a href="/downloads/cheat-sheet-python-37-beginners" class="sf-depth-3">Python 3.7 cheat sheet</a></li><li id="menu-19726-1" class="middle even sf-item-20 sf-depth-3 sf-no-children"><a href="/downloads/getting-started-raspberry-pi-cheat-sheet" class="sf-depth-3">Raspberry Pi cheat sheet</a></li><li id="menu-19691-1" class="middle odd sf-item-21 sf-depth-3 sf-no-children"><a href="/downloads/cheat-sheet-selinux" class="sf-depth-3">SELinux cheat sheet</a></li><li id="menu-18591-1" class="last even sf-item-22 sf-depth-3 sf-no-children"><a href="/downloads/advanced-ssh-cheat-sheet" class="sf-depth-3">SSH cheat sheet</a></li></ul></li><li id="menu-12466-1" class="middle even sf-item-2 sf-depth-2 sf-total-children-4 sf-parent-children-0 sf-single-children-4 menuparent"><a href="/yearbook/2017" title="" class="sf-depth-2 menuparent">Open Source Yearbook</a><ul><li id="menu-19681-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/yearbook/2015" title="" class="sf-depth-3">2015</a></li><li id="menu-19676-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/yearbook/2016" title="" class="sf-depth-3">2016</a></li><li id="menu-19671-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/yearbook/2017" title="" class="sf-depth-3">2017</a></li><li id="menu-19786-1" class="last even sf-item-4 sf-depth-3 sf-no-children"><a href="/yearbook/2018" title="" class="sf-depth-3">2018</a></li></ul></li><li id="menu-19906-1" class="middle odd sf-item-3 sf-depth-2 sf-total-children-1 sf-parent-children-0 sf-single-children-1 menuparent"><a href="/downloads/cheat-sheets" title="" class="sf-depth-2 menuparent">Programming guides</a><ul><li id="menu-19891-1" class="firstandlast odd sf-item-1 sf-depth-3 sf-no-children"><a href="/downloads/7-essential-pypi-libraries" title="" class="sf-depth-3">7 essential PyPI libraries</a></li></ul></li><li id="menu-19911-1" class="middle even sf-item-4 sf-depth-2 sf-total-children-5 sf-parent-children-0 sf-single-children-5 menuparent"><a href="/downloads/cheat-sheets" title="" class="sf-depth-2 menuparent">DevOps guides</a><ul><li id="menu-19806-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/downloads/devops-transformation" class="sf-depth-3">Starting a DevOps transformation</a></li><li id="menu-19776-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/downloads/small-scale-scrum" class="sf-depth-3">Introduction to Small Scale Scrum</a></li><li id="menu-19771-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/downloads/devsecops" class="sf-depth-3">Getting started with DevSecOps</a></li><li id="menu-19701-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/downloads/devops-monitoring-guide" class="sf-depth-3">DevOps monitoring tools guide</a></li><li id="menu-19686-1" class="last odd sf-item-5 sf-depth-3 sf-no-children"><a href="/downloads/devops-hiring-guide" class="sf-depth-3">DevOps hiring guide</a></li></ul></li><li id="menu-19916-1" class="middle odd sf-item-5 sf-depth-2 sf-total-children-2 sf-parent-children-0 sf-single-children-2 menuparent"><a href="/downloads/cheat-sheets" title="" class="sf-depth-2 menuparent">Sysadmin guides</a><ul><li id="menu-19801-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="https://opensource.com/downloads/ansible-quickstart" title="" class="sf-depth-3">Ansible Automation for Sysadmins</a></li><li id="menu-19706-1" class="last even sf-item-2 sf-depth-3 sf-no-children"><a href="/downloads/containers-primer" class="sf-depth-3">Containers primer</a></li></ul></li><li id="menu-19901-1" class="last even sf-item-6 sf-depth-2 sf-total-children-2 sf-parent-children-0 sf-single-children-2 menuparent"><a href="/downloads/cheat-sheets" title="" class="sf-depth-2 menuparent">E-books</a><ul><li id="menu-19896-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/downloads/getting-started-kubernetes-ebook" class="sf-depth-3">Getting started with Kubernetes</a></li><li id="menu-27276-1" class="last even sf-item-2 sf-depth-3 sf-no-children"><a href="/downloads/guide-inter-process-communication-linux" class="sf-depth-3">Inter-process communication in Linux</a></li></ul></li></ul></li><li id="menu-4691-1" class="middle even sf-item-4 sf-depth-1 sf-total-children-5 sf-parent-children-2 sf-single-children-3 menuparent"><a href="/about" class="sf-depth-1 menuparent">About</a><ul><li id="menu-12516-1" class="first odd sf-item-1 sf-depth-2 sf-total-children-7 sf-parent-children-0 sf-single-children-7 menuparent"><a href="/participate" class="sf-depth-2 menuparent">Join us</a><ul><li id="menu-12521-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/user/register" title="" class="sf-depth-3">Register</a></li><li id="menu-12526-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/rules-comments-and-discussions" class="sf-depth-3">Rules for comments and discussions</a></li><li id="menu-17781-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/devops-team" class="sf-depth-3">Contribute to DevOps resources</a></li><li id="menu-12531-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/correspondent-program" class="sf-depth-3">Correspondent Program</a></li><li id="menu-12581-1" class="middle odd sf-item-5 sf-depth-3 sf-no-children"><a href="/resources/contributor-club" title="" class="sf-depth-3">Contributor Club</a></li><li id="menu-12541-1" class="middle even sf-item-6 sf-depth-3 sf-no-children"><a href="/points-and-badges" class="sf-depth-3">Points and badges</a></li><li id="menu-17766-1" class="last odd sf-item-7 sf-depth-3 sf-no-children"><a href="/delete-account" title="" class="sf-depth-3">Delete your account</a></li></ul></li><li id="menu-1966-1" class="middle even sf-item-2 sf-depth-2 sf-total-children-6 sf-parent-children-0 sf-single-children-6 menuparent"><a href="/writers" title="" class="sf-depth-2 menuparent">For writers</a><ul><li id="menu-17761-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/how-submit-article" class="sf-depth-3">Write for us</a></li><li id="menu-12546-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/resources/editorial-calendar" title="" class="sf-depth-3">Editorial calendar</a></li><li id="menu-12586-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/article/19/1/write-for-us" title="" class="sf-depth-3">Writing topics</a></li><li id="menu-2041-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/submission-style-guide" class="sf-depth-3">Article submission and style guide</a></li><li id="menu-4616-1" class="middle odd sf-item-5 sf-depth-3 sf-no-children"><a href="/promoting-articles" class="sf-depth-3">Tips for promoting your Opensource.com article</a></li><li id="menu-12556-1" class="last even sf-item-6 sf-depth-3 sf-no-children"><a href="/writer-testimonials" class="sf-depth-3">Writer testimonials</a></li></ul></li><li id="menu-1971-1" class="middle odd sf-item-3 sf-depth-2 sf-no-children"><a href="/opensourcecom-team" class="sf-depth-2">Meet the team</a></li><li id="menu-2006-1" class="middle even sf-item-4 sf-depth-2 sf-no-children"><a href="/press-kit" class="sf-depth-2">Press kit</a></li><li id="menu-2001-1" class="last odd sf-item-5 sf-depth-2 sf-no-children"><a href="/contact" title="" class="sf-depth-2">Contact</a></li></ul></li><li id="menu-2136-1" class="last odd sf-item-5 sf-depth-1 sf-total-children-4 sf-parent-children-3 sf-single-children-1 menuparent"><a href="/open-organization" title="" class="sf-depth-1 menuparent">Open Organization</a><ul><li id="menu-27251-1" class="first odd sf-item-1 sf-depth-2 sf-no-children"><a href="https://opensource.com/open-organization/start" title="" class="sf-depth-2">Get started</a></li><li id="menu-15051-1" class="middle even sf-item-2 sf-depth-2 sf-total-children-6 sf-parent-children-0 sf-single-children-6 menuparent"><a href="/open-organization/resources/book-series" title="" class="sf-depth-2 menuparent">Book series</a><ul><li id="menu-16906-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/open-organization/resources/field-guide" title="" class="sf-depth-3">Field Guide</a></li><li id="menu-16891-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/open-organization/resources/leaders-manual" class="sf-depth-3">Leaders Manual</a></li><li id="menu-16896-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/open-organization/resources/culture-change" title="" class="sf-depth-3">Guide to IT Culture Change</a></li><li id="menu-19856-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/open-organization/resources/educators-guide" class="sf-depth-3">Guide for Educators</a></li><li id="menu-17796-1" class="middle odd sf-item-5 sf-depth-3 sf-no-children"><a href="/open-organization/resources/workbook" title="" class="sf-depth-3">Workbook</a></li><li id="menu-18656-1" class="last even sf-item-6 sf-depth-3 sf-no-children"><a href="/open-organization/resources/organize-innovation" title="" class="sf-depth-3">Organize for Innovation</a></li></ul></li><li id="menu-2146-1" class="middle odd sf-item-3 sf-depth-2 sf-total-children-5 sf-parent-children-0 sf-single-children-5 menuparent"><a href="/open-organization/resources" title="" class="sf-depth-2 menuparent">Resources</a><ul><li id="menu-12471-1" class="first odd sf-item-1 sf-depth-3 sf-no-children"><a href="/open-organization/resources/open-org-definition" title="What is an open organization?" class="sf-depth-3">What is an open organization?</a></li><li id="menu-15056-1" class="middle even sf-item-2 sf-depth-3 sf-no-children"><a href="/open-organization/resources/open-org-maturity-model" title="" class="sf-depth-3">How open is your organization?</a></li><li id="menu-12421-1" class="middle odd sf-item-3 sf-depth-3 sf-no-children"><a href="/open-organization/resources/open-decision-framework" title="" class="sf-depth-3">What is an open decision?</a></li><li id="menu-2151-1" class="middle even sf-item-4 sf-depth-3 sf-no-children"><a href="/open-organization/resources/guides" title="" class="sf-depth-3">Discussion Guides</a></li><li id="menu-17821-1" class="last odd sf-item-5 sf-depth-3 sf-no-children"><a href="/open-organization/resources/newsletter" title="" class="sf-depth-3">Newsletter</a></li></ul></li><li id="menu-3166-1" class="last even sf-item-4 sf-depth-2 sf-total-children-1 sf-parent-children-0 sf-single-children-1 menuparent"><a href="/open-organization/resources/ambassadors-program" title="" class="sf-depth-2 menuparent">Ambassadors community</a><ul><li id="menu-2691-1" class="firstandlast odd sf-item-1 sf-depth-3 sf-no-children"><a href="/open-organization/resources/meet-ambassadors" title="" class="sf-depth-3">Meet the ambassadors</a></li></ul></li></ul></li></ul>
</div>
<div id="block-system-user-menu" class="block block-system block-menu odd" role="navigation">

      
  <ul class="menu"><li class="menu__item is-leaf first leaf"><a href="/user/login" class="menu__link">Log in</a></li>
<li class="menu__item is-leaf last leaf"><a href="/user/register" title="Sign Up" class="menu__link">Sign Up</a></li>
</ul>
</div>
<div id="block-menu-block-2" class="block block-menu-block last even" role="navigation">

      
  <div class="menu-block-wrapper menu-block-2 menu-name-menu-social-links parent-mlid-0 menu-level-1">
  <ul class="menu"><li class="menu__item is-leaf first leaf menu-mlid-13171"><a href="http://twitter.com/opensourceway" title="twitter" class="menu__link">Twitter</a></li>
<li class="menu__item is-leaf leaf menu-mlid-13176"><a href="https://www.facebook.com/opensourceway" title="facebook" class="menu__link">Facebook</a></li>
<li class="menu__item is-leaf last leaf menu-mlid-13166"><a href="/feed" title="feed" class="menu__link">Feed</a></li>
</ul></div>

</div>
  </div>

        <div class="mobile--menu-region">
            <div class="region region-navigation">
    <div id="block-system-main-menu" class="block block-system block-menu first last odd" role="navigation">

        <h2 class="block__title block-title">Main menu</h2>
    
  <ul class="menu"><li class="menu__item is-expanded first expanded"><a href="/" title="" class="menu__link active">Articles</a><ul class="menu"><li class="menu__item is-leaf first leaf"><a href="/tags/containers" title="" class="menu__link">Containers</a></li>
<li class="menu__item is-leaf leaf"><a href="/tags/devops" title="" class="menu__link">DevOps</a></li>
<li class="menu__item is-leaf leaf"><a href="/tags/gaming" title="" class="menu__link">Gaming</a></li>
<li class="menu__item is-leaf leaf"><a href="/tags/government" title="" class="menu__link">Government</a></li>
<li class="menu__item is-expanded expanded"><a href="/tags/hardware" title="" class="menu__link">Hardware</a><ul class="menu"><li class="menu__item is-leaf first leaf"><a href="/tags/3d-printing" title="" class="menu__link">3D printing</a></li>
<li class="menu__item is-leaf leaf"><a href="/tags/arduino" title="" class="menu__link">Arduino</a></li>
<li class="menu__item is-leaf last leaf"><a href="/tags/raspberry-pi" title="" class="menu__link">Raspberry Pi</a></li>
</ul></li>
<li class="menu__item is-collapsed collapsed"><a href="/tags/law" title="" class="menu__link">Law</a></li>
<li class="menu__item is-expanded expanded"><a href="/tags/linux" title="" class="menu__link">Linux</a><ul class="menu"><li class="menu__item is-leaf first last leaf"><a href="/tags/command-line" title="" class="menu__link">Command line</a></li>
</ul></li>
<li class="menu__item is-leaf leaf"><a href="/tags/openstack" title="" class="menu__link">OpenStack</a></li>
<li class="menu__item is-expanded expanded"><a href="/tags/programming" title="" class="menu__link">Programming</a><ul class="menu"><li class="menu__item is-leaf first leaf"><a href="/tags/go" title="" class="menu__link">Go</a></li>
<li class="menu__item is-leaf leaf"><a href="/tags/javascript" title="" class="menu__link">JavaScript</a></li>
<li class="menu__item is-leaf last leaf"><a href="/tags/python" title="" class="menu__link">Python</a></li>
</ul></li>
<li class="menu__item is-collapsed last collapsed"><a href="/tags/sysadmin" title="" class="menu__link">SysAdmin</a></li>
</ul></li>
<li class="menu__item is-expanded expanded"><a href="/resources" title="" class="menu__link">Resources</a><ul class="menu"><li class="menu__item is-collapsed first collapsed"><a href="/resources/what-open-source" title="" class="menu__link">What is open source?</a></li>
<li class="menu__item is-leaf leaf"><a href="/resources/projects-and-applications" title="" class="menu__link">Projects and applications</a></li>
<li class="menu__item is-leaf leaf"><a href="/resources/organizations" title="" class="menu__link">Organizations</a></li>
<li class="menu__item is-collapsed collapsed"><a href="/resources/cloud" title="" class="menu__link">Cloud technology</a></li>
<li class="menu__item is-collapsed collapsed"><a href="/alternatives" title="" class="menu__link">Open source alternatives</a></li>
<li class="menu__item is-leaf last leaf"><a href="/resources/linux" title="" class="menu__link">Linux</a></li>
</ul></li>
<li class="menu__item is-collapsed collapsed"><a href="/downloads/cheat-sheets" title="" class="menu__link">Downloads</a></li>
<li class="menu__item is-collapsed collapsed"><a href="/about" class="menu__link">About</a></li>
<li class="menu__item is-expanded last expanded"><a href="/open-organization" title="" class="menu__link">Open Organization</a><ul class="menu"><li class="menu__item is-leaf first leaf"><a href="https://opensource.com/open-organization/start" title="" class="menu__link">Get started</a></li>
<li class="menu__item is-collapsed collapsed"><a href="/open-organization/resources/book-series" title="" class="menu__link">Book series</a></li>
<li class="menu__item is-expanded expanded"><a href="/open-organization/resources" title="" class="menu__link">Resources</a><ul class="menu"><li class="menu__item is-leaf first leaf"><a href="/open-organization/resources/open-org-definition" title="What is an open organization?" class="menu__link">What is an open organization?</a></li>
<li class="menu__item is-leaf leaf"><a href="/open-organization/resources/open-org-maturity-model" title="" class="menu__link">How open is your organization?</a></li>
<li class="menu__item is-leaf leaf"><a href="/open-organization/resources/open-decision-framework" title="" class="menu__link">What is an open decision?</a></li>
<li class="menu__item is-leaf leaf"><a href="/open-organization/resources/guides" title="" class="menu__link">Discussion Guides</a></li>
<li class="menu__item is-leaf last leaf"><a href="/open-organization/resources/newsletter" title="" class="menu__link">Newsletter</a></li>
</ul></li>
<li class="menu__item is-collapsed last collapsed"><a href="/open-organization/resources/ambassadors-program" title="" class="menu__link">Ambassadors community</a></li>
</ul></li>
</ul>
</div>
  </div>
        </div>
      </div>
    </div>

</header>

<div id="page">

      <div id="main">
        <div class="pre-content">
                                                </div>
        <div id="content" class="column" role="main">
                              <a id="main-content"></a>
                                        


<div class="panel-pane pane-views-panes pane-homepage-hero-panel-pane-1"  >
  
      
  
  <div class="view view-homepage-hero view-id-homepage_hero view-display-id-panel_pane_1 view-dom-id-aa1f4cc34f5562ce689341fbdda7f365">
        
  
  
      <div class="view-content">
              
  <div class="hero">        <div class="hero__image"><a href="/article/19/12/favorite-terminal-emulator"><img class="homepage-hero-lead-image" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/homepage-hero-lead-image/public/lead-images/osdc_terminals_0.png?itok=IWqxBp2F" width="520" height="290" alt="Terminal window with green text" title="Terminal window with green text" /></a></div>
<div class="hero__content">
<div class="hero__title"><a href="/article/19/12/favorite-terminal-emulator">What&#039;s your favorite terminal emulator?</a></div>
<div class="hero__description">Preference of a terminal emulator can say a lot about a person's workflow. Is the ability to drive mouseless a must-have? Do you like to navigate... <a href="/article/19/12/favorite-terminal-emulator" class="views-more-link">Read more</a></div>
<div class="hero__meta byline"><span class="byline__author"><a href="/users/admin">Opensource.com (Red Hat)</a></span>
<span class="byline__like-count">29</span>
<span class="byline__like-icon">votes</span></div>
</div>  </div>      </div>
  
  
  
  
  
  
</div>
  
  </div>
<div class="panel-pane pane-entity-field pane-node-field-homepage-call-to-action-1"  >
  
      
  
  <div class="field field-name-field-homepage-call-to-action-1 field-type-entityreference field-label-hidden"><div class="field-items"><div class="field-item even">
<div class="fieldable-panels-pane cta cta--green-on-blue cta--no-link">

  <div class="cta__content cta__content--no-link">
            <h2 class="cta__title">Subscribe to our weekly newsletter</h2>
<div class="field field-name-field-cta-content field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p><iframe class="eloqua-embedded-bottom" frameborder="0" height="50" id="fkfkx" scrolling="no" src="/eloqua-embedded-subscribe.html?offer_id=70160000000QzXNAA0" style="max-width:600px;margin:0 auto;" width="100%"></iframe></p>

<p>Get the highlights in your inbox every week.</p>
</div></div></div>  </div>

</div>

</div></div></div>
  
  </div>
<div class="panel-pane pane-views-panes pane-homepage-articles-panel-pane-recent"  >
  
      
  
  <div class="view view-homepage-articles view-id-homepage_articles view-display-id-panel_pane_recent view-dom-id-f9e104fdfe9c1c19d2b65092457d1185">
        
  
  
      <div class="view-content">
              
<div class="panelizer-view-mode node node-teaser-wide node-article node-59031 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/connections_wires_sysadmin_cable.png?itok=o8FJPq4H"><a href="/article/19/12/seeeduino-nano-review"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/connections_wires_sysadmin_cable.png?itok=o8FJPq4H" width="249" height="140" alt="Multi-colored and directional network computer cables" title="Multi-colored and directional network computer cables" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/seeeduino-nano-review">Why you need to know about Seeed hardware devices</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  Learn how Seeed microcontrollers solve the problem of building modular projects.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/alansmithee" title="View user profile." class="username" xml:lang="" about="/users/alansmithee" typeof="sioc:UserAccount" property="foaf:name" datatype="">Alan Smithee</a></span>
<span class="byline__date">13 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">9</span>
<span class="byline__like-icon">votes</span>
</span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58541 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/binary_code_computer_screen.png?itok=e6NqdxFT"><a href="/article/19/12/generate-code-apache-velocity"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/binary_code_computer_screen.png?itok=e6NqdxFT" width="248" height="140" alt="Binary code on a computer screen" title="Binary code on a computer screen" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/generate-code-apache-velocity">How to generate code with Apache Velocity</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  Get started with Velocity, an open source, Java-based template engine and code generator that converts templates into source code. 
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/gammay" title="View user profile." class="username" xml:lang="" about="/users/gammay" typeof="sioc:UserAccount" property="foaf:name" datatype="">Girish Managoli</a></span>
<span class="byline__date">13 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">6</span>
<span class="byline__like-icon">votes</span>
</span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
                <div class="homepage-content-cta">
<div class="fieldable-panels-pane cta cta--green-on-gray cta--with-link">

  <div class="cta__content cta__content--with-link">
                <h2 class="cta__title"> Download the ultimate DevOps hiring guide</h2>
<div class="field field-name-field-cta-content field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>Build your DevOps team with these best practices for prospective employees and hiring managers.</p>
</div></div></div>  </div>

  <div class="cta__link">
    <div class="field field-name-field-cta-link field-type-link-field field-label-hidden"><div class="field-items"><div class="field-item even"><a href="https://opensource.com/downloads/devops-hiring-guide">Download now</a></div></div></div>  </div>
</div>

</div>          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58041 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/linux_keyboard_desktop.png?itok=vRP-zLkq"><a href="/article/19/12/mate-linux-desktop"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/linux_keyboard_desktop.png?itok=vRP-zLkq" width="249" height="140" alt="Linux keys on the keyboard for a desktop computer" title="Linux keys on the keyboard for a desktop computer" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/mate-linux-desktop">What GNOME 2 fans love about the Mate Linux desktop</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  This article is part of a special series of 24 days of Linux desktops. If you remember GNOME 2 fondly, the Mate Linux desktop will fulfill your need for nostalgia.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/seth" title="View user profile." class="username" xml:lang="" about="/users/seth" typeof="sioc:UserAccount" property="foaf:name" datatype="">Seth Kenlon <span class="content-moderator">(Red Hat)</span></a></span>
<span class="byline__date">13 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">9</span>
<span class="byline__like-icon">votes</span>
</span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58031 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/osdc_general_openfield.png?itok=rsygZsjC"><a href="/article/19/12/openbox-linux-desktop"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/osdc_general_openfield.png?itok=rsygZsjC" width="249" height="140" alt="open with sky and grass" title="open with sky and grass" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/openbox-linux-desktop">How to configure Openbox for your Linux desktop</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  This article is part of a special series of 24 days of Linux desktops. The Openbox Linux window manager is light on system resources, easy to configure, and a pleasure to use.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/seth" title="View user profile." class="username" xml:lang="" about="/users/seth" typeof="sioc:UserAccount" property="foaf:name" datatype="">Seth Kenlon <span class="content-moderator">(Red Hat)</span></a></span>
<span class="byline__date">12 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">12</span>
<span class="byline__like-icon">votes</span>
</span>
<span class="byline__comment-count"><a href="/article/19/12/openbox-linux-desktop#comments">1 comment</a></span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58706 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/car-penguin-drive-linux-yellow.png?itok=vmJ_RTS_"><a href="/article/19/12/replacing-hard-drive-linux"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/car-penguin-drive-linux-yellow.png?itok=vmJ_RTS_" width="249" height="140" alt="Penguin driving a car with a yellow background" title="Penguin driving a car with a yellow background" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/replacing-hard-drive-linux">How to replace a hard drive on Linux</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  Need more (or faster) storage? Seamlessly replace your old hard disk drive with a new solid-state drive.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/alanfdoss" title="View user profile." class="username" xml:lang="" about="/users/alanfdoss" typeof="sioc:UserAccount" property="foaf:name" datatype="">Alan Formy-Duval <span class="content-moderator">(Community Moderator)</span></a></span>
<span class="byline__date">12 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">17</span>
<span class="byline__like-icon">votes</span>
</span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58936 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/LIFE_film.png?itok=N_3Tgwnz"><a href="/article/19/12/videos-linux-app-summit"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/LIFE_film.png?itok=N_3Tgwnz" width="249" height="140" alt="An old-fashioned video camera" title="An old-fashioned video camera" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/videos-linux-app-summit">Watch these videos from the Linux App Summit</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  Forget the same old holiday programming and, instead, enjoy these interesting presentations from the Linux event of the year.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/seth" title="View user profile." class="username" xml:lang="" about="/users/seth" typeof="sioc:UserAccount" property="foaf:name" datatype="">Seth Kenlon <span class="content-moderator">(Red Hat)</span></a></span>
<span class="byline__date">12 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">11</span>
<span class="byline__like-icon">votes</span>
</span>
<span class="byline__comment-count"><a href="/article/19/12/videos-linux-app-summit#comments">1 comment</a></span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58036 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/migration_innovation_computer_software.png?itok=c66Hsept"><a href="/article/19/12/joes-window-manager-linux-desktop"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/migration_innovation_computer_software.png?itok=c66Hsept" width="249" height="140" alt="and old computer and a new computer, representing migration to new software or hardware" title="and old computer and a new computer, representing migration to new software or hardware" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/joes-window-manager-linux-desktop">Revamp your old Linux desktop with Joe&#039;s Window Manager</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  This article is part of a special series of 24 days of Linux desktops. JWM's meager weight and simplicity makes it a great window manager for slow or old Linux computers.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/seth" title="View user profile." class="username" xml:lang="" about="/users/seth" typeof="sioc:UserAccount" property="foaf:name" datatype="">Seth Kenlon <span class="content-moderator">(Red Hat)</span></a></span>
<span class="byline__date">11 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">26</span>
<span class="byline__like-icon">votes</span>
</span>
<span class="byline__comment-count"><a href="/article/19/12/joes-window-manager-linux-desktop#comments">4 comments</a></span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
          
<div class="panelizer-view-mode node node-teaser-wide node-article node-58191 node-promoted node-promoted">
        
<div class="panel-display teaser-wide clearfix " >

  <div class="teaser-wide__top">
        </div>

  <div class="clearfix">
    <div class="teaser-wide__image">
      <div class="panel-pane pane-entity-field pane-node-field-lead-image"  >
  
      
  
  <div class="field field-name-field-lead-image field-type-image field-label-hidden"><div class="field-items"><div class="field-item even" rel="schema:contentUrl" resource="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/checklist_hands_team_collaboration.png?itok=hC5htTvE"><a href="/article/19/12/annotate-screenshots-linux-ksnip"><img class="teaser-wide" typeof="foaf:Image" src="https://opensource.com/sites/default/files/styles/teaser-wide/public/lead-images/checklist_hands_team_collaboration.png?itok=hC5htTvE" width="249" height="140" alt="a checklist for a team" title="a checklist for a team" /></a></div></div></div>
  
  </div>
    </div>
    <div class="teaser-wide__content">
      <div class="panel-pane pane-node-title"  >
  
      
  
  <h2><a href="/article/19/12/annotate-screenshots-linux-ksnip">Annotate screenshots on Linux with Ksnip</a></h2>

  
  </div>
<div class="panel-pane pane-token pane-node-field-article-subhead"  >
  
      
  
  Ksnip allows you to create and mark up screenshots in Linux with ease.
  
  </div>
<div class="panel-pane pane-os-content-article-byline"  >
  
      
  
  <div class="byline"><span class="byline__author-name"><a href="/users/cedewey" title="View user profile." class="username" xml:lang="" about="/users/cedewey" typeof="sioc:UserAccount" property="foaf:name" datatype="">Clayton Dewey</a></span>
<span class="byline__date">11 Dec 2019</span>
<span class="byline__social"><span class="byline__like-count">18</span>
<span class="byline__like-icon">votes</span>
</span>
<span class="byline__comment-count"><a href="/article/19/12/annotate-screenshots-linux-ksnip#comments">5 comments</a></span>
</div>
  
  </div>
    </div>
  </div>

</div><!-- /.teaser-wide -->
</div>
      </div>
  
      <div class="item-list"><ul class="pager pager-load-more"><li class="pager-next first last"><a href="/home?page=1">Load more</a></li>
</ul></div>  
  
  
  
  
</div>
  
  </div>
<div class="panel-pane pane-entity-field pane-node-field-homepage-call-to-action-3"  >
  
      
  
  <div class="field field-name-field-homepage-call-to-action-3 field-type-entityreference field-label-hidden"><div class="field-items"><div class="field-item even">
<div class="fieldable-panels-pane cta cta--green-on-blue cta--with-link">

  <div class="cta__content cta__content--with-link">
                <h2 class="cta__title">Are you new to open source?</h2>
<div class="field field-name-field-cta-content field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>Browse our collection of resources.</p>
</div></div></div>  </div>

  <div class="cta__link">
    <div class="field field-name-field-cta-link field-type-link-field field-label-hidden"><div class="field-items"><div class="field-item even"><a href="https://opensource.com/resources?utm_source=intcta">Start now</a></div></div></div>  </div>
</div>

</div></div></div>
  
  </div>
<div class="panel-pane pane-block pane-bean-configurable-homepage-block"  >
  
      
  
  <div class="entity entity-bean bean-generic-block clearfix" about="/block/configurable-homepage-block" typeof="">

  <div class="content">
      </div>
</div>

  
  </div>
                  </div>


        
        
      </div>

        <div class="region region-pre-footer">
    <div id="block-os-common-components-footer-call-to-action" class="block block-os-common-components first last odd">

      
  
<div class="fieldable-panels-pane cta cta--green-on-blue cta--no-link">

  <div class="cta__content cta__content--no-link">
            <h2 class="cta__title">Subscribe to our weekly newsletter</h2>
<div class="field field-name-field-cta-content field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p><iframe class="eloqua-embedded-bottom" frameborder="0" height="50" id="fkfkx" scrolling="no" src="/eloqua-embedded-subscribe.html?offer_id=70160000000QzXNAA0" style="max-width:600px;margin:0 auto;" width="100%"></iframe></p>

<p>Get the highlights in your inbox every week.</p>
</div></div></div>  </div>

</div>


</div>
  </div>

        <div class="region region-footer-nav">
    <div id="block-bean-social-media" class="block block-bean first odd">

      
  <div class="entity entity-bean bean-generic-block clearfix" about="/block/social-media" typeof="">

  <div class="content">
    <div class="field field-name-field-body field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p><span>Find us:</span> 
</p>
<ul>
<li><a class="footer-twitter" href="https://twitter.com/OpenSourceWay" title="Twitter">Twitter</a></li>
<li><a class="footer-facebook" href="https://www.facebook.com/opensourceway" title="Facebook">Facebook</a></li>
<li><a class="footer-youtube" href="http://www.youtube.com/opensourceway" title="Youtube">Youtube</a></li>
<li><a class="footer-mastodon" href="https://fosstodon.org/@osdc" title="">Mastodon</a></li>
<li><a class="footer-irc" href="/join-us-irc" title="IRC">IRC</a></li>
<li><a class="footer-feed" href="/feed" title="RSS">RSS</a></li>
</ul>
</div></div></div>  </div>
</div>

</div>
<div id="block-menu-menu-footer" class="block block-menu last even" role="navigation">

        <h2 class="block__title block-title">Footer</h2>
    
  <ul class="menu"><li class="menu__item is-leaf first leaf"><a href="/privacy-policy" class="menu__link">Privacy Policy</a></li>
<li class="menu__item is-leaf leaf"><a href="/legal" class="menu__link">Terms of Use</a></li>
<li class="menu__item is-leaf leaf"><a href="/contact" class="menu__link">Contact</a></li>
<li class="menu__item is-leaf leaf"><a href="/opensourcecom-team" title="" class="menu__link">Meet the Team</a></li>
<li class="menu__item is-leaf last leaf"><a href="http://opensource.org/" title="" class="menu__link">Visit opensource.org</a></li>
</ul>
</div>
  </div>

        <footer id="footer" class="region region-footer">
    <div id="block-bean-copyrigt-block" class="block block-bean first odd">

      
  <div class="entity entity-bean bean-generic-block clearfix" about="/block/copyrigt-block" typeof="">

  <div class="content">
    <div class="field field-name-field-body field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p>For more discussion on open source and the role of the CIO in the enterprise, join us at <a href="https://enterprisersproject.com">The EnterprisersProject.com</a>.</p>

<p>The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat.</p>

<p>Opensource.com aspires to publish all content under a <a href="http://creativecommons.org/licenses/">Creative Commons license</a> but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. Red Hat and the Red Hat logo are trademarks of Red Hat, Inc., registered in the United States and other countries.</p>

<p>Copyright ©2019 Red Hat, Inc.</p>
</div></div></div>  </div>
</div>

</div>
<div id="block-bean-footer-logo" class="block block-bean last even">

      
  <div class="entity entity-bean bean-generic-block clearfix" about="/block/footer-logo" typeof="">

  <div class="content">
    <div class="field field-name-field-body field-type-text-long field-label-hidden"><div class="field-items"><div class="field-item even"><p><img src="/sites/all/themes/opensource/images/footer_logo.svg" /></p>
</div></div></div>  </div>
</div>

</div>
  </footer>

    </div>

    
        <div class="region region-page-bottom">
    <!-- begin Google Remarketing --><img height="1" width="1" style="border-style:none;display:block;" alt="" src="//googleads.g.doubleclick.net/pagead/viewthroughconversion/990030321/?value=0&amp;label=rxV4CN_35QQQ8dOK2AM&amp;guid=ON&amp;script=0" onerror="this.src='/sites/all/themes/opensource/images/1x1.png';this.onerror=null" /><!-- end Google Remarketing -->  </div>
<script src="https://opensource.com/sites/default/files/js/js_29qYXJz8NLGg8Aomg-RZPjJcj9yEdEst1BMZ9gZbs-4.js"></script>
<script>if (("undefined" !== typeof _satellite) && ("function" === typeof _satellite.pageBottom)) {_satellite.pageBottom();}</script>
</body>
</html>
